]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
let other validity checks go through first
authorEvan Prodromou <evan@status.net>
Mon, 18 Apr 2011 14:46:40 +0000 (10:46 -0400)
committerEvan Prodromou <evan@status.net>
Mon, 18 Apr 2011 14:46:40 +0000 (10:46 -0400)
plugins/DomainWhitelist/DomainWhitelistPlugin.php

index 615701f36b3315bbffb385d216005293da09f41c..c20e3f02c0899ef22a8711b3e477f38f14e48d1c 100644 (file)
@@ -52,18 +52,20 @@ class DomainWhitelistPlugin extends Plugin
         return true;
     }
 
-    function onStartValidateUserEmail($user, $email, &$valid)
+    function onEndValidateUserEmail($user, $email, &$valid)
     {
-        if (!$this->matchesWhitelist($email)) {
-            $whitelist = $this->getWhitelist();
-            if (count($whitelist) == 1) {
-                $message = sprintf(_("Email address must be in this domain: %s"),
-                                   $whitelist[0]);
-            } else {
-                $message = sprintf(_("Email address must be in one of these domains: %s"),
-                                   implode(', ', $whitelist));
+        if ($valid) { // it's otherwise valid
+            if (!$this->matchesWhitelist($email)) {
+                $whitelist = $this->getWhitelist();
+                if (count($whitelist) == 1) {
+                    $message = sprintf(_("Email address must be in this domain: %s"),
+                                       $whitelist[0]);
+                } else {
+                    $message = sprintf(_("Email address must be in one of these domains: %s"),
+                                       implode(', ', $whitelist));
+                }
+                throw new ClientException($message);
             }
-            throw new ClientException($message);
         }
         return true;
     }