Browse Source

Fix email deletion logic

spaghetti 8 years ago
parent
commit
20948d25ad
1 changed files with 34 additions and 33 deletions
  1. 34
    33
      sections/tools/managers/email_delete_requests.php

+ 34
- 33
sections/tools/managers/email_delete_requests.php View File

@@ -24,42 +24,43 @@ if (isset($_GET['deny']) && isset($_GET['email'])) {
24 24
     DELETE FROM email_delete_requests
25 25
     WHERE Email = '$Email'");
26 26
 
27
-  if (!$Deny) {
28
-    $DB->query("
29
-      SELECT UserID
30
-      FROM users_history_emails
31
-      WHERE Email = '$Email'");
32
-
33
-    if (!$DB->has_results()) {
34
-      $Err = "That email doesn't exist.";
35
-    } else {
36
-      list($UserID) = $DB->next_record();
37
-      if ($UserID != $_GET['userid']) {
38
-        $Err = "The UserID is incorrect?";
39
-      } else {
40
-        $DB->query("
41
-          SELECT Email
42
-          FROM users_history_emails
43
-          WHERE UserID = '$UserID'");
44
-        $ToDelete = array();
45
-        while (list($EncEmail) = $DB->next_record()) {
46
-          if (DBCrypt::decrypt($Email) == DBCrypt::decrypt($EncEmail)) {
47
-            $ToDelete[] = $EncEmail;
48
-          }
49
-        }
50
-        forEach ($ToDelete as $DelEmail) {
51
-          $DB->query("
52
-            DELETE FROM users_history_emails
53
-            WHERE UserID = $UserID
54
-              AND Email = '$DelEmail'");
27
+  $DB->query("
28
+    SELECT UserID
29
+    FROM users_history_emails
30
+    WHERE Email = '$Email'");
31
+  if ($DB->has_results()) {
32
+    list($UserID) = $DB->next_record();
33
+    if ($UserID != $_GET['userid']) {
34
+      $Err = "The UserID is incorrect?";
35
+    }
36
+  } else {
37
+    $Err = "That email doesn't exist.";
38
+  }
39
+
40
+  if (empty($Err)) {
41
+    if (!$Deny) {
42
+      $DB->query("
43
+        SELECT Email
44
+        FROM users_history_emails
45
+        WHERE UserID = '$UserID'");
46
+      $ToDelete = array();
47
+      while (list($EncEmail) = $DB->next_record()) {
48
+        if (DBCrypt::decrypt($Email) == DBCrypt::decrypt($EncEmail)) {
49
+          $ToDelete[] = $EncEmail;
55 50
         }
56
-        $Succ = "Email deleted.";
57
-        Misc::send_pm($UserID, 0, "Email Deletion Request Accepted.", "Your email deletion request has been accepted. What email? I don't know! We don't have it anymore!");
58 51
       }
52
+      forEach ($ToDelete as $DelEmail) {
53
+        $DB->query("
54
+          DELETE FROM users_history_emails
55
+          WHERE UserID = $UserID
56
+            AND Email = '$DelEmail'");
57
+      }
58
+      $Succ = "Email deleted.";
59
+      Misc::send_pm($UserID, 0, "Email Deletion Request Accepted.", "Your email deletion request has been accepted. What email? I don't know! We don't have it anymore!");
60
+    } else {
61
+      $Succ = "Request denied.";
62
+      Misc::send_pm($UserID, 0, "Email Deletion Request Denied.", "Your email deletion request has been denied.\n\nIf you wish to discuss this matter further, please create a staff PM, or join #oppaitime-help on IRC to speak with a staff member.");
59 63
     }
60
-  } else {
61
-    $Succ = "Request denied.";
62
-    Misc::send_pm($UserID, 0, "Email Deletion Request Denied.", "Your email deletion request has been denied.\n\nIf you wish to discuss this matter further, please create a staff PM, or join #oppaitime-help on IRC to speak with a staff member.");
63 64
   }
64 65
 
65 66
   $Cache->delete_value('num_email_delete_requests');

Loading…
Cancel
Save