diff options
author | Evan Prodromou <evan@prodromou.name> | 2008-08-25 15:29:46 -0400 |
---|---|---|
committer | Evan Prodromou <evan@prodromou.name> | 2008-08-25 15:29:46 -0400 |
commit | 55fe8f8ff83d8cd9f165c69385384c35bda3fcde (patch) | |
tree | 2aed1bafc93932ac0e7e16a19992f7f550bacaf2 | |
parent | ba0dd0a4c3339c88a0d2be88c70759e9aec717db (diff) |
start the invite form
darcs-hash:20080825192946-84dde-c48e79699e5c0bc51ce5ab1fa921c49abbf2c4f5.gz
-rw-r--r-- | actions/invite.php | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/actions/invite.php b/actions/invite.php new file mode 100644 index 000000000..2bb2ff97b --- /dev/null +++ b/actions/invite.php @@ -0,0 +1,82 @@ +<?php +/* + * Laconica - a distributed open-source microblogging tool + * Copyright (C) 2008, Controlez-Vous, Inc. + * + * 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/>. + */ + +if (!defined('LACONICA')) { exit(1); } + +class InviteAction extends Action { + + function is_readonly() { + return false; + } + + function handle($args) { + parent::handle($args); + if (!common_logged_in()) { + $this->client_error(sprintf(_('You must be logged in to invite other users to use %s'), + common_config('site', 'name'))); + return; + } else if ($_SERVER['REQUEST_METHOD'] == 'POST') { + if ($this->trimmed('preview')) { + $this->show_preview(); + } else if ($this->trimmed('send')) { + $this->send_invitation(); + } + } else { + $this->show_form(); + } + } + + function show_preview() { + } + + function send_invitation() { + } + + function show_top($error=NULL) { + if ($error) { + common_element('p', 'error', $error); + } else { + common_element('div', 'instructions', + _('Use this form to invite your friends and colleagues to use this service.')); + } + } + + function show_form($error=NULL) { + + global $config; + + common_show_header(_('Invite new users'), NULL, $error, array($this, 'show_top')); + + common_element_start('form', array('method' => 'post', + 'id' => 'invite', + 'action' => common_local_url('invite'))); + + common_textarea('addresses', _('Email addresses'), + $this->trimmed('addresses'), + _('Addresses of friends to invite (one per line)')); + + common_textarea('personal', _('Personal message'), + $this->trimmed('personal'), + _('Optionally add a personal message to the invitation.')); + + common_submit('preview', _('Preview')); + + common_show_footer(); + } +} |