Asset Order

Advanced-UI NOVA-UI

The "Asset Order" plugin allows a user to order assets that he is not allowed to download by default. An authorized user releases the orders or rejects them. Once an order has been approved, the user who made the order receives a PIN-link.

Properties

To be configured in {home}/appserver/conf/custom.properties

assetOrder.license

type: String, required: yes, default: -

License key (delivered by brix IT Solutions)

assetOrder.nodeId.order

type: long, required: yes, default: -

This property contains the Id of the node where the order assets should be collected. Each order will create a subnode.

assetOrder.nodeId.approve

type: long, required: yes, default: -

The approved orders will be moved to the node with the Id set in this property. They will be shared with a PIN-link, therefore this node needs to have PINs available (To be configured in {home}/appserver/conf/tabconfiguration.xml).

assetOrder.nodeId.decline

type: long, required: yes, default: -

The declined orders will be moved to the node with the Id set in this property.

assetOrder.infofieldIds.all

type: List of long (comma-separated) ,required: no, default: -

This list of informationfield-Ids specify which information can be provided by the user during the order. They have to be node-informationfields and also have to be assigned to the node configured in assetOrder.nodeId.*.

assetOrder.infofieldIds.required

type: List of long (comma-separated) , required: no, default: -

All the informationfields with the Ids that are configured in this property have to be set by the user during the order. The Ids also need to be listed in the assetOrder.infofieldIds.all

assetOrder.downloadFormatIds

type: List of int (comma-separated) , required: yes, default: -

This property takes a list of downloadformatIds which are available in the PIN-link.

assetOrder.pinTimeToLiveInDays

type: int, required: no, default: 14

The default time-to-live for the PIN is set to 14 days. If you'd like another value, this property can be used.

assetOrder.sendOrderMail

type: boolean, required: no, default: true

Whether or not to notify the relevant users that a new order is awaiting approval.

assetOrder.userIds

type: List of long (comma-separated) , required: no, default: -

This property takes a list of user-Ids from users who have the permission to approve the orders. They will receive an e-mail after a new order has been placed. Any superadmin can approve the orders as well. Therefore this property does not necessarily have to be set, but then there will be no e-mail alert about new orders.

assetOrder.groupIds

type: List of long (comma-separated) , required: no, default: -

This property takes a list of group-Ids from groups that have the permission to approve the orders. The members of the groups will receive an e-mail after a new order has been placed. Any superadmin can approve the orders as well. Therefore this property does not necessarily have to be set, but then there will be no e-mail alert about new orders.

assetOrder.approvalMode

type: String , required: no, default: single_user_release, since: 1.2.0

Which approval mode to use. Known values:

  • auto_release - automatically release the order without any release (just stores the assetOrder.infofieldIds on the created collection)
  • single_user_release - orders can be released by anyone in assetOrder.userIds or assetOrder.groupIds (default)
  • asset_owner_release - assets in an order must be released by the "asset owner". Needs both assetOrder.infoFieldId.assetApprover and assetOrder.nodeId.assetApporverId to be set.
assetOrder.infoFieldId.assetApprover

type: long , required: when using asset_owner_release, default: -

When using asset_owner_release, the information field on the asset that stores the "asset owner" (noderef field)

These nodes can be created automatically by the User Sync Field extension

assetOrder.nodeId.assetApporverId

type: long , required: when using asset_owner_release, default: -

When using asset_owner_release, the information field on said "asset owner" node that stores the actual user ID (number field)

This infofield can be written automatically by the User Sync Field

assetOrder.creditsMode.enabled

type: boolean , required: no, default: false

Enables the download credits feature (Users needs credits to be able to order an asset). Only works if it's enabled in the license with the property creditsMode set to true.

    {
        "licensee": "customer",
        "product": "assetOrder",
        "creditsMode": true
    }
assetOrder.noCreditsModeGroup

type: long , required: no, default: -

User in this group don't need credits to order an asset although the credits mode is enabled.

assetOrder.creditsExpirationPeriodInDays

type: long , required: no, default: -

Defines how many days a credit expiration period will last. after the end of a period all credits will be deleted.

assetOrder.creditsExpirationCron

type: string , required: no, default: 1 0 0 ?

CRON expression when a task will check if the credit expiration period is ended. By defaualt it will be checked once per day.

assetOrder.creditsAdministrationGroups

type: long , required: no, default: -

User in this group are allowed to administrate the download credits. If not set only Administrator are allowed to.

assetOrder.partiallyApproving.enabled

type: boolean , required: no, default: false

Enabled the feature to approve orders partially

assetOrder.sendApproveDenyMailToOwnerAndDeputy

type: boolean , required: no, default: false

Enabled the feature to send approve or deny mails to oweners or deputies of an order.

This infofield can be written automatically by the User Sync Field

E-Mail template override

The e-mail templates can be changed by adding a folder called velocityOverride to <celum-home>/appserver and adding the following lines in <celum-home>/appserver/spring/root.xml:

<bean id="customVelocityLocation" class="java.lang.String">
    <constructor-arg value="velocityOverride"/>
</bean>

Add the new templates to the velocityOverride folder, user the names from the list below:

  • ch.brix.assetApproveCustom_<lang>.vm
  • ch.brix.assetDeclineCustom_<lang>.vm
  • ch.brix.assetOrderCustom_<lang>.vm

The locale (e.g. en) is replaced by a placeholder <lang>. Make sure you add the template in every locale, even if the content is the same.

Compatibility Matrix

Asset Order CELUM (min. version)
1.0 - 1.2 5.13.3
1.6.0 6.4.0
Nova Plugin CELUM (min. version) Backend Plugin (min. version)
1.0.0 6.8.1 1.6
1.0.1 6.9.0 1.6
1.0.3 6.11.0 1.6

Screenshot

Asset Order Menu1

Asset Order Menu2

Asset Order Approve

Release Notes

1.0

Released 2018-05-07

Initial Version

1.1

Released 2019-01-16

added auto approval

1.2

Released 2020-10-09

added asset owner approval

1.6

Released 2020-10-12

Nova backend

1.7

Released 2022-09-29

Download Credits Feature

1.9

Released 2023-02-02

New Feature: Send approve or deny mail to owners and deputies