org.opencms.workplace
Class CmsLoginUserAgreement

java.lang.Object
  extended by org.opencms.workplace.CmsWorkplace
      extended by org.opencms.workplace.tools.CmsToolDialog
          extended by org.opencms.workplace.CmsDialog
              extended by org.opencms.workplace.CmsLoginUserAgreement

public class CmsLoginUserAgreement
extends CmsDialog

Provides methods to show a configurable user agreement dialog after a successful workplace login.

Since:
8.0

Field Summary
static int ACTION_ACCEPT
          Value for the action: accept the user agreement.
static String DIALOG_TYPE
          The dialog type.
protected static String KEY_ACCEPTED_COUNT
          JSON key name to store the count of the accepted agreement.
protected static String KEY_ACCEPTED_VERSION
          JSON key name to store the version of the accepted agreement.
protected static String NODE_AGREE_COUNT
          Node name for the element: AgreeCount.
protected static String NODE_BUTTON_ACCEPT
          Node name for the element: ButtonAccept.
protected static String NODE_BUTTON_DECLINE
          Node name for the element: ButtonDecline.
protected static String NODE_DIALOG_TITLE
          Node name for the element: DialogTitle.
static String NODE_MESSAGE_DECLINED
          Node name for the element: MessageDeclined.
static String NODE_TEXT
          Node name for the element: Text.
protected static String NODE_VERSION
          Node name for the element: Version.
static String PARAM_WPRES
          Request parameter name for the originally requested resource.
protected static String VFS_PATH_CONFIGFOLDER
          The VFS path to the folder containing the user agreement configuration files.
 
Fields inherited from class org.opencms.workplace.CmsDialog
ACTION_CANCEL, ACTION_CLOSEPOPUP, ACTION_CLOSEPOPUP_SAVE, ACTION_CONFIRMED, ACTION_CONTINUE, ACTION_DEFAULT, ACTION_LOCKS_CONFIRMED, ACTION_OK, ACTION_REPORT_BEGIN, ACTION_REPORT_END, ACTION_REPORT_UPDATE, ACTION_SET, ACTION_WAIT, ATTRIBUTE_THROWABLE, BUTTON_ADVANCED, BUTTON_BACK, BUTTON_CANCEL, BUTTON_CLOSE, BUTTON_CONTINUE, BUTTON_DETAILS, BUTTON_DISCARD, BUTTON_EDIT, BUTTON_OK, BUTTON_OK_NO_SUBMIT, BUTTON_SET, DIALOG_BACK, DIALOG_CANCEL, DIALOG_CONFIRMED, DIALOG_CONTINUE, DIALOG_INITIAL, DIALOG_LOCKS_CONFIRMED, DIALOG_OK, DIALOG_SET, DIALOG_WAIT, PARAM_ACTION, PARAM_CLOSELINK, PARAM_DIALOGTYPE, PARAM_ERRORSTACK, PARAM_FILE, PARAM_FRAMENAME, PARAM_ISPOPUP, PARAM_LOCK, PARAM_MESSAGE, PARAM_ORIGINALPARAMS, PARAM_PREACTIONDONE, PARAM_REDIRECT, PARAM_RESOURCE, PARAM_TARGET, PARAM_THREAD, PARAM_THREAD_HASNEXT, PARAM_TITLE, REPORT_BEGIN, REPORT_END, REPORT_UPDATE
 
Fields inherited from class org.opencms.workplace.tools.CmsToolDialog
PARAM_BASE, PARAM_FORCE, PARAM_PATH, PARAM_ROOT, PARAM_STYLE, STYLE_NEW
 
Fields inherited from class org.opencms.workplace.CmsWorkplace
DEBUG, DEFAULT_LANGUAGE, DEFAULT_LOCALE, DIALOG_PATH_COMMON, FILE_DIALOG_CLOSE, FILE_DIALOG_SCREEN_CONFIRM, FILE_DIALOG_SCREEN_ERROR, FILE_DIALOG_SCREEN_ERRORPAGE, FILE_DIALOG_SCREEN_WAIT, FILE_EXPLORER_FILELIST, FILE_REPORT_OUTPUT, HTML_END, HTML_START, PARAM_WP_EXPLORER_RESOURCE, PARAM_WP_PROJECT, PARAM_WP_SITE, PATH_DIALOGS, PATH_WORKPLACE, REQUEST_ATTRIBUTE_MULTIPART, REQUEST_ATTRIBUTE_RELOADTREE, RES_PATH_FILETYPES, RFS_PATH_RESOURCES, SESSION_WORKPLACE_CLASS, VFS_DIR_DEFAULTBODIES, VFS_DIR_TEMPLATES, VFS_PATH_COMMONS, VFS_PATH_EDITORS, VFS_PATH_GALLERIES, VFS_PATH_LOCALES, VFS_PATH_MODULES, VFS_PATH_RESOURCES, VFS_PATH_SYSTEM, VFS_PATH_VIEWS, VFS_PATH_WORKPLACE, VIEW_DIRECT_EDIT, VIEW_WORKPLACE
 
Constructor Summary
CmsLoginUserAgreement(CmsJspActionElement jsp)
          Public constructor with JSP action element.
CmsLoginUserAgreement(javax.servlet.jsp.PageContext context, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)
          Public constructor with JSP variables.
 
Method Summary
 void acceptAgreement()
          Stores the information about the accepted user agreement in the current users additional info.
 void actionAccept()
          Performs the the user agreement accept action, will be called by the JSP page.
 void actionDecline()
          Performs the user agreement declined action, will be called by the JSP page.
protected  void dialogButtonsHtml(StringBuffer result, int button, String attribute)
          The standard "OK" and "Cancel" buttons are overridden to show other labels.
 String dialogScriptSubmit()
          The standard JavaScript for submitting the dialog is overridden to show an alert in case that an agreement is declined.
 int getAcceptedCount()
          Returns the number of times the user accepted the agreement.
 double getAcceptedVersion()
          Returns the version of the user accepted agreement.
protected  CmsXmlContent getConfigurationContent()
          Returns the user agreement configuration content.
 String getConfigurationContentStringValue(String path)
          Returns the content value of the given path as String.
 String getConfigurationVfsPath()
          Returns the absolute path in the OpenCms VFS to the user agreement configuration file.
 String getParamWpres()
          Returns the originally requested workplace resource path parameter.
 double getRequiredVersion()
          Returns the required version of the user accepted agreement.
protected  void initWorkplaceRequestValues(CmsWorkplaceSettings settings, javax.servlet.http.HttpServletRequest request)
          Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.
 boolean isShowUserAgreement()
          Returns if the user agreement page should be shown for the current user.
 void setAcceptedCount(int acceptedCount)
          Sets the number of times the user accepted the agreement.
 void setAcceptedVersion(double acceptedVersion)
          Sets the version of the user accepted agreement.
 void setParamWpres(String paramWpres)
          Sets the originally requested workplace resource path parameter.
 void setRequiredVersion(double requiredVersion)
          Sets the required version of the user accepted agreement.
 
Methods inherited from class org.opencms.workplace.CmsDialog
actionCloseDialog, appendDelimiter, buildAjaxResultContainer, buildAjaxWaitMessage, buildLockAdditionalOptions, buildLockConfirmationMessageJS, buildLockDialog, buildLockDialog, buildLockHeaderBox, checkResourcePermissions, checkResourcePermissions, computeCurrentFolder, dialog, dialogBlock, dialogBlockEnd, dialogBlockStart, dialogButtonRow, dialogButtonRowEnd, dialogButtonRowStart, dialogButtons, dialogButtonsClose, dialogButtonsClose, dialogButtonsCloseDetails, dialogButtonsOk, dialogButtonsOk, dialogButtonsOkCancel, dialogButtonsOkCancel, dialogButtonsOkCancelAdvanced, dialogButtonsSetOkCancel, dialogContent, dialogContentEnd, dialogContentStart, dialogEnd, dialogHead, dialogHorizontalSpacer, dialogLockButtons, dialogRow, dialogRowEnd, dialogRowStart, dialogSeparator, dialogSpacer, dialogStart, dialogStart, dialogSubheadline, dialogToggleStart, dialogWhiteBox, dialogWhiteBoxEnd, dialogWhiteBoxStart, getAction, getAdministrationBackLink, getCancelAction, getDialogRealUri, getDialogUri, getOnlineHelpUriCustom, getParamAction, getParamCloseLink, getParamDialogtype, getParamFramename, getParamIsPopup, getParamMessage, getParamOriginalParams, getParamPreActionDone, getParamRedirect, getParamResource, getParamTitle, getState, hasCorrectLockstate, hasSiblings, htmlStart, htmlStart, htmlStart, htmlStartStyle, includeErrorpage, initCmsDialog, isPopup, isPreEditor, pageHtml, pageHtml, setAction, setOnlineHelpUriCustom, setParamAction, setParamCloseLink, setParamDialogtype, setParamFramename, setParamIsPopup, setParamMessage, setParamOriginalParams, setParamPreActionDone, setParamRedirect, setParamResource, setParamTitle
 
Methods inherited from class org.opencms.workplace.tools.CmsToolDialog
dialogTitle, getAdminTool, getCurrentToolPath, getParamBase, getParamForce, getParamPath, getParamRoot, getParamStyle, getParentPath, getToolManager, iconsBlockArea, iconsBlockAreaEnd, iconsBlockAreaStart, initAdminTool, pageBody, pageHtmlStyle, setParamBase, setParamForce, setParamPath, setParamRoot, setParamStyle, useNewStyle
 
Methods inherited from class org.opencms.workplace.CmsWorkplace
addMessages, addMessages, allParamsAsHidden, allParamsAsRequest, allParamValues, bodyEnd, bodyStart, bodyStart, buildSelect, buildSelect, button, button, buttonBar, buttonBar, buttonBarHorizontalLine, buttonBarLabel, buttonBarLabel, buttonBarLine, buttonBarLineSpacer, buttonBarSeparator, buttonBarSpacer, buttonBarStartTab, checkLock, checkLock, checkRole, decodeParamValue, fillParamValues, fillParamValues, getBroadcastMessageString, getCms, getEncoding, getExplorerFileListFullUri, getFrameSource, getJsp, getLocale, getMacroResolver, getMessages, getMultiPartFileItems, getParameterMap, getResourceUri, getResourceUri, getSession, getSettings, getSkinUri, getStyleUri, getStyleUri, getStyleUri, getTemporaryFileName, htmlEnd, initMessages, initSettings, initTimeWarp, initUserSettings, initWorkplaceMembers, initWorkplaceSettings, isForwarded, isHelpEnabled, isSubElement, isTemporaryFile, key, key, keyDefault, nullToEmpty, paramsAsHidden, paramsAsHidden, paramsAsParameterMap, paramsAsRequest, paramValues, resolveMacros, sendCmsRedirect, sendForward, setForwarded, shortKey, substituteSiteTitle, switchToCurrentProject, switchToTempProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACTION_ACCEPT

public static final int ACTION_ACCEPT
Value for the action: accept the user agreement.

See Also:
Constant Field Values

DIALOG_TYPE

public static final String DIALOG_TYPE
The dialog type.

See Also:
Constant Field Values

NODE_MESSAGE_DECLINED

public static final String NODE_MESSAGE_DECLINED
Node name for the element: MessageDeclined.

See Also:
Constant Field Values

NODE_TEXT

public static final String NODE_TEXT
Node name for the element: Text.

See Also:
Constant Field Values

PARAM_WPRES

public static final String PARAM_WPRES
Request parameter name for the originally requested resource.

See Also:
Constant Field Values

KEY_ACCEPTED_COUNT

protected static final String KEY_ACCEPTED_COUNT
JSON key name to store the count of the accepted agreement.

See Also:
Constant Field Values

KEY_ACCEPTED_VERSION

protected static final String KEY_ACCEPTED_VERSION
JSON key name to store the version of the accepted agreement.

See Also:
Constant Field Values

NODE_AGREE_COUNT

protected static final String NODE_AGREE_COUNT
Node name for the element: AgreeCount.

See Also:
Constant Field Values

NODE_BUTTON_ACCEPT

protected static final String NODE_BUTTON_ACCEPT
Node name for the element: ButtonAccept.

See Also:
Constant Field Values

NODE_BUTTON_DECLINE

protected static final String NODE_BUTTON_DECLINE
Node name for the element: ButtonDecline.

See Also:
Constant Field Values

NODE_DIALOG_TITLE

protected static final String NODE_DIALOG_TITLE
Node name for the element: DialogTitle.

See Also:
Constant Field Values

NODE_VERSION

protected static final String NODE_VERSION
Node name for the element: Version.

See Also:
Constant Field Values

VFS_PATH_CONFIGFOLDER

protected static final String VFS_PATH_CONFIGFOLDER
The VFS path to the folder containing the user agreement configuration files.

See Also:
Constant Field Values
Constructor Detail

CmsLoginUserAgreement

public CmsLoginUserAgreement(CmsJspActionElement jsp)
Public constructor with JSP action element.

Parameters:
jsp - an initialized JSP action element

CmsLoginUserAgreement

public CmsLoginUserAgreement(javax.servlet.jsp.PageContext context,
                             javax.servlet.http.HttpServletRequest req,
                             javax.servlet.http.HttpServletResponse res)
Public constructor with JSP variables.

Parameters:
context - the JSP page context
req - the JSP request
res - the JSP response
Method Detail

acceptAgreement

public void acceptAgreement()
Stores the information about the accepted user agreement in the current users additional info.


actionAccept

public void actionAccept()
                  throws IOException
Performs the the user agreement accept action, will be called by the JSP page.

Throws:
IOException - if problems while redirecting occur

actionDecline

public void actionDecline()
                   throws IOException
Performs the user agreement declined action, will be called by the JSP page.

Throws:
IOException - if problems while redirecting occur

dialogScriptSubmit

public String dialogScriptSubmit()
The standard JavaScript for submitting the dialog is overridden to show an alert in case that an agreement is declined.

See also CmsDialog.dialogScriptSubmit()

Overrides:
dialogScriptSubmit in class CmsDialog
Returns:
the standard JavaScript for submitting the dialog

getAcceptedCount

public int getAcceptedCount()
Returns the number of times the user accepted the agreement.

Returns:
the number of times the user accepted the agreement

getAcceptedVersion

public double getAcceptedVersion()
Returns the version of the user accepted agreement.

Returns:
the version of the user accepted agreement

getConfigurationContentStringValue

public String getConfigurationContentStringValue(String path)
Returns the content value of the given path as String.

Parameters:
path - the path to get the content value for
Returns:
the content value of the given path as String

getParamWpres

public String getParamWpres()
Returns the originally requested workplace resource path parameter.

Returns:
the originally requested workplace resource path parameter

getRequiredVersion

public double getRequiredVersion()
Returns the required version of the user accepted agreement.

Returns:
the required version of the user accepted agreement

isShowUserAgreement

public boolean isShowUserAgreement()
Returns if the user agreement page should be shown for the current user.

Returns:
true if the user agreement page should be shown for the current user, otherwise false

setAcceptedCount

public void setAcceptedCount(int acceptedCount)
Sets the number of times the user accepted the agreement.

Parameters:
acceptedCount - the number of times the user accepted the agreement

setAcceptedVersion

public void setAcceptedVersion(double acceptedVersion)
Sets the version of the user accepted agreement.

Parameters:
acceptedVersion - the version of the user accepted agreement

setParamWpres

public void setParamWpres(String paramWpres)
Sets the originally requested workplace resource path parameter.

Parameters:
paramWpres - the originally requested workplace resource path parameter

setRequiredVersion

public void setRequiredVersion(double requiredVersion)
Sets the required version of the user accepted agreement.

Parameters:
requiredVersion - the required version of the user accepted agreement

dialogButtonsHtml

protected void dialogButtonsHtml(StringBuffer result,
                                 int button,
                                 String attribute)
The standard "OK" and "Cancel" buttons are overridden to show other labels.

See also CmsDialog.dialogButtonsHtml(StringBuffer, int, String)

Overrides:
dialogButtonsHtml in class CmsDialog
Parameters:
result - a string buffer where the rendered HTML gets appended to
button - a integer key to identify the button
attribute - an optional string with possible tag attributes, or null

getConfigurationContent

protected CmsXmlContent getConfigurationContent()
Returns the user agreement configuration content.

Returns:
the user agreement configuration content

getConfigurationVfsPath

public String getConfigurationVfsPath()
Returns the absolute path in the OpenCms VFS to the user agreement configuration file.

Returns:
the absolute path in the OpenCms VFS to the user agreement configuration file

initWorkplaceRequestValues

protected void initWorkplaceRequestValues(CmsWorkplaceSettings settings,
                                          javax.servlet.http.HttpServletRequest request)
Description copied from class: CmsWorkplace
Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.

Overrides:
initWorkplaceRequestValues in class CmsDialog
Parameters:
settings - the workplace settings
request - the current request
See Also:
CmsWorkplace.initWorkplaceRequestValues(org.opencms.workplace.CmsWorkplaceSettings, javax.servlet.http.HttpServletRequest)