- 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));