org.opencms.workplace.commons
Class CmsUndoChanges

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.CmsMultiDialog
                  extended by org.opencms.workplace.commons.CmsUndoChanges

public class CmsUndoChanges
extends CmsMultiDialog

Provides methods for the undo changes on a resource dialog.

The following files use this class:

Since:
6.0.0
Version:
$Revision: 1.25 $
Author:
Andreas Zahner

Field Summary
static int ACTION_CHECKSIBLINGS
          Value for the action: check for siblings and warn in case they exist.
static int ACTION_UNDOCHANGES
          Value for the action: undo changes.
static java.lang.String DIALOG_CHECKSIBLINGS
          Action string constant for the check siblings dialog.
static java.lang.String DIALOG_TYPE
          The dialog type.
static java.lang.String PARAM_MOVE
          Request parameter name for the move flag.
static java.lang.String PARAM_RECURSIVE
          Request parameter name for the recursive flag.
 
Fields inherited from class org.opencms.workplace.CmsMultiDialog
DELIMITER_RESOURCES, PARAM_RESOURCELIST
 
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, RFS_PATH_RESOURCES, SESSION_WORKPLACE_CLASS, TEMP_FILE_PREFIX, 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
 
Constructor Summary
CmsUndoChanges(CmsJspActionElement jsp)
          Public constructor with JSP action element.
CmsUndoChanges(javax.servlet.jsp.PageContext context, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)
          Public constructor with JSP variables.
 
Method Summary
 boolean actionCheckSiblings()
          Performs the check for siblings action and returns false in case of existence.
 void actionUndoChanges()
          Performs the undo changes action, will be called by the JSP page.
 java.lang.String buildDialogOptions()
          Returns the HTML for the undo changes options and detailed output for single resource operations.
protected  CmsResource getCurrentResource()
          Returns the current CmsResource.
protected  java.lang.String getFileName()
          Returns the file name without path information of the current resource.
protected  java.lang.String getLastModifiedDate()
          Returns the last modified date of the current resource as localized String.
protected  java.lang.String getLastModifiedUser()
          Returns the user who made the last changes to the current resource.
 java.lang.String getParamMove()
          Returns the undo move operation flag parameter value.
 java.lang.String getParamRecursive()
          Returns the value of the recursive parameter, or null if this parameter was not provided.
protected  void initWorkplaceRequestValues(CmsWorkplaceSettings settings, javax.servlet.http.HttpServletRequest request)
          Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.
protected  boolean isOperationOnMovedResource()
          Checks if the resource operation is an operation on at least one moved resource.
protected  boolean performDialogOperation()
          Performs the undo changes operation on a resource.
static java.lang.String resourceOriginalPath(CmsObject cms, java.lang.String resourceName)
          Returns the original path of given resource, that is the online path for the resource.
protected  void setCurrentResource(CmsResource res)
          Sets the current CmsResource.
 void setParamMove(java.lang.String paramMove)
          Sets the undo move operation flag parameter value.
 void setParamRecursive(java.lang.String value)
          Sets the value of the recursive parameter.
 
Methods inherited from class org.opencms.workplace.CmsMultiDialog
addMultiOperationException, buildLockHeaderBox, buildResourceList, checkMultiOperationException, checkResourcePermissions, getParamResourcelist, getResourceList, getResourceListAsParam, isMultiOperation, isOperationOnFolder, setDialogTitle, setParamResource, setParamResourcelist
 
Methods inherited from class org.opencms.workplace.CmsDialog
actionCloseDialog, appendDelimiter, buildAjaxResultContainer, buildAjaxWaitMessage, buildLockAdditionalOptions, buildLockConfirmationMessageJS, buildLockDialog, buildLockDialog, checkResourcePermissions, computeCurrentFolder, dialog, dialogBlock, dialogBlockEnd, dialogBlockStart, dialogButtonRow, dialogButtonRowEnd, dialogButtonRowStart, dialogButtons, dialogButtonsClose, dialogButtonsClose, dialogButtonsCloseDetails, dialogButtonsHtml, dialogButtonsOk, dialogButtonsOk, dialogButtonsOkCancel, dialogButtonsOkCancel, dialogButtonsOkCancelAdvanced, dialogButtonsSetOkCancel, dialogContent, dialogContentEnd, dialogContentStart, dialogEnd, dialogHead, dialogHorizontalSpacer, dialogLockButtons, dialogRow, dialogRowEnd, dialogRowStart, dialogScriptSubmit, 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, 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, isTemporaryFileName, key, key, keyDefault, nullToEmpty, paramsAsHidden, paramsAsHidden, paramsAsParameterMap, paramsAsRequest, paramValues, resolveMacros, sendCmsRedirect, sendForward, setForwarded, shortKey, switchToCurrentProject, switchToTempProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACTION_UNDOCHANGES

public static final int ACTION_UNDOCHANGES
Value for the action: undo changes.

See Also:
Constant Field Values

ACTION_CHECKSIBLINGS

public static final int ACTION_CHECKSIBLINGS
Value for the action: check for siblings and warn in case they exist.

See Also:
Constant Field Values

DIALOG_CHECKSIBLINGS

public static final java.lang.String DIALOG_CHECKSIBLINGS
Action string constant for the check siblings dialog.

See Also:
Constant Field Values

DIALOG_TYPE

public static final java.lang.String DIALOG_TYPE
The dialog type.

See Also:
Constant Field Values

PARAM_RECURSIVE

public static final java.lang.String PARAM_RECURSIVE
Request parameter name for the recursive flag.

See Also:
Constant Field Values

PARAM_MOVE

public static final java.lang.String PARAM_MOVE
Request parameter name for the move flag.

See Also:
Constant Field Values
Constructor Detail

CmsUndoChanges

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

Parameters:
jsp - an initialized JSP action element

CmsUndoChanges

public CmsUndoChanges(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

resourceOriginalPath

public static java.lang.String resourceOriginalPath(CmsObject cms,
                                                    java.lang.String resourceName)
Returns the original path of given resource, that is the online path for the resource. If it differs from the offline path, the resource has been moved.

Parameters:
cms - the cms context
resourceName - a site relative resource name
Returns:
the online path, or null if resource has not been published

actionCheckSiblings

public boolean actionCheckSiblings()
Performs the check for siblings action and returns false in case of existence.

Returns:
true if siblings are found.

actionUndoChanges

public void actionUndoChanges()
                       throws javax.servlet.jsp.JspException
Performs the undo changes action, will be called by the JSP page.

Throws:
javax.servlet.jsp.JspException - if problems including sub-elements occur

buildDialogOptions

public java.lang.String buildDialogOptions()
Returns the HTML for the undo changes options and detailed output for single resource operations.

Returns:
the HTML for the undo changes options

getParamMove

public java.lang.String getParamMove()
Returns the undo move operation flag parameter value.

Returns:
the undo move operation flag parameter value

getParamRecursive

public java.lang.String getParamRecursive()
Returns the value of the recursive parameter, or null if this parameter was not provided.

The recursive parameter on folders decides if all subresources of the folder should be unchanged, too.

Returns:
the value of the recursive parameter

setParamMove

public void setParamMove(java.lang.String paramMove)
Sets the undo move operation flag parameter value.

Parameters:
paramMove - the undo move operation flag to set

setParamRecursive

public void setParamRecursive(java.lang.String value)
Sets the value of the recursive parameter.

Parameters:
value - the value to set

getCurrentResource

protected CmsResource getCurrentResource()
Returns the current CmsResource.

Returns:
the CmsResource

getFileName

protected java.lang.String getFileName()
Returns the file name without path information of the current resource.

Returns:
the name of the current resource

getLastModifiedDate

protected java.lang.String getLastModifiedDate()
Returns the last modified date of the current resource as localized String.

Returns:
the date of last modification

getLastModifiedUser

protected java.lang.String getLastModifiedUser()
Returns the user who made the last changes to the current resource.

Returns:
the user who changed the resource

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)

isOperationOnMovedResource

protected boolean isOperationOnMovedResource()
Checks if the resource operation is an operation on at least one moved resource.

Returns:
true if the operation an operation on at least one moved resource, otherwise false

performDialogOperation

protected boolean performDialogOperation()
                                  throws CmsException
Performs the undo changes operation on a resource.

Specified by:
performDialogOperation in class CmsMultiDialog
Returns:
true, if the changes on a resource were undone, otherwise false
Throws:
CmsException - if undo changes is not successful

setCurrentResource

protected void setCurrentResource(CmsResource res)
Sets the current CmsResource.

Parameters:
res - the CmsResource