]> WPIA git - gigi.git/commitdiff
FIX: Correctly handle deleted mails
authorJanis Streib <janis@dogcraft.de>
Fri, 25 Jul 2014 15:24:16 +0000 (17:24 +0200)
committerJanis Streib <janis@dogcraft.de>
Fri, 25 Jul 2014 16:04:22 +0000 (18:04 +0200)
src/org/cacert/gigi/User.java

index 70b48d246660e7c96e59b8c09c1b1d36b7e01c1d..a2768de11feefa3903f2e26c6d1779eb9350a4f1 100644 (file)
@@ -246,7 +246,8 @@ public class User {
 
        public EmailAddress[] getEmails() {
                try {
-                       PreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT id FROM email WHERE memid=?");
+                       PreparedStatement ps = DatabaseConnection.getInstance().prepare(
+                               "SELECT id FROM email WHERE memid=? AND deleted=0");
                        ps.setInt(1, id);
                        ResultSet rs = ps.executeQuery();
                        rs.last();
@@ -296,10 +297,12 @@ public class User {
                        throw new GigiApiException("Can't delete user's default e-mail.");
                }
                try {
-                       PreparedStatement ps = DatabaseConnection.getInstance().prepare("UPDATE email SET deleted=1 WHERE id=?");
-                       ps.setInt(1, mail.getId());
+                       PreparedStatement ps = DatabaseConnection.getInstance().prepare("UPDATE email SET deleted=? WHERE id=?");
+                       ps.setDate(1, new Date(System.currentTimeMillis()));
+                       ps.setInt(2, mail.getId());
                        ps.execute();
                } catch (SQLException e) {
+                       e.printStackTrace();
                        throw new GigiApiException(e);
                }
        }