Skip to main content
Skip table of contents

Button Dropdown Widget

Definition

The Button Dropdown Widget allows to display a button on a feature with a dropdown list in which there are several buttons, allowing to redirect the user to other features.

This Widget has the same properties as the Button Widget but includes other properties to define the dropdown list (see below).

Configuration

Properties

Property name

Type

Mandatory

Description

Values (default value in bold)

entries

-

NO

Allows to define the list of redirection to features.

-

entries properties

Property name

Type

Mandatory

Description

Values (default value in bold)

entry

-

NO

Allows to define properties of each redirection.

This tag is configured as many times as we want to add links.

-

entry properties

Each entry will have the following configuration:

Property name

Type

Mandatory

Description

Values (default value in bold)

authenticationLevelSufficient

Boolean

NO

Used to define if the feature is "sensitive" or not.

If true, to access the Feature, the user will have to upgrade his/her authentication level (see settings BUM).

true, false

divider

Boolean

NO

Allows to organize the dropdown list by inserting a dividing line after the link.

true, false

icon

String

NO

Used to define the icon to be displayed inside the button.

For available icons, see https://fontawesome.com/v4.7.0/icons/

fa fa-"name of the icon"

id

String

NO

Used to define the id of the feature.

-

target

ButtonTargetSupport

NO

If no target is defined, the button will have no action.

Used to define the redirection of the user to another feature.

This is a polymorphic property that can be of three different types:

ButtonLinkTarget

Allows to configure a link that will open in the current tab or a new tab.

The “target” property can take two values:

SELF = open link in same tab

NEW_TAB = open link in a new tab

XML
<target xsi:type="ctdbum:LinkTargetType">
   <link>feature://test_user-card-update/{dataKey.id}</link>
   <target>SELF | NEW_TAB</target>
</target>
ModalWidgetTarget

Open a Widget in a modal dialog (for such an action as: reset a password, role dashboard, ...).

The size of the dialog can be controlled by defining a display option on the widget (modalSize : XS ,SM,LG)

XML
<target xsi:type="ctdbum:ModalWidgetTargetType">
   <widgetToOpen id="role-dashboard" xsi:type="ctdbum:RoleDashboardWidgetType">
      ...
   </widgetToOpen>
</target>
ModalTarget

Allows to configure a link that will open in a modal dialog. It is similar to the widgetToOpen case but the modal is fully routable using the (secondary:…) url pattern.

The “onDismiss” property control the behaviour of the primary route (the one behind the modal) after the modal is dismissed.

NONE = Do nothing

REFRESH = Refresh the primary route

XML
<target xsi:type="ctdbum:ModalTargetType">
  <link>feature://test_user-card-read/{dataKey.id}</link>
  <modalSize>LG</modalSize>
  <onDismiss>NONE</onDismiss>
</target>

For a link to a feature:

feature://<featureId>/{dataKey.id}

For a hub Feature: feature://user-hub.user-card-read/{dataKey.id}

For a link to a user task:

task://<action>/<id>

  • task://to-approve/<taskInstanceId>

  • task://about-me/<operationId>

  • task://submitted-by-me/<operationId>

  • task://admin/<operationId>

Example

Code

Link configuration

CODE
<action id="btn-dropdown" xsi:type="ctdbum:ButtonDropdownWidgetType">
	<hidden>false</hidden>
    <config>
    	<align>LEFT</align>
        <authenticationLevelSufficient>false</authenticationLevelSufficient>
        <borderless>false</borderless>
        <circle>true</circle>
        <color>green</color>
        <icon>fa fa-pencil</icon>
        <label>true</label>
        <link>feature://user-raw-update/{routeObjectId}</link>
        <outline>true</outline>
        <size>XS</size>
        <entries>
        	<entry>
            	<authenticationLevelSufficient>false</authenticationLevelSufficient>
                <divider>true</divider>
                <icon>fa fa-pencil-square</icon>
                <id>user-card-update</id>
                <target xsi:type="ctdbum:LinkTargetType">
                  <link>feature://user-card-update/{routeObjectId}</link>
                  <target>SELF | NEW_TAB</target>
                </target>
            </entry>
		</entries>
	</config>
</action>

Widget To Open configuration

CODE
<action id="btn-dropdown" xsi:type="ctdbum:ButtonDropdownWidgetType">
	<hidden>false</hidden>
    <config>
    	<align>LEFT</align>
		<authenticationLevelSufficient>false</authenticationLevelSufficient>
        <borderless>false</borderless>
        <circle>true</circle>
        <color>green</color>
        <icon>fa fa-pencil</icon>
        <label>true</label>
        <link>feature://user-raw-update/{routeObjectId}</link>
        <outline>true</outline>
        <size>XS</size>
        <entries>
            <entry>
            	<authenticationLevelSufficient>false</authenticationLevelSufficient>
                <divider>true</divider>
                <icon>fa fa-key</icon>
                <id>reset-password</id>
                <target xsi:type="ctdbum:ModalWidgetTargetType">
                  <widgetToOpen id="reset-password" xsi:type="ctdbum:ResetPasswordWidgetType">
                	<hidden>false</hidden>
					<displayOptions>
              			<modalSize>LG</modalSize>
            		</displayOption>
                    <config>
                    	<bordered>false</bordered>
                        <title>true</title>
                        <securityQuestions>true</securityQuestions>
             			<securityQuestionsCount>2</securityQuestionsCount>
   		                <manualPasswordEntry>true</manualPasswordEntry>
 				        <autogeneratedPasswordEntry>false</autogeneratedPasswordEntry>
                        <sendPasswordEmail>true</sendPasswordEmail>                     
						<sendPasswordEmailNotificationId>password_generated_email</sendPasswordEmailNotificationId>
                        <sendPasswordEmailOverride>true</sendPasswordEmailOverride>
                        <sendPasswordSms>true</sendPasswordSms>
                        <sendPasswordSmsNotificationId>password_generated_sms</sendPasswordSmsNotificationId>
                        <sendPasswordSmsOverride>false</sendPasswordSmsOverride>
                        <sendResetLinkEmail>true</sendResetLinkEmail>
                        <sendResetLinkEmailIntent>password_reset</sendResetLinkEmailIntent>
                 		<sendResetLinkEmailNotificationId>password_reset_link</sendResetLinkEmailNotificationId>
                        <sendResetLinkEmailOverride>true</sendResetLinkEmailOverride>
                        <sendResetLinkLifetime>PT30M</sendResetLinkLifetime>
                        <requirePasswordChange>true</requirePasswordChange>
                        <style>INLINE</style>
					</config>
				  </widgetToOpen>
                </target>
			</entry>
		</entries>
  	</config>
</action>

Modal target type

CODE
<action id="btn-dropdown" xsi:type="ctdbum:ButtonDropdownWidgetType">
	<hidden>false</hidden>
    <config>
    	<align>LEFT</align>
        <authenticationLevelSufficient>false</authenticationLevelSufficient>
        <borderless>false</borderless>
        <circle>true</circle>
        <color>green</color>
        <icon>fa fa-pencil</icon>
        <label>true</label>
        <link>feature://user-raw-update/{routeObjectId}</link>
        <outline>true</outline>
        <size>XS</size>
        <entries>
        	<entry>
            	<authenticationLevelSufficient>false</authenticationLevelSufficient>
                <divider>true</divider>
                <icon>fa fa-pencil-square</icon>
                <id>user-card-update</id>
                <target xsi:type="ctdbum:ModalTargetType">
                  <link>feature://user-card-update/{routeObjectId}</link>
                  <modalSize>SM</modalSize>
                  <onDismiss>NONE</onDismiss>
                </target>
            </entry>
		</entries>
	</config>
</action>

Read Next

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.