X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Fapioauthpin.php;h=ad4e7947e27a2e15c5294114df85fc888b401e65;hb=418b3c3c53194040022c4b56bd0c0b04fd6fd4d7;hp=5e6713a548323d7ae88879ca40c893263a8ed583;hpb=04f3f57e2eed2a7757b3dd2bf5afc4926dd0961b;p=quix0rs-gnu-social.git diff --git a/actions/apioauthpin.php b/actions/apioauthpin.php index 5e6713a548..ad4e7947e2 100644 --- a/actions/apioauthpin.php +++ b/actions/apioauthpin.php @@ -31,8 +31,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -require_once INSTALLDIR . '/lib/info.php'; - /** * Class for displaying an OAuth verifier pin * @@ -44,16 +42,123 @@ require_once INSTALLDIR . '/lib/info.php'; * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - -class ApiOauthPinAction extends InfoAction +class ApiOAuthPinAction extends InfoAction { - function __construct($title, $message, $verifier) + function __construct($title, $message, $verifier, $desktopMode = false) { - $this->verifier = $verifier; - $this->title = $title; + $this->verifier = $verifier; + $this->title = $title; + $this->desktopMode = $desktopMode; parent::__construct($title, $message); } + /** + * Show body - override to add a special CSS class for the pin pages's + * "desktop mode" (minimal display) + * + * Calls template methods + * + * @return nothing + */ + function showBody() + { + $bodyClasses = array(); + + if ($this->desktopMode) { + $bodyClasses[] = 'oauth-desktop-mode'; + } + + if (common_current_user()) { + $bodyClasses[] = 'user_in'; + } + + $attrs = array('id' => strtolower($this->trimmed('action'))); + + if (!empty($bodyClasses)) { + $attrs['class'] = implode(' ', $bodyClasses); + } + + $this->elementStart('body', $attrs); + + $this->elementStart('div', array('id' => 'wrap')); + if (Event::handle('StartShowHeader', array($this))) { + $this->showHeader(); + Event::handle('EndShowHeader', array($this)); + } + $this->showCore(); + if (Event::handle('StartShowFooter', array($this))) { + $this->showFooter(); + Event::handle('EndShowFooter', array($this)); + } + $this->elementEnd('div'); + $this->showScripts(); + $this->elementEnd('body'); + } + + /** + * A local menu + * + * Shows different login/register actions. + * + * @return void + */ + function showLocalNav() + { + // NOP + } + + /* + * Override - suppress output in "desktop" mode + */ + function showHeader() + { + if ($this->desktopMode == false) { + parent::showHeader(); + } + } + + /* + * Override - suppress output in "desktop" mode + */ + function showAside() + { + if ($this->desktopMode == false) { + parent::showAside(); + } + } + + /* + * Override - suppress output in "desktop" mode + */ + function showFooter() + { + if ($this->desktopMode == false) { + parent::showFooter(); + } + } + + /** + * Show site notice. + * + * @return nothing + */ + function showSiteNotice() + { + // NOP + } + + /** + * Show notice form. + * + * Show the form for posting a new notice + * + * @return nothing + */ + function showNoticeForm() + { + // NOP + } + /** * Display content. *