* Copyright (C) 2011, StatusNet, Inc.
*
* Log into a site globally
- *
+ *
* PHP version 5
*
* This program is free software: you can redistribute it and/or modify
}
/**
- * Class comment
+ * Login to a site
*
* @category Action
* @package StatusNet
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/
*/
-
-class GlobalLoginAction extends Action
+class GloballoginAction extends GlobalApiAction
{
+ var $password;
+
/**
* For initializing members of the class.
*
- * @param array $argarray misc. arguments
+ * @param array $args misc. arguments
*
* @return boolean true
+ * @throws ClientException
*/
-
- function prepare($argarray)
+ function prepare(array $args = [])
{
- parent::prepare($argarray);
+ parent::prepare($args);
+
+ $password = $this->trimmed('password');
+
+ if (empty($password)) {
+ throw new ClientException(_('No password.'));
+ }
+
+ $this->password = $password;
+
return true;
}
/**
* Handler method
*
- * @param array $argarray is ignored since it's now passed in in prepare()
- *
* @return void
*/
-
- function handle($argarray=null)
+ function handle()
{
+ try {
+ // FIXME: $email and $password aren't defined
+ $url = DomainStatusNetworkPlugin::login($email, $password);
+ $this->showSuccess(array('url' => $url));
+ } catch (ClientException $ce) {
+ $this->showError($ce->getMessage());
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ $this->showError(_('An internal error occurred.'));
+ }
return;
}
}