. * * @category Form * @package StatusNet * @author Evan Prodromou * @author Sarven Capadisli * @copyright 2009 StatusNet, Inc. * @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('GNUSOCIAL')) { exit(1); } /** * Form for leaving a group * * @category Form * @package StatusNet * @author Evan Prodromou * @author Sarven Capadisli * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ * * @see UnsubscribeForm */ class CancelGroupForm extends Form { /** * group for user to leave */ var $group = null; var $profile = null; /** * Constructor * * @param HTMLOutputter $out output channel * @param User_group $group group to leave * @param Profile $profile User profile this is meant for */ function __construct(HTMLOutputter $out=null, User_group $group=null, Profile $profile=null) { parent::__construct($out); $this->group = $group; $this->profile = $profile; } /** * ID of the form * * @return string ID of the form */ function id() { return 'group-cancel-' . $this->group->getID(); } /** * class of the form * * @return string of the form class */ function formClass() { return 'form_group_leave ajax'; } /** * Action of the form * * @return string URL of the action */ function action() { $params = array(); if ($this->profile instanceof Profile) { $params['profile_id'] = $this->profile->getID(); } return common_local_url('cancelgroup', array('id' => $this->group->getID()), $params); } /** * Action elements * * @return void */ function formActions() { // TRANS: Submit button text on form to cancel group join request. $this->out->submit('submit', _m('BUTTON','Cancel join request')); } }