We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit 390a2a86 authored by Brion Vibber's avatar Brion Vibber

Fix for Blacklist plugin: was saving an empty entry if blacklist was empty,...

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.
parent 67b8b133
......@@ -262,7 +262,7 @@ class BlacklistPlugin extends Plugin
$patterns = $this->_getUrlPatterns();
foreach ($patterns as $pattern) {
if (preg_match("/$pattern/", $url)) {
if ($pattern != '' && preg_match("/$pattern/", $url)) {
return false;
}
}
......@@ -285,7 +285,7 @@ class BlacklistPlugin extends Plugin
$patterns = $this->_getNicknamePatterns();
foreach ($patterns as $pattern) {
if (preg_match("/$pattern/", $nickname)) {
if ($pattern != '' && preg_match("/$pattern/", $nickname)) {
return false;
}
}
......
......@@ -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
*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment