diff options
author | Zach Copley <zach@status.net> | 2009-10-13 11:05:39 -0700 |
---|---|---|
committer | Zach Copley <zach@status.net> | 2009-10-13 11:05:39 -0700 |
commit | 39bcd514b4cbb26b28aeff2aa65e31bd86773782 (patch) | |
tree | 8dc1e73044870eb9010c1c30582a11d7db8c0a80 /plugins/RequireValidatedEmail | |
parent | b4b992bca77d34b8643910e8d590b5be7fede94b (diff) | |
parent | 659a04b556f75551548c0b2fff633b15cd114135 (diff) |
Merge branch '0.9.x' into pluginize-twitter-bridge
* 0.9.x:
Include long-form attachment URL in notice if URL shortening is disabled.
Updated default theme to use the CSS Sprites method for common icons
Added a new plugin that requires a user to have a validated email address before being allowed to post notices
Don't trigger E_NOTICE when looking for commands in the notice input
Diffstat (limited to 'plugins/RequireValidatedEmail')
-rw-r--r-- | plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php b/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php new file mode 100644 index 000000000..4806538a0 --- /dev/null +++ b/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php @@ -0,0 +1,52 @@ +<?php +/** + * StatusNet, the distributed open-source microblogging tool + * + * Plugin that requires the user to have a validated email address before they can post notices + * + * PHP version 5 + * + * LICENCE: This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @category Plugin + * @package StatusNet + * @author Craig Andrews <candrews@integralblue.com> + * @copyright 2009 Craig Andrews http://candrews.integralblue.com + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET') && !defined('LACONICA')) { + exit(1); +} + +class RequireValidatedEmailPlugin extends Plugin +{ + function __construct() + { + parent::__construct(); + } + + function onStartNoticeSave($notice) + { + $user = User::staticGet('id', $notice->profile_id); + if (!empty($user)) { // it's a remote notice + if (empty($user->email)) { + throw new ClientException(_("You must validate your email address before posting.")); + } + } + return true; + } +} + |