%@ 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.Messages"
import="com.tootsville.WebUtil"
%><%
//---------- Universal Declarations: Place this on every page.
/**
* Error message list
*/
HashMap err = new HashMap ();
/**
* Success message list
*/
HashMap suc = new HashMap ();
String url = "/membership/";
%><%
String login = request.getParameter("login").toString();
if (null!=login && login.equalsIgnoreCase("user")) {
String username = request.getParameter("uUsername");
String password = request.getParameter("uPassword");
WebUtil.log ("Attempting a login." +
"\n Username: " + username +
"\n Password: " + password);
boolean remember = (null!=request.getParameter("uRemember"));
if (null!=username && null!=password && !username.equals("") && !password.equals("")) {
Toot sessionUser = (Toot) User.getByLogin(username);
if (null!=sessionUser) {
WebUtil.log ("Found user reference for User ID#" + sessionUser.getUserID());
if (sessionUser.checkPassword(password)) {
if (remember) {
Cookie cookie = new Cookie ("username", username);
cookie.setMaxAge (365 * 24 * 60 * 60);
response.addCookie(cookie);
}
WebUtil.log ("User ID# "+ sessionUser.getUserID() +" has successfully logged in!"+
"\n -- User Credentials --" +
"\n User ID: " + sessionUser.getUserID () +
"\n User Name: " + sessionUser.getUserName () +
"\n Password: " + sessionUser.getPassword () +
"\n Resp. Mail: " + sessionUser.getResponsibleMail ());
// Create session for user
session.setAttribute("sUserID", sessionUser.getUserID());
session.setAttribute("sUserType", WebUtil.USER);
session.setAttribute("sUserPassword", sessionUser.getPassword());
if (null==sessionUser.getResponsibleMail()) {
// Redirect to collect email address
WebUtil.log ("User ID# "+ sessionUser.getUserID() +" is not registered with an e-mail address! Redirecting to prompt.");
url ="/membership/register/email/";
} else {
// Redirect user to account page
url ="/membership/my-account/";
}
} else {
err.put("password", Messages.getText("password_invalid"));
url ="/membership/";
}
} else {
err.put("username", Messages.getText ("user_does_not_exist"));
url ="/membership/";
}
} else {
if (null==username || username.equals("")) {
err.put("username", Messages.blank_field("username"));
url ="/membership/";
}
if (null==password || password.equals("")) {
err.put("password", Messages.blank_field("password"));
url ="/membership/";
}
}
if (err.size() > 0) {
/** If there was any errors caught, return to last page with the error message. */
session.setAttribute("sError", err);
}
} else if (login.equalsIgnoreCase("parent")) {
String username = request.getParameter("pUsername");
String password = request.getParameter("pPassword");
WebUtil.log ("Attempting a login." +
"\n Username: " + username +
"\n Password: " + password);
boolean remember = (null!=request.getParameter("pRemember"));
if (null!=username && null!=password && !username.equals("") && !password.equals("")) {
Parent sessionUser = Parent.getByMail(username);
if (null!=sessionUser) {
if (sessionUser.checkPassword(password)) {
WebUtil.log ("Parent ID# "+ sessionUser.getID() +" has successfully logged in!"+
"\n -- Parent Credentials --" +
"\n Parent ID: " + sessionUser.getID () +
"\n Password: " + sessionUser.getPassword () +
"\n Mail: " + sessionUser.getResponsibleMail ());
if (remember) {
Cookie cookie = new Cookie ("username",username);
cookie.setMaxAge(365 * 24 * 60 * 60);
response.addCookie(cookie);
}
if (null!=sessionUser.getMailConfirmed()) {
// Create session for user
session.setAttribute("sUserID", sessionUser.getID());
session.setAttribute("sUserType", WebUtil.PARENT);
session.setAttribute("sUserPassword", sessionUser.getPassword());
// Redirect user to account page
url ="/membership/parent/";
} else {
err.put("username", Messages.getText("mail_not_verified"));
sessionUser.sendConfirmationMail();
WebUtil.log ("Parent ID#" + sessionUser.getID() + " has not confirmed their e-mail. Resending confirmation.");
url ="/membership/";
}
} else {
err.put("password", Messages.getText ("password_invalid"));
url ="/membership/";
}
} else {
err.put("username", Messages.getText("user_does_not_exist"));
url ="/membership/";
}
} else {
if (null==username || username.equals("")) {
err.put("username", Messages.blank_field("username"));
url ="/membership/";
}
if (null==password || password.equals("")) {
err.put("password", Messages.blank_field("password"));
url ="/membership/";
}
}
if (err.size() > 0) {
/** If there was any errors caught, return to last page with the error message. */
session.setAttribute("sError", err);
}
} else if (login.equalsIgnoreCase("billing")) {
String username = request.getParameter("username");
String password = request.getParameter("password");
boolean remember = (null!=request.getParameter("uRemember"));
if (null!=username && null!=password && !username.equals("") && !password.equals("")) {
if (0<=username.indexOf('@')) {
Parent sessionUser = Parent.getByMail(username);
if (null!=sessionUser) {
if (sessionUser.checkPassword(password)) {
WebUtil.log ("Parent ID# "+ sessionUser.getID() +" has successfully logged in!"+
"\n -- Parent Credentials --" +
"\n Parent ID: " + sessionUser.getID () +
"\n Password: " + sessionUser.getPassword () +
"\n Mail: " + sessionUser.getResponsibleMail ());
if (remember) {
Cookie cookie = new Cookie ("username",username);
cookie.setMaxAge(365 * 24 * 60 * 60);
response.addCookie(cookie);
}
// Create session for user
session.setAttribute("sUserID", sessionUser.getID());
session.setAttribute("sUserType", WebUtil.PARENT);
session.setAttribute("sUserPassword", sessionUser.getPassword());
// Create message with instructions
suc.put ("", Messages.getText ("toot_upgrade"));
session.setAttribute("sSuccess", suc);
// Redirect user to account page
url ="/membership/parent/";
} else {
err.put("password", Messages.getText ("password_invalid"));
url ="/membership/register/premium/billing.jsp";
}
} else {
err.put("username", Messages.getText ("user_does_not_exist"));
url ="/membership/register/premium/billing.jsp";
}
} else {
Toot sessionUser = (Toot) User.getByLogin(username);
if (null!=sessionUser) {
if (sessionUser.checkPassword(password)) {
WebUtil.log ("User ID# "+ sessionUser.getUserID() +" has successfully logged in!"+
"\n -- User Credentials --" +
"\n User ID: " + sessionUser.getUserID () +
"\n User Name: " + sessionUser.getUserName () +
"\n Password: " + sessionUser.getPassword () +
"\n Resp. Mail: " + sessionUser.getResponsibleMail ());
if (remember) {
Cookie cookie = new Cookie ("username",username);
cookie.setMaxAge(365 * 24 * 60 * 60);
response.addCookie(cookie);
}
// Create session for user
session.setAttribute("sUserID", sessionUser.getUserID());
session.setAttribute("sUserType", WebUtil.USER);
session.setAttribute("sUserPassword", sessionUser.getPassword());
if (null==sessionUser.getResponsibleMail()) {
// Redirect to collect email address
WebUtil.log ("User ID# "+ sessionUser.getUserID() +
" is not registered with an e-mail address! Redirecting to prompt.");
url ="/membership/register/email/";
} else if (sessionUser.isPaidMember ()) {
err.put ("membership", "You are already a paid member!");
url = "/membership/my-account";
} else {
url = "/membership/register/premium/?toot=" + sessionUser.getUserID();
}
} else {
err.put("password", Messages.getText ("password_invalid"));
url ="/membership/register/premium/billing.jsp";
}
} else {
err.put("username", Messages.getText ("user_does_not_exist"));
url ="/membership/register/premium/billing.jsp";
}
}
} else {
if (null==username || username.equals("")) {
err.put("username", Messages.blank_field("username"));
url ="/membership/register/premium/billing.jsp";
}
if (null==password || password.equals("")) {
err.put("password", Messages.blank_field("password"));
url ="/membership/register/premium/billing.jsp";
}
}
if (err.size() > 0) {
/** If there was any errors caught, return to last page with the error message. */
session.setAttribute("sError", err);
}
} else {
err.put("username", Messages.getText ("login_invalid"));
url ="/membership/";
}
response.sendRedirect(url);
%>