* @link http://status.net/
*/
-if (!defined('STATUSNET')) {
- exit(1);
-}
-
-require_once INSTALLDIR . '/lib/apibareauth.php';
+if (!defined('GNUSOCIAL')) { exit(1); }
/**
* Outputs detailed information about the relationship between two users
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
-
class ApiFriendshipsShowAction extends ApiBareAuthAction
{
var $source = null;
* @param array $args $_REQUEST args
*
* @return boolean success flag
- *
*/
-
- function prepare($args)
+ protected function prepare(array $args=array())
{
parent::prepare($args);
$target_screen_name = $this->trimmed('target_screen_name');
if (!empty($source_id)) {
- $this->source = User::staticGet($source_id);
+ $this->source = User::getKV($source_id);
} elseif (!empty($source_screen_name)) {
- $this->source = User::staticGet('nickname', $source_screen_name);
+ $this->source = User::getKV('nickname', $source_screen_name);
} else {
$this->source = $this->auth_user;
}
if (!empty($target_id)) {
- $this->target = User::staticGet($target_id);
+ $this->target = User::getKV($target_id);
} elseif (!empty($target_screen_name)) {
- $this->target = User::staticGet('nickname', $target_screen_name);
+ $this->target = User::getKV('nickname', $target_screen_name);
}
return true;
}
-
/**
* Determines whether this API resource requires auth. Overloaded to look
* return true in case source_id and source_screen_name are both empty
*
* @return boolean true or false
*/
-
function requiresAuth()
{
if (common_config('site', 'private')) {
*
* Check the format and show the user info
*
- * @param array $args $_REQUEST data (unused)
- *
* @return void
*/
-
- function handle($args)
+ protected function handle()
{
- parent::handle($args);
+ parent::handle();
if (!in_array($this->format, array('xml', 'json'))) {
+ // TRANS: Client error displayed when coming across a non-supported API method.
$this->clientError(_('API method not found.'), 404);
- return;
}
if (empty($this->source)) {
$this->clientError(
+ // TRANS: Client error displayed when a source user could not be determined showing friendship.
_('Could not determine source user.'),
404
);
- return;
}
if (empty($this->target)) {
$this->clientError(
+ // TRANS: Client error displayed when a target user could not be determined showing friendship.
_('Could not find target user.'),
404
);
- return;
}
$result = $this->twitterRelationshipArray($this->source, $this->target);
default:
break;
}
-
}
+ /**
+ * Return true if read only.
+ *
+ * MAY override
+ *
+ * @param array $args other arguments
+ *
+ * @return boolean is read only action?
+ */
+
+ function isReadOnly(array $args=array())
+ {
+ return true;
+ }
}