]> git.mxchange.org Git - friendica.git/blobdiff - mod/api.php
Merge pull request #3349 from annando/1704-api-owner
[friendica.git] / mod / api.php
index 63f8a934c81ef5e18a488cb113f21ab0b73eba1f..3916636cfd32f02bbdbdbfa1d28d4a1251db792a 100644 (file)
@@ -4,25 +4,25 @@ require_once('include/api.php');
 
 function oauth_get_client($request){
 
-       
+
        $params = $request->get_parameters();
        $token = $params['oauth_token'];
-       
-       $r = q("SELECT `clients`.* 
-                       FROM `clients`, `tokens` 
-                       WHERE `clients`.`client_id`=`tokens`.`client_id` 
+
+       $r = q("SELECT `clients`.*
+                       FROM `clients`, `tokens`
+                       WHERE `clients`.`client_id`=`tokens`.`client_id`
                        AND `tokens`.`id`='%s' AND `tokens`.`scope`='request'",
                        dbesc($token));
 
-       if (!count($r))
+       if (!dbm::is_result($r))
                return null;
-       
+
        return $r[0];
 }
 
-function api_post(&$a) {
+function api_post(App $a) {
 
-       if(! local_user()) {
+       if (! local_user()) {
                notice( t('Permission denied.') . EOL);
                return;
        }
@@ -34,33 +34,33 @@ function api_post(&$a) {
 
 }
 
-function api_content(&$a) {
+function api_content(App $a) {
        if ($a->cmd=='api/oauth/authorize'){
-               /* 
+               /*
                 * api/oauth/authorize interact with the user. return a standard page
                 */
-               
+
                $a->page['template'] = "minimal";
-               
-               
+
+
                // get consumer/client from request token
                try {
                        $request = OAuthRequest::from_request();
                } catch(Exception $e) {
                        echo "<pre>"; var_dump($e); killme();
                }
-               
-               
+
+
                if (x($_POST,'oauth_yes')){
-               
+
                        $app = oauth_get_client($request);
                        if (is_null($app)) return "Invalid request. Unknown token.";
                        $consumer = new OAuthConsumer($app['client_id'], $app['pw'], $app['redirect_uri']);
 
                        $verifier = md5($app['secret'].local_user());
                        set_config("oauth", $verifier, local_user());
-                       
-                       
+
+
                        if ($consumer->callback_url!=null) {
                                $params = $request->get_parameters();
                                $glue="?";
@@ -68,35 +68,35 @@ function api_content(&$a) {
                                goaway($consumer->callback_url.$glue."oauth_token=".OAuthUtil::urlencode_rfc3986($params['oauth_token'])."&oauth_verifier=".OAuthUtil::urlencode_rfc3986($verifier));
                                killme();
                        }
-                       
-                       
-                       
+
+
+
                        $tpl = get_markup_template("oauth_authorize_done.tpl");
                        $o = replace_macros($tpl, array(
                                '$title' => t('Authorize application connection'),
                                '$info' => t('Return to your app and insert this Securty Code:'),
                                '$code' => $verifier,
                        ));
-               
+
                        return $o;
-               
-               
+
+
                }
-               
-               
-               if(! local_user()) {
-                       //TODO: we need login form to redirect to this page
+
+
+               if (! local_user()) {
+                       /// @TODO We need login form to redirect to this page
                        notice( t('Please login to continue.') . EOL );
                        return login(false,$request->get_parameters());
                }
                //FKOAuth1::loginUser(4);
-               
+
                $app = oauth_get_client($request);
                if (is_null($app)) return "Invalid request. Unknown token.";
-               
-               
 
-               
+
+
+
                $tpl = get_markup_template('oauth_authorize.tpl');
                $o = replace_macros($tpl, array(
                        '$title' => t('Authorize application connection'),
@@ -105,15 +105,12 @@ function api_content(&$a) {
                        '$yes'  => t('Yes'),
                        '$no'   => t('No'),
                ));
-               
+
                //echo "<pre>"; var_dump($app); killme();
-               
+
                return $o;
        }
 
        echo api_call($a);
        killme();
 }
-
-
-