Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

Please note that the old Lucene indexer is no longer supported, please use the ElasticSearch search.

Note

The ElasticSearch support for versions prior to 6.8 has been dropped.

User interface changes

The filters will now remove terms with 0 occurrences (except tree filters)

...

This behaviour has to be activated per filter :

Code Block
{
  "field": "keywords",
  "filterCursorUsingAggregate": true,
  ...

This will add some load on the server and ELS.

It is now possible to navigate from the portal preview windows :

...

The suggest bar is a bit longer, and the select colour is lighter :

Info

Please note that we now strongly advise to tag the properties you want to be part of the suggester with the tag “autosuggest”.

...

The portal will now display the version number :

...

If you prefer not to display the version number, you may use the

Code Block
src/wedia-plugin-template/res/_portal/menu/hide-server-version.json

config entry point.

The facets will now be honoured on the asset view, and profile view in the portal.

Security Rules changes

First, and foremost, new Security Domains and Actions can now be included into plugins by adding a file names “security.xml” in config directory : this is a sample code to explain how this can be done of such file:

Code Block
languagejavaxml
public void installSecurityDomain() {
    if(Startup.isModeProduction() ) // Deny if the server is in production.
      return;

    try {
      boolean save = false;
      Domain d = SecurityManager.getDomain("MediaCloud");
 <?xml version="1.0" encoding="UTF-8" ?>
<security>
    if (d == null) {
        log.warn("The security domain 'MediaCloud' doesn't exist. Try to create it");
        SecurityManager.addDomain("MediaCloud", "mediacloud", false);
        d = SecurityManager.getDomain("MediaCloud");<domain name="boards" description="Devine" system="true" enabled="false">
        save = true;
      }
      Action a = d.getAction("mediaAction");
      if( a == null ) {
        log.warn("The security action 'MediaCloud::mediaAction' doesn't exist. Try to create it");
<action name="makePublicBoard" description="Allow user to make a public board">
       d.addAction("mediaAction");     <param    a = new Action("mediaAction");
        a = d.getAction("mediaAction");
        a.addParameter("surfer", SurferParameter.class.getName());
        a.addParameter("object", ObjectNohetoParameter.class.getName());name="surfer" type="wsnoheto.securite.parameter.SurferParameter"></param>
             a.addParameter("objectname", LowerStringParameter.class.getName());
        a.addParameter("method", LowerStringParameter.class.getName());
        save = true;<rule name="default" description="No restriction" enabled="true" blocking="false">true</rule>
       } </action>
     if( save ) {
        log.warn("Security domains updated");
        SecurityManager.saveXml();
      }
    } catch(Exception e) {
      log.error("Can't update security domains and actions for MediaCloud. Try to create it manually");
    }
  }

Two new domains have been added :

...

</domain>
</security>

The syntax of this file is the same as the global schema.xml generated by security/admin UI.

The following rules apply on merge :

  • Missing domain are added ( as disabled ) with their actions and rules.

  • Missing actions are added with their rules.

  • New rules are not added to existing actions.

  • New macros are added.

  • The runtime config is set but the global file is not saved on disk until you save it manually or do a backup.

  • Be careful to add some default rule to new action of an existing domain if you don’t want weird behaviour on production because actions can’t be disabled alone.

Two new domains have been added : 

MediaCloud/mediaAction : this domain and action is added by the WXM_DAMDY plugin. They allow for filtering authorised action when manipulating Videos : creating new chapters, setting video poster, subcaptionning…

boards/makePublicBoard : this domain and action allows for authorizing the connected user to create or not public boards.

Portal Setup changes

Setting up eTags on REST Resources

When the Portal ask for REST resources, such has a list of keywords, or folders, in order to populate filters, it is very likely this list has not changed since the last call.

...

Please read the full documentation for understanding how to set everything up.

...

DXM

Automatic file format switching :

If you do not provide an explicit file format in the variation, Wedia will return the most adapted format, depending on the browser (most likely it will be webp) :

...

Info

The automatic switching is now done on the Akamai property level, so there is some parameters that need to be set up by eSaas in order to have it working.

Selecting the best trade-off between performance and quality :

When you are cropping on the content picker, you must start with a specific variation that will serve as the basis for your crop result :

...

So it’s up to you to understand your client needs, and set up the best option for the “starting point” variation : this is available in the WXM_VARIATION_API plugin setup, in that option :

...

New analytics

We are creating a new version of the back-office analytics screens. The old version will continue to work for a long time, but this new version will be in some point in the future the default version for the clients.

...

To activate the new Analytics, you must activate the plugin “WXM_ANALYTICS_V2“ and create a new back office menu that will point to : wcm.jspz?form_action=stats

PACKAGED_DAM_Utils default configuration

The plugin default configuration has changed in order to automatically publish items created from portal in corresponding funds:

Code Block
    {
      "objectSelector": "#damobject",
      "preventGuard": {
        "classAlias": "negate",
        input: {
          "preset": "canPublish"
        }
      },
      "workflowTrigger": [
        "publish"
      ]
    },

This configuration change relies on new available transformers (see Metadata and AI extraction with DAM_Utils) and new preset:

Code Block
{
  "key": "canPublish",
  "classAlias": "every",
  "input": [
    {
      "preset": "preventExecutionFromMassImport"
    },
    {
      "classAlias": "isAllowed",
      "init": {
        "action": "changestatus",
        "params": {
          "newstatus": "6"
        }
      }
    }
  ]
}

Updated structures

asset

Info

None of the changes are required.

  • autosuggest tag has been added to some properties to provide better suggestions to the user on both BO and portal applications

  • Some properties have been added inlist to provide a better default configuration for assets in datalist BO screens

  • mediaid has been removed for improved performances. You might still need to keep it if you need to provide the mediaid to 3rd party softwares

Fields changes:

  • modified: Added inlist

  • status: Added inlist

  • name: Added tag autosuggest

  • namefr: Added tag autosuggest

  • binary:

    • Added inlist

    • Added tag autosuggest

  • source: Added editable

  • keywords: Added tag autosuggest

  • namede: Added tag autosuggest

  • description: Added tag autosuggest

  • descriptionfr: Added tag autosuggest

  • descriptionde: Added tag autosuggest

  • mediaid: Field removed. (it is not required to remove this field from your system)

assetgeography

Info

This change is not required

The default value of activated has been changed to 2 to be more relevant with the chosen workflow

Fields changes:

  • activated: Default value is now 2 (inactive)

edplitem

Info

This change is not required

Object configuration was changed to provide a better default user experience

Fields changes:

  • user: Removed inlist

edpltask

Info

This change is not required

Object configuration was changed to provide a better default user experience

Fields changes:

  • description: Removed inview

  • duedate: Removed inview

  • attachedfile: Removed inview

  • channels: Removed inview

  • group: Removed inlist viewable

massimportjob

Warning

These changes are required to enable keeping a link between jobs and subjobs.

Subjobs are created when only some items from a job are submitted

Fields changes:

  • id: Added tag subjob_prop

  • status: Added tag subjob_prop

  • jobowner: Removed mandatory

  • subjobs: New property

pimasset

Info

This change is not required

Object configuration was changed to provide a better default user experience

status has been tagged rest_api_include so it can be used as a filter

Fields changes:

  • status: Added tag rest_api_include

  • keywords: Removed tags gallerycard_meta and gallerycard_meta/without_label

  • productassettype: Added tags gallerycard_meta and popinlist_search_group

product

Info

This change is not required

Object configuration was changed to provide a better default user experience

organization has been added to provide a organization based segmentation

Fields changes:

  • hero: Added tag gallery_thumbnail

  • organization: Added field

role

Info

This change is not required

Object configuration was changed to provide a better default user experience

Fields changes:

  • rubrique: Removed inlist

  • resolutions:

    • Removed inlist

    • Removed viewable

user

Note

Some changes might be useful for your system

password has been tagged rest_api_profile_include : On some systems, users are not allowed to change their password as they always use SSO. Adding this tag allows to retrieve a dummy password value and facets information regarding this field.

Fields changes:

  • password: Added tag rest_api_profile_include

  • firstname: Added tag elasticsearch/analyzer/keyword

vueapphomewidget

Note

Adding those fields allows to use widget description for each cart instead of the cart own description. As a result, the description can be adapted to the widget and translated.

usecartdescription allows to force the widget to use the cart description.

Fields changes:

  • descriptioncart1: Added field

  • descriptioncart1fr: Added field

  • descriptioncart1de: Added field

  • descriptioncart2: Added field

  • descriptioncart2fr: Added field

  • descriptioncart2de: Added field

  • descriptioncart3: Added field

  • descriptioncart3fr: Added field

  • descriptioncart3de: Added field

  • descriptioncart4: Added field

  • descriptioncart4fr: Added field

  • descriptioncart4de: Added field

  • usecartdescription: Added field

Troubleshooting

If you are experimenting issues with Analytics API calls ending with 500 errors on Portal homepage can be solved using a complete Analytics reload as described here :

https://crossmedia.atlassian.net/browse/WXM-10771