Repository: airavata-php-gateway
Updated Branches:
  refs/heads/develop d3ab41cfc -> f4c11b163


WIP


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/f4c11b16
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/f4c11b16
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/f4c11b16

Branch: refs/heads/develop
Commit: f4c11b1634f5c638934620b48f12db91634a45b9
Parents: d3ab41c
Author: scnakandala <[email protected]>
Authored: Tue May 23 14:13:37 2017 -0400
Committer: scnakandala <[email protected]>
Committed: Tue May 23 14:13:37 2017 -0400

----------------------------------------------------------------------
 app/controllers/ExperimentController.php        | 42 ++++++++++++++------
 .../partials/experiment-queue-block.blade.php   | 15 +++++--
 2 files changed, 41 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/f4c11b16/app/controllers/ExperimentController.php
----------------------------------------------------------------------
diff --git a/app/controllers/ExperimentController.php 
b/app/controllers/ExperimentController.php
index 24ef1e0..fbbbe7f 100755
--- a/app/controllers/ExperimentController.php
+++ b/app/controllers/ExperimentController.php
@@ -454,9 +454,9 @@ class ExperimentController extends BaseController
 
     public function getQueueView()
     {
-//        $appId = Session::get('exp_create_app_id');
+        $appId = Session::get('exp_create_app_id');
         $computeResourceId = Input::get("crId");
-//        $appDeployments = 
Airavata::getAllApplicationDeployments(Session::get('authz-token'), 
Session::get("gateway_id"));
+        $appDeployments = 
Airavata::getAllApplicationDeployments(Session::get('authz-token'), 
Session::get("gateway_id"));
 
         $nodeCount = Config::get('pga_config.airavata')["node-count"];
         $cpuCount = Config::get('pga_config.airavata')["total-cpu-count"];
@@ -464,31 +464,47 @@ class ExperimentController extends BaseController
         $cpusPerNode = 0;
         $queueName = Config::get('pga_config.airavata')["queue-name"];
 
-        $queues = 
ExperimentUtilities::getQueueDatafromResourceId($computeResourceId);
+        $queueDefaults = array("queueName" => $queueName,
+            "nodeCount" => $nodeCount,
+            "cpuCount" => $cpuCount,
+            "wallTimeLimit" => $wallTimeLimit,
+            "cpusPerNode" => $cpusPerNode
+        );
 
+        $queues = 
ExperimentUtilities::getQueueDatafromResourceId($computeResourceId);
         $userComputeResourcePreferences = 
URPUtilities::get_all_user_compute_resource_prefs();
         $userHasComputeResourcePreference = 
array_key_exists($computeResourceId, $userComputeResourcePreferences);
-
         if ($userHasComputeResourcePreference)
         {
-            $queueName = 
$userComputeResourcePreferences[$computeResourceId]->preferredBatchQueue;
+            $queueDefaults['queueName'] = 
$userComputeResourcePreferences[$computeResourceId]->preferredBatchQueue;
         }else{
             foreach($queues as $aQueue){
                 if($aQueue->isDefaultQueue){
-                    $queueName = $aQueue->queueName;
+                    $queueDefaults['queueName'] = $aQueue->queueName;
                     break;
                 }
             }
         }
 
-        $queueDefaults = array("queueName" => $queueName,
-            "nodeCount" => $nodeCount,
-            "cpuCount" => $cpuCount,
-            "wallTimeLimit" => $wallTimeLimit,
-            "cpusPerNode" => $cpusPerNode
-        );
+        $correctAppDeployment = null;
+        foreach($appDeployments as $appDeployment){
+            if($appDeployment->computeHostId == $computeResourceId && 
$appDeployment->appModuleId == $appId){
+                $correctAppDeployment = $appDeployment;
+                break;
+            }
+        }
+
+        $appDeploymentDefaults = array();
+        if($correctAppDeployment != null){
+            $appDeploymentDefaults['nodeCount'] = 
$correctAppDeployment->defaultNodeCount;
+            $appDeploymentDefaults['cpuCount'] = 
$correctAppDeployment->defaultCPUCount;
+            $appDeploymentDefaults['wallTimeLimit'] = $wallTimeLimit;
+            $appDeploymentDefaults['queueName'] = 
$correctAppDeployment->defaultQueueName;
+        }
 
-        return View::make("partials/experiment-queue-block", array("queues" => 
$queues, "queueDefaults" => $queueDefaults,
+        return View::make("partials/experiment-queue-block", array("queues" => 
$queues,
+            "queueDefaults" => $queueDefaults,
+            "appDeploymentDefaults" => $appDeploymentDefaults,
             "useUserCRPref" => $userHasComputeResourcePreference,
             "userHasComputeResourcePreference" => 
$userHasComputeResourcePreference,
             "cpusPerNode" => $cpusPerNode));

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/f4c11b16/app/views/partials/experiment-queue-block.blade.php
----------------------------------------------------------------------
diff --git a/app/views/partials/experiment-queue-block.blade.php 
b/app/views/partials/experiment-queue-block.blade.php
index d0eb005..d7755e8 100644
--- a/app/views/partials/experiment-queue-block.blade.php
+++ b/app/views/partials/experiment-queue-block.blade.php
@@ -8,6 +8,7 @@
 </div>
 @endif
 <input type="hidden" id="queue-array" value="{{ htmlentities( json_encode( 
$queues ) ) }}"/>
+<input type="hidden" id="app-deployment-defaults-array" value="{{ 
htmlentities( json_encode( $appDeploymentDefaults ) ) }}"/>
 <input type="hidden" id="queue-defaults-array" value="{{ htmlentities( 
json_encode( $queueDefaults ) ) }}"/>
 <div class="form-group required">
     @if( count( $queues) > 0 )
@@ -158,6 +159,8 @@
     function getQueueData(selectedQueue) {
         var queues = $.parseJSON($("#queue-array").val());
         var queueDefaults = $.parseJSON($("#queue-defaults-array").val());
+        var appDefaults = 
$.parseJSON($("#app-deployment-defaults-array").val());
+
         var veryLargeValue = 9999999;
         console.log(queues);
         $(".queue-view").addClass("hide");
@@ -176,7 +179,9 @@
                 else
                     $(".node-count").parent().addClass("hide");
 
-                if(queues[i]['defaultNodeCount'] > 0){
+                if(appDefaults['nodeCount'] > 0){
+                    $("#node-count").val(appDefaults['nodeCount']);
+                }else if(queues[i]['defaultNodeCount'] > 0){
                     $("#node-count").val(queues[i]['defaultNodeCount']);
                 }else{
                     $("#node-count").val(queueDefaults['nodeCount']);
@@ -195,7 +200,9 @@
                 else
                     $(".cpu-count").parent().addClass("hide");
 
-                if(queues[i]['defaultCPUCount'] > 0){
+                if(appDefaults['cpuCount'] > 0){
+                    $("#cpu-count").val(appDefaults['cpuCount']);
+                }else if(queues[i]['defaultCPUCount'] > 0){
                     $("#cpu-count").val(queues[i]['defaultCPUCount']);
                 }else{
                     $("#cpu-count").val(queueDefaults['cpuCount']);
@@ -215,7 +222,9 @@
                 else
                     $(".walltime-count").parent().addClass("hide");
 
-                if(queues[i]['defaultWalltime'] > 0) {
+                if(appDefaults['wallTimeLimit'] > 0){
+                    $("#wall-time").val(appDefaults['wallTimeLimit']);
+                }else if(queues[i]['defaultWalltime'] > 0) {
                     $("#wall-time").val(queues[i]['defaultWalltime']);
                 }else{
                     $("#wall-time").val(queueDefaults['wallTimeLimit']);

Reply via email to