// Last edited on 2014-12-17 02:46:12 by stolfilocal package quack; import java.io.IOException; import java.util.List; import javax.servlet.http.HttpServletResponse; import quack.HTMLTools; import quack.HTMLToolsImpl; public class HTMLImpl implements HTML { private HTMLTools tools = null; private Server server = null; @Override public HTML initialize(Server server) { this.tools = new HTMLToolsImpl().initialize(server); this.server = server; return this; } @Override public void errorPage(HttpServletResponse response, String msg) { response.setContentType("text/html"); System.out.println("Erro: " + msg); try { java.io.PrintWriter wr = response.getWriter(); User requestor = null; // Por enquanto, a página de erro independe de login. tools.writePageHeader(wr, requestor, "Error Page"); wr.format("
%s
\n", msg); tools.writePageTrailer(wr, requestor); } catch (IOException e) { System.out.println("Erro ao montar página."); e.printStackTrace(); } } @Override public void homePage(HttpServletResponse response, User requestor) { try { // !!{ Eliminar ".jsp" }!! response.sendRedirect("Quack/pub/LoginPage.jsp"); } catch (IOException e) { this.errorPage(response, "Problemas ao gerar home page."); e.printStackTrace(); } } @Override public void loginPage(HttpServletResponse response) { try { // !!{ Eliminar ".jsp" }!! response.sendRedirect("LoginPage.jsp"); } catch (IOException e) { this.errorPage(response, "Problemas ao gerar página de login."); e.printStackTrace(); } } @Override public void loginSuccessfulPage ( HttpServletResponse response, User requestor, String cookie ) { try { // !!{ Eliminar ".jsp" }!! String loginName = requestor.getLoginName(); response.sendRedirect("/Quack/UserPage.jsp" + "?u=" + loginName + "&cookie=" + cookie); } catch (IOException e) { this.errorPage(response, "Problemas ao gerar página de boas-vindas."); e.printStackTrace(); } } @Override public void userProfilePage ( HttpServletResponse response, User requestor, User user, Contact contact ) { try { // !!{ Eliminar ".jsp" }!! String loginName = user.getLoginName(); response.sendRedirect("/Quack/UserPage.jsp" + "?u=" + loginName); } catch (IOException e) { this.errorPage(response, "Problemas ao gerar página de perfil de usuário."); e.printStackTrace(); } } @Override public void listPage ( HttpServletResponse response, User requestor, String title, List list, int start, int n, String requestCmd, User user, int maxN ) { try { java.io.PrintWriter wr = response.getWriter(); tools.writePageHeader(wr, requestor, title); tools.writeListWithNavLinks(wr, requestor, list, start, n, requestCmd, user, maxN); tools.writePageTrailer(wr, requestor); } catch (IOException e) { System.out.println("Erro ao montar página."); e.printStackTrace(); } } }