. * * @package StatusNet * @copyright 2010-2011 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('STATUSNET') && !defined('LACONICA')) { exit(1); } class AddMirrorWizard extends Form { /** * Name of the form * * Sub-classes should overload this with the name of their form. * * @return void */ function formLegend() { } /** * Visible or invisible data elements * * Display the form fields that make up the data of the form. * Sub-classes should overload this to show their data. * * @return void */ function formData() { $this->out->elementStart('fieldset'); $providers = $this->providers(); $this->showProviders($providers); $this->out->elementEnd('fieldset'); } function providers() { return array( array( 'id' => 'statusnet', 'name' => _m('StatusNet'), ), array( 'id' => 'twitter', 'name' => _m('Twitter'), ), array( 'id' => 'wordpress', 'name' => _m('WordPress'), ), array( 'id' => 'linkedin', 'name' => _m('LinkedIn'), ), array( 'id' => 'feed', 'name' => _m('RSS or Atom feed'), ), ); } function showProviders(array $providers) { $out = $this->out; $out->elementStart('table', array('width' => '100%')); foreach ($providers as $provider) { $icon = common_path('plugins/SubMirror/images/providers/' . $provider['id'] . '.png'); $out->elementStart('tr'); $out->elementStart('td', array('style' => 'text-align: right; vertical-align: middle')); $out->element('img', array('src' => $icon)); $out->elementEnd('td'); $out->elementStart('td', array('style' => 'text-align: left; vertical-align: middle')); $out->text($provider['name']); $out->elementEnd('td'); $out->elementEnd('tr'); } $out->elementEnd('table'); } /** * Buttons for form actions * * Submit and cancel buttons (or whatever) * Sub-classes should overload this to show their own buttons. * * @return void */ function formActions() { } /** * ID of the form * * Should be unique on the page. Sub-classes should overload this * to show their own IDs. * * @return string ID of the form */ function id() { return 'add-mirror-wizard'; } /** * Action of the form. * * URL to post to. Should be overloaded by subclasses to give * somewhere to post to. * * @return string URL to post to */ function action() { return common_local_url('addmirror'); } /** * Class of the form. * * @return string the form's class */ function formClass() { return 'form_settings'; } }