X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMailOverview.java;h=54eda005753ad85758dc7154731d6f234fd28766;hb=5b276a9eb3e6d1473e7dd2891eb1d6a9fb82f6a2;hp=e5744388a08854de2acdccba7d524818f74213a0;hpb=468408225acc41a0084c913b25e8a95ff80a475d;p=gigi.git diff --git a/src/org/cacert/gigi/pages/account/MailOverview.java b/src/org/cacert/gigi/pages/account/MailOverview.java index e5744388..54eda005 100644 --- a/src/org/cacert/gigi/pages/account/MailOverview.java +++ b/src/org/cacert/gigi/pages/account/MailOverview.java @@ -6,6 +6,7 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.HashMap; +import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -13,41 +14,85 @@ import javax.servlet.http.HttpServletResponse; import org.cacert.gigi.Language; import org.cacert.gigi.User; import org.cacert.gigi.database.DatabaseConnection; -import org.cacert.gigi.output.MailTable; +import org.cacert.gigi.output.Outputable; import org.cacert.gigi.pages.LoginPage; import org.cacert.gigi.pages.Page; public class MailOverview extends Page { public static final String DEFAULT_PATH = "/account/mails"; - private MailTable table = new MailTable("mails", "userMail"); + private MailTable t; + public MailOverview(String title) { super(title); + t = new MailTable("res", "us"); } @Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { - HashMap vars = new HashMap(); - User us = LoginPage.getUser(req); + final User us = LoginPage.getUser(req); + Language lang = Page.getLanguage(req); int id = us.getId(); try { PreparedStatement ps = DatabaseConnection.getInstance().prepare( "SELECT * from `email` WHERE `memid`=? AND `deleted`=0"); ps.setInt(1, id); ResultSet rs = ps.executeQuery(); - vars.put("mails", rs); - vars.put("userMail", us.getEmail()); - + HashMap vars = new HashMap<>(); + vars.put("mailData", t); + vars.put("res", rs); + vars.put("us", us.getEmail()); + getDefaultTemplate().output(resp.getWriter(), lang, vars); } catch (SQLException e) { e.printStackTrace(); } - Language language = getLanguage(req); - table.output(resp.getWriter(), language, vars); - PrintWriter wri = resp.getWriter(); - wri.println("

"); - wri.println(language - .getTranslation("Please Note: You can not set an unverified account as a default account, and you can not remove a default account. To remove the default account you must set another verified account as the default.")); - wri.println("

"); } + private class MailTable implements Outputable { + private String mails, userMail; + + public MailTable(String mails, String userMail) { + this.mails = mails; + this.userMail = userMail; + } + + @Override + public void output(PrintWriter out, Language l, Map vars) { + try { + ResultSet rs = (ResultSet) vars.get(mails); + String usM = (String) vars.get(userMail); + while (rs.next()) { + out.println(""); + out.println(""); + out.println(""); + if (rs.getString(7).isEmpty()) { + out.print(l.getTranslation("Verified")); + } else { + out.print(l.getTranslation("Unverified")); + } + out.print(""); + out.println(""); + String address = rs.getString(3); + if (usM.equals(address)) { + out.print(l.getTranslation("N/A")); + } else { + out.print(""); + } + out.print(""); + out.println(""); + out.print(address); + out.print(""); + out.println(""); + } + } catch (SQLException e) { + e.printStackTrace(); + } + } + + } }