X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Fwot%2FAssurePage.java;h=94c582f220e5765f19c3d2d2d7d05d8182646d9c;hb=7a9b55470434239a3dd260005932e9e6096a9921;hp=efb246b6cde2f4c1efa595a74f77a0d5ae55211b;hpb=6d215e9cd20c590f1d9fdf17c56043fa7c20239f;p=gigi.git diff --git a/src/org/cacert/gigi/pages/wot/AssurePage.java b/src/org/cacert/gigi/pages/wot/AssurePage.java index efb246b6..94c582f2 100644 --- a/src/org/cacert/gigi/pages/wot/AssurePage.java +++ b/src/org/cacert/gigi/pages/wot/AssurePage.java @@ -10,7 +10,6 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.cacert.gigi.GigiApiException; -import org.cacert.gigi.database.DatabaseConnection; import org.cacert.gigi.database.GigiPreparedStatement; import org.cacert.gigi.database.GigiResultSet; import org.cacert.gigi.dbObjects.User; @@ -50,17 +49,6 @@ public class AssurePage extends Page { return ac != null && ac.canAssure(); } - private void outputForm(HttpServletRequest req, PrintWriter out, AssuranceForm form) { - User myself = LoginPage.getUser(req); - try { - Notary.checkAssuranceIsPossible(myself, form.getAssuree()); - } catch (GigiApiException e) { - e.format(out, Page.getLanguage(req)); - } - - form.output(out, getLanguage(req), new HashMap()); - } - @Override public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { PrintWriter out = resp.getWriter(); @@ -69,20 +57,23 @@ public class AssurePage extends Page { if (form.submit(out, req)) { out.println(translate(req, "Assurance complete.")); } else { - outputForm(req, resp.getWriter(), form); + try { + Notary.checkAssuranceIsPossible(LoginPage.getUser(req), form.getAssuree()); + form.output(out, getLanguage(req), new HashMap()); + } catch (GigiApiException e) { + e.format(out, Page.getLanguage(req)); + } } return; } - GigiResultSet rs = null; - try { - GigiPreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT `users`.`id`, `verified` FROM `users` INNER JOIN `certOwners` ON `certOwners`.`id`=`users`.`id` WHERE `email`=? AND `dob`=? AND `deleted` IS NULL"); + try (GigiPreparedStatement ps = new GigiPreparedStatement("SELECT `users`.`id`, `verified` FROM `users` INNER JOIN `certOwners` ON `certOwners`.`id`=`users`.`id` WHERE `email`=? AND `dob`=? AND `deleted` IS NULL")) { ps.setString(1, req.getParameter("email")); Calendar c = Calendar.getInstance(); c.set(Integer.parseInt(req.getParameter("year")), Integer.parseInt(req.getParameter("month")) - 1, Integer.parseInt(req.getParameter("day"))); ps.setDate(2, new Date(c.getTimeInMillis())); - rs = ps.executeQuery(); + GigiResultSet rs = ps.executeQuery(); int id = 0; if (rs.next()) { id = rs.getInt(1); @@ -95,8 +86,14 @@ public class AssurePage extends Page { } else if (getUser(req).getId() == id) { } else { - AssuranceForm form = new AssuranceForm(req, User.getById(id)); - outputForm(req, out, form); + User assuree = User.getById(id); + User myself = LoginPage.getUser(req); + try { + Notary.checkAssuranceIsPossible(myself, assuree); + new AssuranceForm(req, assuree).output(out, getLanguage(req), new HashMap()); + } catch (GigiApiException e) { + e.format(out, Page.getLanguage(req)); + } } } } else { @@ -106,11 +103,6 @@ public class AssurePage extends Page { out.print(""); } - rs.close(); - } finally { - if (rs != null) { - rs.close(); - } } } }