Repository: airavata-php-gateway
Updated Branches:
  refs/heads/develop 7c3d19a8c -> 5d9bb195e


considering the less priviledged user case


Project: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/commit/b1dcbdfa
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/b1dcbdfa
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/b1dcbdfa

Branch: refs/heads/develop
Commit: b1dcbdfa0ccebb213d44e6a1277943a6c47a10b3
Parents: a3cd053
Author: scnakandala <[email protected]>
Authored: Wed Jun 28 17:27:29 2017 -0400
Committer: scnakandala <[email protected]>
Committed: Wed Jun 28 17:27:29 2017 -0400

----------------------------------------------------------------------
 app/controllers/AccountController.php | 35 +++++++++++++++++-------------
 app/routes.php                        |  2 ++
 2 files changed, 22 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/b1dcbdfa/app/controllers/AccountController.php
----------------------------------------------------------------------
diff --git a/app/controllers/AccountController.php 
b/app/controllers/AccountController.php
index 726d2a6..97b5042 100644
--- a/app/controllers/AccountController.php
+++ b/app/controllers/AccountController.php
@@ -170,16 +170,12 @@ class AccountController extends BaseController
             Session::put("gateway_id", 
Config::get('pga_config.airavata')['gateway-id']);
 
             if(Session::has("admin") || Session::has("admin-read-only") || 
Session::has("authorized-user")){
-                return $this->initializeWithAiravata($username, $userEmail, 
$firstName, $lastName, $accessToken, $refreshToken, $expirationTime);
+                return $this->initializeWithAiravata($username, $userEmail, 
$firstName, $lastName, $accessToken,
+                    $refreshToken, $expirationTime);
             }
 
-            if(Session::has("admin") || Session::has("admin-read-only")){
-                return Redirect::to("admin/dashboard". 
"?status=ok&code=".$accessToken . "&username=".$username
-                    . "&refresh_code=" . $refreshToken . "&valid_time=" . 
$expirationTime);
-            }else{
-                return Redirect::to("account/dashboard". 
"?status=ok&code=".$accessToken . "&username=".$username
-                    . "&refresh_code=" . $refreshToken . "&valid_time=" . 
$expirationTime);
-            }
+            return Redirect::to("account/dashboard" . 
"?status=less_privileged&code=".$accessToken . "&username=".$username
+                . "&refresh_code=" . $refreshToken . "&valid_time=" . 
$expirationTime);
         }
 
     }
@@ -246,13 +242,9 @@ class AccountController extends BaseController
             return $this->initializeWithAiravata($username, $userEmail, 
$firstName, $lastName, $accessToken, $refreshToken, $expirationTime);
         }
 
-        if(Session::has("admin") || Session::has("admin-read-only")){
-            return Redirect::to("admin/dashboard" . "?status=ok&code=" . 
$accessToken . "&username=".$username
-                . "&refresh_code=" . $refreshToken . "&valid_time=" . 
$expirationTime);
-        }else{
-            return Redirect::to("account/dashboard" . 
"?status=ok&code=".$accessToken . "&username=".$username
-                . "&refresh_code=" . $refreshToken . "&valid_time=" . 
$expirationTime);
-        }
+        return Redirect::to("account/dashboard" . 
"?status=less_privileged&code=".$accessToken . "&username=".$username
+            . "&refresh_code=" . $refreshToken . "&valid_time=" . 
$expirationTime);
+
     }
 
     private function hasAnyRoles($roles) {
@@ -495,6 +487,19 @@ class AccountController extends BaseController
         }
     }
 
+    public function getRefreshedTokenForDesktop(){
+        $refreshToken = Input::get('refresh_code');
+        $response = Keycloak::getRefreshedOAuthToken($refreshToken);
+        if(isset($response->access_token)){
+            $accessToken = $response->access_token;
+            $refreshToken = $response->refresh_token;
+            $expirationTime = $response->expires_in; // 5 minutes safe margin
+            var_dump(array('status'=>'ok', 'code'=>$accessToken, 
'refresh_code'=>$refreshToken, 'valid_time'=>$expirationTime));
+        }else{
+            var_dump(array('status'=>'failed'));
+        }
+    }
+
     public function logout()
     {
        Session::flush();

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/b1dcbdfa/app/routes.php
----------------------------------------------------------------------
diff --git a/app/routes.php b/app/routes.php
index 2c142f3..6fa808b 100755
--- a/app/routes.php
+++ b/app/routes.php
@@ -24,6 +24,8 @@ Route::post("login", "AccountController@loginSubmit");
 
 Route::get("login-desktop", "AccountController@loginDesktopView");
 
+Route::get("refreshed-token-desktop", 
"AccountController@getRefreshedTokenForDesktop");
+
 Route::get("account/dashboard", "AccountController@dashboard");
 
 Route::get("callback-url", "AccountController@oauthCallback");

Reply via email to