public class ResetPasswordHandler extends JcmsFormHandler
Also provides API to obtain valid password reset link for user : getPasswordResetUrl(HttpServletRequest, Member)
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
EXPIRATION_DURATION_PROP
Property key that defines the default expiration duration.
|
contextMap, editFieldSet, noRedirect, noSendRedirect, popupEdition, redirect, redirectOnClosePopup, REVISION, workspaceForced
AJAX_REQUEST_ATTRIBUTES, BODY_HEADER, CSS_HEADER, cssboMap, cssfoMap, CUSTOM_HEADER, editIcon, HTTPEQUIV_HEADER, httpequivMap, HTTPNAME_HEADER, httpnameMap, initEditIcon, JAVASCRIPT_CODE_SET_ATTRIBUTE, JAVASCRIPT_SET_ATTRIBUTE, jsboSet, jsfoSet, out, pageContext, SHOW_EDIT_ICON, STYLE_HEADER
browser, caddy, channel, inFO, initDone, initWorkspace, isAdmin, isAjaxRequest, isDBMember, isDebug, isLogged, loggedMember, request, response, userCountry, userLang, userLocale, workspace
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, CTRL_TOPIC_INTERNAL, CTRL_TOPIC_REF, CTRL_TOPIC_VALUE, CTRL_TOPIC_WRITE, CUSTOM_PROP, DOCCHOOSER_HEIGHT, DOCCHOOSER_WIDTH, DOCS_DIR, EDATE_SEARCH, EMAIL_REGEXP, ERROR_MSG, FORBIDDEN_FILE_ACCESS, FORBIDDEN_REDIRECT, FORCE_REDIRECT, ICON_ARCHIVE, ICON_LOCK, ICON_LOCK_STRONG, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, JALIOS_JUNIT_PROP, JCMS_CADDY, JCMS_MSG_LIST, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_CREATE_STR, OP_DEEP_COPY, OP_DEEP_COPY_STR, OP_DEEP_DELETE, OP_DEEP_DELETE_STR, OP_DELETE, OP_DELETE_STR, OP_MERGE, OP_MERGE_STR, OP_UPDATE, OP_UPDATE_STR, PDATE_SEARCH, PHOTO_DIR, PHOTO_ICON, PHOTO_ICON_HEIGHT, PHOTO_ICON_WIDTH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SESSION_AUTHORIZED_FILENAMES_SET, STATS_REPORT_DIR, STATUS_PROP, STORE_XML, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, TYPES_ICON_ALT_PROP, TYPES_ICON_SUFFIX_PROP, TYPES_ICON_TITLE_PROP, TYPES_PREFIX_PROP, TYPES_THUMB_SUFFIX_PROP, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, URL_REGEXP, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
CRLF, MILLIS_IN_ONE_DAY, MILLIS_IN_ONE_HOUR, MILLIS_IN_ONE_MINUTE, MILLIS_IN_ONE_MONTH, MILLIS_IN_ONE_SECOND, MILLIS_IN_ONE_WEEK, MILLIS_IN_ONE_YEAR
Constructor and Description |
---|
ResetPasswordHandler() |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
generatePasswordResetToken(Member member,
long validityDuration)
Compute and generate a password reset token suitable for a password reset modification
|
java.lang.String |
getEmail()
The email as entered by the user.
|
Member |
getMember()
Retrieve the member for which a password reset is performed.
|
static Member |
getMemberFromPasswordResetToken(java.lang.String token)
Validate a password reset token and retrieve the corresponding member.
|
java.lang.String |
getPasswordResetToken()
Retrieve the internal security token usd to validate the password reset.
|
static java.lang.String |
getPasswordResetUrl(javax.servlet.http.HttpServletRequest request,
Member mbr)
Retrieve an absolute URL suitable for the specified member to change his password.
|
static java.lang.String |
getPasswordResetUrl(javax.servlet.http.HttpServletRequest request,
Member mbr,
long validityDuration)
Retrieve an absolute URL suitable for the specified member to change his password.
|
boolean |
isResetFormDisplayed()
Check if the "reset password" form should be displayed.
|
boolean |
isResetRequestFormDisplayed()
Check if the "request reset password" form should be displayed.
|
boolean |
performRequestReset()
Perform the password reset request for the specified email
|
boolean |
performReset()
Perform the password reset request for the specified email
|
boolean |
processAction()
Method to be implemented to check/validate action to be performed and process them.
|
void |
setEmail(java.lang.String email)
The the email for which a password reset request will be sent
|
void |
setOpRequestReset(java.lang.String value)
Set this parameter to trigger a password request reset.
|
void |
setOpReset(java.lang.String value)
Set this parameter to trigger a password reset.
|
void |
setPassword1(java.lang.String password)
Set the new password to use
|
void |
setPassword2(java.lang.String password)
Set the new password confirmation
|
void |
setPasswordResetToken(java.lang.String token)
Set the internal security token validating the password reset.
|
boolean |
validateRequestReset()
Check all information required for a password reset request have been provided
|
boolean |
validateReset()
Check all information required for a password reset have been provided
|
afterValidation, checkMissingField, getControllerContext, getEditFieldSet, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenFieldML, getMainLangValue, getMainLangValueArray, getMLMap, getMLMapArray, getRedirect, getRedirectOnClosePopup, getWorkspace, init, isFieldEdition, isFieldMissing, isPartialFieldEdition, isPopupEdition, isWorkspaceForced, processStatus, sendRedirect, sendRedirect, setEditField, setNoRedirect, setNoSendRedirect, setPopupEdition, setRedirect, setRedirectOnClosePopup, setWorkspace, setWs, updateUploadedField, updateUploadedFields, validate
addBodyAttributes, addCSSHeader, addCSSHeader, addCSSHeader, addCSSHeader, addCustomHeader, addHttpEquivHeader, addHttpNameHeader, addJavaScript, addJavaScript, addJavaScript, addJavaScriptCode, addPrefetchHeader, addStyleHeader, addStyleHeader, checkAccess, checkAccess, checkCSRF, debugDisplayContext, disablePacker, forceEditIcon, forceUpdate, getAjaxRequestAttribute, getAjaxRequestId, getAllHeadersDiffMap, getAllHeadersMap, getBackOfficeCSSHeader, getBackOfficeJavaScriptSet, getBodyAttributes, getContentForm, getCSSHeaders, getCtxCategories, getCurrentCategory, getCustomHeaders, getDocType, getFinalCSSMap, getFinalJavaScriptSet, getFormElementCount, getFrontOfficeCSSHeader, getFrontOfficeJavaScriptSet, getHttpEquivHeaders, getHttpNameHeaders, getJavaScriptCodeSet, getJavaScriptSet, getJSONBridge, getPackVersion, getPageContext, getPageTitle, getPageZone, getPortal, getPortalCategory, getPortlet, getPublication, getStyleHeaders, getTemplateUsage, internalSetupEmptyHeader, isEditIcon, isEditIcon, isPrintView, registerDisplayContext, removeAjaxRequestAttribute, setAjaxRequestAttribute, setAjaxRequestId, setAllHeadersDiffMap, setDocType, setEditIcon, setFormElementCount, setPageContext, setPageTitle, setPageZone, setShowEditIcon, setTemplateUsage, showEditIcon, showEditIcon, workaroundBrowserBaseHrefBug
addCookie, addMsg, addMsg, addMsgSession, addMsgSession, applySelector, forceWorkspaceUpdate, getBaseUrl, getBrowser, getCaddy, getContextPath, getErrorMsg, getErrorMsgList, getErrorMsgSession, getErrorMsgSessionList, getInfoMsg, getInfoMsgList, getInfoMsgSession, getInfoMsgSessionList, getLoggedMember, getMsgList, getMsgSessionList, getRequest, getResponse, getSession, getUploadedFile, getUploadedFileList, getUrlWithCommonUpdatedParams, getUserCountry, getUserLang, getUserLocale, getWarningMsg, getWarningMsgList, getWarningMsgSession, getWarningMsgSessionList, glp, isAdmin, isAjaxRequest, isDBMember, isDebug, isInFrontOffice, isLogged, isWebdavAccess, removeMessage, removeMessage, retrieveUploadedFile, select, sendForbidden, sendForbidden, sendRedirect, sendRedirect, sendRedirect, setErrorMsg, setErrorMsg, setErrorMsgSession, setErrorMsgSession, setInfoMsg, setInfoMsg, setInfoMsgSession, setInfoMsgSession, setLoggedMember, setRequest, setResponse, setWarningMsg, setWarningMsg, setWarningMsgSession, setWarningMsgSession, validateRegexp, validateSchedule
public static final java.lang.String EXPIRATION_DURATION_PROP
public boolean processAction() throws java.io.IOException
JcmsFormHandler
Default implementation is to return false. No need to call super method.
This method may NOT be invoked at all if security validation are not met.
You must ensure your handler and JSP can work properly without any code invoked
in this method.
processAction
in class JcmsFormHandler
java.io.IOException
public boolean validateRequestReset()
public boolean performRequestReset() throws java.io.IOException
java.io.IOException
- on redirect errorpublic static java.lang.String getPasswordResetUrl(javax.servlet.http.HttpServletRequest request, Member mbr)
The returned URL will be valid during the default duration defined by property "channel.lost-password-link.expiration-duration".
The specified member MUST be a member authorized to update his password, that is :
request
- optionnal current request to retrieve base url (site's base url is used if null)mbr
- required memberjava.lang.IllegalArgumentException
- if member does not match any of the expected constraintspublic static java.lang.String getPasswordResetUrl(javax.servlet.http.HttpServletRequest request, Member mbr, long validityDuration)
The specified member MUST be a member authorized to update his password, that is :
request
- optionnal current request to retrieve base url (site's base url is used if null)mbr
- required membervalidityDuration
- a duration in millisecond during which the URL is valid, after this duration the token won't be accepted.
Specify 0 or a negative value to use the default duration.java.lang.IllegalArgumentException
- if member does not match any of the expected constraintspublic boolean validateReset()
public boolean performReset() throws java.io.IOException
java.io.IOException
- on redirect errorpublic static java.lang.String generatePasswordResetToken(Member member, long validityDuration)
member
- the member for which token is generated, must not be nullvalidityDuration
- a duration in millisecond during which the token is valid, after this duration the token won't be accepted.
Specify 0 or a negative value to use the default duration.java.lang.IllegalArgumentException
- if member is disabled, or does not have any password, or is not persistedpublic static Member getMemberFromPasswordResetToken(java.lang.String token)
token
- the password reset token value as computed by generatePasswordResetToken(Member, long)
public void setOpRequestReset(java.lang.String value)
Fields which must be specified : email.
value
- any valuepublic void setOpReset(java.lang.String value)
Fields which must be specified : mbrId, password1, password2, passwordResetToken.
value
- any valuepublic boolean isResetRequestFormDisplayed()
public boolean isResetFormDisplayed()
public void setEmail(java.lang.String email)
email
- a valid emailpublic java.lang.String getEmail()
public Member getMember()
public void setPassword1(java.lang.String password)
password
- the clear text password to use for the memberpublic void setPassword2(java.lang.String password)
password
- the clear text password, which must match password1public void setPasswordResetToken(java.lang.String token)
This parameter has several purpose : - storing the token in handler for access in form - reading member for which operation is performed - trigger the "reset" form and hide the "request reset" form.
token
- a security token internally build by this handler and specified in the validation emailpublic java.lang.String getPasswordResetToken()
Copyright © 2001-2010 Jalios SA. All Rights Reserved.