Class CmsUserSettings

  • Direct Known Subclasses:
    CmsDefaultUserSettings

    public class CmsUserSettings
    extends java.lang.Object
    Object to conveniently access and modify the users workplace settings.

    Since:
    6.0.0
    • Constructor Detail

      • CmsUserSettings

        public CmsUserSettings()
        Creates an empty new user settings object.

      • CmsUserSettings

        public CmsUserSettings​(CmsObject cms)
        Creates a user settings object with initialized settings of the current user.

        Parameters:
        cms - the OpenCms context
      • CmsUserSettings

        public CmsUserSettings​(CmsUser user)
        Creates a user settings object with initialized settings of the user.

        Some default settings will not be set, if no cms object is given.

        Parameters:
        user - the current CmsUser
        See Also:
        CmsUserSettings(CmsObject)
    • Method Detail

      • getAdditionalPreference

        public static java.lang.String getAdditionalPreference​(CmsObject cms,
                                                               java.lang.String key,
                                                               boolean useDefault)
        Gets a configured preference.

        Parameters:
        cms - the cms context
        key - the settings key
        useDefault - true if we want the default value if no value is configured
        Returns:
        the preference value
      • setAdditionalPreference

        public static void setAdditionalPreference​(CmsObject cms,
                                                   java.lang.String key,
                                                   java.lang.String value)
        Sets a configured preference.

        Parameters:
        cms - the Cms context
        key - the setting name
        value - the value
      • getAdditionalPreference

        public java.lang.String getAdditionalPreference​(java.lang.String name,
                                                        boolean useDefault)
        Gets the value for a user defined preference.

        Parameters:
        name - the name of the preference
        useDefault - true if the default value should be returned in case the preference is not set
        Returns:
        the preference value
      • getDialogExpandInheritedPermissions

        public boolean getDialogExpandInheritedPermissions()
        Returns the default setting for expanding inherited permissions in the dialog.

        Returns:
        true if inherited permissions should be expanded, otherwise false
      • getDialogExpandUserPermissions

        public boolean getDialogExpandUserPermissions()
        Returns the default setting for expanding the users permissions in the dialog.

        Returns:
        true if the users permissions should be expanded, otherwise false
      • getDialogPermissionsInheritOnFolder

        public boolean getDialogPermissionsInheritOnFolder()
        Returns the default setting for inheriting permissions on folders.

        Returns:
        true if permissions should be inherited on folders, otherwise false
      • getDialogPublishSiblings

        public boolean getDialogPublishSiblings()
        Returns the default setting for direct publishing.

        Returns:
        the default setting for direct publishing: true if siblings should be published, otherwise false
      • getDialogShowExportSettings

        public boolean getDialogShowExportSettings()
        Determines if the export part of the secure/export dialog should be shown.

        Returns:
        true if the export dialog is shown, otherwise false
      • getDialogShowLock

        public boolean getDialogShowLock()
        Determines if the lock dialog should be shown.

        Returns:
        true if the lock dialog is shown, otherwise false
      • getDirectEditButtonStyle

        public int getDirectEditButtonStyle()
        Returns the style of the direct edit buttons of the user.

        Returns:
        the style of the direct edit buttons of the user
      • getEditorButtonStyle

        public int getEditorButtonStyle()
        Returns the style of the editor buttons of the user.

        Returns:
        the style of the editor buttons of the user
      • getEditorSettings

        public java.util.Map<java.lang.String,​java.lang.String> getEditorSettings()
        Returns the editor settings of the user.

        Returns:
        the editor settings of the user
      • getExplorerButtonStyle

        public int getExplorerButtonStyle()
        Returns the style of the explorer buttons of the user.

        Returns:
        the style of the explorer buttons of the user
      • getExplorerFileEntries

        public int getExplorerFileEntries()
        Returns the number of displayed files per page of the user.

        Returns:
        the number of displayed files per page of the user
      • getExplorerFileEntryOptions

        public java.lang.String getExplorerFileEntryOptions()
        Returns the explorerFileEntryOptions.

        Returns:
        the explorerFileEntryOptions
      • getExplorerSettings

        public int getExplorerSettings()
        Returns the explorer start settings.

        Returns:
        the explorer start settings
      • getListAllProjects

        public boolean getListAllProjects()
        Returns if all projects should be listed or only the ones in the current ou.

        Returns:
        true if all projects should be listed, otherwise false
      • getLocale

        public java.util.Locale getLocale()
        Returns the locale of the user.

        Returns:
        the locale of the user
      • getNewFolderCreateIndexPage

        public java.lang.Boolean getNewFolderCreateIndexPage()
        Returns Boolean.TRUE if the "create index page" check box in the new folder dialog should be initially be checked.

        Returns:
        Boolean.TRUE if the "create index page" check box in the new folder dialog should be initially be checked.
      • getNewFolderEditProperties

        public java.lang.Boolean getNewFolderEditProperties()
        Returns Boolean.TRUE if the "edit properties" check box in the new folder dialog should be initially be checked.

        Returns:
        Boolean.TRUE if the "edit properties" check box in the new folder dialog should be initially be checked.
      • getPreferredEditor

        public java.lang.String getPreferredEditor​(java.lang.String resourceType)
        Returns the preferred editor for the given resource type of the user.

        Parameters:
        resourceType - the resource type
        Returns:
        the preferred editor for the resource type or null, if not specified
      • getRestrictExplorerView

        public boolean getRestrictExplorerView()
        Sets if the explorer view is restricted to the defined site and folder.

        Returns:
        true if the explorer view is restricted, otherwise false
      • getShowFileUploadButton

        public boolean getShowFileUploadButton()
        Returns true if the file upload button should be shown or false otherwise.

        Returns:
        the showFileUpload
      • getShowPublishNotification

        public boolean getShowPublishNotification()
        Returns if the publish notifications should be shown or not.

        Returns:
        true if the publish notifications should be shown, otherwise false
      • getShowUploadTypeDialog

        public java.lang.Boolean getShowUploadTypeDialog()
        Returns Boolean.TRUE if the resource type selection dialog should be shown in the file upload process (non - applet version).

        Returns:
        Boolean.TRUE if the resource type selection dialog should be shown in the file upload process (non - applet version).
      • getStartFolder

        public java.lang.String getStartFolder()
        Returns the start folder of the user.

        Returns:
        the start folder of the user
      • getStartGalleriesSettings

        public java.util.Map<java.lang.String,​java.lang.String> getStartGalleriesSettings()
        The start galleries settings of the user.

        Returns:
        the start galleries settings of the user
      • getStartGallery

        public java.lang.String getStartGallery​(java.lang.String galleryType)
        Returns the path to the start gallery of the user.

        Parameters:
        galleryType - the type of the gallery
        Returns:
        the path to the start gallery or null, if no key
      • getStartGallery

        public java.lang.String getStartGallery​(java.lang.String galleryType,
                                                CmsObject cms)
        Returns the root site path to the start gallery of the user or the constant CmsPreferences.INPUT_DEFAULT.

        Parameters:
        galleryType - the type of the gallery
        cms - Cms object
        Returns:
        the root site path to the start gallery or the default key, null if "not set"
      • getStartProject

        public java.lang.String getStartProject()
        Returns the start project of the user.

        Returns:
        the start project of the user
      • getStartSite

        public java.lang.String getStartSite()
        Returns the start site of the user.

        Returns:
        the start site of the user
      • getStartView

        public java.lang.String getStartView()
        Returns the current start view of the user.

        Returns:
        the current start view of the user
      • getUploadAppletClientFolder

        public java.lang.String getUploadAppletClientFolder()
        Returns the folder path of the upload applet on the client machine.

        Returns:
        the folder path of the upload applet on the client machine
      • getUser

        public CmsUser getUser()
        Returns the current user for the settings.

        Returns:
        the CmsUser
      • getWorkplaceButtonStyle

        public int getWorkplaceButtonStyle()
        Returns the style of the workplace buttons of the user.

        Returns:
        the style of the workplace buttons of the user
      • getWorkplaceReportType

        public java.lang.String getWorkplaceReportType()
        Returns the type of the report (simple or extended) of the user.

        Returns:
        the type of the report (simple or extended) of the user
      • getWorkplaceSearchIndexName

        public java.lang.String getWorkplaceSearchIndexName()
        Returns the name of the search index to use in the workplace.

        Returns:
        the name of the search index to use in the workplace
      • init

        public void init​(CmsUser user)
        Initializes the user settings with the given users setting parameters.

        Parameters:
        user - the current CmsUser
      • save

        public void save​(CmsObject cms)
                  throws CmsException
        Saves the changed settings of the user to the users CmsUser.getAdditionalInfo() map.

        If the given CmsObject is null, the additional user infos are only updated in memory and not saved into the database.

        Parameters:
        cms - the CmsObject needed to write the user to the db
        Throws:
        CmsException - if user cannot be written to the db
      • setAdditionalPreference

        public void setAdditionalPreference​(java.lang.String name,
                                            java.lang.String value)
        Sets an additional preference value.

        Parameters:
        name - the additional preference name
        value - the preference value
      • setAdditionalPreferencesFrom

        public void setAdditionalPreferencesFrom​(CmsUserSettings userSettings)
        Sets this settings object's additional preferences to that of another one.

        Parameters:
        userSettings - the user settings
      • setDialogExpandInheritedPermissions

        public void setDialogExpandInheritedPermissions​(boolean dialogShowInheritedPermissions)
        Sets the default setting for expanding inherited permissions in the dialog.

        Parameters:
        dialogShowInheritedPermissions - the default setting for expanding inherited permissions in the dialog
      • setDialogExpandUserPermissions

        public void setDialogExpandUserPermissions​(boolean dialogShowUserPermissions)
        Sets the default setting for expanding the users permissions in the dialog.

        Parameters:
        dialogShowUserPermissions - the default setting for expanding the users permissions in the dialog
      • setDialogPermissionsInheritOnFolder

        public void setDialogPermissionsInheritOnFolder​(boolean dialogPermissionsInheritOnFolder)
        Sets the default setting for inheriting permissions on folders.

        Parameters:
        dialogPermissionsInheritOnFolder - the default setting for inheriting permissions on folders
      • setDialogPublishSiblings

        public void setDialogPublishSiblings​(boolean publishSiblings)
        Sets the default setting for direct publishing.

        Parameters:
        publishSiblings - the default setting for direct publishing: true if siblings should be published, otherwise false
      • setDialogShowExportSettings

        public void setDialogShowExportSettings​(boolean show)
        Sets if the export setting part of the secure/export dialog should be shown.

        Parameters:
        show - true if the export dialog should be shown, otherwise false
      • setDialogShowLock

        public void setDialogShowLock​(boolean show)
        Sets if the lock dialog should be shown.

        Parameters:
        show - true if the lock dialog should be shown, otherwise false
      • setDirectEditButtonStyle

        public void setDirectEditButtonStyle​(int style)
        Sets the style of the direct edit buttons of the user.

        Parameters:
        style - the style of the direct edit buttons of the user
      • setEditorButtonStyle

        public void setEditorButtonStyle​(int style)
        Sets the style of the editor buttons of the user.

        Parameters:
        style - the style of the editor buttons of the user
      • setEditorSettings

        public void setEditorSettings​(java.util.Map<java.lang.String,​java.lang.String> settings)
        Sets the editor settings of the user.

        Parameters:
        settings - the editor settings of the user
      • setExplorerButtonStyle

        public void setExplorerButtonStyle​(int style)
        Sets the style of the explorer buttons of the user.

        Parameters:
        style - the style of the explorer buttons of the user
      • setExplorerFileEntries

        public void setExplorerFileEntries​(int entries)
        Sets the number of displayed files per page of the user.

        Parameters:
        entries - the number of displayed files per page of the user
      • setExplorerFileEntryOptions

        public void setExplorerFileEntryOptions​(java.lang.String explorerFileEntryOptions)
        Sets the explorerFileEntryOptions.

        Parameters:
        explorerFileEntryOptions - the explorerFileEntryOptions to set
      • setExplorerSettings

        public void setExplorerSettings​(int settings)
        Sets the explorer start settings.

        Parameters:
        settings - explorer start settings to use
      • setListAllProjects

        public void setListAllProjects​(boolean listAllProjects)
        Sets if all the projects should be shown or not.

        Parameters:
        listAllProjects - true if all the projects should be shown, otherwise false
      • setLocale

        public void setLocale​(java.util.Locale locale)
        Sets the locale of the user.

        Parameters:
        locale - the locale of the user
      • setNewFolderCreateIndexPage

        public void setNewFolderCreateIndexPage​(java.lang.Boolean setting)
        Sets if the "create index page" check box in the new folder dialog should be initially be checked or not.

        Parameters:
        setting - if the "create index page" check box in the new folder dialog should be initially be checked or not.
      • setNewFolderEditPropertes

        public void setNewFolderEditPropertes​(java.lang.Boolean setting)
        Sets if the "edit properties" check box in the new folder dialog should be initially be checked or not.

        Parameters:
        setting - if the "edit properties" check box in the new folder dialog should be initially be checked or not.
      • setPreferredEditor

        public void setPreferredEditor​(java.lang.String resourceType,
                                       java.lang.String editorUri)
        Sets the preferred editor for the given resource type of the user.

        Parameters:
        resourceType - the resource type
        editorUri - the editor URI
      • setRestrictExplorerView

        public void setRestrictExplorerView​(boolean restrict)
        Sets if the explorer view is restricted to the defined site and folder.

        Parameters:
        restrict - true if the explorer view is restricted, otherwise false
      • setShowExplorerFileDateCreated

        public void setShowExplorerFileDateCreated​(boolean show)
        Sets if the file creation date should be shown in explorer view.

        Parameters:
        show - true if the file creation date should be shown, otherwise false
      • setShowExplorerFileDateExpired

        public void setShowExplorerFileDateExpired​(boolean show)
        Sets if the file expire date should be shown in explorer view.

        Parameters:
        show - true if the file expire date should be shown, otherwise false
      • setShowExplorerFileDateLastModified

        public void setShowExplorerFileDateLastModified​(boolean show)
        Sets if the file last modified date state should be shown in explorer view.

        Parameters:
        show - true if the file last modified date should be shown, otherwise false
      • setShowExplorerFileDateReleased

        public void setShowExplorerFileDateReleased​(boolean show)
        Sets if the file release date should be shown in explorer view.

        Parameters:
        show - true if the file release date should be shown, otherwise false
      • setShowExplorerFileLockedBy

        public void setShowExplorerFileLockedBy​(boolean show)
        Sets if the file locked by should be shown in explorer view.

        Parameters:
        show - true if the file locked by should be shown, otherwise false
      • setShowExplorerFileNavText

        public void setShowExplorerFileNavText​(boolean show)
        Sets if the file navtext should be shown in explorer view.

        Parameters:
        show - true if the file navtext should be shown, otherwise false
      • setShowExplorerFilePermissions

        public void setShowExplorerFilePermissions​(boolean show)
        Sets if the file permissions should be shown in explorer view.

        Parameters:
        show - true if the file permissions should be shown, otherwise false
      • setShowExplorerFileSize

        public void setShowExplorerFileSize​(boolean show)
        Sets if the file size should be shown in explorer view.

        Parameters:
        show - true if the file size should be shown, otherwise false
      • setShowExplorerFileState

        public void setShowExplorerFileState​(boolean show)
        Sets if the file state should be shown in explorer view.

        Parameters:
        show - true if the state size should be shown, otherwise false
      • setShowExplorerFileTitle

        public void setShowExplorerFileTitle​(boolean show)
        Sets if the file title should be shown in explorer view.

        Parameters:
        show - true if the file title should be shown, otherwise false
      • setShowExplorerFileType

        public void setShowExplorerFileType​(boolean show)
        Sets if the file type should be shown in explorer view.

        Parameters:
        show - true if the file type should be shown, otherwise false
      • setShowExplorerFileUserCreated

        public void setShowExplorerFileUserCreated​(boolean show)
        Sets if the file creator should be shown in explorer view.

        Parameters:
        show - true if the file creator should be shown, otherwise false
      • setShowExplorerFileUserLastModified

        public void setShowExplorerFileUserLastModified​(boolean show)
        Sets if the file last modified by should be shown in explorer view.

        Parameters:
        show - true if the file last modified by should be shown, otherwise false
      • setShowFileUploadButton

        public void setShowFileUploadButton​(boolean flag)
        Controls whether to display a file upload icon or not.

        Parameters:
        flag - true or false to flag the use of the file upload button
      • setShowPublishNotification

        public void setShowPublishNotification​(boolean showPublishNotification)
        Sets if the publish notifications should be shown or not.

        Parameters:
        showPublishNotification - true if the publish notifications should be shown, otherwise false
      • setShowUploadTypeDialog

        public void setShowUploadTypeDialog​(java.lang.Boolean showUploadTypeDialog)
        Sets if the resource type selection dialog should be shown in the file upload process (non - applet version) or not.

        Parameters:
        showUploadTypeDialog - if the resource type selection dialog should be shown in the file upload process (non - applet version)
      • setStartFolder

        public void setStartFolder​(java.lang.String folder)
        Sets the start folder of the user.

        Parameters:
        folder - the start folder of the user
      • setStartGalleriesSetting

        public void setStartGalleriesSetting​(java.util.Map<java.lang.String,​java.lang.String> settings)
        Sets the start galleries settings of the user.

        Parameters:
        settings - the start galleries setting of the user
      • setStartGallery

        public void setStartGallery​(java.lang.String galleryType,
                                    java.lang.String galleryUri)
        Sets the path to the start gallery of the user or removes the entry from user settings if no path is null.

        Parameters:
        galleryType - the type of the gallery
        galleryUri - the gallery URI
      • setStartProject

        public void setStartProject​(java.lang.String project)
        Sets the start project of the user.

        Parameters:
        project - the start project name of the user
      • setStartSite

        public void setStartSite​(java.lang.String site)
        Sets the start site of the user.

        Parameters:
        site - the start site of the user
      • setStartView

        public void setStartView​(java.lang.String view)
        Sets the current start view of the user.

        Parameters:
        view - the current start view of the user
      • setSynchronizeSettings

        public void setSynchronizeSettings​(CmsSynchronizeSettings synchronizeSettings)
        Sets the (optional) workplace synchronize settings.

        Parameters:
        synchronizeSettings - the (optional) workplace synchronize settings to set
      • setTimeWarp

        public void setTimeWarp​(long timewarp)
        Sets the user specific custom "time warp" time.

        Use CmsContextInfo.CURRENT_TIME to disable this feature, ie. enable the current time for each new request.

        If this value is set, auto time warping will be disabled: Clicking on a resource that has not been released at the given time or is already expired at the given time will not be shown - an error message will pop up ("out of time window").

        Parameters:
        timewarp - the time warp time to set
      • setUploadAppletClientFolder

        public void setUploadAppletClientFolder​(java.lang.String uploadAppletClientFolder)
        Sets the folder path of the upload applet on the client machine.

        Parameters:
        uploadAppletClientFolder - the folder path of the upload applet on the client machine
      • setUploadVariant

        public void setUploadVariant​(java.lang.String uploadVariant)
        Sets the upload variant.

        Parameters:
        uploadVariant - the upload variant as String
      • setUser

        public void setUser​(CmsUser user)
        Sets the current user for the settings.

        Parameters:
        user - the CmsUser
      • setWorkplaceButtonStyle

        public void setWorkplaceButtonStyle​(int style)
        Sets the style of the workplace buttons of the user.

        Parameters:
        style - the style of the workplace buttons of the user
      • setWorkplaceReportType

        public void setWorkplaceReportType​(java.lang.String type)
        Sets the type of the report (simple or extended) of the user.

        Parameters:
        type - the type of the report (simple or extended) of the user
      • setWorkplaceSearchIndexName

        public void setWorkplaceSearchIndexName​(java.lang.String workplaceSearchIndexName)
        Sets the name of the search index to use in the workplace.

        Parameters:
        workplaceSearchIndexName - the name of the search index to use in the workplace to set
      • showExplorerFileDateCreated

        public boolean showExplorerFileDateCreated()
        Determines if the file creation date should be shown in explorer view.

        Returns:
        true if the file creation date should be shown, otherwise false
      • showExplorerFileDateExpired

        public boolean showExplorerFileDateExpired()
        Determines if the file date expired should be shown in explorer view.

        Returns:
        true if the file date expired should be shown, otherwise false
      • showExplorerFileDateLastModified

        public boolean showExplorerFileDateLastModified()
        Determines if the file last modified date should be shown in explorer view.

        Returns:
        true if the file last modified date should be shown, otherwise false
      • showExplorerFileDateReleased

        public boolean showExplorerFileDateReleased()
        Determines if the file date released should be shown in explorer view.

        Returns:
        true if the file date released should be shown, otherwise false
      • showExplorerFileLockedBy

        public boolean showExplorerFileLockedBy()
        Determines if the file locked by should be shown in explorer view.

        Returns:
        true if the file locked by should be shown, otherwise false
      • showExplorerFileNavText

        public boolean showExplorerFileNavText()
        Determines if the file navigation text should be shown in explorer view.

        Returns:
        true if the file navigation text should be shown, otherwise false
      • showExplorerFilePermissions

        public boolean showExplorerFilePermissions()
        Determines if the file permissions should be shown in explorer view.

        Returns:
        true if the file permissions should be shown, otherwise false
      • showExplorerFileSize

        public boolean showExplorerFileSize()
        Determines if the file size should be shown in explorer view.

        Returns:
        true if the file size should be shown, otherwise false
      • showExplorerFileState

        public boolean showExplorerFileState()
        Determines if the file state should be shown in explorer view.

        Returns:
        true if the file state should be shown, otherwise false
      • showExplorerFileTitle

        public boolean showExplorerFileTitle()
        Determines if the file title should be shown in explorer view.

        Returns:
        true if the file title should be shown, otherwise false
      • showExplorerFileType

        public boolean showExplorerFileType()
        Determines if the file type should be shown in explorer view.

        Returns:
        true if the file type should be shown, otherwise false
      • showExplorerFileUserCreated

        public boolean showExplorerFileUserCreated()
        Determines if the file creator should be shown in explorer view.

        Returns:
        true if the file creator should be shown, otherwise false
      • showExplorerFileUserLastModified

        public boolean showExplorerFileUserLastModified()
        Determines if the file last modified by should be shown in explorer view.

        Returns:
        true if the file last modified by should be shown, otherwise false