base.jee.servlet.SignupConfirmServlet Maven / Gradle / Ivy
/**
* Creative commons Attribution-NonCommercial license.
*
* http://creativecommons.org/licenses/by-nc/2.5/au/deed.en_GB
*
* NO WARRANTY IS GIVEN OR IMPLIED, USE AT YOUR OWN RISK.
*/
package base.jee.servlet;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.stringtemplate.v4.ST;
import base.StringQueryResult;
import base.jee.AuthorisationFilter;
import base.jee.Breadcrumb;
import base.jee.JeeBase;
import base.security.User;
/**
*/
public class SignupConfirmServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private JeeBase jee;
private String authSuccessUrl;
public SignupConfirmServlet(JeeBase jee, String authSuccessUrl) throws IOException {
this.jee = jee;
this.authSuccessUrl = authSuccessUrl;
}
/**
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html; charset=UTF-8");
response.setCharacterEncoding("UTF-8");
try {
String requestToken = request.getParameter("token");
if(requestToken != null && requestToken.length() > 0) {
List results = jee.getAPI().signUpConfirmation(requestToken, BaseServlet.getIp(request));
AuthorisationFilter.attachCookieToResponse(jee, response, results.get(0).getString());
// Sign-up succeeded, go to the "authSuccessUrl" as the starting page.
response.setHeader("Location", jee.getSettings().get("base.url", "") + authSuccessUrl);
response.setStatus(302);
return;
}
} catch(IllegalArgumentException e) {
// SignUpConfirmationFailed
}
String ip = BaseServlet.getIp(request);
ST page = jee.getPage(new User(jee.getAPI().getUnauthenticatedRolesCache(), ip), "signup_confirmation_fail");
page.remove("shortcuts"); // Don't need shortcuts on this page
page.add("ldap_enabled", jee.getSettings().get("ldap.enabled", "true").equalsIgnoreCase("true"));
page.add("breadcrumbs", new Breadcrumb("Signup confirmation failed", null));
if(request.getParameter("fail") != null) {
page.add("error", "error");
}
response.getWriter().write(page.render());
return;
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy