This page includes detailed information on the Swing configuration. If necessary, some sections simply forward the user to a detailed page.
Generic info
Format of configuration files
The content of the configuration file can be specified in JSON format or in XML format. In case of XML format the root must be WebClientConfiguration.
|
In XML format use "null" value to represent empty string value.
|
Special characters blocked server side
In the application, some characters cannot be used inside the filename of an object (e.g. during the creation of Stories, Web pages, Topic items, …).
|
The characters blocked server side are:
|
[[WebClientConfig - MAIN CONFIGURATION]] == Main Configuration Order in which the system looks for the configuration file:
- system property: -Dswing.config=D:/conf/config.xml
- in the installation directory of the Swing web application: /config/config.json
If needed, all configuration elements can be overridden at different levels:
- at /SysConfig/ level: /SysConfig/WebClientConfig.xml
- at group level: /Profiles/<Group>/Config/WebClientConfig.xml (1)
- at user level: /Profiles/<User>/Config/WebClientConfig.xml
| 1 | Group has to have the EOM::Configuration category type. |
This meaning that the specific elements configured at User level prevail over the Group configuration elements which prevail over the SysConfig configuration elements.
So, according to the hierarchy mentioned above, all the "WebClientConfig.xml" files configured at different levels are read and logically merged.
Global configuration
The global tag contains many info that must be loaded at the start of the tomcat, when the users are not logged yet,
so the options must be configured in the swing.xml file server side, usually located in:
\methode-servlets\conf\swing\com.eidosmedia.swing.web-app\swing.xml
All the <global> parameters configured in a WebClientConfig.xml file EOMDB side will be ignored because they are not reachable before the user login!
|
Only the following options are an exception and they can be overridden in a WebClientConfig.xml file configured EOMDB side:
|
Here all the global options. The default and suggested value is included in square brackets.
-
analyticsEnabled [true | false (default)] - This option enables Swing to tracks and reports user traffic: all data are collected anonymously. Though the customer option is not mandatory, it is strongly recommended to set this property otherwise all the statistics will be collect using "Swing" as customer.
-
showAllInstancesOfAggregation [true | false (default)] - This option determines whether all instances of an aggregated connection are shown in Swing or not.
-
automaticSaveTimer [15000] - This option sets the interval at which documents in editors are saved to the local cache.
-
logEnabled [true | false (default)] - This option enables or disables all logging for the services, depending on whether enabled is set to true or false. Useful only in debug mode.
-
offlineEnabled [false (default) | true] - If true, this configuration enables the possibility to use offline services.
-
debugEnabled [true | false (default)] - Enables the "Debugging tools" in all the contexts and editors.
|
The debugEnabled must not be used in the Production environments, but only in Development environments |
-
primeServerEnabled [true | false (default)] - It enables the communication with the prime server. (See Méthode Rest Api configuration: primeServerMQConfig).
-
portalServer - It sets the default web preview server URL. After its configuration the "Web preview" button will be automatically displayed in the Editor.
-
methodeApplicationServerUri - It sets the Methode Application Rest Server URI.
-
swingExtensionsServerUri - This option specifies the Swing Extensions URI, is used to acces the Object Linking functionalities, for example (http://localhost:9980).
-
methodeSocialUri - It sets the Methode Social URI. See Methode Social configuration for further information.
-
methodeAnalyticsUri - It sets the Methode Analytics URI. See Methode Analytics configuration for further information.
-
eventServerUri - It sets the Methode Application Events Server URI, for example (wss://SERVER_HOST:SERVER_PORT/SERVER_PATH). "eventServerUri": "wss://localhost:8124/swing/events".
-
webDavServer - Sets the URL of the Preview servlet as WebDav server. This parameter is required to enable the ability to edit Excel, Word, PowerPoint and PDF documents using WebDav.
-
showLabels [true (default) | false] - This option determines whether labels on buttons are shown, where provided. User can toggle this option via the WebClient menu.
-
maxPreviewSize [4] - This options sets the the max size for preview files. The value of the parameter is a number, in megabyte units, specifying the limiting size.
-
language [en] - The language used within the webclient. For further details on supported languages and how to translate, please refer to localization.
-
autoLogoffTime [0] - Time in minutes after which if the user is inactive he/she will be automatically logged out. The value of the parameter is a positivie number greater than 0.
To let the auto logoff functionality working properly it is necessary to proxy all the loaded iframes (e.g. pagetrack) in order to avoid cross origin security issues.
-
connectTimeout [1000] - Connect timeout interval (in milliseconds) to establish a REST connection.
-
readTimeout [10000] - Read timeout interval (in milliseconds) to read the REST login response.
-
taskLimit [40] - The maximum number of tasks available in MyArea and Task widgets.
-
messageLimit [40] - The maximum number of messages available in MyArea.
-
disableLoginPasswordSave [true | false (default)] - Disable the browser request to save username and password at the login.
-
mobileReloginTimeout [Month (default) | Day | Year | ReloginDisabled | None | (a number of seconds)] - Swing Mobile and Swing Live Apps only: Define the interval the App will automatically relogin. Set to "ReloginDisabled" to disable relogin feature. Set to "None" to never force the App to logout.
-
dateFormat (deprecated) [dd/MM/yyyy] - Determines the default date format for date inputs. This parameter have been deprecated and will be removed in a future release.
The MMM and MMMM formats are not supported in the creation dialog calendar dates. If used they will be automatically replaced by M and MM respectively (only in creation dialogs).
-
timeFormat (deprecated) [HH:mm:ss] - Determines the default time format for time inputs. This parameter have been deprecated and will be removed in a future release.
|
Please note that dateFormat and timeFormat configuration parameters have been deprecated and will be removed in a future release. Date formats will be automatically detected by the application in accord to the user locale setting. |
-
captcha - Enables the captcha request to login after a number of failed logins.
-
type [JCaptcha | reCaptcha] - The captcha type:
-
JCaptcha (enables the captcha managed directly by the rest server)
-
reCaptcha (enable the Google reCaptcha validation). In this case, a siteKey has to be specified.
-
-
siteKey - Necessary for the reCaptcha type.
-
-
confirmOnLogout [true | false (default)] - If true, on logout the user is prompted with a confirmation dialog in case it has documents opened in the local cache.
-
keepAlive [true (default) | false] - If true, periodically sent at predefined interval check to keep the session alive, if false the HTTP sessionTimeout is apply for the Swing application, and session will be kill if client doesn’t make any request after sessionTimeout minutes. If true, if the connection to the notifier is lost, a maximum of 3 connection retry to the notifier will be tempted. The user will be informed of notifier disconnection, reconnection, or persisting connection failure.
-
enableGoogleMap [true (default) | false] - If true, the Google Map javascript is loaded and included in the Swing application.
-
googleMapKey - Specify the Google Maps Key to be used for Geo localization functionalities, the default key must be used only or internal tests and not in a production environment. This option is irrelevant if you set false to "enableGoogleMap" option.
-
googleMapClientId - Specify the Google Maps Client identifier to be used for Geo localization functionalities, if specified overrides the googleMapKey parameter. This option is irrelevant if you set false to "enableGoogleMap" option.
The properties are:-
client - The client ID used to access the special features of Google Maps APIs Premium Plan. All client IDs begin with a gme- prefix.
-
signature - The unique digital signature representing your private cryptographic key.
-
-
facebookOembedKey - Starting October 24th 2020, it will no longer possible to automatically embed Facebook and Instagram content using the default methods due to a breaking change in the Facebook API. Facebook now requires each developer to register an app, and use a client token when getting data from their Graph API for oEmbed content. To use the facebook API it will be necessary to configure a Facebook account for the Swing app through which it will be possible to obtain the key to use.
-
twitterEnabled - [true (default) | false ] - If false twitter library will not be loaded.
-
googleplusEnabled - [true (default) | false ] - If false googleplus library will not be loaded.
-
keepPinboardAfterLogout [true | false (default)] - If true, the Pinboard is not cleared when the user logs out of Swing.
-
maxPinboardSize [0] - The maximum size of the Pinboard. If 0, there is no limit to the Pinboard size.
-
enableAllWorkflows [true (default) | false] - If true, all workflow buttons will be available (Workflow, Diagram workflow). If false, the standard Methode Configuration for the Workflow is used.
-
triggerCheckinOnShape [true (default) | false] - If true, when a shape is applied to a story or a story is linked to a page, the checkin action will be triggered.
-
topicItemSizes - a semicolon separated string containing the list of available sizes for a topicItem (e.g. "1;2;3;4;5")
-
showStoryImagePreview [true | false (default)] - If true, in the Topics Widget tries to attempt retrieving the story preview.
-
browserShowResourcePanel [true (default) | false] - If true, the Resource Panel on the left in the Browser area starts open.
-
browserAddTypeIcon [true (default) | false] - If true, the browser grid will automatically add a type icon as the first column.
-
webNotification [true | false (default)] - If true, and if the user accepts browser notifications, Swing will show popup notifications at system level outside of web page.
-
maxServerSortSize [200 (default), max 500] - Define the maximum number of results that can be sorted on the server.
-
serverSortLimitMode [prevent (default), ask] - Define the action to apply when the number of results are greater than the maxServerSortSize.
-
prevent: simply warns the user that they cannot do the server sort
-
ask: will prompt a confirmation dialog
-
Global configuration example:
<global>
<connectionId>DevGlobeVM</connectionId>
<connectionName>DevGlobeVM Connection</connectionName>
<automaticSaveTimer>15000</automaticSaveTimer>
<logEnabled>true</logEnabled>
<showLabels>true</showLabels>
<language>en</language>
<maxPreviewSize>4</maxPreviewSize>
<connectTimeout>1000</connectTimeout>
<readTimeout>10000</readTimeout>
<taskLimit>100</taskLimit>
<messageLimit>100</messageLimit>
<disableLoginPasswordSave>false</disableLoginPasswordSave>
<dateFormat>dd/MM/yyyy</dateFormat>
<timeFormat>HH:mm:ss</timeFormat>
<captcha>
<type>reCaptcha</type>
<siteKey>6Les4xITAAAAAPWJ9jTXnA65oiAjEbeRY4pGODIc</siteKey>
</captcha>
<triggerCheckinOnShape>true</triggerCheckinOnShape>
<googleMapClientId>
<client>YOUR_CLIENT_ID</client>
<signature>SIGNATURE"</signature>
</googleMapClientId>
<keepPinboardAfterLogout>false</keepPinboardAfterLogout>
</global>
<topicItemSizes>1;2;3;4;5</topicItemSizes>
Send to production configuration
It allows to check (or not) by default the boxes available in the Send To Production dialog.
The sendToProduction supports the following parameters:
-
propagateChannel - If true it checks by default the box 'Channel/Insert'.
-
propagateIssueDate - If true it checks by default the box 'Issue Date'.
-
propagateWorkFolder - If true it checks by default the box 'Workfolder'.
-
openDocument - If true it checks by default the box 'Open new document'.
The checkbox 'Keep a copy' is managed by the stpmode attribute that can be configured in the global <workFolders> of the siteConfig:
-
'Keep a copy' is checked and 'Copy workflow status' is enabled when <workFolders stpmode="copy"> is configured
-
'Keep a copy' is unchecked and 'Copy workflow status' is disabled when the stpmode is not configured
Send to production configuration example:
<sendToProduction>
<propagateChannel>true</propagateChannel>
<propagateIssueDate>false</propagateIssueDate>
<propagateWorkFolder>true</propagateWorkFolder>
<openDocument>true</openDocument>
</sendToProduction>
Correlation configuration
The correlation supports the following parameters:
-
defaultCorrelationName [see_also] - This is the default correlation name that (if configured) must contain a "linkName" value of a correlation configured in the correlationConfig.cfg file. When it is not configured the default name see_also is applayed.
-
showCorrelationChoice [true | false (default)] - If true, whenever an object is correlated the Correlation Type choice dialog is shown.
Correlation configuration example:
<correlation>
<defaultCorrelationName>see_also</defaultCorrelationName>
<showCorrelationChoice>true</showCorrelationChoice>
</correlation>
TemplateChoice configuration
The templateChoice supports the following parameter:
-
hidePath [true (default) | false] - If false, paths are not shown inside the Templace Choice dialog.
TemplateChoice configuration example:
<templateChoice>
<hidePath>true</hidePath>
</templateChoice>
Uploader configuration
The uploader supports the following parameters:
-
conflictResolutionMode [conflict.autoRename (default) | conflict.replace | conflict.doNotCreate | conflict.newVersion] - Defines the conflict resolution mode.
-
conflict.autoRename: Create a new object, with auto rename
-
conflict.replace: Replace existing object
-
conflict.newVersion: Create a new version for the existing object
-
conflict.doNotCreate: If already exists the object is not created
-
-
conflictAlternatives - Defines the available alternatives for the conflict resolution. If not specified, all alternatives are visible.
-
keepMetadataClosed [true | false (default)] - If true, Object Metadatas are not shown unless the user presses the "Metadata" button.
-
maxPreviewSize [5000000] - This options sets the the max size for preview files. The value of the parameter is a number, in byte units, specifying the limiting size.
|
In case of problems in using larger images, they will be imputable to the browser application, not to Swing. |
Uploader configuration example:
<uploader>
<conflictResolutionMode>conflict.newVersion</conflictResolutionMode>
<maxPreviewSize>5000000</maxPreviewSize>
<conflictAlternatives>
<conflictAlternative>conflict.autoRename</conflictAlternative>
<conflictAlternative>conflict.replace</conflictAlternative>
<conflictAlternative>conflict.doNotCreate</conflictAlternative>
<conflictAlternative>conflict.newVersion</conflictAlternative>
</conflictAlternatives>
</uploader>
Documentation configuration
It is possible to customize the documentation link according to the current user’s role. It is also possible to show the user guide only, or not to show the documentation at all.
|
The Swing package released does not contain a User guide. You can configure Swing to load either the official release manual or any customized guide you want, as described below. The official Manual released by Eidosmedia can be downloaded at the following Confluence page |
There are several different configuration possibilities:
-
accessType [public | auth (default) | none] - Determines the type of documentation access.
-
public - The documentation is visible to all users.
-
auth - The documentation is visible only to authenticated users.
-
none - The documentation is not visible and cannot be accessed.
-
-
technicalRef [all] - Determines whether to show the technical documentation or not, if none the technical documentation is not visible and cannot be accessed.
-
role - Allows to specify a role that will have access to the Manual that you are defining. See the example.
-
name - Comma-separated list of roles, or all (valid for all roles not specified in the list). Defaults to all.
-
The one below is a configuration example where three hypothetical manuals that will be accessible by the corresponding role(s) have been configured. You can configure different kinds of Documentation formats (e.g. pdf, html, etc…)
<documentation>
<accessType>auth</accessType>
<technicalRef>none</technicalRef>
<userGuide>
<role name="all">exampleManual1.html</role>
<role name="reporter,editor,manager">exampleManual2.pdf</role>
<role name="manager">exampleManual3.doc</role>
</userGuide>
</documentation>
|
The order in which the documentation link is calculated is the following:
|
|
For the documentation link to work all documents must be placed under /docs/userguide context (please refer to the paragraph How to configure documentation in external folder), it is necessary that the properties relatives to the user roles (typically reporter, editor, manager ) are lowercase. |
Refresh interval configuration
It determines the interval at which the cache is refreshed. It is a JSON object with the following properties:
-
incoming [30000] - Refresh interval for incoming tasks. Time is in milliseconds.
-
inbox [50000] - Refresh interval for incoming messages (inbox). Time is in milliseconds.
Refresh interval configuration example:
<refreshInterval>
<incoming>15000</incoming>
<inbox>15000</inbox>
</refreshInterval>
Content Types configuration
In case of custom formats, Méthode Swing needs to know the correspondent type (e.g. a "BlogStory" is, in fact, a "story"). For each type, it is possible to define various properties, such as its icon, or whether it is editable or not, it supports preview, etc.
Swing supports the following content types:
-
story
-
gallery
-
webpage
-
image
-
video
-
audio
Each contentType can have default properties, such as:
-
icon - The default icon for all the types corresponding to that contentType
-
editable [true | false] - If true, the type can be edited by the corresponding editor (it works only for 'story', 'gallery' and, soon, 'webpage' types)
-
previewFormat [fa=lowres (default)] - The parameter to be passed to the preview server to generate the preview.
Each contentType can have a list of types, each of them must specify the type name, and can override the previously described properties.
<contentTypes>
<story>
<icon>icon-edit</icon>
<editable>true</editable>
<previewFormat>fa-lowres</previewFormat>
<types>
<type>
<name>BlogStory</name>
<icon>icon-blog-story</icon>
<editable>false</editable>
</type>
<type>
<name>BlogArticle</name>
<icon>icon-blog-article</icon>
</type>
</types>
</story>
</contentTypes>
In this example, the icon for the BlogArticle will be the same of the "story" content-type, given that it has not been specified for the BlogArticle type. The BlogArticle will also be editable for the same reason.
|
Specifying an icon in the ContentType configuration has a lower priority with respect to specifying the icon in the Icon configuration. |
Candidate Browser configuration
It is a configuration with the following properties:
-
binderListSort [modified | created | name]&[descending | ascending] - It chooses the method to sort items within the candidate browser. The default value is ['modified&descending'].
|
To show/hide a folder or a query in the candidate browser, you must add in the BaseFolder configuration for each dir tag or query tag the attribute app="Swing".
This way that folder/query will be shown only in Swing while it will be hidden in Méthode Prime. If you wish to show it both in Swing and Méthode Prime, you must not set this attribute at all or you have to configure it by specifying also Prime, as shown in the example below:
|
Candidate Browser configuration example:
<candidateBrowser>
<binderListSort>name&ascending</binderListSort>
</candidateBrowser>
CSS Reflow
As pointed in various Chrome bug reports, Google Chrome seems to have some issues in rendering multiple web fonts and CSSes at the same time. If that is the case, please set
<forceCSSReflow>true</forceCSSReflow>
|
Please do so only if you notice problems in loading icons or labels. Try to avoid it, if possible. |
Workflow configuration
-
preselectNextWorkflow - If true, when opening the Workflow / Release dialog, the next status will be automatically selected.
<preselectNextWorkflow>true</preselectNextWorkflow>
Custom Menu actions configuration
It allows to set custom actions to be added to the top-right menu, along with the "New document", "Quick create document" and other actions.
<customMenuActions>
<action>writeapoem</action>
<icon>icon-pencil</icon>
<label>Write a poem</label>
</customMenuActions>
<customMenuActions>
<action>newcustomcontent</action>
<icon>icon-twitter</icon>
<label>Create new Sport story</label>
<params>
<name>New Story.xml</name>
<channel>Globe-Web</channel>
<edition>Home</edition>
<template>/SysConfig/Globe/Templates/story.xml</template>
<folderPath>workfolder:///Globe/Sport</folderPath>
</params>
</customMenuActions>
|
Actions are, in fact, commands. So, it is necessary to create the "writeapoem" command in order to make the "writeapoem" action work. Go to Commands documentation to see how to create custom commands. The commands are called with the following parameters:
|
|
The newcustomcontent action is provided by Méthode Swing. For the newcustomcontent action, the params are mandatory and follow the schema below:
Example of params
|
Location configuration
This part of the configuration allows the user to set his or her location. Location is used by some services, such as Weather and MyArea. Location settings are the following:
-
country
-
region
-
city
-
countryCode
-
latitude
-
longitude
Location configuration example:
<location>
<country>Italy</country>
<region>Milan</region>
<city>Milan</city>
<countryCode>Milan, IT</countryCode>
<latitude>45.465454</latitude>
<longitude>9.186516</longitude>
</location>
Roles configuration
Roles are mainly used to determine the dashboard to be shown. Please refer to Dashboard configuration for further details. A role can be associated to one or more Méthode groups, only groups having the "EOM::Configuration" category are valid.
Roles configuration example:
<roles>
<role group="Administrators">Manager</role>
<role group="Politics_Editors,Sport_Editors,News_Editors">Editor</role>
<role>Reporter</role>
</roles>
Icon configuration
The supported icons are listed here.
Icon configuration example:
<icons>
<icon type="EOM::Query">icon-search</icon>
<icon type="PortalRoot">emui-icon-folder-web</icon>
<icon type="PortalSection">emui-icon-folder-web</icon>
<icon type="PortalBlog">emui-icon-folder-web</icon>
<icon type="EOM::Folder">emui-icon-folder</icon>
<icon type="ico:icon_folder">emui-icon-folder</icon>
<icon type="ico:icon_file">emui-icon-file</icon>
<icon type="EOM::Story">emui-icon-file-text</icon>
<icon type="ico:icon_story">emui-icon-file-text</icon>
<icon type="EOM::CompoundStory">emui-icon-file-text</icon>
<icon type="ico:icon_compoundstory">emui-icon-file-text</icon>
<icon type="EOM::WebPage">emui-icon-dwp</icon>
<icon type="ico:icon_dwp">emui-icon-dwp</icon>
<icon type="Image">icon-picture</icon>
<icon type="ico:icon_image">icon-picture</icon>
<icon type="EOM::Gallery">emui-icon-pictures</icon>
<icon type="EOM::MediaGallery">emui-icon-pictures</icon>
<icon type="gallery">emui-icon-pictures</icon>
<icon type="ico:icon_gallery">emui-icon-pictures</icon>
<icon type="lock">icon-lock</icon>
<icon type="hasmetadata">icon-tag</icon>
<icon type="ico:icon_action_download">icon-cloud-download</icon>
<icon type="ico:icon_action_debug">icon-bug</icon>
<icon type="default">icon-file</icon>
<icon type="highpriority">icon-exclamation</icon>
<icon type="attachment">icon-paperclip</icon>
<icon type="ico:icon_task">icon-tasks</icon>
<icon type="ico:icon_mail">icon-envelope</icon>
<icon type="ico:icon_action_delete">icon-remove</icon>
<icon type="ico:icon_action_remove">icon-trash</icon>
<icon type="ico:icon_action_uncorrelate">emui-icon-uncorrelate</icon>
<icon type="ico:icon_action_restore">icon-undo</icon>
<icon type="ico:icon_action_edit">icon-edit</icon>
<icon type="ico:icon_audio">icon-volume-up</icon>
<icon type="story">emui-icon-file</icon>
<icon type="picture">icon-picture</icon>
<icon type="task">icon-tasks</icon>
<icon type="print">emui-icon-newspaper</icon>
<icon type="web">icon-globe</icon>
<icon type="wap">icon-mobile-phone</icon>
<icon type="tablet">icon-tablet</icon>
<icon type="icon-search">icon-search</icon>
<icon type="icon-folder">icon-folder-close</icon>
<icon type="icon-image">icon-picture</icon>
<icon type="icon-dwp">emui-icon-dwp</icon>
<icon type="icon-topic">icon-tasks</icon>
<icon type="icon-attachment">icon-paperclip</icon>
</icons>
|
Specifying an icon in the Content Types configuration has a lower priority with respect to specifying the icon in the Icon configuration. |
Dashboard configuration
For further details on the preview, see Dashboard documentation.
Topic List configuration
In the topicList key, it is possible to configure custom filter options.
-
defaultDisplayBy [issueDate (default) | created | modified] - In the topic calendar list, it defines the default sorting method for topics.
-
defaultFilterType [EOM::Topic (default) | EOM::TopicItem | EOM::Schedule (Topic Plan)] - In the topic calendar list, it defines the default type to list in the calendar.
-
defaultChannel - In the topic calendar list, it defines the default channel to list topics.
-
defaultWorkfolder - In the topic calendar list, it defines the default workfolder to list topics. It works only if workfolders are configured. If the value is default, the default user workfolder is selected.
-
defaultWorkflow - In the topic calendar list, it defines the default workflow to list topics.
-
typeIndexes - A list of DB indexes to filter the queries. See the following example. Please remember to specify the repName after the "=" sign, if necessary.
-
type [EOM::Topic | EOM::TopicItem | EOM::Schedule] - Determines the object type
-
domain - Corresponds to the domain <name> configured in the <search> section (see the domains Search sample Configuration paragraph)
-
-
filterWorkfolders - A list of workfolder to allow more detailed filtering.
-
visibleFilters - Determines the visibility and the order of the available filters. See the example for available values. Please note that the order put in the configuration is the order shown to the end user.
-
filterWorkflows (Optional) - The list of workflows visible in the Workflow filter.
-
maxNumberOfResults [100] - The maximum number of results returned by the query.
-
catalog - Column catalog name that should be used by the list view (must have type
methodeResultSetList). If not specified, default columns will be shown. -
defaultView [currentweek (default) | today | tomorrow | nextweek] - The default calendar view applied when the calendar/list is opened.
-
moveTopicAction [none (default) | STP ] - The default action to apply when drag and drop topics. The default change only the topic issue date, STP apply the send to production operation and eventually changes the topic physical path.
-
filterUsageTickets (Optional) - The list of usage tickets visible in the Usage Tickets tooltip. If not configured, all usage tickets will be shown. Currently available on selected attachment usage tickets components.
-
filterPublishUsageTickets (Optional) - The list of usage tickets visible in the Published Usage Tickets tooltip. Currently available on selected attachment usage tickets components.
-
fieldConfiguration - Custom field configuration for topic items in the day view
-
dateFormats (deprecated) - The date format configuration for the topic calendar. Please note that dateFormats parameter has been deprecated and will be removed in a future release. Date formats will be automatically detected by the application in accord to the user locale setting.
-
day - Sets the day format used in the column of the Month view
-
cellday - Sets the cell day format used in the Month view
-
dayanddaymonth - Sets the day and month formats used in the column of the Weekly view
-
hourweek - Sets the hour format filtering for Topic item and Due date in the Weekly view
-
monthview - Sets the month format shown in the Month view top bar
-
weekview - Sets the start and end week formats shown in the Weekly view top bar
-
dayview - Sets the day format shown in the Daily view top bar
-
Further details on date formats can be found on Moment.js documentation
<topicList>
<defaultDisplayBy>issueDate</defaultDisplayBy>
<maxNumberOfResults>100</maxNumberOfResults>
<defaultView>currentweek</defaultView>
<typeIndexes>
<typeIndex>
<type>EOM::Topic</type>
<!-- Domain is optional -->
<domain>eomdblocal</domain>
<indexes>
<index>production@meth01_eomse1=Editorial</index>
<index>archive@meth01_eomse1=Editorial</index>
</indexes>
</typeIndex>
<typeIndex>
<type>EOM::TopicItem</type>
<indexes>
<index>Tasks@meth01_eomse1=Editorial</index>
</indexes>
</typeIndex>
</typeIndexes>
<filterWorkfolders>
<filterWorkfolder>/Globe/Sport</filterWorkfolder>
<filterWorkfolder>/Globe/Politics</filterWorkfolder>
</filterWorkfolders>
<filterWorkflows>
<filterWorkflow>TaskFlow</filterWorkflow>
<filterWorkflow>NewsFlow</filterWorkflow>
</filterWorkflows>
<visibleFilters>
<visibleFilter>type</visibleFilter>
<visibleFilter>displayby</visibleFilter>
<visibleFilter>workfolder</visibleFilter>
<visibleFilter>workflow</visibleFilter>
<visibleFilter>channel</visibleFilter>
<visibleFilter>createdby</visibleFilter>
<visibleFilter>ownerteam</visibleFilter>
<visibleFilter>standingobjects</visibleFilter>
</visibleFilters>
<filterUsageTickets>
<usageTicket>EOM::Task</usageTicket>
<usageTicket>EOM::Status</usageTicket>
</filterUsageTickets>
<filterPublishUsageTickets>
<usageTicket>CobaltPub</usageTicket>
</filterPublishUsageTickets>
<fieldConfiguration>
<field icon="swing-icon-user" value="creator"></field>
<field value="metadata:///ObjectMetadata/Info/date"></field>
<field icon="fas fa-newspaper" value="sysAttr:///workFolder"></field>
<field type="date" icon="swing-icon-calendar" outputFormat="DD/MM/ YYYY" value="sysAttr:///productInfo/issueDate"></field>
</fieldConfiguration>
<dateFormats>
<day>ddd</day>
<cellday>D</cellday>
<dayanddaymonth>ddd DD/MM</dayanddaymonth>
<daymonth>DDMM</daymonth>
<hourweek>HH:mm</hourweek>
<monthview>MMMM, YYYY</monthview>
<weekview>W, YYYY</weekview>
<dayview>LL</dayview>
</dateFormats>
</topicList>
New Content configuration
It is possible to show or hide some fields or tabs in the new content standard dialog.
The configuration is divided in two parts: a generic configuration and an object-type specific configuration.
All the options can be put in the "general" part and be overridden by a specific object-type configuration.
Supported object types: story, gallery, webpage, webcontainer, topic, topicplan and topicItem.
New Web Container dialog uses the webpage configuration overriden by specific webcontainer configuration values.
With the collapseTemplates parameter, it is possible to define whether the tree listing templates should be totally collapsed at the opening of the object creation dialog or not. Possible values are:
-
false (default) - The tree listing templates is not totally collapsed at the opening.
-
true - The tree listing templates is totally collapsed at the opening.
See example below:
<newContent>
<collapseTemplates>false</collapseTemplates>
<showTeam>true</showTeam>
<showChannel>true</showChannel>
<showInsert>true</showInsert>
<showEdition>true</showEdition>
<showIssueDate>true</showIssueDate>
<showShapeTab>true</showShapeTab>
<story>
<showTeam>false</showTeam>
</story>
<webpage>
<showTeam>false</showTeam>
<showInsert>false</showInsert>
<showIssueDate>false</showIssueDate>
</webpage>
<topicItem>
<showEdition>false</showEdition>
<showInsert>false</showInsert>
</topicItem>
</newContent>
New content, story, gallery and topic item configuration
<newContent>
<!-- ... -->
<story>
<createTopicFrom>manual</createTopicFrom>
<activateShapeTab>true</activateShapeTab>
</story>
<gallery>
<createTopicFrom>false</createTopicFrom>
</gallery>
<topicItem>
<createTopicFrom>auto</createTopicFrom>
</topicItem>
</newContent>
With the createTopicFrom parameter, it is possible to choose whether to show the "Create topic" checkbox in the New Story, New Gallery or New Topic Item creation dialog. Possible values are:
-
false - The "Create topic" check-box is not shown.
-
manual (default) - The "Create topic" check-box is available, but it is not checked by default.
-
auto - The "Create topic" check-box is available and it is already checked by default.
With the activateShapeTab parameter set to true the Shape tab is selected by default instead of the Template tab
New content, topic configuration
<newContent>
<!-- ... -->
<topic>
<taskNameAuto>true</taskNameAuto>
</topic>
</newContent>
With the taskNameAuto parameter set to true all the tasks will be automatically renamed according to the topic name plus a progressive number.
New content, topic item configuration
<newContent>
<!-- ... -->
<topicItem>
<metadataOpen>true</metadataOpen>
<showComment>false</showComment>
<defaultTask>picture</defaultTask>
<showType>false</showType>
<showAssignTo>false</showAssignTo>
<showPriority>false</showPriority>
<showSize>false</showSize>
<showDueDate>false</showDueDate>
<showWorkfolder>true</showWorkfolder>
</topicItem>
</newContent>
With the metadataOpen parameter set to true metadata panel will be opened by default. The defaultTask parameter allows to configure the default topic item type.
For the new Topic item dialog, it is also possible to hide Comment, Type, Assign to, Priority, Size, Due date and Workfolder fields with the configuration parameters shown in the example above.
Note
If the new Topic item dialog is opened from a Topic the parameters createTopicFrom, showIssueDate, showTeam, showWorkfolder will be forced to false.
Binder configuration
In the binderSettings key it is possible to configure some settings of the right binder in all the pages in which it appears.
-
customWidthPercent - It sets the width of the right binder as a percentage of the parent container width. It must be a number between 10 and 50.
-
tabsRotationMode [first (default) | last] - Determines how binder tabs that are not present in the binder header are added when chosen from the dropdown menu.
-
If set to first new tabs are added in the first position, shifting previously displayed tabs and hiding the tab in last position.
-
If set to last newly added tabs always replace the tab in the last position.
-
<binderSettings>
<customWidthPercent>40</customWidthPercent>
<liveBlogBinderWidth>40</liveBlogBinderWidth>
<tabsRotationMode>last</tabsRotationMode>
</binderSettings>
Editor configuration
Editor configuration is divided in two parts: a generic configuration and an editor-type-specific configuration. Most options can be put in the "general" part and be overridden by a specific editor configuration.
Generic Editor configuration
-
requiredFileName [true | false (default)] - If true, when the user selects "New document" and does not enter a filename, the application raises an error.
-
releaseMode [workflow (default) | release | both] - This setting changes the behaviour of the release button in the Editor. If "workflow" is selected, the Workflow dialog shows the "Release and continue" button. If "release" is selected, only the "Release" button is shown. If "both" is selected, both buttons are shown.
-
releaseAndContinueUnlock [false (default) | true] - This setting changes the behaviour of the release and continue button in the Editor. If "true" is selected, the "Release and continue" button will unlock the document leaving it in readonly mode.
-
multiTab [true (default) | false] - If true, all stories will be opened in a different editor tab. (Ignored by Swing App). If true, the object will be opened in a different browser/editor tab, so it will be possible to edit several objects at the same time. If false, the object will be opened in the same browser tab, so it will be possible to edit only one object at the same time.
-
showInsertInfoChoice [true | false (default)] - If true, allow the user to choose the insertInfo template from the "Choose template" dialog when he tries to insert an object in the story editor. The first template will be selected if there is not a template with the default="swing" attribute configured in.
-
includeTemplates - List of templates to include from the configured list of available templates.
-
excludeTemplates - List of templates to exclude from the configured list of available templates.
-
advancedCreateStoryFrom [true (default) | false] - If true, the create story from opens a New Content dialog to choose the destination folder. If false, a quick create is performed.
-
advancedCreateTask [false (default) | true] - If true, the create task opens a New Content dialog to choose the destination folder and all the create content settings. This setting is ignored if the task is linked to a shape on a page.
-
openTemplatePanelOnClick [true | false (default)] - Open "choose template" panel when the user clicks on the workfolder. NOTE: this can be overridden in any of the specific editor configurations.
-
hideBinderOnOpen - If true, the right binder part is not shown unless manually opened.
-
hideBinderOnReadonly [true (default) | false] - If true, when a document is opened in readonly mode, the binder is hidden.
-
hideReleaseContinuePermissionWarning [true | false (default)] - If true, when an user performs the "release and continue" action, if the user does not have the write or read permission, the warning modal is not displayed.
-
pinnedQueries - It is possible to specify a list of queries which are pinned in the lateral panel beside the editor area. These queries can be specified both at the generic editor configuration and also for each editor singularly. The general queries and the editor-specific queries are combined.
Configuration example:
<pinnedQueries>
<pinnedQuery>
<id>199$1.0.533062401</id>
<name>Prime query for all editors</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
<pinnedQuery>
<id>/Globe/Queries/MY_QUERY</id>
<name>Query with path</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
</pinnedQueries>
Each query has the following attributes:
-
id - The query id or the query path
-
name - The name shown as a title for the query (it does not need to be equal to the real query name).
-
icon - A CSS class for the icon.
-
forceSave [true | false (default)] - By default, if a document is locked and modified, Swing uses the browser local cache to save the changes and the current state of a document until the user saves it to the database. When the user closes the editor tab with the exit button provided by the browser, the document is not saved to the database and it remains locked by the user but all the changes made by the user are saved locally and are visible only within the same browser.
If set to true, this configuration allows to automatically save a document to the database when the user closes the editor tab with the exit button provided by the browser; in this case the user will not be prompted with a warning message and the document will be automatically unlocked and saved to the database.
|
Swing main screen has to be open when the editor tab is closed, otherwise the document will not be saved. The document is saved with the content contained in the local cache. By default the content is saved in the local cache every 15 seconds (see automaticSaveTimer config). |
-
autoreplaceInvalidFilenameChars [true | false (default)] - If true, creating a new document with a filename that contains invalid characters will automatically substitute them with an underscore and create the file, otherwise an error would be displayed. The replaced characters are the following:
\ / : * ? " < > | [ ] -
specialChars - It is possible to specify a list of special char that are added to the default characters available in the Character Map dialog.
Configuration example:
<specialChars>
<specialChar>‰</specialChar>
<specialChar>‱</specialChar>
<specialChar>←</specialChar>
<specialChar>↑</specialChar>
<specialChar>→</specialChar>
<specialChar>↓</specialChar>
</specialChars>
Each character has to be inserted with his encoeded hexadecimal vaule.
The following are the default characters in the Character Map dialog:
-
UTF-8 Basic Latin - Hex 0021-0073
-
UTF-8 Latin1 Supplement - Hex 00A1-00FF
-
UTF-8 Latin Extended A - Hex 0100-017F
-
The euro sign - Hex 20AC
-
imageEditingMode - This setting is not supported anymore from version 5.2022.07.
-
imageDoubleClick [image (default) | caption] - This setting defines which tab must be opened by default when the user double-click on an image that is in a gallery or in a collection link component.
|
As far as this parameter is concerned all users must have the same configuration as using different configurations may lead to unexpected behaviors. |
-
targetFolders - Allows to choose from a predetermined set of folders when the user creates a new document with the New Content option.
Configuration example:
<targetFolders>
<targetFolder>
<label>Current workfolder</label>
<path>workfolder</path>
<isDefault>true</isDefault>
</targetFolder>
<targetFolder>
<label>User home folder</label>
<path>home</path>
</targetFolder>
<targetFolder>
<label>User workfolder</label>
<path>work</path>
</targetFolder>
<targetFolder>
<label>Root folder</label>
<path>root</path>
</targetFolder>
</targetFolders>
Each targetFolder has the following attributes:
-
label (Mandatory) - The text shown in the dialog
-
path (Mandatory) - The target path. Swing recognizes the "standard" paths listed below. Otherwise, it is possible to specify any physical path. No variables allowed.
-
workfolder: The current workfolder according to the selection.
-
user: Which returns the user current folder.
-
work: The user workfolder.
-
root: Which return the Database root folder.
-
-
isDefault [true | false (default)] (Optional) - If true, that path is selected by default.
-
galleryBoxConfig - Allows to configure the image box dimensions of a specific gallery template.
Moreover, allows to configure automatic dimension by setting one/both parameters (width or height) to "auto" and let the system applying the other/both parameters according to the picture dimension.
|
To use the automatic dimension it is recomended to remove width and height configured in the image tag of the insertInfo dtx. |
Configuration example:
<galleryBoxConfig>
<template>
<path>/SysConfig/Globe/Templates/mediaGallery.xml</path>
<width>800</width>
<height>600</height>
</template>
<template>
<path>/SysConfig/Globe/Templates/photoGallery.xml</path>
<width>700</width>
<height>500</height>
</template>
<!-- the height is set to 532px and the width is automatically calculated -->
<template>
<path>/SysConfig/Globe/Templates/imgGallery-1A.xml</path>
<width>auto</width>
<height>532</height>
</template>
<!-- the original image dimensions are maintained -->
<template>
<path>/SysConfig/Globe/Templates/imgGallery-2B.xml</path>
<width>auto</width>
<height>auto</height>
</template>
</galleryBoxConfig>
For each gallery template it is necessary to specify the following attributes:
-
path - The path of the gallery template
-
width - The width of the image box
-
height - The height of the image box
If width and height are not configured for a specific template, the default image box are 720x540 pixel respectively.
-
collectionBoxConfig - Allows to configure the image box dimensions inserted in a collection of a specific template. It is possible to use the dimensions specified in the xml template of the picture using the templateDimensions tag.
Configuration example:
<collectionBoxConfig>
<template>
<path>/SysConfig/Globe/Templates/story.xml</path>
<width>800</width>
<height>600</height>
</template>
<template>
<path>/SysConfig/Globe/Templates/poll.xml</path>
<templateDimensions>true</templateDimensions>
</template>
</collectionBoxConfig>
For each template it is necessary to specify the following attributes:
-
path - The path of the story template.
-
width - The width of the image box.
-
height - The height of the image box.
If width and height are not configured for a specific template, the default image box width and height are 720 and 540 pixel respectively.
-
picturedesklite - This section contains picture desk lite specific configuration.
-
attributeLabels - It defines the name of the specific attribute being configured.
-
enabled - It allows to configure the name of the attribute allowing to choose which crop will be enabled, disabled or favorite and it will be set at photo tag level.
-
enabledList - It allows to configure the name of the attribute containing the list of the enabled soft crops and it will be set at photo group tag level. The separator attribute allows to configure which separator is to be used between a crop and the other; possible values are comma, semi-colon, space (default value is comma).
-
-
enableCropUnitSelector [false (default) | true ] - This configuration allows to enable the unit selector when adding a new custom crop. If the configuration is set to false, it will be possible to use only pixel dimensions to create a new custom crop.
-
softCrops - This section allows to specify the default width and height of a specific softCrop. This configuration is used by galleries and inline galleries.
-
softCrop - The softCrop element contains the name, the width and the height which define a specific soft crop.
-
-
<softCrops>
<softCrop>
<name>Square</name>
<width>400</width>
<height>400</height>
</softCrop>
<softCrop>
<name>Normal</name>
<width>1024</width>
<height>768</height>
</softCrop>
<softCrop>
<name>Panorama</name>
<width>1200</width>
<height>700</height>
</softCrop>
<softCrop>
<name>Portrait</name>
<width>768</width>
<height>1024</height>
</softCrop>
</softCrops>
-
warning [channel | edition | inherit] - This configuration allows to showing to the user warning messages according to a specific editing situation. The possible configuration values are the following.
-
channel - It checks the channel of the story being edited. Before a channel copy creation, if the user switch to a channel different than the creation one and tries to edit the story content, a warning message will be displayed and he will not be able to edit the story.
-
edition - It checks the channel and the edition of the story being edited. Before a channel copy creation, if the user switch to a channel and/or edition different than the creation one and tries to edit a story content, a warning message will be displayed and he will not be able to edit the story.
-
inherit - After a channel copy creation with inherited elements, a warning message will be displayed and the user will be prevented from edit inherited content items in channel copies.
-
| The story editing is always possible in the NONE channel, regardless of the configuration adopted. |
| When the user has the EMC privilege Manage Channel Copy, the warning modal will allow him to decide if continue editing the text on that channel (for the current editing session) or not. |
-
offline - This section allows to customize the settings of the editor when working in offline mode.
-
checkoutButtonPosition [left (default) | right] - This configuration lets you decide where the upload/checkout will be displayed; left: the button will be displayed on the left top toolbar, right: the button will be displayed on the right top toolbar.
-
Example
<editor>
<requiredFileName>false</requiredFileName>
<releaseMode>both</releaseMode>
<multiTab>true</multiTab>
<showInsertInfoChoice>true</showInsertInfoChoice>
<imageDoubleClick>caption</imageDoubleClick>
<pinnedQueries>
<pinnedQuery>
<id>199$1.0.533062401</id>
<name>Prime query for all editors</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
</pinnedQueries>
<targetFolders>
<targetFolder>
<label>Current workfolder</label>
<path>workfolder</path>
<isDefault>true</isDefault>
</targetFolder>
<targetFolder>
<label>User home folder</label>
<path>home</path>
</targetFolder>
<targetFolder>
<label>User workfolder</label>
<path>work</path>
</targetFolder>
<targetFolder>
<label>Root folder</label>
<path>root</path>
</targetFolder>
</targetFolders>
<picturedesklite>
<enableCropUnitSelector>true</enableCropUnitSelector>
<softCrops>
<softCrop>
<name>Square</name>
<width>400</width>
<height>400</height>
</softCrop>
</softCrops>
</picturedesklite>
<warning>inherit</warning>
<offline>
<checkoutButtonPosition>left</checkoutButtonPosition>
</offline>
</editor>
Specific editor configuration
There are five different editors: story, gallery, webpage, topic and topicPlan. Each of them can be customized with the following options:
-
type [EOM::CompoundStory] - It sets the default Eidosmedia output type.
-
editableTypes - Swing editors support the basic types (EOM::CompoundStory, EOM::Story, BlogStory, EOM::Gallery, …). If a customer users different types and believes they can be edited with the Swing editors, it is possible to add such types to the array of editableTypes. (e.g. ['BlogStory', 'ArticleStory']).
-
name [Depends on the editor] - It sets the default filename. At this filename, a timestamp is appended if the file already exists. See the paragraph How to specify filename using variables.
-
template [Depends on the editor] - It sets the default template for a new content in that editor.
-
overrideDefaultTemplate [true | false (default)] - If true allow to override the default template configured in Methode system configuration. It works only if template options is configured.
-
folderPath [Depends on the editor] (Optional) - It sets the default folder for a new content in that editor. If not specified the user Working directory is used.
-
defaultWorkfolder [Depends on the editor] (Optional) - The default workfolder to save the file into if the specified workfolder or the current user Working directory is not valid.
-
referenceItem [main (default) | channelCopy] - Defines which file the Object panel should refer to (master or channel copy) when the User is working on a Channel copy.
-
useRootAsMetadataReference [false (default) | true] - Defines if the root object should be used when reading and writing the metadata.
-
openTemplatePanelOnClick [true | false (default)] - Open "choose template" panel when the user clicks on the workfolder. It overrides the generic editor configuration with the same name.
-
pinnedQueries - It is possible to specify a list of queries which are pinned in the lateral panel beside the editor area. These queries can be specified both at the generic editor configuration and also for each editor singularly. The general queries and the editor-specific queries are combined. See example below.
Configuration example:
<pinnedQueries>
<pinnedQuery>
<id>199$1.0.533062401</id>
<name>Prime query for all editors</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
</pinnedQueries>
Each query has the following attributes:
-
id - The query id.
-
name - The name shown as a title for the query (it does not need to be equal to the real query name).
-
icon - A CSS class for the icon.
-
oembedProviders - It is possible to specify a list of oembedProvider to define the behaviour when a user pastes an url in the editor. If the url match the regex of a configured provider a code block inline will be inserted. Otherwise an anchor will be inserted with the href of the pasted content.
Configuration example:
<oembedProviders>
<oembedProvider>
<name>youtube</name>
<regex>(https?\:\/\/)?((www|m)\.youtube\.com)\/.+$</regex>
</oembedProvider>
</oembedProviders>
Each oembedProvider has the following attributes:
-
name - The name of the provider.
-
regex - The regex used to match the url.
-
oembedConfig - In this section it is possible to override the behavior of the service that is embed.
-
removeGoogleCoordinate - Remove the google coordinates in the embedded url, if any. Default value false
-
Configuration example:
<oembedConfig>
<removeGoogleCoordinate>true</removeGoogleCoordinate>
</oembedConfig>
-
oembedChannels - It is possible to configure in this section channel attributes to add to oembed blocks.
Configuration example:
<oembedChannels>
<oembedChannel>Web</oembedChannel>
<oembedChannel>Tablet</oembedChannel>
</oembedChannels>
-
favouriteTab - It is possible to specify a list of favourite action that will be available in the favourite commands tab.
| The maximum number of commands that can be configured in the favourite tab is 25, the exceeded buttons will not be displayed. |
Configuration example:
<favouriteTab>
<favouriteAction>
<name>format-bold</name>
</favouriteAction>
<favouriteAction>
<name>format-italic</name>
</favouriteAction>
</favouriteTab>
Each favouriteAction has the following attributes:
-
name - The name of the action.
| It’s also possible to add custom buttons matching with the related custom action’s name. |
The list of actions that can be configured in the favorite tab are the following:
| Function | Description | Trigger Swing action |
|---|---|---|
addtopinboard |
Adds the current document to the Pinboard |
DOCUMENT > Add to pinboard |
assignto |
Opens the Assign To mask |
DOCUMENT > Assign to |
create-channel-copy |
Opens the Create channel copy mask |
DOCUMENT > New channel copy |
delete-section |
Delete the section in witch the cursor is put-on |
HOME > Delete section |
extended-paste |
Opens the Extended Paste mask |
HOME > Extended Paste |
find-replace |
Opens the Find and Replace panel on the right |
HOME > Find/Replace |
format-bold |
Applies the Bold style to the selected text by adding the tag configured in the WebClientConfig.xml |
HOME > B |
format-change-case |
Changes the style of the selected text from Uppercase to Lowercase and viceversa |
HOME > Change Case |
format-italic |
Applies the Italic style to the selected text by adding the tag configured in the WebClientConfig.xml |
HOME > I |
format-ol |
Applies the ordered list to the selected text |
HOME > Ordered List |
format-remove-format |
Removes the in-line tags applied to the text |
HOME > Clear all formatting |
format-styles |
Displays the list of Styles that can be applyed to the text |
HOME > Styles |
format-subscript |
Applies the subscript style to the selected text |
HOME > Subscript |
format-superscript |
Applies the superscript style to the selected text |
HOME > Superscript |
format-ul |
Applies the bullet list to the selected text |
HOME > Bullet List |
format-underline |
Applies the Underline style to the selected text by adding the tag configured in the WebClientConfig.xml |
HOME > U |
hyperlink |
Opens the Insert hyperlink mask to add an hyperlink to the selected text |
HOME > Hyperlink |
insert-annotation |
Adds an annotation to the selected text |
INSERT > Annotation |
insert-audio |
Inserts an Audio placeholder in the text |
INSERT > Audio |
insert-codeblock |
Inserts a Codeblock placeholder in the text |
INSERT > Codeblock |
insert-oembed |
Inserts a Embed placeholder in the text |
INSERT > Embed |
insert-gallery |
Inserts a Gallery placeholder in the text |
INSERT > Gallery |
insert-graphic |
Inserts a Graphic placeholder in the text |
INSERT > Graphic |
insert-note |
Adds a Note to the selected text |
INSERT > Note |
insert-paragraph |
Inserts an empty paragraph in the text |
INSERT > Empty paragraph |
insert-picture |
Inserts an Image placeholder in the text |
INSERT > Picture |
insert-special-char |
Opens the Character map mask used to insert special characters in the text |
INSERT > Character map |
insert-video |
Inserts a Video placeholder in the text |
INSERT > Video |
insert-white-spaces |
Displays the list of White space that can be inserted in the text |
INSERT > White space |
prolexis |
Opens the Prolexis spellchecker mask |
HOME > Prolexis |
rename |
Opens the Rename file mask |
DOCUMENT > Rename |
section-break |
Inserts a Section break in the text |
INSERT > Section break |
show-annotations |
Displays the Annotations inserted in the text |
VIEW > Annotations |
show-content-items |
Displays the Content items of the current document |
VIEW > Content items |
show-notes |
Displays the Notes inserted in the text |
VIEW > Notes |
show-strikeout |
Displays the Strike out inserted in the text |
VIEW > Strike out |
show-tags |
Displays the Tags of the current document |
VIEW > Tags |
soft-break |
Inserts a Soft line-break in the text |
INSERT > Soft Line-break |
soft-hyphen |
Inserts an Hyphen in the text |
INSERT > Hyphen |
strikeout |
Displays the list of the Strike out actions |
HOME > Strike out |
tansa |
Opens in the binder the spellchecker tansa tab |
Home > Tansa |
upload |
Opens the Import object mask to upload images in the application |
DOCUMENT > Upload |
-
elementInfoActions - It is possible to specify a list of actions that will be available in a element info of the editor.
Configuration example:
<elementInfoActions>
<elementInfoAction>
<type>xpath</type>
<value>/doc/story/photo-web/fw-photo</value>
<actions>
<name>edit</name>
<name>unlink</name>
</actions>
</elementInfoAction>
<elementInfoAction>
<type>attribute</type>
<name>mainimage</name>
<value>true</value>
<actions>
<name>copy</name>
<name>move</name>
</actions>
</elementInfoAction>
<elementInfoAction>
<type>xpath</type>
<value>/doc/story/text/table</value>
<actions>
<name>copy</name>
<name>move</name>
</actions>
</elementInfoAction>
</elementInfoActions>
Each elementInfo has the following attributes:
-
type [xpath | attribute] - The type on which working on.
-
name - The name of the attribute to apply the configuration, only used when the type is set to attribute.
-
value - The value of the attribute or the xpath of the element info.
-
actions - The list of actions which will be displayed on the element info. See below the list of the possible actions.
| This configuration is valid only for the element info actions and not for the elements contained into galleries and collections |
List of the managed actions:
| Function | Description | Components |
|---|---|---|
addpinboard |
Adds the focused element info to the Pinboard |
All |
aligncenter |
Aligns the placeholder to the center |
Image |
alignleft |
Align the placeholder to the left |
Image |
alignright |
Align the placeholder to the right |
Image |
changeallcaptions |
Change all captions of the elements in the element info |
Gallery |
collapsecaption |
Collapse all the captions if the elements in the element info |
Gallery |
copy |
Copy the element info |
All |
delete |
Delete the element info |
All |
disablehardcropall |
Disable hard crop for all the elements in the element info |
Gallery |
edit |
Edit an object linked to a element info |
Image, Embed EOMDB |
enablehardcropall |
Enable the hard crop for all the elements in a element info |
Gallery |
fullwidth |
Set the full width as alignment |
Image |
move |
Move the element info |
All |
openobjectpanel |
Open the object panel dialog |
Image, Video, Audio, Graphic, Embed EOMDB |
preview |
Open the preview |
Gallery, Collection |
replacetemplate |
Replace the template of the element info |
Image |
search |
Open the search dialog |
All |
setasbackground |
Set the background as alignment |
Image |
unlink |
Unlink an object from the element info |
All |
upload |
Open the upload dialog |
Image, Graphic, Audio, Video |
viewallphotos |
Expand/collapse the images configured as picture desk |
Image |
-
chaindoc - allows the creation of a chained document.
Configuration example:
<chaindoc>
<workflow>NewsFlow/Editing</workflow>
<chainTag>chain</chainTag>
<bodyContentItem>text</bodyContentItem>
<bodyFragment><p><?EM-dummyText [Insert text here]?></p></bodyFragment>
<options>
<!-- uncomment this line to create a chain document from scratch -->
<!-- <mode>chain</mode> -->
<copyMetadata>true</copyMetadata>
</options>
<!-- uncomment this line to create a chain document from scratch -->
<!-- <content><doc><story><text>All work good!</text></story></doc></content> -->
</chaindoc>
attributes description:
-
workflow - Optional the desired workflow. The object will reach the indicated workflow.
-
chainTag - Optional the tag that will be progressively and numerically updated by Méthode.
-
bodyContentItem - Optional the tag in which it will be possible to set the desired text once the chain is created.
-
bodyFragment - Optional the fragment of text which will be automatically inserted in the defined ContentItem. Is it also possible to replicate a XML structure by simply reporting the desired tags.
-
content - Optional the fragment xml used to create a new chained document form scratch
-
options - define additional parameters
-
copyMetadata - Optional [true (default) | false] the object will be copied or not with the metadata of the source object.
-
mode - Optional if set to chain value, the new chain document will be created from scratches, without reading and copying any previous object.
-
| The parameters bodyContentItem and bodyFragment must be used together if the result you want is the copy of the document and instead of the content in the tag specified in bodyContentItem you want to have the content specified in the bodyFragment. |
| The parameter mode=chain can be used only of others conditions are respcted and in this case the content parameter value will be used: Empty chainTag Empty bodyContentItem ** bodyFragment populated with a valid and complete XML of the object you want to create |
-
expandTagWizard [all | first (default) | none] - Determines which elements expand when the tag wizard panel is displayed.
-
all - Expand all the elements.
-
first - Expand only the first element.
-
none - All elements are collapsed.
-
-
selectedTab [CANDIDATE | METADATA | CORRELATED | PREVIEW | etc…] - Select the default tab to appear when the editor opens.
| It’s possible to specify a custom panel as default. In this case the selectedTab must be the name of the custom tab. |
-
setSoftBreakChannel [true | false (default)] - If true a soft break relevant to the specific channel is inserted. It is necessary to enable the PadmaPriv_editorInsertSoftLineBreak privilege.
-
visibleTabs - Use this property to enter the list of tabs that will be visible in the editor, if not specified or if the list is empty all the tabs will be shown.
These are the available tabs for each editor:-
Story and Gallery editors
-
CANDIDATE (Candidate Browser)
-
METADATA (Object Panel)
-
CORRELATED (Correlated Objects)
-
TAGWIZARD (Tag Wizard)
-
STORYCOMPONENTS (Components)
-
INFO (Object Properties)
-
PINBOARD
-
ANNOTATIONS (Annotations)
-
THESAURUS (Thesaurus features)
-
SHAPES (Layouts panel)
-
SPELLCHECKER
-
COMMENTSAREA (Comments area)
-
VERSIONINFO (Version information)
-
TOPIC (Topic Panel)
-
DOCSTRUCTURE (Document Structure)
-
ATTRINSPECTOR (Attribute Inspector)
-
SOCIAL (Social features)
-
SOCIALFOLLOWING (Social features)
-
SOCIALCAMPAIGNS (Social features)
-
PREVIEW (Print Preview)
-
ANALYTICS (Analytics features)
-
SEARCH (Search feature)
-
EXCELLINKING (Excel Linking)
-
POWERPOINTLINKING (PowerPoint Linking)
-
FILESYSTEMLINKING (File system linking)
-
-
DWP editor
-
CANDIDATE (Candidate Browser)
-
METADATA (Object Panel)
-
CORRELATED (Correlated Objects)
-
INFO (Object Properties)
-
VERSIONINFO (Version information)
-
PINBOARD
-
COMMENTSAREA (Comments area)
-
TOPIC (Topic Panel)
-
PREVIEW (Current selected zone preview)
-
SOCIAL (Social features)
-
ANALYTICS (Analytics features)
-
SEARCH (Search feature)
-
-
Topic editor
-
CANDIDATE (Candidate Browser)
-
METADATA (Object Panel)
-
CORRELATED (Correlated Objects)
-
INFO (Object Properties)
-
PINBOARD
-
SHAPES (Layouts panel)
-
COMMENTSAREA (Comments area)
-
PREVIEW (Current selected zone preview)
-
SEARCH (Search feature)
-
-
Topic Plan editor
-
CANDIDATE (Candidate Browser)
-
METADATA (Object Panel)
-
CORRELATED (Correlated Objects)
-
INFO (Object Properties)
-
PINBOARD
-
SHAPES (Layouts panel)
-
COMMENTSAREA (Comments area)
-
PREVIEW (Current selected zone preview)
-
SEARCH (Search feature)
-
-
Report editor
-
CANDIDATE (Candidate Browser)
-
METADATA (Object Panel)
-
INFO (Object Properties)
-
COMPLEXPREVIEW (Print Design Preview)
-
PINBOARD
-
ANNOTATIONS (Annotations)
-
TOPIC (Topic Panel)
-
TAGWIZARD (Tag Wizard)
-
SEARCH (Search feature)
-
EXCELLINKING (Excel Linking)
-
POWERPOINTLINKING (PowerPoint Linking)
-
FILESYSTEMLINKING (File system linking)
-
-
|
Some tabs are visible among the last even if not configured in the <visibleTabs> list, because they depend on other parameters. In particular:
|
Quick create configuration (for each editor)
The following properties (listed above) are used for the Quick Create functionality:
-
type [Depends on the editor] (Mandatory) - It sets the default Eidosmedia output type.
-
name [Depends on the editor] (Optional) - It sets the default filename. At this filename, a timestamp is appended. See the paragraph How to specify filename using variables.
-
template [Depends on the editor] (Mandatory) - It sets the default template for a new content in that editor. The template is not mandatory for the EOM::Topic type.
-
folderPath [Depends on the editor] (Optional) - It sets the default folder for a new content in that editor. If not specified the user Working directory is used.
-
defaultWorkfolder [Depends on the editor] (Optional) - The default workfolder to save the file into if the specified workfolder or the current user Working directory is not valid.
Story and Gallery editors specific configuration
-
copyfitTime [5000] - When the copyfit information is visible, this options sets the interval at which the copyifit information is updated.
-
saveMetadataBehaviour [after (default) | before | none] - Defines when the story metadata has to be saved against the content of the open story.
-
defaultPictureSize - It sets the default "picture content item" size: height and width, the values must be in pixels. Default values are: width: "300", height: "300".
-
stylesheetTimeout [3000 (3 seconds)] - It sets the delay after which the Stylesheet should be checked (after loading).
-
defaultChannelCopy (Optional) - The default channel selected in the create channel copy action (e.g. Globe-Print, Globe-Print/USA).
-
collapsedChannelCopyDialog (Optional) - If true, the channels are not expanded in the new channel copy modal dialog.
-
openSideBySideMasterWithChannelCopy [true | false (default)] - If true, when a channel copy is opened the master will be opened in side by side mode
-
collapsedGalleryComponent [true | false (default)] - If true, the box of the gallery component is displayed collapsed on a single line by default when the story is opened.
-
showElementButtonsAsList [true | false (default)] - If true, the "Show elements" buttons are shows as a list.
-
showAudioCaption [true | false (default)] - If true, the main caption (e.g. the one defined in the containerElements with the type="caption" attribute) is shown below the audio.
-
showVideoCaption [true | false (default)] - If true, the main caption (e.g. the one defined in the containerElements with the type="caption" attribute) is shown below the video.
-
showGraphicCaption [true | false (default)] - If true, the main caption (e.g. the one defined in the containerElements with the type="caption" attribute) is shown below the graphic.
-
supportedStoryComponents - List of EOMDB story component files supported by the editing document. (e.g. ['/SysConfig/Globe/Print/Page/Components/Briefs.xml', '/SysConfig/Globe/Print/Page/Components/Foto-group.xml']).
-
collectionElementStyle [layout-large | layout-small (default)] - If layout-large, collectionElement items will show a large picture with caption below.
-
customStylesheets - This setting is not supported anymore from version 5.2022.09.
-
contentItemsAllowInline [text (default)] - Comma separated list of contentItems that can contain inline elements (e.g. text, headline).
-
imgOptions - It sets specific behaviour for image blocks.
It can be configured in the following ways:-
allowSpecificSwingStyle [true (default) | false] - If true allow to add specific class styles to the editing document. For example align-center (xsm-blockstyle-align-center), align-left (xsm-blockstyle-align-left) and align-right (xsm-blockstyle-align-right).
-
showButtonSpecificSwingStyle [true (default) | false] - If true allow to show the buttons on an image block to change the alignment styles. For example align-center (xsm-blockstyle-align-center), align-left (xsm-blockstyle-align-left) and align-right (xsm-blockstyle-align-right).
-
dropBehavior [cover (default) | contain] - Defines the default behavior of dropping a photo in a placeholder, with regard to the cropping mode applied.
-
checkImageFit [true | false (default)] - If true, it will be not possible to save a soft crop when the image does not fit the image placeholder.
-
videoPreview [true | false (default)] - Set true to see the video preview button in case the image component wrap a video element.
-
|
showButtonSpecificSwingStyle is keep in account only if the allowSpecificSwingStyle is set to true. It does not make sense to show the buttons if the specific style cannot be saved in the document. |
-
count - Count options to be applied to the editing document.
It can be configured in the following ways:-
type [document (default) | contentItem] - Context to apply count, entire document or selected content item.
-
expression - A function executing a custom evaluation based on the current values (e.g. chars or words).
-
label - An identifier in the translation file to point out the result of the configured expression.
-
hideWordCount - It allows to hide the Words counter displayed in the story editor. Note that by design some languages containing special codes are not supported, so this configuration allows to hide the Words counter that doesn’t work in case of special codes (like Chinese, Japanese, Arabic or others) are used.
-
excludeTags - It is a tags list. All the characters/words inserted in a tag of the excludeTags list will be excluded from the count.
-
contentItems - It is a list of contentItems. The characters count will be limited to some elements inside the contentItem and not to the entire contentItem block.
It can be configured in the following ways:-
xpath - The xpath of the content item.
-
elements - It is a list of elements contained in the xpath content item. The characters count will be limited to the configured element and not to the entire contentItem block.
-
-
| The contentItem list is kept in account only when the <type> is set to contentItem, it does not work with the document value. Moreover, the xpath must be an absolute path inside the story. |
-
hardCropSwitchOn [true | false (default)] - If true, it enable the "Hard Crop" option by default when an image is inserted into the text or when the restore action is performed.
-
hardCropCollectionSwitchOn [true | false (default)] - If true, it enable the "Hard Crop" option by default when an image is inserted in a collection link or when the restore action is performed.
-
listMaxIndentation [6] - Maximum indentation level in lists.
-
tableStyles - Defines the styles that can be applied to tables in the story editor.
The configuration can contains the following options: -
styleSheets - A list of CSS stylesheets containing the styles that can be applied to tables.
-
styles - A list of style definitions that can be applied to tables, each of them with two parameters:
-
label - The name that will be shown in the editor for the style.
-
className - The CSS class present in a stylesheet that will be applied to the table for this style.
-
-
format - Format options to be applied to the editing document.
It can be configured in the following ways:-
bold [span (default) | strong | b] - The bold format tag to apply to the selected text.
-
italic [span (default) | em | i] - The italic format tag to apply to the selected text.
-
underline [span (default) | u] - The underline format tag to apply to the selected text.
-
subscript [span (default) | sub] - The subscript format tag to apply to the selected text.
-
superscript [span (default) | sup] - The superscript format tag to apply to the selected text.
-
-
embedPreview - Allow configuration of the xpath elements to use creating the preview of an object embedded in a document.
It can be configured in the following ways:-
xpathTitle - The xpath to get the title.
-
xpathSummary - The xpath to get the summary. Note: the summary is searched in the system attributes before to use this parameter.
-
showElements - Defines the elements that are visible.
It can be configured in the following ways:-
objectPath [true (default) | false] - If true the object path is visible.
-
photo [true (default) | false] - If true the photo, if found, is visible.
-
summary [true (default) | false] - If true the summary, if found, is visible.
-
-
Note
If the summary is set to true the value to display will be first searched in the system_attributes then in the provided path
-
displaySizes - A list of displaySize used for image placeholders, allows to apply a proportional zoom on the placeholder to display it smaller than its real dimension.
-
displaySize - Defines the proportional zoom to apply.
It can be configured in the following ways:-
xpath (Mandatory) - The xpath of the image element to apply the proportional zoom to (e.g. /doc/story/photo-web/fw-photo). The xpath value can contain only tag names, therefore, for example, it cannot contain attributes or predicates (e.g. /doc[@class="main"]/story/image would be an incorrect configuration).
-
scale (Optional) - The zoom factor to apply. It can be a value between 0 and 1.
-
width (Optional) - The width of the placeholder to display. The height will be proportionally dimensioned.
-
height (Optional) - The height of the placeholder to display. The width will be proportionally dimensioned.
-
attributes (Optional) - The tag which groups all the possible attribute to specify the displaySize configuration and to which elements it will be applied.
-
operator [and (default) | or] (Optional) - An attribute of the attributes tag which specifies whether the displaySize configuration is to be applied to the attributes specified under the attribute tag.
-
attribute - Mandatory only if the attributes tag is specified:
-
tag (Optional) - The name of the element to which the options specified under the attribute tag will be applied (e.g. photo-web). Only one element at a time can be specified
-
name (Optional) - The name of the attribute contained in the element specified under tag (e.g. class).
-
value (Optional) - The value of the attribute specified under name (e.g. lowres).
-
-
-
-
|
Only one among scale and width and height should be defined,
if more than one is defined, the order with which they will be taken into consideration is: scale, width, height. |
-
pictureDeskImages - A list of pictureDeskImage used for image placeholders, allows to enable the picture desk functionalities fot the specified placeholder.
-
pictureDeskImage - It can be configured in the following way:
-
xpath (Mandatory) - The xpath of the image element to enable the picture desk functionalities to (e.g. /doc/story/photo-web/fw-photo). The xpath value can contain only tag names, therefore, for example, it cannot contain attributes or predicates (e.g. /doc[@class="main"]/story/image would be an incorrect configuration).
-
attributes (Optional) - The tag which groups all the possible attribute to specify the pictureDeskImage configuration and to which elements it will be applied.
-
operator [and (default) | or] (Optional) - An attribute of the attributes tag which specifies whether the pictureDeskImage configuration is to be applied to the attributes specified under the attribute tag.
-
attribute - Mandatory only if the attributes tag is specified:
-
tag (Optional) - The name of the element to which the options specified under the attribute tag will be applied (e.g. photo-web). Only one element at a time can be specified
-
name (Optional) - The name of the attribute contained in the element specified under tag (e.g. class).
-
value (Optional) - The value of the attribute specified under name (e.g. lowres).
-
-
-
-
-
internalPasteBehavior [formatted (default) | plain] - Defines behavior pasting text in a document from Swing to Swing editor. If set to formatted the formatted text will be pasted.
|
Note that using the default Plain paste behavior there is a difference according to the origin of the copied text:
|
|
Note that using the default Plain paste behavior it’s not possible to copy and paste block elements. In this case the formatted option it’s mandatory. |
-
pasteBehavior [formatted (default) | plain] - Defines behavior pasting text in a document from an external source. If set to formatted the formatted text will be pasted.
-
pastePlainTextOrigins - Defines external sources from which only plain text is pasted. This parameter it’s keep in consideration only when pasteBehavior is set to formatted.
It can contains multiples origin elements for which possible values are:-
google-docs: Google Documents
-
ms-word: Microsoft Word
-
external-generator: Any external program that generates an HTML document with a specific value set for the generator meta tag
-
| External generator doesn’t include copied content from web sites. |
-
fixedImgTag [true | false (default)] - If set to true, the img tag it’s used to show an inline not modifiable image.
| The same behaviour can be obtained by setting the attribute eom-fixedimg to true on a specific img tag. |
<img eom-fixedimg="true" style="baseline-shift:1.4;padding-right:1.5;" src="/SysConfig/Page/Comonents/Text/full_heart_picture.pdf" />
-
checkAlignAttribute [true | false (default)] - If set to true, when a document is saved and the image is aligned to right or left with the css class xsm-blockstyle-align-right or xsm-blockstyle-align-left also the align attribute is set to right or left respectively.
-
showConflictResolutionMode [true | false (default)] - Shows the conflict resolution mode panel.
-
conflictResolutionMode [conflict.autoRename (default) | conflict.replace | conflict.newVersion | conflict.doNotCreate] - Defines the conflict resolution mode.
It can be configured in the following ways:-
conflict.autoRename - Create a new object, with auto rename.
-
conflict.replace - Replace existing object.
-
conflict.newVersion - Create a new version for the existing object.
-
conflict.doNotCreate - If already exists the object is not created.
-
-
hyperlink - Hyperlink options to be applied to the editing document.
It can be configured in the following ways:-
relationships - An optional list of relationship tags can be configured to fill the 'rel' hyperlink attribute, see sample configuration below. The relationship label will be loaded from Swing localisations with the following key 'modals.hyperlink.ID' where ID is the one configured (i.e. for the 'nofollow' sample configuration the string key is 'modals.hyperlink.nofollow'). If no localisation is available the 'label' attribute specified in configuration will be loaded. The 'nofollow' relationship is displayed by default.
-
target [_self (default) | _blank | _parent] - The target specifies a window or a frame where the linked document is loaded. Possible values are:
-
_self - Load in the same frame.
-
_blank - Load in a new window.
-
_parent - Load in the parent frameset.
-
-
| This parameter is kept into account only if the attribute hyperlinkTarget is not defined in the channel configuration. |
Configuration example:
<editor>
<story>
<hyperlink>
<target>_self</target>
<relationships>
<relationship id="nofollow" checked="true" label="No follow" />
<relationship id="sponsored" checked="false" label="Sponsored" />
<relationship id="ugc" checked="false" label="User-generated content" />
</relationships>
</hyperlink>
</story>
</editor>
-
codeblock - Code block component options to be applied to the editing document.
It can be configured in the following ways:-
injectHeadScripts - A list of scripts that will be added in the Head tag of the iframe that show the code block preview.
-
injectEndBodyScripts - A list of scripts that will be added at the end of the body of the iframe that show the code block preview.
-
sandbox [allow-same-origin allow-scripts (default)] - The sandbox can be a list of flags seprated by blank. The sandbox attribute gives just what it needs tighten the restrictions on framed content. It’s possible to load a specific frame’s content in a low-privilege environment, allowing only the subset of capabilities necessary to do whatever works needs doing.
-
| To see a complete list of possible flags see the documentation at this page Play safely in sandboxed IFrames |
-
applyShapeNonPrintChannels [true | false (default)] - This configuration allows the user to apply a shape from template in non print channels.
-
openFullBundle [true (default)| false] - If set to true, this configuration allows the user to switch between channel copies inside the same browser window.
-
openMasterInBundle [false (default)| true] - If set to true, this configuration allows the user to open the master document avoiding the display of the dialog box that lists the available channel copies.
| This parameter works only opening a master from the Recent widget (horizontal one) and from the Preview. |
-
languageDirections - Language text direction optional configurations. It is possible to configure languages for which a text direction will be applied by default in the story editor.
For example, with the following configuration, to every document that has an xml:lang attribute with he or ar-eg value will be applied a right to left text direction.
Configuration example:
<languageDirections>
<languageDirection>
<lang>ar-eg</lang>
<direction>rtl</direction>
</languageDirection>
<languageDirection>
<lang>he</lang>
<direction>rtl</direction>
</languageDirection>
</languageDirections>
DWP editor specific configuration
-
dwpTemplates - It specifies the list of available dwpTemplates to choose from while changing the template of a DWP Page. It is an array of templates, each of them with two parameters:
-
label - The label to be shown
-
path - The path to the template (e.g. /SysConfig/Globe/Web/DwpTemplates/public/modern.dwp)
-
-
dwcTemplates - It specifies the list of available dwpTemplates to choose from while changing the template of a DWP Page. It is an array of templates, each of them with two parameters:
-
label - The label to be shown
-
path - The path to the template (e.g. /SysConfig/Globe/Web/DwcTemplates/public/230/230-4rows1col.dwc)
-
| The dwpTemplates and dwcTemplates configuration is ignored if the templates are configured in the webtype.cfg. |
-
dwcContextualEditing [true (default) | false] - If set to true, a contained DWC can be opened for editing in the same DWP Editor tab of the parent. Otherwise a new browser tab is opened.
-
showDocumentMetadataOnly [true | false (default)] - If set to true, the right Object Panel panel will stick to the main document, regardless the currently selected element.
-
showDocumentCorrelatedOnly [true | false (default)] - If set to true, the right Correlated panel will stick to the main document, regardless the currently selected element.
-
skipUnlinkConfirm [true | false (default)] - If set to true, confirmation for unlinking objects is not requested.
-
allowDWPLink [true (default) | false] - If set to true, it will be possibile to drag a DWP in another DWP in order to link it to a zone.
-
linkedItemTemplates - It specifies the list of custom templates that should be used to render DWP linked items based on their type (see Custom DWP linked item templates for further details). It is an array of linkedItemTemplate, each of them with two parameters:
-
type - The object type for which the template should be used
-
template - The custom template path
-
Topic / Topic plan editor specific configuration
-
loadCorrelates [true | false (default)] - If true, when opening the document also the correlates are automatically loaded
-
showObjectTitle [true (default) | false] - If true, the object title is shown instead of the object name.
-
showOpenedDocuments [true | false (default)] - If true, an indicator that shows the opened document is shown.
-
quickCreateTopicItem [true | false (default)] - If true, the "new topic item" and the "new sub item" actions do not open the modal.
-
onTitleClick [preview | edit] - Determines which action should be executed when the user clicks on an object title. If the value is "edit" and the object is not editable, no action is executed. "Edit" is also disabled for topics and topic plans. If no action is specified, inline editing is enabled on title.
-
expandAll [true | false (default)] - If true, all topic content is expanded, correlates included.
-
limitToChildren [true | false (default)] - If true, topic plan will be loaded with its topics and topic children are loaded on demand when the user opens them. For topic plans only.
-
cols - It is possible to define custom columns to be displayed. The columns can be as follows:
| Name | Description |
|---|---|
occupation |
Displays the occupation size data for the linked object, if applicable |
author |
Displays the value of the topic item’s author system metadata field |
channel |
Displays the channel icon of the object |
locker |
Displays the user who is locking the object |
duedate |
Displays the deadline (due date) of an object |
issuedate |
Displays the issue date of an object |
iconuser |
Displays the user icon (and the count) if the object has been assigned to a user or users |
priority |
Displays the value topic of the item’s priority system metadata field |
users |
Displays the names of the users assigned to the topic, if any |
children |
Displays the number of direct children (topic item for topics, sub items for topic items) |
usagetickets |
Displays a clickable icon if there are usage tickets for the object |
template |
Displays an icon if the object has a template |
shape |
Displays an icon if the object has a shape |
attachment |
Displays an icon if the object has an attachment. Also displays the attachment icon |
correlates |
Displays the number of correlates, or a button to load them |
actions |
Display the action menu |
metadata |
Display the value of a specific metadata |
systemmetadata |
Display the value of a specific System Metadata |
ownerteam |
Display the ownerteam of the object |
|
Type, workflow status and title/name columns are always put in the editor. The actions column can be placed anywhere, but if not available in the configuration it will be placed as the last column. |
|
Default configuration is the following: workflow, type, title, children, users, usagetickets, channel, template, shape, occupation, priority, attachment, locker, issuedate, duedate, correlates, actions |
Configuration example:
<cols>
<col>
<field>children</field>
</col>
<col>
<field>users</field>
</col>
<col>
<field>usagetickets</field>
</col>
<col>
<field>channel</field>
</col>
<col>
<field>template</field>
</col>
<col>
<field>shape</field>
</col>
<col>
<field>occupation</field>
</col>
<col>
<field>priority</field>
</col>
<col>
<field>attachment</field>
</col>
<col>
<field>locker</field>
</col>
<col>
<field>issuedate</field>
</col>
<col>
<field>duedate</field>
</col>
<col>
<field>correlates</field>
</col>
<col>
<field>actions</field>
</col>
<!-- Example
<col>
<field>metadata</field>
<xpath>/Metadata/ObjectInfo/Created</xpath>
</col>
<col>
<field>systemmetadata</field>
<xpath>/productInfo/name</xpath>
<label>Channel name</label>
</col>
-->
</cols>
Report editor specific configuration
|
By design the Report is a stories container, so when you select a story in a report the focus is not on the Report, but on the selected story. So, the settings configured in the story editor section are valid unless documented in this section (e.i. setSoftBreakChannel, expandTagWizard, elementInfoActions, …) |
-
showDocumentMetadataOnly [true | false (default)] - If set to true, the right Object Panel panel will stick to the main document, regardless the currently selected element.
-
showDocumentTopicOnly [true | false (default)] - If set to true, the right Topic Panel will stick to the main document, regardless the currently selected element.
-
saveMetadataBehaviour [after (default) | before | none] - Defines when the report metadata has to be saved against the content of the open report.
|
For the report this is valid only when showDocumentMetadataOnly is set to true |
-
forceHideSidebar [true | false (default)] - If true, the Sidebar (Smart outline) is not shown unless manually opened.
-
previewSectionHeight [650 (default)] - It defines the height, expressed in pixel, of the blocks preview sections while the report is still loading.
-
lockDocumentsOnOpen [true | false (default)] - If true, when opening the report the documents are locked to a maximum of ten.
-
viewMode [all (default) | single (deprecated)] - If set to all, the report will be displayed in a continuous scrolling mode. If set to single only one document at time will be visible.
|
Single mode is deprecated and will be removed in a future release. |
|
When viewMode is set to single, the refresh action will be fired only on the active document. Otherwise when is set to all, the refresh action will be disabled until some documents, NOT in editing mode, has been changed, if enabled it will be fired only on all the documents that are NOT in editing mode. |
-
reportTypes - It is possible to specify the conditions for which a document should be considered a report and opened with the specific report.
A report type configuration can be configured like this:
-
by type
<reportTypes>
<reportType>
<data>eomType</data>
<value>EOM::Report</value>
</reportType>
</reportTypes>
-
by system attribute
<reportTypes>
<reportType>
<data>sysAttribute:///props/docType</data>
<value>report</value>
</reportType>
</reportTypes>
-
by metadata
<reportTypes>
<reportType>
<data>metadata:///MetaData/Personal/Address</data>
<value>report</value>
</reportType>
</reportTypes>
|
If reportTypes is not configured or the conditions are not satisfied, Swing looks in the system attributes of the object to verify if the attribute type or the attribute docType are set to report value. |
Editor configuration example:
<editor>
<requiredFileName>false</requiredFileName>
<releaseMode>both</releaseMode>
<multiTab>true</multiTab>
<targetFolders>
<targetFolder>
<label>Current workfolder</label>
<path>workfolder</path>
<isDefault>true</isDefault>
</targetFolder>
<targetFolder>
<label>User home folder</label>
<path>home</path>
</targetFolder>
<targetFolder>
<label>User workfolder</label>
<path>work</path>
</targetFolder>
<targetFolder>
<label>Root folder</label>
<path>root</path>
</targetFolder>
</targetFolders>
<pinnedQueries>
<pinnedQuery>
<id>199$1.0.533062401</id>
<name>Prime query for all editors</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
</pinnedQueries>
<forceSave>false</forceSave>
<story>
<type>EOM::Story</type>
<name>NewStory.xml</name>
<template>/SysConfig/Globe/Templates/story.xml</template>
<selectedTab>METADATA</selectedTab>
<folderPath>workfolder:///Globe/Sport</folderPath>
<defaultChannelCopy>Globe-Print</defaultChannelCopy>
<collapsedChannelCopyDialog>false</collapsedChannelCopyDialog>
<openSideBySideMasterWithChannelCopy>true</openSideBySideMasterWithChannelCopy>
<contentItemsAllowInline>text</contentItemsAllowInline>
<hardCropCollectionSwitchOn>false</hardCropCollectionSwitchOn>
<hardCropSwitchOn>false</hardCropSwitchOn>
<collapsedGalleryComponent>true</collapsedGalleryComponent>
<oembedProviders>
<oembedProvider>
<name>youtube</name>
<regex>(https?\:\/\/)?((www|m)\.youtube\.com)\/.+$</regex>
</oembedProvider>
</oembedProviders>
<oembedConfig>
<removeGoogleCoordinate>true</removeGoogleCoordinate>
</oembedConfig>
<pinnedQueries>
<pinnedQuery>
<id>199$1.0.533062401</id>
<name>First EDITOR STORY QUERY</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
<pinnedQuery>
<id>199$1.0.533062401</id>
<name>Second EDITOR STORY QUERY</name>
<icon>fa fa-gear</icon>
</pinnedQuery>
</pinnedQueries>
<defaultPictureSize>
<width>300</width>
<height>300</height>
</defaultPictureSize>
<editableTypes>
<editableType>BlogStory</editableType>
<editableType>ArticleStory</editableType>
</editableTypes>
<visibleTabs>
<visibleTab>CANDIDATE</visibleTab>
<visibleTab>METADATA</visibleTab>
</visibleTabs>
<supportedStoryComponents>
<supportedStoryComponent>/SysConfig/Globe/Components/Briefs.xml</supportedStoryComponent>
<supportedStoryComponent>/SysConfig/Globe/Components/Foto-group.xml</supportedStoryComponent>
</supportedStoryComponents>
<count>
<type>document</type>
<expression>function(countInfo) {return parseInt(countInfo.chars / 60);}</expression>
<label>editor.story.countcustom</label>
<hideWordCount>
<lang>jp</lang>
<lang>zh-ch</lang>
</hideWordCount>
<excludeTags>
<tag>pbox</tag>
<tag>extra</tag>
</excludeTags>
<contentItems>
<contentItem>
<xpath>/doc/story/grouphead</xpath>
<elements>
<element>headline</element>
</elements>
</contentItem>
</contentItems>
</count>
<listMaxIndentation>6</listMaxIndentation>
<tableStyles>
<styleSheets>
<styleSheet>/SysConfig/Globe/Web/Css/Web/table-styles.css</styleSheet>
</styleSheets>
<styles>
<style>
<label>Blue Cyan</label>
<className>table-style-blue-cyan</className>
</style>
<style>
<label>Green</label>
<className>table-style-green</className>
</style>
</styles>
</tableStyles>
<format>
<bold>span</bold>
<italic>span</italic>
<subscript>span</subscript>
<superscript>span</superscript>
</format>
<internalPasteBehavior>formatted</internalPasteBehavior>
<pasteBehavior>formatted</pasteBehavior>
<pastePlainTextOrigins>
<origin>google-docs</origin>
<origin>ms-word</origin>
<origin>external-generator</origin>
</pastePlainTextOrigins>
<allowSpecificSwingStyle>true</allowSpecificSwingStyle>
<imgOptions>
<allowSpecificSwingStyle>true</allowSpecificSwingStyle>
<showButtonSpecificSwingStyle>true</showButtonSpecificSwingStyle>
<videoPreview>true</videoPreview>
<dropBehavior>cover</dropBehavior>
</imgOptions>
<embedPreview>
<xpathTitle>grouphead/headline</xpathTitle>
<xpathSummary>summary</xpathSummary>
<showElements>
<objectPath>true</objectPath>
<photo>true</photo>
<summary>true</summary>
</showElements>
</embedPreview>
<displaySizes>
<displaySize>
<xpath>/doc/story/text/photo-web/fw-photo</xpath>
<scale>0.5</scale>
<attributes operator="or">
<attribute>
<tag>photo-web</tag>
<name>attributename</name>
<value>attributevalue</value>
</attribute>
<attribute>
<tag>photo-web</tag>
<name>attributename2</name>
<value>attributevalue2</value>
</attribute>
</attributes>
</displaySize>
<displaySize>
<xpath>/doc/story/text/photo-print/fp-photo</xpath>
<width>200</width>
</displaySize>
</displaySizes>
<includeTemplates>
<includeTemplate>/SysConfig/Globe/Templates/story-template.xml</includeTemplate>
<includeTemplate>/SysConfig/Globe/Templates/story.xml</includeTemplate>
</includeTemplates>
<excludeTemplates>
<excludeTemplate>/SysConfig/Globe/Templates/mediaGallery.xml</excludeTemplate>
<excludeTemplate>/SysConfig/Globe/Templates/photoGallery.xml</excludeTemplate>
<excludeTemplate>/SysConfig/Globe/Templates/photoGalleryWide.xml</excludeTemplate>
<excludeTemplate>/SysConfig/Globe/Templates/TimelineGallery.xml</excludeTemplate>
</excludeTemplates>
<hyperlink>
<target>_self</target>
<relationships>
<relationship id="nofollow" checked="true" label="No follow" />
<relationship id="sponsored" checked="false" label="Sponsored" />
<relationship id="ugc" checked="false" label="User-generated content" />
</relationships>
</hyperlink>
<codeblock>
<injectHeadScripts>
<injectHeadScript>https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js</injectHeadScript>
</injectHeadScripts>
<injectEndBodyScripts>
<injectEndBodyScript>https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js</injectEndBodyScript>
</injectEndBodyScripts>
<sandbox>allow-same-origin allow-scripts</sandbox>
</codeblock>
<openFullBundle>true</openFullBundle>
<openMasterInBundle>true</openMasterInBundle>
</story>
<gallery>
<type>EOM::MediaGallery</type>
<name>New Gallery.gallery.xml</name>
<template>/SysConfig/Globe/Templates/mediaGallery.gallery.xml</template>
<folderPath>workfolder:///Globe/Sport</folderPath>
</gallery>
<webpage>
<type>EOM::WebPage</type>
<name>New WebPage.dwp</name>
<template>/SysConfig/Globe/Web/DwpTemplates/public/classic.dwp</template>
<selectedTab>CANDIDATE</selectedTab>
<folderPath>workfolder:///Globe/Sport</folderPath>
<dwpTemplates>
<dwpTemplate>
<label>Classic</label>
<path>/SysConfig/Globe/Web/DwpTemplates/public/classic.dwp</path>
</dwpTemplate>
<dwpTemplate>
<label>Central</label>
<path>/SysConfig/Globe/Web/DwpTemplates/public/central.dwp</path>
</dwpTemplate>
<dwpTemplate>
<label>Modern</label>
<path>/SysConfig/Globe/Web/DwpTemplates/public/modern.dwp</path>
</dwpTemplate>
</dwpTemplates>
<dwcTemplates>
<dwcTemplate>
<label>230 - 4 rows, 1 column</label>
<path>/SysConfig/Globe/Web/DwcTemplates/public/230/230-4rows1col.dwc</path>
</dwcTemplate>
<dwcTemplate>
<label>300 - 4 rows, 1 column</label>
<path>/SysConfig/Globe/Web/DwcTemplates/public/300/300-4rows1col.dwc</path>
</dwcTemplate>
<dwcTemplate>
<label>460 - 2 rows, 2 columns</label>
<path>/SysConfig/Globe/Web/DwcTemplates/public/460/460-2rows2cols.dwc</path>
</dwcTemplate>
</dwcTemplates>
<dwcContextualEditing>true</dwcContextualEditing>
</webpage>
<topic>
<type>EOM::Topic</type>
<name>TopicMainComponents.pkg</name>
<template>/SysConfig/Globe/TopicMainComponents/test Component.pkg</template>
<selectedTab>CANDIDATE</selectedTab>
<folderPath>workfolder:///Globe/Sport</folderPath>
</topic>
<topicplan>
<type>EOM::Schedule</type>
<name>testDefaultTemplate.prs</name>
<template>/SysConfig/Globe/PrsTemplates/Economie oro.prs</template>
<selectedTab>INFO</selectedTab>
<folderPath>workfolder:///Globe/Politics</folderPath>
</topicplan>
<report>
<showDocumentMetadataOnly>true</showDocumentMetadataOnly>
<showDocumentTopicOnly>true></showDocumentTopicOnly>
<visibleTabs>
<visibleTab>CANDIDATE</visibleTab>
<visibleTab>METADATA</visibleTab>
</visibleTabs>
<viewMode>all</viewMode>
<lockDocumentsOnOpen>true</lockDocumentsOnOpen>
<reportTypes>
<reportType>
<data>eomType</data>
<value>EOM::Report</value>
</reportType>
<reportType>
<data>sysAttribute:///props/docType</data>
<value>report</value>
</reportType>
<reportType>
<data>metadata:///MetaData/Personal/Address</data>
<value>report</value>
</reportType>
</reportTypes>
</report>
</editor>
Topic Calendar configuration
There are several configuration to customize the string date formats that appear in the Topic Calendar. This method is deprecated and will be removed in a future release. Please move this configuration under topicList configuration. See Topic List configuration
-
day - Day format
-
cellday - Cell day format
-
dayanddaymonth - Day with month format
-
daymonth - Day of the month format
-
weekshort - Day and month in week format
-
hourweek - Hour in week format
-
monthview - Month view format
-
weekview - Week view format
-
dayview - Day view format
Further details on date formats can be found on Moment.js documentation
Topic Calendar configuration example:
<editor>
<topiccalendar>
<dateFormats>
<day>ddd</day>
<cellday>D</cellday>
<dayanddaymonth>ddd DD/MM</dayanddaymonth>
<daymonth>DDMM</daymonth>
<weekshort>DD/MM</weekshort>
<hourweek>HH:mm</hourweek>
<monthview>MMMM, YYYY</monthview>
<weekview>W, YYYY</weekview>
<dayview>LL</dayview>
</dateFormats>
</topiccalendar>
</editor>
Preview configuration
For further details on the preview, see:
Object panel configuration
For further details on the object panel, see:
Search configuration
For further details on the search configuration, see:
Explorer Filter configuration
Explorer filters allow to filter the objects inside a folder. They functioning is very similar to a search performed on the selected folder. Explorer filters rely on the presence of configured indexes in the Search configuration. Furthermore, it is necessary to assign the correct connectionName to any of the EOMDB configured search domains, otherwise the filter would not work. See Search configuration.
Text Analysis and Create story from configuration
Text analysis is a powerful tool that allows to copy the content from the selected tag into the xpath of the destination document.
The configuration is the same for all the content types and it is also responsible for the "Create story from" wires or webpages.
-
importMode - It configures the buttons that can be visualized when the user is working in the Editor. The possible values are:
-
replace - Shows the "Replace text content" button and allows to replace the current story content with the imported content.
-
append - Shows the "Append text content" button and allows to add the imported content to the current story content.
-
|
It is also possible to display both buttons by configuring the importMode as in the example below. |
-
contents - It is used to enter a list of <content>, where the paths of the source document <from> and those of the destination file <to> are specified.
|
It is not required that the content from the specified x-paths is copied in the same x-paths of the destination document, but it is possible to specify different destination x-paths (e.g. the headline being copied in the summary). |
Configuration example:
<textanalysis>
<importMode>replace</importMode>
<importMode>append</importMode>
<contents>
<content>
<from>/story/title/</from>
<to>/story/grouphead/headline/</to>
</content>
<content>
<from>/story/description/</from>
<to>/story/summary/</to>
</content>
<content>
<from>/story/text/</from>
<to>/story/text/</to>
</content>
<content>
<from>/story/photo-web/</from>
<to>/story/photo-web/</to>
</content>
</contents>
</textanalysis>
| In the search panel, the "Analyze content" button is available only for the following types: "EOM::WireStory", "WireStory", "web::news", "web::content", "externalwebpage". |
Swing App Crop configuration
A specific list of Crop can be configured for Swing App.
Configured Crop will be available in Media upload for photo items:
<crops>
<crop>
<label>Free</label>
<width>300</width>
<height>300</height>
<resizable>true</resizable>
</crop>
...
<crop>
<label>2 X 2</label>
<width>600</width>
<height>400</height>
<resizable>false</resizable>
</crop>
</crops>
|
Crop configuration is valid for Swing App only. |
How to enable proxies
Méthode Swing uses proxies to communicate to external services. This is necessary due to the Same-Origin Policy used by modern browsers.
The same-origin policy restricts how a document or script loaded from one origin can interact with a resource from another origin. Same-origin Policy is used as a means to prevent some of the Cross-site Request Forgery attacks.
Proxies can be configured in Méthode Swing.
Proxy Options
The proxy can be configued with the following options:
-
http.jersey.client [true | false (default)] - Determines whether to use Jersey as client to perform all the as proxy for all HTTP requests through this proxy
-
http.read.timeout [30000] - Specify the socket read timeout (in milliseconds) to read the response from the target endpoint.
-
http.socket.timeout [3000] - Specify the socket connection timeout (in milliseconds) to establish a connection of the target endpoint.
-
reachout.httpProxy [true | false (default)] - if true enables the proxy to use an external proxy for HTTP requests. To do so, a following environment variable to the JVM where the Swing WebApp is running:-
em.reachout.httpProxyURImust be specified: the URI of the HTTP proxy, including port number (e.g: https://em.proxy:80/).
When configured, all HTTP requests will be done through the configured proxy URI. This option is irrelevant if you set false to "http.jersey.client" option. -
useTemplate [true | false (default)] - if true allows to use templates to build the target URL
<!-- other configuration -->
<proxies>
<proxy>
<name>[PROXY-NAME]</name> <!-- e.g. resourcespace -->
<http.jersey.client>false</http.jersey.client>
<http.read.timeout>30000</http.read.timeout>
<http.socket.timeout>3000</http.socket.timeout>
<reachout.httpProxy>false</reachout.httpProxy>
<targetUri>http://192.168.203.129/resourcespace/plugins/api_search/</targetUri> <!-- e.g. destination target Uri -->
<useTemplate>false</useTemplate>
</proxy>
</proxies>
|
The useTemplate param allows to use templates to build the URL. The following is an example of url which uses templates. |
<proxies>
<proxy>
<name>[PROXY-NAME]</name> <!-- e.g. resourcespace -->
<targetUri>http://192.168.203.129:{_port}</targetUri> <!-- e.g. destination target Uri -->
<useTemplate>true</useTemplate>
</proxy>
</proxies>
The new proxed URL must be called with ALL the parameters in its querystring, e.g.
http://swing/[PROXY-NAME]/users/get?_port=8080&id=userID
Note: if the parameter is missing, the call will return an HTTP 500 error.
Note: due to the nature of the Template Servlet, in this mode it is not possible to pass arrays as querystrings ( i.e. more than one querystring parameter with the same name ).
How to enable CAS
| CAS integration is available from eomdb 6.0.4.* upwards |
-
Setup eomdb as Authentication Provider
<UserAuth value="cas" uri="https://<hostname>:8443" />
-
Enable and configure CAS in Swing configuration file: swing.xml
casServerAuthPrefix is the URL prefix to handle CAS login and logout, if not configured the default value is casServerUrlPrefix
<WebClientConfiguration>
<global>
<casEnabled>true</casEnabled>
</global>
<cas>
<serverName>https://server.com:8443</serverName>
<casServerAuthPrefix>https://server.com:8443/cas</casServerAuthPrefix>
<casServerUrlPrefix>https://server.com:8443/cas/</casServerUrlPrefix>
</cas>
</WebClientConfiguration>
-
Enable CAS in REST configuration file: restServer.conf
<RestServerConfig>
<Cas>
<enabled>true</enabled>
<proxyCallbackUrl>https://<hostname>:8443/swing/api/proxyCallback</proxyCallbackUrl>
</Cas>
</RestServerConfig>
How to configure documentation in external folder
Additional user guide documents may be made available to Swing application by defining one or more nested components in Swing web context in server.xml (for further details on Tomcat 9.x Resources configuration, please refer to Resources configuration).
This is an example of the additional user guide documentation configuration.
<Context docBase="com.eidosmedia.webclient.web-app"
path="/swing" reloadable="false">
<Resources className="org.apache.catalina.webresources.StandardRoot">
<PreResources className="org.apache.catalina.webresources.DirResourceSet"
base="/methode/meth01/extension/manuals" readOnly="true"
webAppMount="/docs/userguide" />
</Resources>
</Context>
Swing Live configuration
Swing Live is the digital solution developed by Eidosmedia to allow the quick and agile creation and publishing of live blogs to your web site to cover a topic or event runtime. The full functions of Swing Live can be accessed from Swing while a reduced set of functions can also be accessed from your mobile by accessing the dedicated App (both iOS and Android platforms are supported).
Enable Swing Live
To enable Swing Live module simply add the following key below the <cobaltEnabled> setting.
<cobaltLiveEnabled>true</cobaltLiveEnabled>
|
Swing Live will display if both, cobaltEnabled and cobaltLiveEnabled are true. |
Swing Live configuration
When editing a live blog, custom live blog posts filters can be configured for the timeline.
In the editor tag, a liveblog tag can be added containing filters configuration.
A filter should have one or more labels, in order to support many localization.
Filter labels example:
<editor>
<liveblog>
<filters>
<filter>
<labels>
<label lang="eng" text="Empty"/>
<label lang="it" text="Vuoto"/>
<label text="Default"/>
</labels>
</filter>
...
Filter can have conditions on live blog posts type, status, subject, or metadata through xpath value matching.
Filter conditions example:
<filter>
<labels>
<label lang="it" text="Mio Filtro"/>
<label text="My Filter"/>
</labels>
<type>
<value>text</value>
</type>
<status>
<value>APPROVED</value>
<value>PENDING</value>
</status>
<subject>
<value>Subject1</value>
<value>Subject2</value>
</subject>
<xpath>
<condition>
<key>ObjectMetadata/General/WordCount</key>
<value>69</value>
</condition>
<condition>
<key>ObjectMetadata/General/MainCategory</key>
<value>Art</value>
</condition>
</xpath>
</filter>
Filter conditions type, status, subject and xpath are in AND, while values inside them are in OR.
In order to make a filter the first that is selected when a live blog is opened, add <isDefault>true</isDefault> to its declaration.
<filter>
<isDefault>true</isDefault>
<labels>
<label lang="it" text="Mio Filtro"/>
<label text="My Filter"/>
</labels>
<status>
<value>APPROVED</value>
</status>
</filter>
Allow all users to edit liveblog posts
By default, just the liveblog creator can edit or moderate posts.
This behavior can be modified by setting allUsersCanEdit configuration to true, (by default it is false).
<editor>
<liveblog>
<allUsersCanEdit>true</allUsersCanEdit>
...
Swing Live Blog list filters
To enable live blog filters you need to setup a custom query on db then specify the query path on your configuration like the following:
<editor>
<liveblog>
<queries>
<query name="liveblogList">/SysConfig/Common/Queries/LiveBlog/liveblogList</query>
</queries>
...
Where /SysConfig/Common/Queries/LiveBlog/liveblogList is any path on db of a custom query (object type EOM::Query) like following:
<?xml version="1.0" encoding="UTF-8"?>
<EOMSearch version="1.0"
xmlns="http://EidosMedia.com/EOM/SearchEngine"
xmlns:se="http://EidosMedia.com/EOM/SearchEngine"
xmlns:q="http://EidosMedia.com/EOM/SearchEngine/query"
xmlns:qm="http://EidosMedia.com/EOM/SearchEngine/query/macro"
xmlns:qa="http://EidosMedia.com/EOM/SearchEngine/query/alias"
xmlns:qui="http://EidosMedia.com/EOM/SearchEngine/query/UI"
xmlns:i='http://EidosMedia.com/query/interpolate'>
<q:Query type="INDEX">
<q:Properties>
<q:Index name="@meth01_eomse1" />
<q:MaxResultItems value="200" />
</q:Properties>
<q:Boolean>
<ObjectInfo>
<q:AND>
<type>EOM::LiveBlog</type>
</q:AND>
<q:OR>
<owner>
<i:variable name="owner" />
</owner>
</q:OR>
</ObjectInfo>
</q:Boolean>
</q:Query>
</EOMSearch>
You may specify any variable name as you like (e.g. owner), but some of them are reserved and used by default filters, the others can be used to setup custom filters (see the section below)
| Parameter | Type | Description |
|---|---|---|
team |
String |
The selected team |
channel |
String |
The selected channel |
insert |
String |
The selected insert |
edition |
String |
The selected edition |
issuedate.from |
String YYYYMMDD |
The selected issue date range start |
issuedate.to |
String YYYYMMDD |
The selected issue date range end |
workfolder |
String |
The selected workfolder path |
Default and custom filters
You can show\hide default filters by using the following configuration:
<editor>
<liveblog>
<search>
<showTeam>true</showTeam>
<showChannel>true</showChannel>
<showInsert>true</showInsert>
<showEdition>true</showEdition>
<showIssueDate>true</showIssueDate>
<showWorkfolder>true</showWorkfolder>
...
You can specify any custom filters you like with the following configuration:
<editor>
<liveblog>
<search>
<customFilters>
<customFilter type="string">
<name>Blog Owner</name>
<id>owner</id>
</customFilter>
<customFilter type="list">
<name>Live Channel</name>
<id>livechannel</id>
<values>
<value>Globe-Web</value>
<value>Globe-Mobile</value>
</values>
</customFilter>
<customFilter type="date">
<name>Custom Date</name>
<id>customdate</id>
</customFilter>
</customFilters>
...
There are 3 type of custom filters (string, list, date). Each return the string of the inserted text value (string type), the selected value (list type) or the selected date range in the format YYYYMMDD (date type).
The <id> tag is used for the parameter name in the custom query.
For the date type a suffix (.from and .to) to the id name is concat to the id to specify the start and end of the date range:
-
<id>.from (e.g. customdate.from)
-
<id>.to (e.g. customdate.to)
Swing Live Editor Binder configuration
In the binderSettings key it is possible to configure the following settings of the right binder.
-
liveBlogBinderWidth - It sets the width of the right binder in the live blog as a percentage of the viewport. It must be a number between 10 and 50.
Swing Live Editor hyperlink configuration
In the hyperlink tag it is possible to configure the hyperlink relationships options to be applied to the editing post.
It can be configured in the following ways:
* relationships - An optional list of relationship tags can be configured to fill the 'rel' hyperlink attribute, see sample configuration below.
The relationship label will be loaded from Swing localisations with the following key 'modals.hyperlink.ID' where ID is the one configured (i.e. for the 'nofollow' sample configuration the string key is 'modals.hyperlink.nofollow').
If no localisation is available the 'label' attribute specified in configuration will be loaded.
The 'nofollow' relationship is displayed by default.
Configuration example:
<editor>
<liveblog>
<hyperlink>
<relationships>
<relationship id="nofollow" checked="true" label="No follow" />
<relationship id="sponsored" checked="false" label="Sponsored" />
<relationship id="ugc" checked="false" label="User-generated content" />
</relationships>
</hyperlink>
</liveblog>
</editor>
Pagetrack configuration
Methode Pagetrack is an additional product from Eidosmedia that can be integrated with Swing. If Methode Pagetrack is available, it is necessary to specify some additional configuration for Methode Swing to use it.
Enable pagetrack
Under global configuration, it is necessary to enable Methode Pagetrack by adding the following tag.
<enablePagetrack>true</enablePagetrack>
Proxy configuration
It is necessary to create a pagetrack proxy to point to the Methode Pagetrack Front End url. See How to enable proxies for further details on how to configure proxies.
<proxy>
<name>pagetrack</name>
<targetUri>http://PAGETRACK-SERVER:8080/PageTrackFrontend</targetUri>
</proxy>
Pagetrack Editor configuration
Under editor configuration, it is necessary to configure the following properties:
-
baseUrl: the base url of the PageTrack installation
-
basePath: the base path of the PageTrack Front End
<editor>
<pagetrack>
<baseUrl>http://PAGETRACK-SERVER:8080/</baseUrl>
<basePath>PageTrackFrontend</basePath>
</pagetrack>
</editor>
Swing CSS installation
To allow Methode PageTrack to have a Swing look and feel, it is highly recommended to install the Pagetrack-Swing.css under the PageTrack installation folder. To do so,
-
Copy Pagetrack-Swing.css.SAMPLE from
{SWING}/app/plugins/pagetrack/to{PAGE_TRACK_TOMCAT_SERVER_FOLDER}/webapps/resources/and rename it to Pagetrack-Swing.css. -
Under
{PAGE_TRACK_CONFIGURATION_FOLDER}, add the following line to pagetrackweb-cfg.groovy:pagetrack.web.customCSS=["/resources/Pagetrack-Swing.css"]
Cobalt configuration
In order to enable Cobalt in Swing the following parameters needs to be places inside the configuration file:
<cobaltEnabled>true</cobaltEnabled>
<cobaltConfig>
<domain>default</domain>
<repository>cobalt-repo</repository>
<zone>default</zone>
<tenant>default</tenant>
<realm>default</realm>
</cobaltConfig>
The polling interval time for the indexing checks is now set by default to 60000ms (60s) and can be edited with the following configuration
<cobaltConfig>
...
<indexingPollingTimeout>60000</indexingPollingTimeout>
</cobaltConfig>
The preview player feature is disabled by default and can be enabled with the property:
<cobaltConfig>
...
<enablePreviewPlayer>true</enablePreviewPlayer>
</cobaltConfig>
The revive feature is disabled by default and can be enabled with the property:
<cobaltConfig>
...
<enableRevive>true</enableRevive>
</cobaltConfig>
Inside the proxies tag place the cobalt proxies:
<proxy>
<name>cobalt/web</name>
<targetUri>http://localhost:9090</targetUri>
</proxy>
<proxy>
<name>cobalt/core</name>
<targetUri>http://localhost:9090/core</targetUri>
</proxy>
<proxy>
<name>cobalt/moderation</name>
<targetUri>http://localhost:9090/moderation</targetUri>
</proxy>
<proxy>
<name>cobalt/cobaltpub</name>
<targetUri>http://localhost:9090/cobaltpub</targetUri>
</proxy>
<proxy>
<name>cobalt/directory</name>
<targetUri>http://localhost:9090/directory</targetUri>
</proxy>
<proxy>
<name>cobalt/abtesting</name>
<targetUri>http://localhost:9090/abtesting</targetUri>
</proxy>
|
Make sure to use the correct port and to place the code inside the proxies tag. |
Methode Social configuration
General configuration
In order to enable Methode Social in Swing the following parameters needs to be places inside the configuration file:
<global>
<!-- ... -->
<methodeSocialUri>http://eidos05methdev:31143/MethodeSocial2/rest/</methodeSocialUri>
</global>
Privilege
It is necessary to enable the PadmaPriv_enableSocialFeatures privilege. See Privileges documentation for further details.
{
"name": "_PadmaPriv_enableSocialFeatures",
"enabled": true
}
Visible tabs
Inside each editor configuration, it is possible to configure the Social Tabs as visible. See Specific editor configuration for further details.
<editor>
<story>
<visibleTabs>
<visibleTab>SOCIAL</visibleTab>
<visibleTab>SOCIALFOLLOWING</visibleTab>
<visibleTab>SOCIALCAMPAIGNS</visibleTab>
</visibleTabs>
</story>
</editor>
Methode Analytics configuration
General configuration
In order to enable Methode Analytics in Swing the following parameters needs to be places inside the configuration file:
<global>
<!-- ... -->
<methodeAnalyticsUri>http://eidos05methdev:31143/MethodeAnalytics/rest</methodeAnalyticsUri>
</global>
Privilege
It is necessary to enable the PadmaPriv_enableAnalyticsFeatures privilege. See Privileges documentation for further details.
{
"name": "_PadmaPriv_enableAnalyticsFeatures",
"enabled": true
}
Visible tabs
Inside each editor configuration, it is possible to configure the Analytics Tab as visible. See Specific editor configuration for further details.
<editor>
<story>
<visibleTabs>
<visibleTab>ANALYTICS</visibleTab>
</visibleTabs>
</story>
</editor>
How to specify filename using variables
It’s possible to specify the user’s info variable or current date (see date format) as part of the filename. The variable will be resolved once and replaced immediately. Typical use for these variables is to insert the user initials or some other user data automatically inside the filename.
| Token | Output | |
|---|---|---|
Month |
M |
1 2 … 11 12 |
Mo |
1st 2nd … 11th 12th |
|
MM |
01 02 … 11 12 |
|
MMM |
Jan Feb … Nov Dec |
|
MMMM |
January February … November December |
|
Day of Month |
D |
1 2 … 30 31 |
Do |
1st 2nd … 30th 31st |
|
DD |
01 02 … 30 31 |
|
Day of Year |
DDD |
1 2 … 364 365 |
DDDo |
1st 2nd … 364th 365th |
|
DDDD |
001 002 … 364 365 |
|
Day of Week |
d |
0 1 … 5 6 |
do |
0th 1st … 5th 6th |
|
dd |
Su Mo … Fr Sa |
|
ddd |
Sun Mon … Fri Sat |
|
dddd |
Sunday Monday … Friday Saturday |
|
Year |
YY |
70 71 … 29 30 |
YYYY |
1970 1971 … 2029 2030 |
|
AM/PM |
A |
AM PM |
a |
am pm |
|
Hour |
H |
0 1 … 22 23 |
HH |
00 01 … 22 23 |
|
h |
1 2 … 11 12 |
|
hh |
01 02 … 11 12 |
|
k |
1 2 … 23 24 |
|
kk |
01 02 … 23 24 |
|
Minute |
m |
0 1 … 58 59 |
mm |
00 01 … 58 59 |
|
Second |
s |
0 1 … 58 59 |
ss |
00 01 … 58 59 |
Some configuration example:
<params>
<name><sysvar type="myself" data="metadata:///MetaData/Info/Personal/UserCode"/>.xml</name>
...
</params>
... or ...
<params>
<name><sysvar type="myself" data="sysAttribute:///props/principalInfo/initials"/><sysvar type="date" format="YYYYMMDDHHMMss"/>.xml</name>
...
</params>
... or ...
<params>
<name><sysvar type="myself" data="props/principalInfo/initials"/>.xml</name>
...
</params>
Report preview configuration
The <reportPreview> section allows to define the parameters to be passed to the Prime Server to generate the report preview.
It is possible to specify the following parameters:
-
queue [Final (default) | (a string) ] - the name of output queue that will be used to create the pdf of the report. Final is just the default example.
-
index [false (default) | true ] - it specifies if the table of content should be created or not
<reportPreview>
<queue>Final</queue>
<index>true</index>
</reportPreview>