Trigger conditions

These trigger conditions work with Trigger events to further refine when Matrix triggers an event. Read Adding triggers for more information about creating a trigger.

Access permission

This condition allows you to check whether the current user has the specified permission on the asset that fired the event. For example, you could check whether or not the current user had write permission to an asset. If they do, then the action(s) specified will be performed. Select Has or Does not have from the first list provided and either Read permission, Write permission, or Admin permission from the second list.

Asset ID

This condition allows you to check the ID of the asset that fired the event. For example, if you only want to perform the action(s) specified on the home page, select the home page in this condition. The fields that are available for this condition are shown in the figure below.

Asset is of type

This condition allows you to check the type of asset that fired the event. If it matches, the action(s)specified will be performed. For example, if you only want to perform the action for standard pages, select this asset type. Select the asset type from the list provided.

Asset is tagged

This condition allows you to check with which thesaurus terms the asset that fired the event has been tagged. If the asset has been tagged with these terms, the action(s) specified will be performed. Specify, in the list provided, if the asset has to have some terms tagged on it or all of the terms tagged. In the second field, add the thesaurus terms with which the asset must be tagged. To add additional terms to the list, then select More…​. An additional field will appear on the screen. This condition can only be used once per trigger.

Asset status

This condition allows you to check the status of the asset that fired the event. The specified action(s) will be performed if the status of the asset matches. Select the status that the asset must be from the list provided.

Asset status being changed to

This condition allows you to check to which status the asset that fired the event is being changed. For example, you can evaluate if the asset’s status is being changed to Under construction. If so, the action(s) configured on the trigger will be performed. This condition will only work in conjunction with the status changed and before status changed events. In the Status of the (firing) asset is being changed to field, select one or more statuses.

This condition will only work with the before status changed or after status changed events.

Attribute changed

This condition allows you to check that a particular attribute value has changed for the asset that fired the event. For example, you can check that the name of a standard page has changed. If this is true, the action(s) specified will be performed.

For the trigger to work when using this condition, the asset attributes changed event must be selected.
  1. Select the type of asset from the first list provided.

  2. Select Save.

This action will update the list of attributes. Select the attribute to check in the second list.

Attribute value

This condition allows you to check whether a particular attribute value is equal to a specific value.

  1. Select the type of asset from the first list provided.

  2. Select Save.

This action will update the list of attributes.

  1. Select the attribute from the second list.

  2. Select either Equals or Does not equal in the third list.

  3. In the box provided, enter the value that the attribute value must or must not be.

Current user is an LDAP user

This condition allows you to check whether or not the user that fired the event is an LDAP user. This condition will match against any LDAP user types, including simple edit LDAP users, backend LDAP users, and regular LDAP users. For example, if the user currently signed in is an LDAP user, the action(s) specified will be performed.

Current user is a public user

This condition allows you to check whether or not the user that fired the event is a public user. For example, if the user is not signed in to the system, the action(s) specified will be performed.

Current user is a system administrator

This condition allows you to check whether or not the user that fired the event is a system administrator. For example, if the user currently signed in is a system administrator, the action(s) specified will be performed.

Has a child/parent

This condition allows you to check that the asset that fired the event has a parent or child asset of a particular type or is a parent or child asset of a specific asset. For example, you can check that the asset that fired the event is a child of a particular site in your system. If the asset is a child of the site, the action(s) specified will be performed. You can use the advanced options to check the link type, whether it is a dependant asset or an exclusive asset for either a parent or child of the asset that fired the event.

The following fields are available:

Has a

Select to check either the parent or child asset from the list provided.

Of type

To check the asset type of either the parent or child, select this option and choose the type from the list provided.

With ID

To check that the asset has a specific parent asset or child asset (for example, it is a child of the home page), select this option and choose the asset in the field provided.

Use only advanced link parameters

Select this option if you only want to use the fields in the optional items for advanced users.

Match only the triggering link

Select this option to match just the newly created link. This option is only available for the link created and link deleted event.

Optional items for advanced users

The following options are available for advanced users.

Link type

Select whether or not to check the type of link the parent or child asset should be from the list provided. The options available include menu link, hidden link, invisible link and reference link.

Is dependant?

Select whether or not to check that the parent or child asset is a dependant asset.

Is exclusive?

Select whether or not to check that the parent or child asset is an exclusive asset, which is an asset that is linked to only one asset.

Value

This option is used for custom development.

Interface mode

This condition allows you to check which interface the user is using. For example, you can check that the user uses the inline edit mode instead of the administration interface.

The options available are as follows:

Frontend interface

This will check that the user is viewing the website.

Backend interface

This will check that the user is using the administration interface.

Inline edit mode

This will check that the user is using the inline edit mode.

Sign-in interface

This will check that the user is viewing the Matrix sign-in box.

Cron scripts

This will check that a cron job is being run.

Keyword value

This condition will check against a keyword value on the firing asset. For example, suppose you set this condition to check the asset_name keyword as a partial match with the value news. In that case, the condition will be met if the firing asset’s name contains the value news (for example, latest news or newspaper).

To set this condition:

  1. Enter a keyword replacement in the Keyword field.

  2. Select the match type - either Partial match, Exact match, or Regex match.

  3. Enter the value against which to match.

Keyword value - group & condition matching

This condition allows you to create groups of conditions using advanced keyword logic matching, to evaluate whether your conditions are met.

In the Group logic field, specify the logic for determining if the trigger condition will be evaluated as true or not. The options available are: All groups are matched, or At least one group is matched.

In the group section, specify the logic for determining if the condition group is evaluated as true or not. Specify if All conditions are matched or At least one condition is matched. This section also allows you to set the group’s conditions, specifying the keyword to check and the pattern against which to match. Regular expressions and global keywords are supported when setting the patterns of your conditions.

Click the Add condition button to add additional conditions to a group.

Click the Delete icon for the corresponding condition to remove a condition from a group.

Click the Add group button to add additional groups to the trigger condition.

Click the Delete icon for the corresponding group to remove a group.

Metadata field updated

This condition allows you to check whether or not a metadata field for an asset has been updated. Select the metadata field to be checked for updates.

Metadata set

This condition allows you to check whether metadata has been set for a metadata field of an asset. Select the metadata field to be checked for a set value. This condition will not be met if the value of the selected metadata field is empty or set to the field’s default value.

Metadata time

This condition allows you to check whether or not an asset has 'expired'.

Select the metadata date field against which to check the time. When the metadata triggers scheduled job is run, it will check its time against the time that is entered into this metadata field for an asset. The metadata date field will be considered 'expired' if the time in which the scheduled job runs is after that in the metadata field.

This condition will not fire on assets using a default metadata date value. If you would like this condition to apply to these assets, you can create an additional trigger to set the metadata value to the default date, using the format: y-m-d h:i:s. This condition can only be used in conjunction with the metadata time trigger event and will not evaluate as true when a trigger batch process is run.

Metadata value

This condition allows you to check a value that has been entered into a metadata field for an asset.

To check a value:

  1. In the first field, select a Text, Select or Thesaurus metadata field.

  2. In the second field, select Exact match or Partial match.

  3. In the third field, enter the value to compare.

Request method

This condition allows you to check the type of HTTP request that caused the trigger to fire. Select either GET, POST, PUT or DELETE from the list provided.

REST response

This condition allows you to check the response of a REST resource on the Matrix system. That is, a REST resource asset or call rest resource trigger action. To set this condition, you must configure the condition rule against which the REST response is checked. You can choose to check against any or all of the request URLs, HTTP codes, or response bodycopies on the REST response. You can use: match, contains, is/are greater than, is/are less than, or match the regex condition. In the Input field, enter the value to check against and configure the settings of the condition.

Tree location

This condition allows you to check the asset’s location that fired in the event in the asset tree. If the asset is in the correct location, the action(s) specified will be performed. Select one or more parent assets for the location (for example, the site) in the field provided.

URL matches

This condition allows you to check whether the URL of the asset that fired the event contains a particular string. For example, you can check that the URL of the asset contains \www.example.com. If that pattern is part of the URL, the action(s) specified will be performed. Enter the string to check within the field provided, for example, \www.example.com, and select either Must be in URL or Must not be in URL.