summaryrefslogtreecommitdiff
path: root/plugins/Blacklist/blacklistadminpanel.php
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-04-23 07:17:52 -0700
committerBrion Vibber <brion@pobox.com>2010-04-23 07:17:52 -0700
commit390a2a8624b71be7d598b945452fc6e0000f3df5 (patch)
tree8c1f107354abbae927f49406ebc5f50e46bb8cc3 /plugins/Blacklist/blacklistadminpanel.php
parent67b8b1334fc53fb06f1a751e534533e30b7cfd01 (diff)
Fix for Blacklist plugin: was saving an empty entry if blacklist was empty, which would match *all* possible nickname registrations, preventing all registration on mozilla.status.net.
Now saving only non-empty lines, and only matching non-empty lines so we don't fail if we still have a bogus entry.
Diffstat (limited to 'plugins/Blacklist/blacklistadminpanel.php')
-rw-r--r--plugins/Blacklist/blacklistadminpanel.php29
1 files changed, 14 insertions, 15 deletions
diff --git a/plugins/Blacklist/blacklistadminpanel.php b/plugins/Blacklist/blacklistadminpanel.php
index b996aba8d..23c503cd8 100644
--- a/plugins/Blacklist/blacklistadminpanel.php
+++ b/plugins/Blacklist/blacklistadminpanel.php
@@ -88,28 +88,27 @@ class BlacklistadminpanelAction extends AdminPanelAction
function saveSettings()
{
- $nickPatterns = array();
-
- $rawNickPatterns = explode("\n", $this->trimmed('blacklist-nicknames'));
-
- foreach ($rawNickPatterns as $raw) {
- $nickPatterns[] = trim($raw);
- }
-
+ $nickPatterns = $this->splitPatterns($this->trimmed('blacklist-nicknames'));
Nickname_blacklist::saveNew($nickPatterns);
- $rawUrlPatterns = explode("\n", $this->trimmed('blacklist-urls'));
- $urlPatterns = array();
-
- foreach ($rawUrlPatterns as $raw) {
- $urlPatterns[] = trim($raw);
- }
-
+ $urlPatterns = $this->splitPatterns($this->trimmed('url-nicknames'));
Homepage_blacklist::saveNew($urlPatterns);
return;
}
+ protected function splitPatterns($text)
+ {
+ $patterns = array();
+ foreach (explode("\n", $text) as $raw) {
+ $trimmed = trim($raw);
+ if ($trimmed != '') {
+ $patterns[] = $trimmed;
+ }
+ }
+ return $patterns;
+ }
+
/**
* Validate the values
*