summaryrefslogtreecommitdiff
path: root/plugins/YammerImport/actions/yammerauth.php
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-09-24 17:22:44 -0700
committerBrion Vibber <brion@pobox.com>2010-09-28 07:44:25 -0700
commit698f5c7a20d5792b629404ce513d2fa2c2bab907 (patch)
tree3be11549f83dafbc57c4ae23d9c6cca33557df3c /plugins/YammerImport/actions/yammerauth.php
parente4b084f093dd7e8697616058874ec4ab15aacf2b (diff)
Work in progress on getting the frontend Yammer import form going....
Diffstat (limited to 'plugins/YammerImport/actions/yammerauth.php')
-rw-r--r--plugins/YammerImport/actions/yammerauth.php80
1 files changed, 71 insertions, 9 deletions
diff --git a/plugins/YammerImport/actions/yammerauth.php b/plugins/YammerImport/actions/yammerauth.php
index 7e6e7204a..d0d4b40c7 100644
--- a/plugins/YammerImport/actions/yammerauth.php
+++ b/plugins/YammerImport/actions/yammerauth.php
@@ -1,17 +1,79 @@
<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Yammer import administration panel
+ *
+ * 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 Settings
+ * @package StatusNet
+ * @author Zach Copley <zach@status.net>
+ * @copyright 2010 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')) {
+ exit(1);
+}
-function showYammerAuth()
+class YammerauthAction extends AdminPanelAction
{
- $token = $yam->requestToken();
- $url = $yam->authorizeUrl($token);
- // We're going to try doing this in an iframe; if that's not happy
- // we can redirect but there doesn't seem to be a way to get Yammer's
- // oauth to call us back instead of the manual copy. :(
+ /**
+ * Show the Yammer admin panel form
+ *
+ * @return void
+ */
+ function prepare($args)
+ {
+ parent::prepare($args);
+
+ $this->verify_token = $this->trim('verify_token');
+ }
+
+ /**
+ * Handle request
+ *
+ * Does the subscription and returns results.
+ *
+ * @param Array $args unused.
+ *
+ * @return void
+ */
+
+ function handle($args)
+ {
+ if ($this->verify_token) {
+ $runner->saveAuthToken($this->verify_token);
+ $form = new YammerAuthProgressForm();
+ } else {
+ $url = $runner->requestAuth();
+ $form = new YammerAuthVerifyForm($this, $url);
+ }
- //common_redirect($url, 303);
- $this->element('iframe', array('id' => 'yammer-oauth',
- 'src' => $url));
+ $this->startHTML('text/xml;charset=utf-8');
+ $this->elementStart('head');
+ $this->element('title', null, _m('Connect to Yammer'));
+ $this->elementEnd('head');
+ $this->elementStart('body');
+ $form->show();
+ $this->elementEnd('body');
+ $this->elementEnd('html');
+ }
}