Skip to main content
Skip table of contents

Adding story-connect target selection component

Configuration

If you want to add a story-connect target selection component in your details area, simply add following code-templates in a separate details-area tab. Please see Details Pane Configuration for more information on how to configure templates in Details Area.

CODE
{{content-manager/story-connect-wrapper legacyController=legacyController editable=editable model=model editModel=editModel showAllTarget=false}}

Restricting visibility

StoryConnect component visibility can be customized in the details area template. e.g. the visibility can be restricted such that the component will appear only when a Group is selected / edited / created. Please see following visibility options:

Visible for Groups Only

CODE
{{#if legacyController.form.entryIsAGroup}}
    {{content-manager/story-connect-wrapper legacyController=legacyController editable=editable model=model editModel=editModel showAllTarget=false}}
{{/if}}

This configuration is also available as ContentManager_Details_StoryConnect.PAR file in the PAR_examples folder of the delivered DPE software package.

Visible for Stories Only

CODE
{{#if (equal model.Story 3)}}
    {{content-manager/story-connect-wrapper legacyController=legacyController editable=editable model=model editModel=editModel showAllTarget=false}}
{{/if}}{{#if creatingNewEntry}}
    {{#if (equal editModel.Story 3)}}
        {{content-manager/story-connect-wrapper legacyController=legacyController editable=editable model=model editModel=editModel showAllTarget=false}}
    {{/if}}
{{/if}}

Visible for both Groups and Stories

CODE
{{#if (gt model.Story 0)}}
    {{content-manager/story-connect-wrapper legacyController=legacyController editable=editable model=model editModel=editModel showAllTarget=false}}
{{/if}}
{{#if creatingNewEntry}}
    {{#if (gt editModel.Story 0)}}
        {{content-manager/story-connect-wrapper legacyController=legacyController editable=editable model=model editModel=editModel showAllTarget=false}}
    {{/if}}
{{/if}}

Display the "All" Target

Setting "showAllTarget" property in your Story-connect component controls whether "All" item is inserted at the top of the tree of available distribution targets (please see code snippet above). Sending a group to "All" does not necessarily mean the same as sending to every single target listed in the tree; rather, "All" is a special target whose meaning is determined in the configuration of the StoryConnect service.

Loading story-connect targets

Story-connect loads target list in two formats:

  1. StoryConnect Addressbook service

Content Manager retrieves available target list from the StoryConnect Addressbook service whose URI must be configured in the parameter |Common|StoryConnect|UrlInterface.

  1. Adressbook in JSON format

Content Manager enables to load the available targets from a list in JSON format, which can configured in the parameter |Common|StoryConnect|CMTargets.

Search order

The Story-Connect interface follows a specific sequence when attempting to load the address book. If the key is not defined, it proceeds to search to the next location. The interface loads the targets as soon as they are identified, based on the following order:

  1. [Local] Common|StoryConnect|UrlInterface:

    • Key contains a StoryConnect Addressbook URI.

    • Set the value to “-“ in order to skip step 2 of this search order.

  2. [Global] Common|StoryConnect|UrlInterface:

    • Key contains a StoryConnect Addressbook URI.

  3. [Local] Common|StoryConnect|CMTargets:

    • Key contains available targets from a list in JSON format.

  4. [Global] Common|StoryConnect|CMTargets:

    • Key contains available targets from a list in JSON format.

  5. [Local] Common|StoryConnect|Targets:

    • Key contains available targets from a list in JSON format.

  6. [Global] Common|StoryConnect|Targets:

    • Key contains available targets from a list in JSON format.

  • if [Global] Common|StoryConnect|UrlInterface is set, and you want to load different targets at user level, just set the value of [Local] Common|StoryConnect|UrlInterface to “-“. The search will skip step 2 and will continue searching for targets in step 3 and onwards.

  • if Common|StoryConnect|UrlInterface is set to a URL, which is currently not reachable, the search will fail after a timeout, and start to search for targets from step 3.

Functionality

Overview

The StoryConnect component lets you select StoryConnect distribution targets, e.g. other radio stations and/or departments across your StoryConnect network.

  • The StoryConnect component lists on its left side all available targets.
  • The right side lists the selected targets.

Selecting a Target

A target can be selected either by:

  • Clicking on the
    button next to the destination name.
  • Dragging a target item from left area (Available Targets) and dropping onto the left area (Selected Targets).


De-selecting a Target

A target can be de-selected either by:

  • Clicking on
    button next to the destination name in the Selected Targets area.
  • Dragging a target item from right area (Selected Targets) and dropping onto the left area (Available Targets)


Clicking on "Save" button in the Details Area will save the selected targets in the database as entry metadata.

Special targets

  • The "All" target top of the list of available destinations is not simply "everything in the list". Its special meaning is defined by the StoryConnect configuration. The "All" target is only present if both internal and external targets are available.
  • The "internal" targets usually are within your radio station. The "internal" group may be absent if no such destinations are provided by your StoryConnect Addressbook service.
  • Likewise, the "External" target is absent if no external targets are configured.
  • All destinations except "all" and internal destinations can have departments attached to them. You can either select the complete destination (radio station) or some of its departments as a distribution targets.

Adding Alias as a Target (Content Pools)

Story-connect aliases can be set only in global settings at [Global] Common|StoryConnect|Aliases


The display name of the Aliases folder should be set in Common|StoryConnect|Alias_Title

The Aliases folder can contain many alias items. The parameters in this folder need to have the following format to be displayed in story-connect interface.

  • The key name: must be AliasN, where N must be a number greater than 0. Number N indicates the order position in the user interface. Numbers does not necessarily need to be sequential.

  • The key value: should be a string, separated by semicolons, where the first item shows the name of the alias, followed by internal and external targets

Example of Aliases configured as Content Pools

Parent and Child Targets

The left area of the StoryConnect tab displays targets in a hierarchical manner. Several targets have subordinate targets; in the example depicted above, "Internal" and "External" are subordinate to "All", and "MDR", "NDR", "BR", and "HR" are subordinate to "External". MDR, BR, and HR have subordinate targets (departments) which cannot be seen right now. We call subordinate targets children, and the node to which they are subordinate is called the parent.

When you add a parent node to the list of selected nodes, its selected children (if any) are automatically removed from the list, and all its children become unselectable. For example, this happens when you select "External":

However, when you remove the parent node from the list, the children which were removed are re-added to the list for your convenience.

Upgrading a Target

As was said above, a target cannot be removed from the list once the list is saved. You can, however, replace a saved target by its parent, grandparent, etc. We call this "upgrading" a target. Adding a parent to the list removes its children. When you remove the parent, the children are restored; however, you cannot remove the children unless they have been added in the current session.


JavaScript errors detected

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

If this problem persists, please contact our support.