NIHVIVO-2279 Break into packages by admin or user functions.
This commit is contained in:
parent
6fc85c2595
commit
3a2169ec13
10 changed files with 42 additions and 173 deletions
|
@ -1,116 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
|
||||||
|
|
||||||
import java.util.Collection;
|
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
|
||||||
import org.apache.commons.logging.LogFactory;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.Actions;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.usepages.ManageUserAccounts;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.DisplayMessage;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.RedirectResponseValues;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Parcel out the different actions required of the UserAccounts GUI.
|
|
||||||
*/
|
|
||||||
public class UserAccountsController extends FreemarkerHttpServlet {
|
|
||||||
private static final Log log = LogFactory
|
|
||||||
.getLog(UserAccountsController.class);
|
|
||||||
|
|
||||||
private static final String ACTION_ADD = "/add";
|
|
||||||
private static final String ACTION_DELETE = "/delete";
|
|
||||||
private static final String ACTION_EDIT = "/edit";
|
|
||||||
private static final String ACTION_CREATE_PASSWORD = "/createPassword";
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected Actions requiredActions(VitroRequest vreq) {
|
|
||||||
return new Actions(new ManageUserAccounts());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected ResponseValues processRequest(VitroRequest vreq) {
|
|
||||||
if (log.isDebugEnabled()) {
|
|
||||||
dumpRequestParameters(vreq);
|
|
||||||
}
|
|
||||||
|
|
||||||
String action = vreq.getPathInfo();
|
|
||||||
log.debug("action = '" + action + "'");
|
|
||||||
|
|
||||||
if (ACTION_ADD.equals(action)) {
|
|
||||||
return handleAddRequest(vreq);
|
|
||||||
} else if (ACTION_EDIT.equals(action)) {
|
|
||||||
return handleEditRequest(vreq);
|
|
||||||
} else if (ACTION_DELETE.equals(action)) {
|
|
||||||
return handleDeleteRequest(vreq);
|
|
||||||
} else if (ACTION_CREATE_PASSWORD.equals(action)) {
|
|
||||||
return handleCreatePasswordRequest(vreq);
|
|
||||||
} else {
|
|
||||||
return handleListRequest(vreq);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private ResponseValues handleAddRequest(VitroRequest vreq) {
|
|
||||||
UserAccountsAddPage page = new UserAccountsAddPage(vreq);
|
|
||||||
if (page.isSubmit() && page.isValid()) {
|
|
||||||
page.createNewAccount();
|
|
||||||
|
|
||||||
UserAccountsListPage listPage = new UserAccountsListPage(vreq);
|
|
||||||
return listPage.showPageWithNewAccount(page.getAddedAccount(),
|
|
||||||
page.wasPasswordEmailSent());
|
|
||||||
} else {
|
|
||||||
return page.showPage();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private ResponseValues handleEditRequest(VitroRequest vreq) {
|
|
||||||
UserAccountsEditPage page = new UserAccountsEditPage(vreq);
|
|
||||||
if (page.isSubmit() && page.isValid()) {
|
|
||||||
page.updateAccount();
|
|
||||||
UserAccountsListPage listPage = new UserAccountsListPage(vreq);
|
|
||||||
return listPage.showPageWithUpdatedAccount(
|
|
||||||
page.getUpdatedAccount(), page.wasPasswordEmailSent());
|
|
||||||
} else {
|
|
||||||
return page.showPage();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private ResponseValues handleDeleteRequest(VitroRequest vreq) {
|
|
||||||
UserAccountsDeleter deleter = new UserAccountsDeleter(vreq);
|
|
||||||
Collection<String> deletedUris = deleter.delete();
|
|
||||||
|
|
||||||
return new UserAccountsListPage(vreq)
|
|
||||||
.showPageWithDeletions(deletedUris);
|
|
||||||
}
|
|
||||||
|
|
||||||
private ResponseValues handleCreatePasswordRequest(VitroRequest vreq) {
|
|
||||||
UserAccountsCreatePasswordPage page = new UserAccountsCreatePasswordPage(
|
|
||||||
vreq);
|
|
||||||
if (page.isBogus()) {
|
|
||||||
return showHomePage(vreq,
|
|
||||||
"Request failed. Please contact your system administrator.");
|
|
||||||
} else if (page.isSubmit() && page.isValid()) {
|
|
||||||
page.createPassword();
|
|
||||||
return showHomePage(vreq,
|
|
||||||
"Your password has been saved. Please log in.");
|
|
||||||
} else {
|
|
||||||
return page.showPage();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private ResponseValues handleListRequest(VitroRequest vreq) {
|
|
||||||
UserAccountsListPage page = new UserAccountsListPage(vreq);
|
|
||||||
return page.showPage();
|
|
||||||
}
|
|
||||||
|
|
||||||
private ResponseValues showHomePage(VitroRequest vreq, String message) {
|
|
||||||
DisplayMessage.setMessage(vreq, message);
|
|
||||||
return new RedirectResponseValues("/");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO If hash is not valid display bogus message.
|
|
||||||
*
|
|
||||||
* TODO Set the password fields, reset the expire time, set account active, kick
|
|
||||||
* to home page with message. Send confirmation email.
|
|
||||||
*
|
|
||||||
* TODO How do we know "createPassword" from "setPassword"? a parameter? or just by account status?
|
|
||||||
*/
|
|
||||||
public class UserAccountsSetPasswordPage extends UserAccountsPage {
|
|
||||||
|
|
||||||
protected UserAccountsSetPasswordPage(VitroRequest vreq) {
|
|
||||||
super(vreq);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
package edu.cornell.mannlib.vitro.webapp.controller.accounts.admin;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
@ -9,6 +9,7 @@ import java.util.Map;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsPage;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.TemplateResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.TemplateResponseValues;
|
||||||
|
|
||||||
|
@ -52,7 +53,7 @@ public class UserAccountsAddPage extends UserAccountsPage {
|
||||||
public UserAccountsAddPage(VitroRequest vreq) {
|
public UserAccountsAddPage(VitroRequest vreq) {
|
||||||
super(vreq);
|
super(vreq);
|
||||||
|
|
||||||
this.strategy = UserAccountsAddPageStrategy.getInstance(this,
|
this.strategy = UserAccountsAddPageStrategy.getInstance(vreq, this,
|
||||||
isEmailEnabled(vreq));
|
isEmailEnabled(vreq));
|
||||||
|
|
||||||
parseRequestParameters();
|
parseRequestParameters();
|
|
@ -1,6 +1,6 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
package edu.cornell.mannlib.vitro.webapp.controller.accounts.admin;
|
||||||
|
|
||||||
import static javax.mail.Message.RecipientType.TO;
|
import static javax.mail.Message.RecipientType.TO;
|
||||||
|
|
||||||
|
@ -13,7 +13,8 @@ import java.util.Map;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
||||||
import edu.cornell.mannlib.vitro.webapp.config.ConfigurationProperties;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsPage;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.UrlBuilder;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.UrlBuilder;
|
||||||
import edu.cornell.mannlib.vitro.webapp.email.FreemarkerEmailFactory;
|
import edu.cornell.mannlib.vitro.webapp.email.FreemarkerEmailFactory;
|
||||||
import edu.cornell.mannlib.vitro.webapp.email.FreemarkerEmailMessage;
|
import edu.cornell.mannlib.vitro.webapp.email.FreemarkerEmailMessage;
|
||||||
|
@ -21,19 +22,20 @@ import edu.cornell.mannlib.vitro.webapp.email.FreemarkerEmailMessage;
|
||||||
/**
|
/**
|
||||||
* Handle the variant details of the UserAccountsAddPage.
|
* Handle the variant details of the UserAccountsAddPage.
|
||||||
*/
|
*/
|
||||||
public abstract class UserAccountsAddPageStrategy {
|
public abstract class UserAccountsAddPageStrategy extends UserAccountsPage {
|
||||||
protected final UserAccountsAddPage page;
|
protected final UserAccountsAddPage page;
|
||||||
|
|
||||||
public static UserAccountsAddPageStrategy getInstance(
|
public static UserAccountsAddPageStrategy getInstance(VitroRequest vreq,
|
||||||
UserAccountsAddPage page, boolean emailEnabled) {
|
UserAccountsAddPage page, boolean emailEnabled) {
|
||||||
if (emailEnabled) {
|
if (emailEnabled) {
|
||||||
return new EmailStrategy(page);
|
return new EmailStrategy(vreq, page);
|
||||||
} else {
|
} else {
|
||||||
return new NoEmailStrategy(page);
|
return new NoEmailStrategy(vreq, page);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public UserAccountsAddPageStrategy(UserAccountsAddPage page) {
|
public UserAccountsAddPageStrategy(VitroRequest vreq, UserAccountsAddPage page) {
|
||||||
|
super(vreq);
|
||||||
this.page = page;
|
this.page = page;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,8 +61,8 @@ public abstract class UserAccountsAddPageStrategy {
|
||||||
|
|
||||||
private boolean sentEmail;
|
private boolean sentEmail;
|
||||||
|
|
||||||
public EmailStrategy(UserAccountsAddPage page) {
|
public EmailStrategy(VitroRequest vreq, UserAccountsAddPage page) {
|
||||||
super(page);
|
super(vreq, page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -99,7 +101,7 @@ public abstract class UserAccountsAddPageStrategy {
|
||||||
body.put("subjectLine", "Your VIVO account has been created.");
|
body.put("subjectLine", "Your VIVO account has been created.");
|
||||||
|
|
||||||
FreemarkerEmailMessage email = FreemarkerEmailFactory
|
FreemarkerEmailMessage email = FreemarkerEmailFactory
|
||||||
.createNewMessage(page.vreq);
|
.createNewMessage(vreq);
|
||||||
email.addRecipient(TO, page.getAddedAccount().getEmailAddress());
|
email.addRecipient(TO, page.getAddedAccount().getEmailAddress());
|
||||||
email.setSubject("Your VIVO account has been created.");
|
email.setSubject("Your VIVO account has been created.");
|
||||||
email.setHtmlTemplate("userAccounts-acctCreatedEmail-html.ftl");
|
email.setHtmlTemplate("userAccounts-acctCreatedEmail-html.ftl");
|
||||||
|
@ -118,7 +120,7 @@ public abstract class UserAccountsAddPageStrategy {
|
||||||
String relativeUrl = UrlBuilder.getUrl(CREATE_PASSWORD_URL, "user",
|
String relativeUrl = UrlBuilder.getUrl(CREATE_PASSWORD_URL, "user",
|
||||||
email, "key", hash);
|
email, "key", hash);
|
||||||
|
|
||||||
URL context = new URL(page.vreq.getRequestURL().toString());
|
URL context = new URL(vreq.getRequestURL().toString());
|
||||||
URL url = new URL(context, relativeUrl);
|
URL url = new URL(context, relativeUrl);
|
||||||
return url.toExternalForm();
|
return url.toExternalForm();
|
||||||
} catch (MalformedURLException e) {
|
} catch (MalformedURLException e) {
|
||||||
|
@ -148,15 +150,15 @@ public abstract class UserAccountsAddPageStrategy {
|
||||||
private String initialPassword;
|
private String initialPassword;
|
||||||
private String confirmPassword;
|
private String confirmPassword;
|
||||||
|
|
||||||
public NoEmailStrategy(UserAccountsAddPage page) {
|
public NoEmailStrategy(VitroRequest vreq, UserAccountsAddPage page) {
|
||||||
super(page);
|
super(vreq, page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void parseAdditionalParameters() {
|
protected void parseAdditionalParameters() {
|
||||||
initialPassword = page.getStringParameter(
|
initialPassword = getStringParameter(
|
||||||
PARAMETER_INITIAL_PASSWORD, "");
|
PARAMETER_INITIAL_PASSWORD, "");
|
||||||
confirmPassword = page.getStringParameter(
|
confirmPassword = getStringParameter(
|
||||||
PARAMETER_CONFIRM_PASSWORD, "");
|
PARAMETER_CONFIRM_PASSWORD, "");
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,10 +10,6 @@ import org.apache.commons.logging.LogFactory;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.Actions;
|
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.Actions;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.usepages.ManageUserAccounts;
|
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.usepages.ManageUserAccounts;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsAddPage;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsDeleter;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsEditPage;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsListPage;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
package edu.cornell.mannlib.vitro.webapp.controller.accounts.admin;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
@ -8,6 +8,7 @@ import java.util.List;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsPage;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.UserAccountsDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.UserAccountsDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory;
|
import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory;
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
package edu.cornell.mannlib.vitro.webapp.controller.accounts.admin;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsPage;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.TemplateResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.TemplateResponseValues;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
package edu.cornell.mannlib.vitro.webapp.controller.accounts.admin;
|
||||||
|
|
||||||
import static edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsSelectionCriteria.DEFAULT_ACCOUNTS_PER_PAGE;
|
import static edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsSelectionCriteria.DEFAULT_ACCOUNTS_PER_PAGE;
|
||||||
|
|
||||||
|
@ -18,6 +18,11 @@ import edu.cornell.mannlib.vitro.webapp.beans.PermissionSet;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsOrdering;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsPage;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsSelection;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsSelectionCriteria;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsSelector;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsOrdering.Direction;
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsOrdering.Direction;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsOrdering.Field;
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsOrdering.Field;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
|
@ -1,6 +1,6 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.controller.accounts;
|
package edu.cornell.mannlib.vitro.webapp.controller.accounts.user;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
@ -12,13 +12,14 @@ import org.apache.commons.logging.LogFactory;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
import edu.cornell.mannlib.vitro.webapp.beans.UserAccount.Status;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.user.UserAccountsUserController;
|
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsPage;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.authenticate.Authenticator;
|
import edu.cornell.mannlib.vitro.webapp.controller.authenticate.Authenticator;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.TemplateResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.TemplateResponseValues;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO
|
* When the user clicks on the link in their notification email, handle their
|
||||||
|
* request to create a password.
|
||||||
*/
|
*/
|
||||||
public class UserAccountsCreatePasswordPage extends UserAccountsPage {
|
public class UserAccountsCreatePasswordPage extends UserAccountsPage {
|
||||||
private static final Log log = LogFactory
|
private static final Log log = LogFactory
|
|
@ -8,7 +8,6 @@ import org.apache.commons.logging.LogFactory;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.Actions;
|
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.Actions;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.DisplayMessage;
|
import edu.cornell.mannlib.vitro.webapp.beans.DisplayMessage;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.accounts.UserAccountsCreatePasswordPage;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.RedirectResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.RedirectResponseValues;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ResponseValues;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue