Labels and descriptions for configuration settings

Jens Pelzetter 2020-11-01 13:00:54 +01:00
parent c40e1345bb
commit 6721b0db37
14 changed files with 771 additions and 94 deletions

View File

@ -39,49 +39,71 @@ import java.util.List;
* *
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a> * @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
*/ */
@Configuration @Configuration(
descBundle = "com.arsdigita.cms.CMSConfig",
descKey = "description",
titleKey = "title"
)
public class CMSConfig { public class CMSConfig {
/** /**
* Path for the default item template. Path is relative to the Template Root * Path for the default item template. Path is relative to the Template Root
* path. * path.
*/ */
@Setting @Setting(
descKey = "defaultItemTemplatePath.desc",
labelKey = "defaultItemTemplatePath.label"
)
private String defaultItemTemplatePath = "/default/item.jsp"; private String defaultItemTemplatePath = "/default/item.jsp";
/** /**
* Path for the default folder template. Path is relative to the Template * Path for the default folder template. Path is relative to the Template
* Root path. * Root path.
*/ */
@Setting @Setting(
descKey = "defaultFolderTemplatePath.desc",
labelKey = "defaultFolderTemplatePath.label"
)
private String defaultFolderTemplatePath = "/default/folder.jsp"; private String defaultFolderTemplatePath = "/default/folder.jsp";
/** /**
* Path or the root folder for template folders. Path is relative to webapp * Path or the root folder for template folders. Path is relative to webapp
* root. Modify with care! Usually modified by developers only! * root. Modify with care! Usually modified by developers only!
*/ */
@Setting @Setting(
descKey = "templateRootPath.desc",
labelKey = "templateRootPath.label"
)
private String templateRootPath = "/templates/ccm-cms/content-section/"; private String templateRootPath = "/templates/ccm-cms/content-section/";
/** /**
* Item Adapters File, path to an XML resource containing adapter * Item Adapters File, path to an XML resource containing adapter
* specifications. Path is relative to webapp root. * specifications. Path is relative to webapp root.
*/ */
@Setting @Setting(
descKey = "itemAdapters.desc",
labelKey = "itemAdapters.label"
)
private String itemAdapters = "/WEB-INF/resources/cms-item-adapters.xml"; private String itemAdapters = "/WEB-INF/resources/cms-item-adapters.xml";
/** /**
* Use streamlined content creation: upon item creation, automatically open * Use streamlined content creation: upon item creation, automatically open
* authoring steps and forward to the next step * authoring steps and forward to the next step
*/ */
@Setting @Setting(
descKey = "useStreamlinedCreation.desc",
labelKey = "useStreamlinedCreation.label"
)
private boolean useStreamlinedCreation = true; private boolean useStreamlinedCreation = true;
/** /**
* DHTML Editor Configuration for use in CMS module, lists the configuration * DHTML Editor Configuration for use in CMS module, lists the configuration
* object name and Javascript source location for its definition. * object name and Javascript source location for its definition.
*/ */
@Setting @Setting(
descKey = "dhtmlEditorConfig.desc",
labelKey = "dhtmlEditorConfig.label"
)
private List<String> dhtmlEditorConfig = Arrays.asList(new String[]{ private List<String> dhtmlEditorConfig = Arrays.asList(new String[]{
"TinyMCE.Config", "scripts/ccm-cms/tinymce-loader.js" "TinyMCE.Config", "scripts/ccm-cms/tinymce-loader.js"
}); });
@ -91,9 +113,12 @@ public class CMSConfig {
* Defines which plugins to use, e.g.TableOperations,CSS Format: * Defines which plugins to use, e.g.TableOperations,CSS Format:
* [string,string,string] * [string,string,string]
*/ */
@Setting @Setting(
descKey = "dhtmlEditorPlugins.desc",
labelKey = "dhtmlEditorPlugins.label"
)
private List<String> dhtmlEditorPlugins = Arrays.asList(new String[]{ private List<String> dhtmlEditorPlugins = Arrays.asList(new String[]{
// "scripts/ccm-cms/tinymce/plugins/insertimage.js" // "scripts/ccm-cms/tinymce/plugins/insertimage.js"
"http://localhost/web/ccm-cms-tinymce/insertimage.js" "http://localhost/web/ccm-cms-tinymce/insertimage.js"
}); });
@ -101,64 +126,94 @@ public class CMSConfig {
* Prevent undesirable functions from being made available, eg images should * Prevent undesirable functions from being made available, eg images should
* only be added through the cms methods. * only be added through the cms methods.
*/ */
@Setting @Setting(
descKey = "dhtmlEditorHiddenButtons.desc",
labelKey = "dhtmlEditorHiddenButtons.label"
)
private List<String> dhtmlEditorHiddenButtons = Collections.emptyList(); private List<String> dhtmlEditorHiddenButtons = Collections.emptyList();
/** /**
* Hide section admin tabs from users without administrative rights. * Hide section admin tabs from users without administrative rights.
*/ */
@Setting @Setting(
descKey = "hideAdminTabs.desc",
labelKey = "hideAdminTabs.label"
)
private boolean hideAdminTabs = true; private boolean hideAdminTabs = true;
/** /**
* Hide Folder Index Checkbox from folder view * Hide Folder Index Checkbox from folder view
*/ */
@Setting @Setting(
descKey = "hideFolderIndexCheckbox.desc",
labelKey = "hideFolderIndexCheckbox.label"
)
private boolean hideFolderIndexCheckbox = true; private boolean hideFolderIndexCheckbox = true;
/** /**
* Hide launch date parameter on all forms and displays where it's used. * Hide launch date parameter on all forms and displays where it's used.
*/ */
@Setting @Setting(
descKey = "hideLaunchDate.desc",
labelKey = "hideLaunchDate.label"
)
private boolean hideLaunchDate = true; private boolean hideLaunchDate = true;
/** /**
* Require the launch date parameter to be set by the content author. * Require the launch date parameter to be set by the content author.
*/ */
@Setting @Setting(
descKey = "requireLaunchDate.desc",
labelKey = "requireLaunchDate.label"
)
private boolean requireLaunchDate = true; private boolean requireLaunchDate = true;
/** /**
* Hide the templates tab on the item admin page. * Hide the templates tab on the item admin page.
*/ */
@Setting @Setting(
descKey = "hideTemplatesTab.desc",
labelKey = "hideTemplatesTab.label"
)
private boolean hideTemplatesTab = false; private boolean hideTemplatesTab = false;
/** /**
* Hide the upload file link in the editing of a text asset. * Hide the upload file link in the editing of a text asset.
*/ */
@Setting @Setting(
descKey = "hideTextAssetUploadFile.desc",
labelKey = "hideTextAssetUploadFile.label"
)
private boolean hideTextAssetUploadFile = false; private boolean hideTextAssetUploadFile = false;
/** /**
* Hide timezone labels (if, for example, all users will be in the same * Hide timezone labels (if, for example, all users will be in the same
* timezone and such information would be unnecessary) * timezone and such information would be unnecessary)
*/ */
@Setting @Setting(
descKey = "hideTimezone.desc",
labelKey = "hideTimezone.label"
)
private boolean hideTimezone = false; private boolean hideTimezone = false;
/** /**
* Whether the Wysiwyg editor should clear the text of MSWord tags, * Whether the Wysiwyg editor should clear the text of MSWord tags,
* everytime the user clicks on 'Save' * everytime the user clicks on 'Save'
*/ */
@Setting @Setting(
descKey = "saveTextCleansWordTags.desc",
labelKey = "saveTextCleansWordTags.label"
)
private boolean saveTextCleansWordTags = true; private boolean saveTextCleansWordTags = true;
/** /**
* Get the search indexing not to process FileAssets, eg to avoid PDF * Get the search indexing not to process FileAssets, eg to avoid PDF
* slowdowns * slowdowns
*/ */
@Setting @Setting(
descKey = "disableFileAssetExtraction.desc",
labelKey = "disableFileAssetExtraction.label"
)
private boolean disableFileAssetExtraction = false; private boolean disableFileAssetExtraction = false;
/** /**
@ -172,55 +227,79 @@ public class CMSConfig {
* link to restart a workflow will not work. * link to restart a workflow will not work.
* *
*/ */
@Setting @Setting(
descKey = "deleteWorkflowAfterPublication.desc",
labelKey = "deleteWorkflowAfterPublication.label"
)
private boolean deleteWorkflowAfterPublication = false; private boolean deleteWorkflowAfterPublication = false;
/** /**
* Defines the number of days ahead that are covered in the 'Soon Expired' * Defines the number of days ahead that are covered in the 'Soon Expired'
* tab * tab
*/ */
@Setting @Setting(
descKey = "soonExpiredTimespanDays.desc",
labelKey = "soonExpiredTimespanDays.label"
)
private int soonExpiredTimespanDays = 14; private int soonExpiredTimespanDays = 14;
/** /**
* Defines the number of months ahead that are covered in the 'Soon Expired' * Defines the number of months ahead that are covered in the 'Soon Expired'
* tab * tab
*/ */
@Setting @Setting(
descKey = "soonExpiredTimespanMonths.desc",
labelKey = "soonExpiredTimespanMonths.label"
)
private int soonExpiredTimespanMonths = 1; private int soonExpiredTimespanMonths = 1;
/** /**
* Does a redirect to the unpublished item generate not found error? * Does a redirect to the unpublished item generate not found error?
*/ */
@Setting @Setting(
descKey = "unpublishedNotFound.desc",
labelKey = "unpublishedNotFound.label"
)
private boolean unpublishedNotFound = true; private boolean unpublishedNotFound = true;
/** /**
* Links created through browse interfaces should only be within the same * Links created through browse interfaces should only be within the same
* subsite * subsite
*/ */
@Setting @Setting(
descKey = "linksOnlyInSameSubsite.desc",
labelKey = "linksOnlyInSameSubsite.label"
)
private boolean linksOnlyInSameSubsite = false; private boolean linksOnlyInSameSubsite = false;
/** /**
* Link available to reset lifecycle on republish. If false don't display * Link available to reset lifecycle on republish. If false don't display
* the link otherwise display. * the link otherwise display.
*/ */
@Setting @Setting(
descKey = "hideResetLifecycleLink.desc",
labelKey = "hideResetLifecycleLink.label"
)
private boolean hideResetLifecycleLink = true; private boolean hideResetLifecycleLink = true;
/** /**
* Whether to include INPATH operators to contains clause in intermedia * Whether to include INPATH operators to contains clause in intermedia
* search * search
*/ */
@Setting @Setting(
descKey = "scoreTitleAndKeywords.desc",
labelKey = "scoreTitleAndKeywords.label"
)
private boolean scoreTitleAndKeywords = false; private boolean scoreTitleAndKeywords = false;
/** /**
* Title Weight, the relative weight given to title element within cms:item * Title Weight, the relative weight given to title element within cms:item
* when ranking search results (only used by interMedia) * when ranking search results (only used by interMedia)
*/ */
@Setting @Setting(
descKey = "titleWeight.desc",
labelKey = "titleWeight.label"
)
private int titleWeight = 1; private int titleWeight = 1;
/** /**
@ -228,13 +307,19 @@ public class CMSConfig {
* within dublinCore element within cms:item element when ranking search * within dublinCore element within cms:item element when ranking search
* results (only used by interMedia) * results (only used by interMedia)
*/ */
@Setting @Setting(
descKey = "keywordWeight.desc",
labelKey = "keywordWeight.label"
)
private int keywordWeight = 1; private int keywordWeight = 1;
/** /**
* Limit the item search to current content section * Limit the item search to current content section
*/ */
@Setting @Setting(
descKey = "limitItemSearchToContentSection.desc",
labelKey = "limitItemSearchToContentSection.label"
)
private boolean limitItemSearchToContentSection = true; private boolean limitItemSearchToContentSection = true;
/** /**
@ -245,60 +330,87 @@ public class CMSConfig {
* Second string is the name of the bebop step component eg * Second string is the name of the bebop step component eg
* com.arsdigita.cms.contenttypes.ui.ImageStep * com.arsdigita.cms.contenttypes.ui.ImageStep
*/ */
@Setting @Setting(
descKey = "skipAssetSteps.desc",
labelKey = "skipAssetSteps.label"
)
private List<String> skipAssetSteps = Collections.emptyList(); private List<String> skipAssetSteps = Collections.emptyList();
/** /**
* Mandatory Descriptions Content types may refer to this to decide whether * Mandatory Descriptions Content types may refer to this to decide whether
* to validate against empty descriptions * to validate against empty descriptions
*/ */
@Setting @Setting(
descKey = "mandatoryDescriptions.desc",
labelKey = "mandatoryDescriptions.label"
)
private boolean mandatoryDescriptions = false; private boolean mandatoryDescriptions = false;
/** /**
* Delete Finished Lifecycles. Decide whether lifecycles and their phases * Delete Finished Lifecycles. Decide whether lifecycles and their phases
* should be deleted from the system when finished. * should be deleted from the system when finished.
*/ */
@Setting @Setting(
descKey = "deleteLifecycleWhenComplete.desc",
labelKey = "deleteLifecycleWhenComplete.label"
)
private boolean deleteLifecycleWhenComplete = false; private boolean deleteLifecycleWhenComplete = false;
/** /**
* Delete Sent Workflow Notifications. Decide whether successfully sent * Delete Sent Workflow Notifications. Decide whether successfully sent
* notifications and messages should be deleted from the system * notifications and messages should be deleted from the system
*/ */
@Setting @Setting(
descKey = "deleteWorkflowNotificationWhenSend.desc",
labelKey = "deleteWorkflowNotificationWhenSend.label"
)
private boolean deleteWorkflowNotificationWhenSend = false; private boolean deleteWorkflowNotificationWhenSend = false;
/** /**
* Decide whether successfully sent notifications and messages should be * Decide whether successfully sent notifications and messages should be
* deleted from the system * deleted from the system
*/ */
@Setting @Setting(
descKey = "deleteExpiryNotificationsWhenSent.desc",
labelKey = "deleteExpiryNotificationsWhenSent.label"
)
private boolean deleteExpiryNotificationsWhenSent = false; private boolean deleteExpiryNotificationsWhenSent = false;
/** /**
* Amount of time (in hours) before the expiration of a content item that * Amount of time (in hours) before the expiration of a content item that
* users in the Alert Recipient role are alerted via email * users in the Alert Recipient role are alerted via email
*/ */
@Setting @Setting(
descKey = "defaultNotificationTime.desc",
labelKey = "defaultNotificationTime.label"
)
private int defaultNotificationTime = 0; private int defaultNotificationTime = 0;
/** /**
* Whether a content item's author should be notified by the item's * Whether a content item's author should be notified by the item's
* LifecycleListener; defaults to true * LifecycleListener; defaults to true
*/ */
@Setting @Setting(
descKey = "notifyAuthorOnLifecycle.desc",
labelKey = "notifyAuthorOnLifecycle.label"
)
private boolean notifyAuthorOnLifecycle = false; private boolean notifyAuthorOnLifecycle = false;
/** /**
* XML Mapping of the content center tabs to URLs, see * XML Mapping of the content center tabs to URLs, see
* {@link ContentCenterDispatcher} * {@link ContentCenterDispatcher}
*/ */
@Setting @Setting(
descKey = "contentCenterMap.desc",
labelKey = "contentCenterMap.label"
)
private String contentCenterMap private String contentCenterMap
= "/WEB-INF/resources/content-center-map.xml"; = "/WEB-INF/resources/content-center-map.xml";
@Setting @Setting(
descKey = "defaultItemResolverClassNames.desc",
labelKey = "defaultItemResolverClassNames.label"
)
private List<String> defaultItemResolverClassNames = Arrays.asList( private List<String> defaultItemResolverClassNames = Arrays.asList(
new String[]{ new String[]{
SimpleItemResolver.class.getName() SimpleItemResolver.class.getName()
@ -310,87 +422,165 @@ public class CMSConfig {
// DefaultTemplateResolver.class.getName(), // DefaultTemplateResolver.class.getName(),
// TemplateResolver.class.getName() // TemplateResolver.class.getName()
// }); // });
@Setting @Setting(
descKey = "itemSearchDefaultTab.desc",
labelKey = "itemSearchDefaultTab.label"
)
private String itemSearchDefaultTab = "flatBrowse"; private String itemSearchDefaultTab = "flatBrowse";
@Setting @Setting(
descKey = "itemSearchFlatBrowsePanePageSize.desc",
labelKey = "itemSearchFlatBrowsePanePageSize.label"
)
private int itemSearchFlatBrowsePanePageSize = 20; private int itemSearchFlatBrowsePanePageSize = 20;
@Setting @Setting(
descKey = "folderBrowseListSize.desc",
labelKey = "folderBrowseListSize.label"
)
private int folderBrowseListSize = 20; private int folderBrowseListSize = 20;
@Setting @Setting(
descKey = "folderAtoZShowLimit.desc",
labelKey = "folderAtoZShowLimit.label"
)
private int folderAtoZShowLimit = 100; private int folderAtoZShowLimit = 100;
@Setting @Setting(
descKey = "useOldStyleItemLifecycleItemPane.desc",
labelKey = "useOldStyleItemLifecycleItemPane.label"
)
private boolean useOldStyleItemLifecycleItemPane = false; private boolean useOldStyleItemLifecycleItemPane = false;
@Setting @Setting(
descKey = "threadPublishing.desc",
labelKey = "threadPublishing.label"
)
private boolean threadPublishing = false; private boolean threadPublishing = false;
@Setting @Setting(
descKey = "publishingFailureSender.desc",
labelKey = "publishingFailureSender.label"
)
private String publishingFailureSender = ""; private String publishingFailureSender = "";
@Setting @Setting(
descKey = "publishingFailureReceiver.desc",
labelKey = "publishingFailureReceiver.label"
)
private String publishingFailureReceiver = ""; private String publishingFailureReceiver = "";
@Setting @Setting(
descKey = "imageBrowserThumbnailMaxWidth.desc",
labelKey = "imageBrowserThumbnailMaxWidth.label"
)
private int imageBrowserThumbnailMaxWidth = 50; private int imageBrowserThumbnailMaxWidth = 50;
@Setting @Setting(
descKey = "imageBrowserThumbnailMaxHeight.desc",
labelKey = "imageBrowserThumbnailMaxHeight.label"
)
private int imageBrowserThumbnailMaxHeight = 50; private int imageBrowserThumbnailMaxHeight = 50;
@Setting @Setting(
descKey = "imageBrowserCaptionSize.desc",
labelKey = "imageBrowserCaptionSize.label"
)
private int imageBrowserCaptionSize = 50; private int imageBrowserCaptionSize = 50;
@Setting @Setting(
descKey = "imageBrowserDescriptionSize.desc",
labelKey = "imageBrowserDescriptionSize.label"
)
private int imageBrowserDescriptionSize = 400; private int imageBrowserDescriptionSize = 400;
@Setting @Setting(
descKey = "imageBrowserTitleSize.desc",
labelKey = "imageBrowserTitleSize.label"
)
private int imageBrowserTitleSize = 200; private int imageBrowserTitleSize = 200;
@Setting @Setting(
descKey = "imageCacheEnabled.desc",
labelKey = "imageCacheEnabled.label"
)
private boolean imageCacheEnabled = true; private boolean imageCacheEnabled = true;
@Setting @Setting(
descKey = "imageCachePrefetchEnabled.desc",
labelKey = "imageCachePrefetchEnabled.label"
)
private boolean imageCachePrefetchEnabled = false; private boolean imageCachePrefetchEnabled = false;
@Setting @Setting(
descKey = "imageCacheMaxSize.desc",
labelKey = "imageCacheMaxSize.label"
)
private int imageCacheMaxSize = 100; private int imageCacheMaxSize = 100;
@Setting @Setting(
descKey = "imageCacheMaxAge.desc",
labelKey = "imageCacheMaxAge.label"
)
private int imageCacheMaxAge = 300; private int imageCacheMaxAge = 300;
@Setting @Setting(
descKey = "attachPersonOrgaUnitsStep.desc",
labelKey = "attachPersonOrgaUnitsStep.label"
)
private boolean attachPersonOrgaUnitsStep = true; private boolean attachPersonOrgaUnitsStep = true;
@Setting @Setting(
descKey = "personOrgaUnitsStepSortKey.desc",
labelKey = "personOrgaUnitsStepSortKey.label"
)
private int personOrgaUnitsStepSortKey = 20; private int personOrgaUnitsStepSortKey = 20;
@Setting @Setting(
descKey = "enableXmlCache.desc",
labelKey = "enableXmlCache.label"
)
private boolean enableXmlCache = false; private boolean enableXmlCache = false;
@Setting @Setting(
descKey = "xmlCacheSize.desc",
labelKey = "xmlCacheSize.label"
)
private int xmlCacheSize = 2500; private int xmlCacheSize = 2500;
@Setting @Setting(
descKey = "xmlCacheAge.desc",
labelKey = "xmlCacheAge.label"
)
private int xmlCacheAge = 60 * 60 * 24; private int xmlCacheAge = 60 * 60 * 24;
@Setting @Setting(
descKey = "categoryAuthoringAddForm.desc",
labelKey = "categoryAuthoringAddForm.label"
)
private String categoryAuthoringAddForm = ItemCategoryPicker.class.getName(); private String categoryAuthoringAddForm = ItemCategoryPicker.class.getName();
@Setting @Setting(
descKey = "categoryAuthoringExtension.desc",
labelKey = "categoryAuthoringExtension.label"
)
private String categoryAuthoringExtension = ItemCategoryExtension.class private String categoryAuthoringExtension = ItemCategoryExtension.class
.getName(); .getName();
@Setting @Setting(
descKey = "categoryPickerAjaxExpandAll.desc",
labelKey = "categoryPickerAjaxExpandAll.label"
)
private boolean categoryPickerAjaxExpandAll = false; private boolean categoryPickerAjaxExpandAll = false;
/** /**
* Max length of the description of a link (in database max length are 4000 * Max length of the description of a link (in database max length are 4000
* characters) * characters)
*/ */
@Setting @Setting(
descKey = "linkDescMaxLength.desc",
labelKey = "linkDescMaxLength.label"
)
private int linkDescMaxLength = 400; private int linkDescMaxLength = 400;
public static CMSConfig getConfig() { public static CMSConfig getConfig() {

View File

@ -0,0 +1,126 @@
title=CMS Configuration
description=Various settings for customizing content handling
defaultItemTemplatePath.desc=Path of the default JSP template for Content Items. Only used by the legacy presentation system.
defaultItemTemplatePath.label=Default Item Template Path
defaultFolderTemplatePath.label=Default Folder Template Path
defaultFolderTemplatePath.desc=Path of the default JSP template for folders. Only used by the legacy presentation system.
templateRootPath.label=Template Root Path
templateRootPath.desc=Where to look for JSP templates. Only used by the legacy presentation system.
itemAdapters.label=Item Adapters
itemAdapters.desc=Path of the the item adapter file
useStreamlinedCreation.label=Use Streamlined Creation?
useStreamlinedCreation.desc=
dhtmlEditorConfig.label=DHTML Editor Configuration
dhtmlEditorConfig.desc=Configuration of the Rich Text Editor
dhtmlEditorPlugins.label=DHTML Editor Plugins
dhtmlEditorPlugins.desc=
dhtmlEditorHiddenButtons.label=DHTML Editor Hidden Buttons
dhtmlEditorHiddenButtons.desc=
hideAdminTabs.label=Hide Admin Tabs?
hideAdminTabs.desc=Hide Admin Tabs for none admin users?
hideFolderIndexCheckbox.label=Hide Folder Index Checkbox?
hideFolderIndexCheckbox.desc=
hideLaunchDate.label=Hide Launch Date?
hideLaunchDate.desc=
requireLaunchDate.label=Require Launch Date?
requireLaunchDate.desc=
hideTemplatesTab.label=Hide Templates Tab?
hideTemplatesTab.desc=
hideTextAssetUploadFile.label=Hide Text Asset Upload File?
hideTextAssetUploadFile.desc=
hideTimezone.label=Hide Timezone?
hideTimezone.desc=
saveTextCleansWordTags.label=Save Text Cleans Word Tags?
saveTextCleansWordTags.desc=
disableFileAssetExtraction.desc=
disableFileAssetExtraction.label=Disable File Asset Extraction?
deleteWorkflowAfterPublication.label=Delete Workflow after publication?
deleteWorkflowAfterPublication.desc=Whether an item's workflow should be deleted, once the item has been \n(re)published.
soonExpiredTimespanDays.desc=
soonExpiredTimespanDays.label=Soon Expired Timespan Days
soonExpiredTimespanMonths.label=Soon expired timespan months
soonExpiredTimespanMonths.desc=
unpublishedNotFound.label=Unpublished not found?
unpublishedNotFound.desc=Does a redirect to the unpublished item generate not found error?
linksOnlyInSameSubsite.desc=
linksOnlyInSameSubsite.label=Links Only In Same Subsite?
hideResetLifecycleLink.desc=
hideResetLifecycleLink.label=Hide Reset Lifecycle Link?
scoreTitleAndKeywords.label=Score title and keywords?
scoreTitleAndKeywords.desc=
titleWeight.desc=
titleWeight.label=Title Weight
keywordWeight.label=Keyword Weight
keywordWeight.desc=
limitItemSearchToContentSection.desc=
limitItemSearchToContentSection.label=Limit Item Search to Content Section?
skipAssetSteps.label=Skip Asset Steps?
skipAssetSteps.desc=
mandatoryDescriptions.label=Mandatory Descriptions?
mandatoryDescriptions.desc=
deleteLifecycleWhenComplete.label=Delete Lifecycle when complete?
deleteLifecycleWhenComplete.desc=
deleteWorkflowNotificationWhenSend.label=Delete Workflow Notification when send?
deleteWorkflowNotificationWhenSend.desc=
deleteExpiryNotificationsWhenSent.label=Delete Expiry Notifications when sent
deleteExpiryNotificationsWhenSent.desc=
defaultNotificationTime.label=Default Notification Time
defaultNotificationTime.desc=Amount of time (in hours) before the expiration of a content item that users in the Alert Recipient role are alerted via email
notifyAuthorOnLifecycle.label=Notify author on lifecycle?
notifyAuthorOnLifecycle.desc=
contentCenterMap.label=Content Center Map
contentCenterMap.desc=
defaultItemResolverClassNames.label=Default Item Resolver class names
defaultItemResolverClassNames.desc=
itemSearchDefaultTab.label=Item Search Default Tab
itemSearchDefaultTab.desc=
itemSearchFlatBrowsePanePageSize=Item Search Flat Browse Pane Page Size
folderBrowseListSize.label=Folder Browse List Size
folderBrowseListSize.desc=
folderAtoZShowLimit.label=Folder A to Z Show Limit
folderAtoZShowLimit.desc=
useOldStyleItemLifecycleItemPane.label=Use Old Style Item Lifecycle Item Pane?
useOldStyleItemLifecycleItemPane.desc=
threadPublishing.label=Thread Publishing
threadPublishing.desc=
publishingFailureSender.label=Publishing Failure Sender
publishingFailureSender.desc=
publishingFailureReceiver.label=Publishing Failure Receiver
publishingFailureReceiver.desc=
imageBrowserThumbnailMaxWidth.label=Image Browser Thumbnail Max Width
imageBrowserThumbnailMaxWidth.desc=
imageBrowserThumbnailMaxHeight.label=Image Browser Thumbnail Max Height
imageBrowserThumbnailMaxHeight.desc=
imageBrowserCaptionSize.label=Image Browser Caption Size
imageBrowserCaptionSize.desc=
imageBrowserDescriptionSize.label=Image Browser Description Size
imageBrowserDescriptionSize.desc=
imageBrowserTitleSize.label=Image Browser Title Size
imageBrowserTitleSize.desc=
imageCacheEnabled.label=Image Cache Enabled?
imageCacheEnabled.desc=
imageCachePrefetchEnabled.label=Image Cache Prefetch Enabled
imageCachePrefetchEnabled.desc=
imageCacheMaxSize.label=Image Cache Max Size
imageCacheMaxSize.desc=
imageCacheMaxAge.label=Image Cache Max Age
imageCacheMaxAge.desc=
attachPersonOrgaUnitsStep.label=Attach Person Orga Units Step enabled?
attachPersonOrgaUnitsStep.desc=
personOrgaUnitsStepSortKey.label=Person Orga Units Step Sort Key
personOrgaUnitsStepSortKey.desc=
enableXmlCache.label=Enable XML Cache?
enableXmlCache.desc=
xmlCacheSize.label=XML Cache Size
xmlCacheSize.desc=
xmlCacheAge.label=XML Cache Age
xmlCacheAge.desc=
categoryAuthoringAddForm.label=Category Authoring Add Form
categoryAuthoringAddForm.desc=
categoryAuthoringExtension.label=Category Authoring Extension
categoryAuthoringExtension.desc=
categoryPickerAjaxExpandAll.label=Category Picker AJAX Expand All?
categoryPickerAjaxExpandAll.desc=
linkDescMaxLength.label=Link description max length
linkDescMaxLength.desc=

View File

@ -0,0 +1,126 @@
title=CMS Konfiguration
description=Einstellungen bez\u00fcglich Bearbeitung und Anzeige von Inhalten
defaultItemTemplatePath.desc=Pfad der Standard-JSP-Template f\u00fcr Content Items. Nur vom alten Pr\u00e4sentationssystem genutzt.
defaultItemTemplatePath.label=Pfad der Standard Template f\u00fcr Content Items
defaultFolderTemplatePath.label=Pfad der Standard-JSP-Template f\u00fcr Ordner
defaultFolderTemplatePath.desc=Pfad der Standard-JSP-Template f\u00fcr Ordner. Nur vom alten Pr\u00e4sentationssystem genutzt.
templateRootPath.label=Suchpfad f\u00fcr Templates
templateRootPath.desc=Ordner in dem nach JSP-Templates gesucht wird. Nur vom alten Pr\u00e4sentationssystem genutzt.
itemAdapters.label=Item Adapter
itemAdapters.desc=Pfad der Item-Adapter-Datei
useStreamlinedCreation.label=Use Streamlined Creation?
useStreamlinedCreation.desc=
dhtmlEditorConfig.label=DHTML Editor Konfiguration
dhtmlEditorConfig.desc=Konfiguration des Text Editors
dhtmlEditorPlugins.label=DHTML Editor Plugins
dhtmlEditorPlugins.desc=
dhtmlEditorHiddenButtons.label=DHTML Editor Deaktivierte Funktionen
dhtmlEditorHiddenButtons.desc=
hideAdminTabs.label=Admin Tabs verstecken?
hideAdminTabs.desc=Sollen die Admin-Tabs f\u00fcr Benutzer*innen ohnen Administrations-Rechte sichtbar sein?
hideFolderIndexCheckbox.label=Index-Checkbox f\u00fcr Ordner verstecken?
hideFolderIndexCheckbox.desc=
hideLaunchDate.label=Start-Datum verstecken?
hideLaunchDate.desc=
requireLaunchDate.label=Startdatum erforderlich?
requireLaunchDate.desc=
hideTemplatesTab.label=Vorlaben Tab verbergen?
hideTemplatesTab.desc=
hideTextAssetUploadFile.label=Hochladen f\u00fcr Text-Assets verbergen?
hideTextAssetUploadFile.desc=
hideTimezone.label=Zeitzone verstecken?
hideTimezone.desc=
saveTextCleansWordTags.label=Speichern bereinigt Word Tags?
saveTextCleansWordTags.desc=
disableFileAssetExtraction.desc=
disableFileAssetExtraction.label=Analyse von hochgeladenen Dateien deaktivieren?
deleteWorkflowAfterPublication.label=Arbeitsablauf nach dem Publizieren l\u00f6schen?
deleteWorkflowAfterPublication.desc=
soonExpiredTimespanDays.desc=
soonExpiredTimespanDays.label=Soon Expired Timespan Days
soonExpiredTimespanMonths.label=Soon expired timespan months
soonExpiredTimespanMonths.desc=
unpublishedNotFound.label=Unpublished not found?
unpublishedNotFound.desc=Does a redirect to the unpublished item generate not found error?
linksOnlyInSameSubsite.desc=
linksOnlyInSameSubsite.label=Links Only In Same Subsite?
hideResetLifecycleLink.desc=
hideResetLifecycleLink.label=Hide Reset Lifecycle Link?
scoreTitleAndKeywords.label=Score title and keywords?
scoreTitleAndKeywords.desc=
titleWeight.desc=
titleWeight.label=Title Weight
keywordWeight.label=Keyword Weight
keywordWeight.desc=
limitItemSearchToContentSection.desc=
limitItemSearchToContentSection.label=Limit Item Search to Content Section?
skipAssetSteps.label=Skip Asset Steps?
skipAssetSteps.desc=
mandatoryDescriptions.label=Mandatory Descriptions?
mandatoryDescriptions.desc=
deleteLifecycleWhenComplete.label=Delete Lifecycle when complete?
deleteLifecycleWhenComplete.desc=
deleteWorkflowNotificationWhenSend.label=Delete Workflow Notification when send?
deleteWorkflowNotificationWhenSend.desc=
deleteExpiryNotificationsWhenSent.label=Delete Expiry Notifications when sent
deleteExpiryNotificationsWhenSent.desc=
defaultNotificationTime.label=Default Notification Time
defaultNotificationTime.desc=Amount of time (in hours) before the expiration of a content item that users in the Alert Recipient role are alerted via email
notifyAuthorOnLifecycle.label=Notify author on lifecycle?
notifyAuthorOnLifecycle.desc=
contentCenterMap.label=Content Center Map
contentCenterMap.desc=
defaultItemResolverClassNames.label=Default Item Resolver class names
defaultItemResolverClassNames.desc=
itemSearchDefaultTab.label=Item Search Default Tab
itemSearchDefaultTab.desc=
itemSearchFlatBrowsePanePageSize=Item Search Flat Browse Pane Page Size
folderBrowseListSize.label=Folder Browse List Size
folderBrowseListSize.desc=
folderAtoZShowLimit.label=Folder A to Z Show Limit
folderAtoZShowLimit.desc=
useOldStyleItemLifecycleItemPane.label=Use Old Style Item Lifecycle Item Pane?
useOldStyleItemLifecycleItemPane.desc=
threadPublishing.label=Thread Publishing
threadPublishing.desc=
publishingFailureSender.label=Publishing Failure Sender
publishingFailureSender.desc=
publishingFailureReceiver.label=Publishing Failure Receiver
publishingFailureReceiver.desc=
imageBrowserThumbnailMaxWidth.label=Image Browser Thumbnail Max Width
imageBrowserThumbnailMaxWidth.desc=
imageBrowserThumbnailMaxHeight.label=Image Browser Thumbnail Max Height
imageBrowserThumbnailMaxHeight.desc=
imageBrowserCaptionSize.label=Image Browser Caption Size
imageBrowserCaptionSize.desc=
imageBrowserDescriptionSize.label=Image Browser Description Size
imageBrowserDescriptionSize.desc=
imageBrowserTitleSize.label=Image Browser Title Size
imageBrowserTitleSize.desc=
imageCacheEnabled.label=Image Cache Enabled?
imageCacheEnabled.desc=
imageCachePrefetchEnabled.label=Image Cache Prefetch Enabled
imageCachePrefetchEnabled.desc=
imageCacheMaxSize.label=Image Cache Max Size
imageCacheMaxSize.desc=
imageCacheMaxAge.label=Image Cache Max Age
imageCacheMaxAge.desc=
attachPersonOrgaUnitsStep.label=Attach Person Orga Units Step enabled?
attachPersonOrgaUnitsStep.desc=
personOrgaUnitsStepSortKey.label=Person Orga Units Step Sort Key
personOrgaUnitsStepSortKey.desc=
enableXmlCache.label=Enable XML Cache?
enableXmlCache.desc=
xmlCacheSize.label=XML Cache Size
xmlCacheSize.desc=
xmlCacheAge.label=XML Cache Age
xmlCacheAge.desc=
categoryAuthoringAddForm.label=Category Authoring Add Form
categoryAuthoringAddForm.desc=
categoryAuthoringExtension.label=Category Authoring Extension
categoryAuthoringExtension.desc=
categoryPickerAjaxExpandAll.label=Category Picker AJAX Expand All?
categoryPickerAjaxExpandAll.desc=
linkDescMaxLength.label=Link description max length
linkDescMaxLength.desc=

View File

@ -41,32 +41,59 @@ import java.util.stream.Collectors;
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a> * @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
*/ */
@Configuration( @Configuration(
descKey = "bebop.config.description") descBundle = "com.arsdigita.bebop.BebopConfig",
descKey = "description",
titleKey = "title"
)
public final class BebopConfig { public final class BebopConfig {
@Setting @Setting(
descKey = "presenterClassName.desc",
labelKey = "presenterClassName.label"
)
private String presenterClassName = PageTransformer.class.getName(); private String presenterClassName = PageTransformer.class.getName();
@Setting @Setting(
descKey = "basePageClassName.desc",
labelKey = "basePageClassName.label"
)
private String basePageClassName = SimplePage.class.getName(); private String basePageClassName = SimplePage.class.getName();
@Setting @Setting(
descKey = "tidyConfigFile.desc",
labelKey = "tidyConfigFile.label"
)
private String tidyConfigFile private String tidyConfigFile
= "com/arsdigita/bebop/parameters/tidy.properties"; = "com/arsdigita/bebop/parameters/tidy.properties";
@Setting @Setting(
descKey = "fancyErrors.desc",
labelKey = "fancyErrors.label"
)
private Boolean fancyErrors = false; private Boolean fancyErrors = false;
@Setting @Setting(
descKey = "dcpOnButtons.desc",
labelKey = "dcpOnButtons.label"
)
private Boolean dcpOnButtons = true; private Boolean dcpOnButtons = true;
@Setting @Setting(
descKey = "dcpOnLinks.desc",
labelKey = "dcpOnLinks.label"
)
private Boolean dcpOnLinks = false; private Boolean dcpOnLinks = false;
@Setting @Setting(
descKey = "treeSelectEnabled.desc",
labelKey = "treeSelectEnabled.label"
)
private Boolean treeSelectEnabled = false; private Boolean treeSelectEnabled = false;
@Setting @Setting(
descKey = "dhtmlEditors.desc",
labelKey = "dhtmlEditors.label"
)
private Set<String> dhtmlEditors = new HashSet<>( private Set<String> dhtmlEditors = new HashSet<>(
Arrays.asList(new String[]{BebopConstants.BEBOP_XINHAEDITOR, Arrays.asList(new String[]{BebopConstants.BEBOP_XINHAEDITOR,
BebopConstants.BEBOP_FCKEDITOR, BebopConstants.BEBOP_FCKEDITOR,
@ -74,14 +101,23 @@ public final class BebopConfig {
BebopConstants.BEBOP_CCMEDITOR, BebopConstants.BEBOP_CCMEDITOR,
BebopConstants.BEBOP_TINYMCE_EDITOR})); BebopConstants.BEBOP_TINYMCE_EDITOR}));
@Setting @Setting(
descKey = "defaultDhtmlEditor.desc",
labelKey = "defaultDhtmlEditor.label"
)
private String defaultDhtmlEditor = BebopConstants.BEBOP_TINYMCE_EDITOR; private String defaultDhtmlEditor = BebopConstants.BEBOP_TINYMCE_EDITOR;
@Setting @Setting(
descKey = "dhtmlEditorSrcFile.desc",
labelKey = "dhtmlEditorSrcFile.label"
)
// private String dhtmlEditorSrcFile = "/ccm-editor/ccm-editor-loader.js"; // private String dhtmlEditorSrcFile = "/ccm-editor/ccm-editor-loader.js";
private String dhtmlEditorSrcFile = "/webjars/tinymce/4.8.2/tinymce.js"; private String dhtmlEditorSrcFile = "/webjars/tinymce/4.8.2/tinymce.js";
@Setting @Setting(
descKey = "showClassName.desc",
labelKey = "showClassName.label"
)
private Boolean showClassName = false; private Boolean showClassName = false;
public static BebopConfig getConfig() { public static BebopConfig getConfig() {

View File

@ -28,19 +28,35 @@ import org.libreccm.configuration.Setting;
* *
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a> * @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
*/ */
@Configuration @Configuration(
descBundle = "com.arsdigita.dispatcher.DispatcherConfig",
descKey = "description",
titleKey = "title"
)
public final class DispatcherConfig { public final class DispatcherConfig {
@Setting @Setting(
descKey = "cachingActive.desc",
labelKey = "cachingActive.label"
)
private Boolean cachingActive = true; private Boolean cachingActive = true;
@Setting @Setting(
descKey = "defaultExpiry.desc",
labelKey = "defaultExpiry.label"
)
private Integer defaultExpiry = 259200; private Integer defaultExpiry = 259200;
@Setting @Setting(
descKey = "staticUrlPrefix.desc",
labelKey = "statusUrlPrefix.label"
)
private String staticUrlPrefix = "/STATICII/"; private String staticUrlPrefix = "/STATICII/";
@Setting @Setting(
descKey = "defaultPageClass.desc",
labelKey = "defaultPageClass.label"
)
private String defaultPageClass = "com.arsdigita.bebop.Page"; private String defaultPageClass = "com.arsdigita.bebop.Page";
public static DispatcherConfig getConfig() { public static DispatcherConfig getConfig() {

View File

@ -179,7 +179,7 @@ public class SettingManager {
settingInfo.setLabelKey(String.join(".", field.getName(), settingInfo.setLabelKey(String.join(".", field.getName(),
"label")); "label"));
} else { } else {
settingInfo.setLabelKey(name); settingInfo.setLabelKey(settingAnnotation.labelKey());
} }
if (Strings.isBlank(settingAnnotation.descKey())) { if (Strings.isBlank(settingAnnotation.descKey())) {

View File

@ -11,18 +11,20 @@
<ui:define name="breadcrumb"> <ui:define name="breadcrumb">
<li class="breadcrumb-item"> <li class="breadcrumb-item">
<a href="#{mvc.uri('ConfigurationController#getSettings')}">
#{AdminMessages['configuration.label']} #{AdminMessages['configuration.label']}
</a>
</li> </li>
<li class="breadcrumb-item">> <li class="breadcrumb-item">
#{confLabel} #{confLabel}
</li> </li>
<li class="breadcrumb-item active">> <li class="breadcrumb-item active">
#{AdminMessages['configuration.settings.label']} #{AdminMessages['configuration.settings.label']}
</li> </li>
</ui:define> </ui:define>
<ui:define name="main"> <ui:define name="main">
<div class="container"> <div class="container-fluid">
<h1>#{confLabel}</h1> <h1>#{confLabel}</h1>
<p> <p>
#{confDescription} #{confDescription}

View File

@ -0,0 +1,41 @@
# Copyright (C) 2020 LibreCCM Foundation.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA
description=Settings for legacy UI framework used by CCM
title=Bebop Configuration
presenterClassName.label=Presenter Class name
presenterClassName.desc=Fully qualified class name of the presenter implementation to use
basePageClassName.desc=Fully qualified class name of the basic page component
basePageClassName.label=Base Page Class Name
tidyConfigFile.desc=
tidyConfigFile.label=Tidy Configuration File
fancyErrors.desc=
fancyErrors.label=Fancy Errors?
dcpOnButtons.desc=
dcpOnButtons.label=Enable Double-Click protection on buttons?
dcpOnLinks.desc=
dcpOnLinks.label=Enable Double-Click protecttion on links?
treeSelectEnabled.desc=
treeSelectEnabled.label=Tree Select Enabled
dhtmlEditors.desc=
dhtmlEditors.label=DHTML editors
defaultDhtmlEditor.desc=Default DHTML Editor
defaultDhtmlEditor.label=Default DHTML Editor
dhtmlEditorSrcFile.desc=
dhtmlEditorSrcFile.label=DHTML Editor Main File
showClassName.desc=
showClassName.label=Show Class Name?

View File

@ -0,0 +1,41 @@
# Copyright (C) 2020 LibreCCM Foundation.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA
description=Settings for legacy UI framework used by CCM
title=Bebop Configuration
presenterClassName.label=Presenter Class name
presenterClassName.desc=Fully qualified class name of the presenter implementation to use
basePageClassName.desc=Fully qualified class name of the basic page component
basePageClassName.label=Base Page Class Name
tidyConfigFile.desc=
tidyConfigFile.label=Tidy Configuration File
fancyErrors.desc=
fancyErrors.label=Fancy Errors?
dcpOnButtons.desc=
dcpOnButtons.label=Enable Double-Click protection on buttons?
dcpOnLinks.desc=
dcpOnLinks.label=Enable Double-Click protecttion on links?
treeSelectEnabled.desc=
treeSelectEnabled.label=Tree Select Enabled
dhtmlEditors.desc=
dhtmlEditors.label=DHTML editors
defaultDhtmlEditor.desc=Default DHTML Editor
defaultDhtmlEditor.label=Default DHTML Editor
dhtmlEditorSrcFile.desc=
dhtmlEditorSrcFile.label=DHTML Editor Main File
showClassName.desc=
showClassName.label=Show Class Name?

View File

@ -0,0 +1,27 @@
# Copyright (C) 2020 LibreCCM Foundation.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA
title=Dispatcher Configuration
description=Settings for the legacy dispatcher
cachingActive.desc=Toggle whether or not to use HTTP/1.1 caching
cachingActive.label=Caching Active?
defaultExpiry.desc=Set the default expiration time for HTTP caching
defaultExpiry.label=Default Cache Expiry
statusUrlPrefix.desc=The default page class. A custom installation may provide it's own implementation. Use with care because all pages inherit from this class!
staticUrlPrefix.label=Static URL Prefix
defaultPageClass.desc=Prefix used for serving static files
defaultPageClass.label=Default Page Class

View File

@ -0,0 +1,27 @@
# Copyright (C) 2020 LibreCCM Foundation.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA
title=Dispatcher Configuration
description=
cachingActive.desc=Toggle whether or not to use HTTP/1.1 caching
cachingActive.label=Caching Active?
defaultExpiry.desc=Set the default expiration time for HTTP caching
defaultExpiry.label=Default Cache Expiry
statusUrlPrefix.desc=The default page class. A custom installation may provide it's own implementation. Use with care because all pages inherit from this class!
staticUrlPrefix.label=Static URL Prefix
defaultPageClass.desc=Prefix used for serving static files
defaultPageClass.label=Default Page Class

View File

@ -15,7 +15,7 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA # MA 02110-1301 USA
description = A configuration record for configuration of the core globalization package globalization.config.description = A configuration record for configuration of the core globalization package
defaultCharset.label = Default Charset defaultCharset.label = Default Charset
defaultCharset.description = Default character set for locales not explicitly listed in the locales parameter. defaultCharset.description = Default character set for locales not explicitly listed in the locales parameter.

View File

@ -3,8 +3,8 @@ description = Configure several basic properties for LibreCCM
debugEnabled.label = Global debug flag debugEnabled.label = Global debug flag
debugEnabled.description = Enables or disables WAF debugging debugEnabled.description = Enables or disables WAF debugging
webdev_supportEnabled.label = Webdev support enabled? webdevSupportEnabled.label=Webdev support enabled?
webdev_supportEnabled.description = Enables or disables Webdev support webdevSupportEnabled.description=Enables or disables Webdev support
data_permissionCheckEnabled.label = DML permission checking flag data_permissionCheckEnabled.label = DML permission checking flag
data_permissionCheckEnabled.description = Enables or disables permissions checks on database writes data_permissionCheckEnabled.description = Enables or disables permissions checks on database writes
@ -18,8 +18,18 @@ ssoEnabled.description = Enables or disables SSO login
rememberLoginEnabled.label = Remember login by default rememberLoginEnabled.label = Remember login by default
rememberLoginEnabled.description = Determines whether the "remember login" feature is enabled or disabled by default rememberLoginEnabled.description = Determines whether the "remember login" feature is enabled or disabled by default
kernelConfig.secureLoginEnabled.label = Require secure login?
kernelConfig.secureLoginEnabled.description = Accept only credentials presented over secure connection?
supportedLanguages.label = Set the supported languages for categorization supportedLanguages.label = Set the supported languages for categorization
supportedLanguages.description = Set the languages supported for this installation (for content creation). Uses the ISO language codes. supportedLanguages.description = Set the languages supported for this installation (for content creation). Uses the ISO language codes.
title=Kernel Configuration
dataPermissionCheckEnabled.label=Data Permission Check Enabled?
defaultLanguage.label=Default Language
exportPath.label=Export Path
exportPath.description=Where to store export files
importPath.label=Import Path
importPath.description=Where to look for files to import
jwtSecret.label=JWT secret
jwtSecret.description=Secret for generating JSON Web Tokens
secureLoginEnabled.label=Secure Login enabled?
secureLoginEnabled.description=Force HTTPS for login?
systemEmailAddress.label=System Email address
systemEmailAddress.description=Email address used a from address for mail generated by the CCM

View File

@ -0,0 +1,35 @@
description = Configure several basic properties for LibreCCM
debugEnabled.label = Global debug flag
debugEnabled.description = Enables or disables WAF debugging
webdevSupportEnabled.label=Webdev support enabled?
webdevSupportEnabled.description=Enables or disables Webdev support
data_permissionCheckEnabled.label = DML permission checking flag
data_permissionCheckEnabled.description = Enables or disables permissions checks on database writes
primaryUserIdentifier.label = The primary user identification
primaryUserIdentifier.description = Determines whether email addresses or screen names are used to authenticate users. Valid values: "screen_name" or "email"
ssoEnabled.label = Enable SSO login?
ssoEnabled.description = Enables or disables SSO login
rememberLoginEnabled.label = Remember login by default
rememberLoginEnabled.description = Determines whether the "remember login" feature is enabled or disabled by default
supportedLanguages.label = Set the supported languages for categorization
supportedLanguages.description = Set the languages supported for this installation (for content creation). Uses the ISO language codes.
title=Kernel Configuration
dataPermissionCheckEnabled.label=Data Permission Check Enabled?
defaultLanguage.label=Default Language
exportPath.label=Export Path
exportPath.description=Where to store export files
importPath.label=Import Path
importPath.description=Where to look for files to import
jwtSecret.label=JWT secret
jwtSecret.description=Secret for generating JSON Web Tokens
secureLoginEnabled.label=Secure Login enabled?
secureLoginEnabled.description=Force HTTPS for login?
systemEmailAddress.label=System Email address
systemEmailAddress.description=Email address used a from address for mail generated by the CCM