Upgrading to 2023.3

Overview

Portal Config

BREAKING CHANGE
All portal apps related JSON configs have been moved to another directory.

All portal configs from portal/src/wedia-plugin-template/res have been moved to portal/src/wedia-portal-apps-configs

Therefore all project configs directories MUST be moved to the new directory (portal/src/wedia-portal-apps-configs) too

Supported browsers

We have reviewed the list of supported browsers in portal. It is now defined as last 2 years in .browserslistrc. If you need to support older browsers (which you should not), you can set back old config: 1%,last 2 versions,not ie <= 8 or adapt it to your needs

https://browsersl.ist/

Portal server-side’s style

This upgrade will allow portal to have a server-side generated style. This will be used to switch portal colors from wedia-config.

New “default” configuration for the detail page of an asset in Portal

Portal detail pages can now display metadatas based on the configured structure of the asset library.

Then, the display in Portal becomes the same as in Back-Office : all fields of the library where the asset is attached and that have its property visible set to true will be displayed in the order defined by their property"“index"”.

Section titles are defined by a field with name starting by “separator_”.

To enable this behaviour, you have to set $dam.details.defaultCursorConfig.defaultAssetDetailMeta.column[].tabs[].auto to true and $dam.details.defaultCursorConfig.defaultAssetDetailMeta.column[].tabs[].config should not be an array anymore (this becomes the default configuration in starter-kit).

In both modes (auto or manual) only metadatas with corresponding data are displayed.

Reference page : Asset details page

Back-Office changes in starter-kit

starter-kit settings for the Back Office have changed :

  • Menu entries (rubrique) for DAM and Administration have been deactivated as we now provide an automatically generated menu based on permissions. (it is still possible to contribute and use rubrique)

  • Back-Office default widgets have been re-worked

Reference page: Backoffice - Widgets and menus

Emails

An important upgrade has been made for all the emails sent by the application. Existing projects should not be affected.

Here is the link to the page which explains the upgrade, the new behaviour and how it’s working with the old way of customizing emails : Email templates & customization

Security

Domain objectactions

This domain is now activated by default. It is recommended to activate it.

An action view has been added. Its purpose is similar to other objectactions’s actions: define if a user is granted to view a type of object. This action is used to generate the menu.

WEDIA Packaged - Default rule

@pkgV1ObjectActions('view')

WEDIA Packaged - Developper

@pkgIsSurferDeveloper()

Macro @pkgV1ObjectActions('view') will grant users if they have at least one permission on the objectname

Domain objectstruct

This domain is now activated by default. It is recommended to activate it. It is mandatory to activate it to enable structures management from the wedia-config interface.

objectstruct/delete

WEDIA Packaged - Default rule
@pkgV1ObjectStruct('delete')
WEDIA Packaged - Developper

objectstruct/insert

WEDIA Packaged - Default rule
WEDIA Packaged - Developper

objectstruct/update

WEDIA Packaged - Default rule
WEDIA Packaged - Developper

 

Default NAR changes

Structures changes

asset

Field dteendrights no longer has pkg/wediaconfig/custom tag as it is considered as a system property

Fields changes

  • dteendrights

    • Tags:

      • Removed: pkg/wediaconfig/custom

  • source

    • Tags:

      • Added: rest_api_include


pimasset

Fields changes

  • source

    • Tags:

      • Added: rest_api_include


pkgsecugroup

The rule that was setting object selector as mandatory has been removed as more permissions are not object related.

Faces


pkgsecupermission

Permission added to list as list of permission is only accessed by developers who are keen to see the permission technical definition

Fields changes

  • permission

    • In list:
      false --> true


lang

Added tag so lang object is accessible through wedia-config screens

Tags

Added

  • rest_api_include/appsettings

Instances changes

pkgroletemplate

 

pkgroletemplate/997

  • modified: 23/09/2022 16:52:23 --> 13/04/2023 17:47:28

  • permissions: Changes only are displayed

  • rubrique: ,10044,10154,10151,10152,10176,10045,10178,10047,10046,10070,10072,10075,10140,10102,10114,10161,10177,10179,10157,10147,10128,10158,10131,10132,10171,10169,10170,10165, --> ,10044,10151,10176,10152,10045,10047,10046,10178,10070,10140,10072,10075,10102,10132,10183,


pkgroletemplate/998

  • modified: 23/09/2022 16:57:05 --> 13/04/2023 17:47:57

  • permissions : Changes only are displayed

  • rubrique: ,10070,10072,10075,10102,10114,10161,10177,10157,10128,10158,10131,10132,10147, --> ,10070,10072,10075,10102,10132,10183,


pkgroletemplate/999

  • modified: 23/09/2022 17:05:22 --> 13/04/2023 17:48:11

  • permissions : Changes only are displayed


resolution

Resolution instances were lacking translations.

resolution/1

  • modified: 14/01/2019 16:41:57 --> 18/04/2023 16:30:48

  • owner: 15 --> 1

  • descriptionde: Added value --> Ein Thumbnail von 200 Pixeln

  • descriptionfr: Added value --> Une vignette de 200 pixels

  • namede: Added value --> Klein

  • namefr: Added value --> Petit


resolution/2

  • modified: 14/01/2019 16:42:19 --> 18/04/2023 16:31:32

  • owner: 15 --> 1

  • descriptionde: Added value --> 500 Pixel breite Wiedergabe

  • descriptionfr: Added value --> Une image de 500 pixels de large

  • namede: Added value --> Mittel

  • namefr: Added value --> Moyen


resolution/3

  • modified: 14/01/2019 16:42:41 --> 18/04/2023 16:32:19

  • owner: 15 --> 1

  • descriptionde: Added value --> Eine vollständige Wiedergabe des Bildes

  • descriptionfr: Added value --> Rendu complet de l'image

  • namede: Added value --> Groß

  • namefr: Added value --> Large


resolution/4

  • modified: 17/01/2019 15:29:46 --> 18/04/2023 16:32:44

  • owner: 15 --> 1

  • descriptionde: Added value --> Das Bild im Originalformat

  • descriptionfr: Added value --> Une image dans son format original

  • namede: Added value --> Original

  • namefr: Added value --> Original


resolution/5

  • modified: 15/01/2019 17:55:48 --> 18/04/2023 16:27:51

  • owner: 15 --> 1

  • descriptionde: Added value --> Eine PDF-Wiedergabe des Dokuments

  • descriptionfr: Added value --> Une version PDF du document

  • namede: Added value --> Pdf

  • namefr: Added value --> PDF


resolution/6

  • modified: 17/01/2019 15:30:44 --> 18/04/2023 16:29:32

  • name: Document --> Original

  • owner: 15 --> 1

  • descriptionde: Added value --> Das Dokument im Originalformat

  • descriptionfr: Added value --> Le document dans son format original

  • namede: Added value --> Original

  • namefr: Added value --> Original


resolution/7

  • modified: 23/07/2019 16:30:40 --> 18/04/2023 16:40:55

  • name: SD --> Small definition

  • owner: 15 --> 1

  • descriptionde: Added value --> Ein MP4-Video mit niedriger Auflösung (512 Pixel).

  • descriptionfr: Added value --> Une vidéo MP4 de basse résolution (512px)

  • namede: Added value --> Kleine Auflösung

  • namefr: Added value --> Petite définition


resolution/8

  • modified: 23/07/2019 16:30:51 --> 18/04/2023 16:42:16

  • name: MD --> Medium definition

  • owner: 15 --> 1

  • descriptionde: Added value --> Ein MP4-Video mit mittlerer Auflösung (768 Pixel).

  • descriptionfr: Added value --> Une vidéo MP4 de résolution moyenne (768px)

  • namede: Added value --> Mittlere Auflösung

  • namefr: Added value --> Définition moyenne


resolution/9

  • modified: 23/07/2019 16:28:59 --> 18/04/2023 16:43:00

  • name: HD --> High definition

  • owner: 15 --> 1

  • descriptionde: Added value --> Ein hochauflösendes MP4-Video (1280 Pixel).

  • descriptionfr: Added value --> Une vidéo MP4 haute définition (1280px)

  • namede: Added value --> Hochauflösend

  • namefr: Added value --> Haute définition


resolution/10

  • modified: 23/07/2019 16:34:26 --> 18/04/2023 16:43:29

  • owner: 15 --> 1

  • descriptionde: Added value --> Bildausschnitt Video

  • descriptionfr: Added value --> Une image de la vidéo

  • namede: Added value --> Poster

  • namefr: Added value --> Poster


resolution/11

  • modified: 14/01/2019 16:44:22 --> 18/04/2023 16:44:51

  • name: Watermark --> Watermarked

  • owner: 15 --> 1

  • descriptionde: Added value --> Ein Bild mit Wasserzeichen

  • descriptionfr: Added value --> Une image filigranée

  • namede: Added value --> Mit Wasserzeichen

  • namefr: Added value --> Filigranée


resolution/12

  • modified: 09/03/2020 18:09:31 --> 18/04/2023 16:44:38

  • name: Watermark --> Watermarked

  • owner: 15 --> 1

  • descriptionde: Added value --> Video mit Wasserzeichen

  • descriptionfr: Added value --> Une vidéo filigranée

  • namede: Added value --> Mit Wasserzeichen

  • namefr: Added value --> Filigranée


resolution/13

  • modified: 23/07/2019 16:31:49 --> 18/04/2023 16:44:05

  • owner: 15 --> 1

  • descriptionde: Added value --> WMV für Powerpoint-Präsentationen geeignet

  • descriptionfr: Added value --> Un fichier WMV adapté à une présentation Powerpoint.

  • namede: Added value --> Powerpoint

  • namefr: Added value --> Powerpoint


resolution/15

  • modified: 04/12/2019 15:50:51 --> 18/04/2023 16:24:32

  • owner: 15 --> 1

  • descriptionde: Added value --> Archiviertes Original

  • descriptionfr: Added value --> L'archive dans son format original

  • namede: Added value --> Original

  • namefr: Added value --> Original


resolution/16

  • description: Added value --> A MP3 rendition of the audio

  • modified: 05/12/2019 12:29:10 --> 20/04/2023 11:01:15

  • owner: 15 --> 1

  • descriptionde: Added value --> Eine MP3-Wiedergabe des Audios

  • descriptionfr: Added value --> Une version MP3 de l'audio

  • namede: Added value --> MP3

  • namefr: Added value --> MP3


resolution/17

  • modified: 15/01/2019 17:55:48 --> 18/04/2023 16:34:08

  • owner: 10 --> 1

  • descriptionde: Added value --> 1920px breite Webvorschau

  • descriptionfr: Added value --> Aperçu de 1920 pixels de large pour le web

  • namede: Added value --> Webvorschau (groß)

  • namefr: Added value --> Prévisualisation Web grand format


resolution/18

  • modified: 17/01/2019 09:35:13 --> 18/04/2023 16:35:34

  • owner: 10 --> 1

  • descriptionde: Added value --> Ein Thumbnail von 200 Pixel (mit Wasserzeichen)

  • descriptionfr: Added value --> Une vignette de 200 pixels (avec filigrane)

  • namede: Added value --> Klein mit Wasserzeichen

  • namefr: Added value --> Petite avec filigrane


resolution/19

  • modified: 17/01/2019 09:35:47 --> 18/04/2023 16:34:54

  • owner: 10 --> 1

  • descriptionde: Added value --> 500 Pixel breite Wiedergabe (mit Wasserzeichen)

  • descriptionfr: Added value --> Rendition de 500 pixels de large (avec filigrane)

  • namede: Added value --> Mittel mit Wasserzeichen

  • namefr: Added value --> Moyenne avec filigrane


resolution/20

  • modified: 17/01/2019 09:36:25 --> 18/04/2023 16:36:26

  • owner: 10 --> 1

  • descriptionde: Added value --> Eine vollständige Wiedergabe des Bildes (mit Wasserzeichen)

  • descriptionfr: Added value --> Une version complète de l'image (avec filigrane)

  • namede: Added value --> Groß mit Wasserzeichen

  • namefr: Added value --> Large avec filigrane


resolution/21

  • modified: 25/11/2019 10:10:37 --> 18/04/2023 16:37:34

  • owner: 81 --> 1

  • descriptionde: Added value --> Das Dokument im Originalformat

  • descriptionfr: Added value --> Le document dans son format original

  • namede: Added value --> ORIGINAL

  • namefr: Added value --> ORIGINAL


resolution/22

  • modified: 25/11/2019 11:36:32 --> 18/04/2023 16:38:10

  • owner: 81 --> 1

  • descriptionde: Added value --> Eine PDF-Wiedergabe des Dokuments

  • descriptionfr: Added value --> Une version PDF du document

  • namede: Added value --> Pdf

  • namefr: Added value --> PDF


resolution/23

  • modified: 05/12/2019 10:18:35 --> 18/04/2023 16:38:39

  • owner: 81 --> 1

  • descriptionde: Added value --> Das Dokument im ZIP-Format

  • descriptionfr: Added value --> Le document au format ZIP

  • namede: Added value --> ZIP

  • namefr: Added value --> ZIP


resolution/24

  • modified: 05/12/2019 12:26:09 --> 18/04/2023 16:37:08

  • owner: 81 --> 1

  • descriptionde: Added value --> Das 3D-Modell im Originalformat

  • descriptionfr: Added value --> Le modèle 3D dans son format original

  • namede: Added value --> Original

  • namefr: Added value --> Original


resolution/25

  • modified: 26/10/2022 17:40:09 --> 18/04/2023 16:39:15

  • descriptionde: Added value --> Der Text im Originalformat

  • descriptionfr: Added value --> Le texte dans son format original

  • namede: Added value --> Original

  • namefr: Added value --> Original


role

Default menu has changed for many roles

role/4

  • modified: 13/01/2023 09:40:57 --> 29/03/2023 18:29:47

  • rubrique: ,10044,10172,10174,10173,10065,10066,10154,10151,10152,10176,10123,10175,10045,10178,10047,10046,10070,10072,10075,10140,10102,10114,10161,10177,10179,10157,10147,10128,10158,10131,10132,10171,10169,10170,10165,10124,10180, --> ,10044,10172,10174,10173,10151,10152,10176,10180,10123,10124,10175,10045,10178,10047,10046,10070,10072,10075,10102,10140,10114,10161,10177,10179,10157,10147,10128,10158,10132,10183,


role/27

  • modified: 17/12/2021 18:59:09 --> 29/03/2023 18:29:58

  • rubrique: ,10044,10100,10141,10065,10066,10154,10151,10152,10176,10045,10178,10047,10046,10104,10105,10139,10143,10109,10113,10111,10112,10110,10144,10145,10146,10070,10072,10075,10140,10102,10114,10161,10177,10157,10147,10128,10158,10131,10132,10005,10003,10004,10007,10009,10008,10036,10068,10059,10038,10014,10023,10019,10025,10054,10016,10057,10179, --> ,10044,10151,10152,10176,10045,10178,10047,10046,10070,10072,10075,10102,10140,10114,10161,10177,10179,10157,10147,10128,10158,10132,10183,


role/28

  • modified: 17/12/2021 19:28:28 --> 29/03/2023 18:30:10

  • rubrique: ,10070,10131,10132,10072,10075,10102,10114,10157,10161,10147,10177,10128,10158, --> ,10070,10072,10075,10102,10114,10161,10177,10157,10147,10128,10158,10132,10183,


rubrique

BO menu has been reorganized and many instances deactivated because menu is now automatically generated based on permissions

Plugins changes

PACKAGED_Appearance_Config (ADDED)

This plugin will bring new endpoints allowing to read and write logos and colors in the san


PACKAGED_BOV3_DashboardWidgets

Default configuration of this plugin has changed since last version :

  • configured_widgets A new syntax is available to define criteria for querying instances to display inside a widget.
    Before, you would define a query entry. This property is deprecated, but is still understood by the plugin.
    Now, you will define a filters entry. Filters entry uses the same syntax as /bov3/datalist/preload.jsp uses.
    It is recommended to update your current configuration so that links are available within each widgets.

  • remove_widgets By default, listAssetsCall2Action widget is now removed:

    • It came with an image that was not configurable easily

    • It didn’t bring much business value

  • default_widgets Roles no longer include listAssetsCall2Action widget

  • default_roletemplate_widgets: Role templates no longer include listAssetsCall2Action widget

See Backoffice - Widgets and menus for detailed explanations.

plugin.xml


PACKAGED_BOV3_Extensions (ADDED)

This plugin provides 2 features:

  • A new form_action=managelists (without form_object parameter). The related page will display the list of data-types the connected user is allowed to take actions on. Data-types are organized per familly.

  • The ability to generate the BO menu for dam domain automatically based on user’s permissions.

This plugin is required when some business users are allowed to make changes to the data model: it will adapt the menu for each connected user based on his granted permissions.

plugin.xml

  • Parameters:

    • list.display.config:

      • type: json

      • mandatory: true

      • description: Configuration of lists to display.
        families parameter can take following values : objectfamily.id, objectfamily.name, or a sql query on name field (eg: dam.metadata.%).
        Families can be combined to be displayed in the same table.

      • default value:

    • list.security.actions:

      • type: string

      • mandatory: false

      • description: Define actions of domain objectactions used to apply security rules on list families content.
        Actions can be multiple and separated by a comma.
        A list object will be displayed if it is authorized by any action
        No security rule will be applied if parameter is empty or action is unknown.

      • default value: create,multiupdate

    • enable_auto_menu:

      • type: boolean

      • mandatory: false

      • description: Enable auto generated menu

      • default value: true

    • auto_menu_items:

      • type: string

      • mandatory: false

      • description:

      • default value: dam,admin,analytics


PACKAGED_DAM_DashboardWidgets

Widgets provided by this plugin (including listAssetsCall2Action) now support multiple objects through wedia_packaged_dam_dashboard_asset_objectname parameter.

This will make sure every dam collection can be handled by the widgets.

plugin.xml

  • Parameters:

    • UPDATED wedia_packaged_dam_dashboard_asset_objectname:

      • default value:

        • Old:

        • New:


PACKAGED_Faces (ADDED)

This plugin provides 2 Faces

  • One that make fields with tag pkg/wediaconfig/custom/archived non editable, non visible and compulsory

  • One that make fields with tag pkg/wediaconfig/custom/mandatory mandatory

This plugin is required if business users are allowed to manage the data-model: Fields created through the new wedia-config data-model screens are made mandatory only with the tag pkg/wediaconfig/custom/mandatory

plugin.xml

  • Parameters:

    • apply_archived_tag_faces:

      • type: boolean

      • mandatory: true

      • description: If set to true, the program will apply hide fields wearing
        pkg/wediaconfig/custom/archived tag by making them non visible, non editable and non mandatory

      • default value: true

    • apply_mandatory_tag_faces:

      • type: boolean

      • mandatory: true

      • description: If set to true, the program will apply mandatory faces on field wearing
        pkg/wediaconfig/custom/mandatory tag

      • default value: true

    • face_level:

      • type: int

      • mandatory: false

      • description: Level of priority for the faces created by the program.
        Set to 1000 by default equals to LEVEL_PROJECT

      • default value: 1000


PACKAGED_Security

The plugin default configuration for property permissions_inferring has been update to add infered permissions to wedia-config application based on user’s permission (if the user has permission to manage one feature that is available in wedia-config screens, then he is granted access to the interface).

Added item in permissions_inferring:

plugin.xml

security.xml


WXM_BO_Options

plugin.xml

  • Parameters:

    • ADDED com.noheto.waf.DetectSlowPostHttpServletRequest.Options.MaxMilliseconds:

      • type: integer

      • mandatory: false

      • description: Maximum number of milliseconds that file reception can take in POST. If 0 then no limit.

      • default value: 0

    • ADDED com.noheto.waf.DetectSlowPostHttpServletRequest.Options.MaxMillisecondsBetweenTwoCall:

      • type: integer

      • mandatory: false

      • description: Maximum number of milliseconds between two byte receptions during a POST. If between two bytes, the time is exceeded then it is considered an attempt to ''deny'' service. If 0 then no limit.

      • default value: 5000

    • ADDED com.noheto.waf.DetectSlowPostHttpServletRequest.Options.MinOctetsBySecond:

      • type: integer

      • mandatory: false

      • description: Minimum bandwidth in bytes/seconds below which the connection will be considered as a service ''deny'' attempt and therefore cut. If 0 then no limit.

      • default value: 100


WXM_IA_CUSTOM_LABELS

plugin.xml

  • Parameters:

    • ADDED mappingPresenceIdentifiable:

      • type: string

      • mandatory: false

      • description: Liste des labels ,en anglais, qui indiquent une présence identifiable

      • default value: Face

    • UPDATED variation:

      • default value:

        • Old:

        • New:

security.xml


WXM_MEDIACLOUD_V2 (ADDED)

plugin.xml

  • Services:

    • com.wedia.mediacloud.LifeCycle (com.noheto.extensions.interfaces.services.IPluginLifeCycleBusinessService)

    • com.wedia.mediacloud.cloudApi.CloudRestAPI (com.noheto.extensions.interfaces.services.AbstractPluginApiService)

Plugins Config changes

PACKAGED_Appearance_Config

  • Activated:

    • true


PACKAGED_BASES

This plugin HAS to be activated if business users are to configure portal through wedia-config

  • Activated:

    • true


PACKAGED_BOV3_Extensions

  • Activated:

    • true


PACKAGED_CONFIGS

This plugin HAS to be activated if business users are to configure portal through wedia-config

  • Activated:

    • true


PACKAGED_Faces

  • Activated:

    • true

Security changes

Domains changes

objectactions

  • Enabled: false --> true


objectstruct

delete
  • Rules:

    • WEDIA Packaged - Default rule

insert
  • Rules:

    • WEDIA Packaged - Default rule

update
  • Rules:

    • WEDIA Packaged - Default rule

RESTAPI DAM/DATA & metadata configuration in wedia-config

When using metadata editing in wedia-config on a production server, in order for the DAM & DATA API configurations to synchronize with the structure changes, it is necessary to activate the automatic hot update of the API configurations by setting the lazyDeployDamServicesInProd parameter of the WXM_RESTAPI plugin to true. Otherwise, the API configurations will reflect the metadata changes only after restarting the WXM_RESTAPI plugin.