]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
don't try to get to database at initialize time
authorEvan Prodromou <evan@status.net>
Sun, 28 Mar 2010 19:17:44 +0000 (15:17 -0400)
committerEvan Prodromou <evan@status.net>
Sun, 28 Mar 2010 19:17:44 +0000 (15:17 -0400)
plugins/Blacklist/BlacklistPlugin.php

index c2b60b7d265ef2536328e045e3e2e2652549d0a4..adc4d9d7e21b2779cdb6296fc0bc3e71c7baad9c 100644 (file)
@@ -49,32 +49,26 @@ class BlacklistPlugin extends Plugin
     public $urls      = array();
     public $canAdmin  = true;
 
-    private $_nicknamePatterns = array();
-    private $_urlPatterns      = array();
-
-    /**
-     * Initialize the plugin
-     *
-     * @return void
-     */
-
-    function initialize()
+    function _getNicknamePatterns()
     {
         $confNicknames = $this->_configArray('blacklist', 'nicknames');
 
         $dbNicknames = Nickname_blacklist::getPatterns();
 
-        $this->_nicknamePatterns = array_merge($this->nicknames,
-                                               $confNicknames,
-                                               $dbNicknames);
+        return array_merge($this->nicknames,
+                           $confNicknames,
+                           $dbNicknames);
+    }
 
+    function _getUrlPatterns()
+    {
         $confURLs = $this->_configArray('blacklist', 'urls');
 
         $dbURLs = Homepage_blacklist::getPatterns();
 
-        $this->_urlPatterns = array_merge($this->urls,
-                                          $confURLs,
-                                          $dbURLs);
+        return array_merge($this->urls,
+                           $confURLs,
+                           $dbURLs);
     }
 
     /**
@@ -265,7 +259,9 @@ class BlacklistPlugin extends Plugin
 
     private function _checkUrl($url)
     {
-        foreach ($this->_urlPatterns as $pattern) {
+        $patterns = $this->_getUrlPatterns();
+
+        foreach ($patterns as $pattern) {
             if (preg_match("/$pattern/", $url)) {
                 return false;
             }
@@ -286,7 +282,9 @@ class BlacklistPlugin extends Plugin
 
     private function _checkNickname($nickname)
     {
-        foreach ($this->_nicknamePatterns as $pattern) {
+        $patterns = $this->_getNicknamePatterns();
+
+        foreach ($patterns as $pattern) {
             if (preg_match("/$pattern/", $nickname)) {
                 return false;
             }