%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
import="java.util.*"
import="javax.servlet.http.HttpServletRequest"
import="com.tootsville.user.*"
import="org.starhope.appius.user.*"
import="org.starhope.appius.mb.*"
import="com.tootsville.*"
import="org.starhope.util.*"
import="org.starhope.appius.game.*"
%><%
/**
* String used for storing the account parameter
*/
String account="";
/**
* String used for storing the mail parameter
*/
String mail="";
/**
* Person object to be cast as a parent or a person to make an association between
* what info is entered and the actual account.
*/
AbstractUser fpUser=null;
AbstractPerson fpPerson=null;
String answer = "";
String url = "/membership/forgotPassword/";
%>
<%
//---------- Universal Declarations: Place this on every page.
/**
* Error message list
*/
%><%
if (null!=request.getParameter("account") && null!= request.getParameter("answer")) {
account=request.getParameter("account");
answer=request.getParameter("answer");
if (0<=account.indexOf('@')) {
fpPerson = Nomenclator.getParentByMail (account);
} else {
fpUser= Nomenclator.getUserByLogin(account);
}
if (null!=fpUser && fpUser instanceof Toot) {
Toot tootUser = (Toot) fpUser;
String log = "Question: " + tootUser.getForgotPasswordQuestion() +
"\nAnswer:" + answer;
AppiusClaudiusCaecus.blather (fpUser.getDebugName (), "membership",
request.getRemoteAddr (), log, false);
System.err.println(log);
if (tootUser.forgotPassword (
tootUser.getForgotPasswordQuestion(),
answer)) {
suc.put ("", LibMisc.getText ("password_send"));
url = "/membership/";
} else {
err.put("answer", LibMisc.getText ("passRecovery.answer_incorrect"));
}
}
else if (null!=fpPerson && fpPerson instanceof Parent) {
Parent parentUser = (Parent) fpPerson;
String log = "Question: " + parentUser.getForgotPasswordQuestion() +
"\nAnswer:" + answer;
AppiusClaudiusCaecus.blather (fpUser.getDebugName (), "membership",
request.getRemoteAddr (), log, false);
System.err.println(log);
if (parentUser.forgotPassword (
parentUser.getForgotPasswordQuestion(),
answer)) {
suc.put ("", LibMisc.getText ("password_send"));
url = "/membership/";
} else {
err.put("answer", LibMisc.getText ("passRecovery.answer_incorrect"));
}
} else {
err.put("account", LibMisc.getText ("login_invalid"));
}
} else {
if (null==request.getParameter("account")) {
err.put("account", Messages.blank_field("E-mail or User Name"));
}
if (null==request.getParameter("answer")) {
err.put("account", Messages.blank_field("Answer"));
}
}
if (err.size() > 0) {
session.setAttribute("sError", err);
} else {
session.setAttribute("sSuccess", suc);
}
response.sendRedirect(url);
%>