X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2FVerify.java;h=5f8aa8f976a0f9e5bf06aeb303d72e6fb871c941;hb=c73440beff07d6d6fd518c4c90aacff0a657ae81;hp=32da54250c0d4b1096658ac62f82ebc0b9bf0ba0;hpb=2824d1c165c501e2f3a8809044788b33b81f478a;p=gigi.git diff --git a/src/org/cacert/gigi/pages/Verify.java b/src/org/cacert/gigi/pages/Verify.java index 32da5425..5f8aa8f9 100644 --- a/src/org/cacert/gigi/pages/Verify.java +++ b/src/org/cacert/gigi/pages/Verify.java @@ -2,14 +2,11 @@ package org.cacert.gigi.pages; import java.io.IOException; import java.io.PrintWriter; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.cacert.gigi.database.DatabaseConnection; +import org.cacert.gigi.EmailAddress; +import org.cacert.gigi.GigiApiException; public class Verify extends Page { public static final String PATH = "/verify"; @@ -31,38 +28,15 @@ public class Verify extends Page { String id = req.getParameter("id"); if ("email".equals(type)) { try { - PreparedStatement ps = DatabaseConnection.getInstance().prepare( - "select email, memid from `email` where `id`=? and `hash`=? and `hash` != '' and `deleted` = 0"); - ps.setString(1, id); - ps.setString(2, hash); - ResultSet rs = ps.executeQuery(); - rs.last(); - if (rs.getRow() == 1) { - PreparedStatement ps1 = DatabaseConnection.getInstance().prepare( - "update `email` set `hash`='', `modified`=NOW() where `id`=?"); - ps1.setString(1, id); - ps1.execute(); - PreparedStatement ps2 = DatabaseConnection.getInstance().prepare( - "update `users` set `verified`='1' where `id`=? and `email`=? and `verified`='0'"); - ps2.setString(1, rs.getString(2)); - ps2.setString(2, rs.getString(1)); - ps2.execute(); - out.println("Your email is good."); - } else { - out.println("Your request is invalid"); - } - } catch (SQLException e) { - e.printStackTrace(); + EmailAddress ea = EmailAddress.getById(Integer.parseInt(id)); + ea.verify(hash); + out.println("Email verification completed."); + } catch (IllegalArgumentException e) { + out.println(translate(req, "The email address is invalid.")); + } catch (GigiApiException e) { + e.format(out, getLanguage(req)); } } } - @Override - public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { - String hash = req.getParameter("hash"); - String type = req.getParameter("type"); - if ("email".equals(type)) { - - } - } }