From 93172cc828039f6a37a4f221050f2c2403533bc5 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 12 Oct 2010 12:33:57 -0700 Subject: [PATCH 1/2] Initial version of ModHelper plugin, with basic functionality but the UI stripped out until it's easier to get it done. * users need to have 'modhelper' role manually added via userrole.php for now * modhelper users can sandbox/unsandbox and silence/unsilence any user ** note that no new logging has been added for these moderator actions * no user deletion for modhelpers * probably no UserFlags special views for modhelpers --- plugins/ModHelper/ModHelperPlugin.php | 54 +++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 plugins/ModHelper/ModHelperPlugin.php diff --git a/plugins/ModHelper/ModHelperPlugin.php b/plugins/ModHelper/ModHelperPlugin.php new file mode 100644 index 0000000000..78818ebc87 --- /dev/null +++ b/plugins/ModHelper/ModHelperPlugin.php @@ -0,0 +1,54 @@ +. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * @package ModHelperPlugin + * @maintainer Brion Vibber + */ +class ModHelperPlugin extends Plugin +{ + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'ModHelper', + 'version' => STATUSNET_VERSION, + 'author' => 'Brion Vibber', + 'homepage' => 'http://status.net/wiki/Plugin:ModHelper', + 'rawdescription' => + _m('Lets users who have been manually marked as "modhelper"s silence accounts.')); + + return true; + } + + function onUserRightsCheck($profile, $right, &$result) + { + if ($right == Right::SILENCEUSER || $right == Right::SANDBOXUSER) { + // Hrm.... really we should confirm that the *other* user isn't privleged. :) + if ($profile->hasRole('modhelper')) { + $result = true; + return false; + } + } + return true; + } + +} From 9d9e80ea2135c09d911bb60ce01852d77fbb3365 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 12 Oct 2010 13:00:03 -0700 Subject: [PATCH 2/2] Followup to IIS installer tweaks in [9bb48c36]: * skip 0-byte config files when initializing, go ahead and redirect to installer if no non-0-byte files * tweak warning on installer.php to let you know if you have a 0-byte config.php that's not writable, as opposed to generally already having a config.php with data in it --- lib/installer.php | 6 +++++- lib/statusnet.php | 7 +++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/installer.php b/lib/installer.php index 2eff2d85ac..c046eadea3 100644 --- a/lib/installer.php +++ b/lib/installer.php @@ -85,7 +85,11 @@ abstract class Installer $config = INSTALLDIR.'/config.php'; if (file_exists($config)) { if (!is_writable($config) || filesize($config) > 0) { - $this->warning('Config file "config.php" already exists.'); + if (filesize($config) == 0) { + $this->warning('Config file "config.php" already exists and is empty, but is not writable.'); + } else { + $this->warning('Config file "config.php" already exists.'); + } $pass = false; } } diff --git a/lib/statusnet.php b/lib/statusnet.php index 7212a4a47d..7cb831696b 100644 --- a/lib/statusnet.php +++ b/lib/statusnet.php @@ -336,8 +336,11 @@ class StatusNet foreach ($config_files as $_config_file) { if (@file_exists($_config_file)) { - include($_config_file); - self::$have_config = true; + // Ignore 0-byte config files + if (filesize($_config_file) > 0) { + include($_config_file); + self::$have_config = true; + } } }