X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FBlacklist%2Fblacklistadminpanel.php;h=9019bb9ad27a05f809e9f1c86b055cfadf116c38;hb=b2abae433de8ae625fc0420eb78ee74479f6e9b9;hp=98d07080db698920c4060778a5f6f7f17343f4f4;hpb=fc576562a39943fb1fa83a6a6d1fdef4f234564a;p=quix0rs-gnu-social.git diff --git a/plugins/Blacklist/blacklistadminpanel.php b/plugins/Blacklist/blacklistadminpanel.php index 98d07080db..9019bb9ad2 100644 --- a/plugins/Blacklist/blacklistadminpanel.php +++ b/plugins/Blacklist/blacklistadminpanel.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3 * @link http://status.net/ */ - class BlacklistadminpanelAction extends AdminPanelAction { /** @@ -48,10 +47,9 @@ class BlacklistadminpanelAction extends AdminPanelAction * * @return string title */ - function title() { - return _('Blacklist'); + return _m('Blacklist'); } /** @@ -59,10 +57,9 @@ class BlacklistadminpanelAction extends AdminPanelAction * * @return string instructions */ - function getInstructions() { - return _('Blacklisted URLs and nicknames'); + return _m('Blacklisted URLs and nicknames'); } /** @@ -72,7 +69,6 @@ class BlacklistadminpanelAction extends AdminPanelAction * * @see BlacklistAdminPanelForm */ - function showForm() { $form = new BlacklistAdminPanelForm($this); @@ -85,40 +81,27 @@ class BlacklistadminpanelAction extends AdminPanelAction * * @return void */ - function saveSettings() { - static $settings = array( - 'blacklist' => array('nicknames', 'urls'), - ); - - $values = array(); - - foreach ($settings as $section => $parts) { - foreach ($parts as $setting) { - $values[$section][$setting] = $this->trimmed("$section-$setting"); - } - } - - // This throws an exception on validation errors - - $this->validate($values); + $nickPatterns = $this->splitPatterns($this->trimmed('blacklist-nicknames')); + Nickname_blacklist::saveNew($nickPatterns); - // assert(all values are valid); + $urlPatterns = $this->splitPatterns($this->trimmed('blacklist-urls')); + Homepage_blacklist::saveNew($urlPatterns); - $config = new Config(); - - $config->query('BEGIN'); + return; + } - foreach ($settings as $section => $parts) { - foreach ($parts as $setting) { - Config::save($section, $setting, $values[$section][$setting]); + protected function splitPatterns($text) + { + $patterns = array(); + foreach (explode("\n", $text) as $raw) { + $trimmed = trim($raw); + if ($trimmed != '') { + $patterns[] = $trimmed; } } - - $config->query('COMMIT'); - - return; + return $patterns; } /** @@ -128,7 +111,6 @@ class BlacklistadminpanelAction extends AdminPanelAction * * @return boolean success flag */ - function validate(&$values) { return true; @@ -144,7 +126,6 @@ class BlacklistadminpanelAction extends AdminPanelAction * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3 * @link http://status.net/ */ - class BlacklistAdminPanelForm extends Form { /** @@ -152,7 +133,6 @@ class BlacklistAdminPanelForm extends Form * * @return string ID */ - function id() { return 'blacklistadminpanel'; @@ -163,7 +143,6 @@ class BlacklistAdminPanelForm extends Form * * @return string class */ - function formClass() { return 'form_settings'; @@ -174,7 +153,6 @@ class BlacklistAdminPanelForm extends Form * * @return string action URL */ - function action() { return common_local_url('blacklistadminpanel'); @@ -185,21 +163,25 @@ class BlacklistAdminPanelForm extends Form * * @return void */ - function formData() { $this->out->elementStart('ul', 'form_data'); $this->out->elementStart('li'); + + $nickPatterns = Nickname_blacklist::getPatterns(); + $this->out->textarea('blacklist-nicknames', _m('Nicknames'), - common_config('blacklist', 'nicknames'), - _('Patterns of nicknames to block, one per line')); + implode("\r\n", $nickPatterns), + _m('Patterns of nicknames to block, one per line')); $this->out->elementEnd('li'); + $urlPatterns = Homepage_blacklist::getPatterns(); + $this->out->elementStart('li'); $this->out->textarea('blacklist-urls', _m('URLs'), - common_config('blacklist', 'urls'), - _('Patterns of URLs to block, one per line')); + implode("\r\n", $urlPatterns), + _m('Patterns of URLs to block, one per line')); $this->out->elementEnd('li'); $this->out->elementEnd('ul'); @@ -210,13 +192,12 @@ class BlacklistAdminPanelForm extends Form * * @return void */ - function formActions() { $this->out->submit('submit', - _('Save'), + _m('Save'), 'submit', null, - _('Save site settings')); + _m('Save site settings')); } }