Category Archives: Plone

Plone 6 and Azure login

If you have Microsoft 365 you can setup Plone to use Azure login. You need to install pas.plugins.authomatic. It also supports Volto.

In Azure you need to create App Registration. You can follow this guide.

In API Permissions you need to add User.Read.All Application permission.

In Certificates & secrets create a new client secret.

Finally the PAS Authomatic configuration looks like this:

{
    "azure": {
        "id": 1,
        "display": {
            "title": "Azure",
            "cssclasses": {
                "button": "plone-btn plone-btn-default",
                "icon": "glypicon glyphicon-github" 
            },
            "as_form": false
        },
        "propertymap": {
            "email": "email",
            "name": "fullname" 
        },
        "class_": "authomatic.providers.oauth2.MicrosoftOnline",
        "domain": "ADD_YOUR_TENANT_ID",
        "consumer_key": "YOUR_APP_REGISTRATION_CLIENT_ID",
        "consumer_secret": "YOUR_CLIENT_SECRET",
        "scope": ["openid profile"],
        "access_headers": {
            "User-Agent": "Plone (pas.plugins.authomatic)" 
        }
    }
}

Hide images from the Plone’s Tabular View

It is easily possible to hide images from the navigation port-let using control panel, but I did not find similar option for the Tabular View when a folder contents is displayed.
So here is the solution I have applied.

  1. Login to Zope Management interface
  2. Go to /…/portal_skins/plone_content and create a custom version of folder_tabular_view
  3. In the customized version of the folder_tabular_view locate “class python:test(oddrow, ‘even’, ‘odd’)” and change it to “class python:test(oddrow, ‘even tr-‘ + item_type_class, ‘odd tr-‘ + item_type_class)
  4. After these changes TR tag of the folder contents table will have an additional CSS class which we can use to hide unwanted content types
  5. Save the changes and edit customized CSS file called ploneCustom.css
  6. Add “.tr-contenttype-image { display: none; }” to hide rows with image content types