You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2016/10/28 20:04:52 UTC
[06/18] airavata-php-gateway git commit: AIRAVATA-2152 Support for
deleting user compute resources prefs
AIRAVATA-2152 Support for deleting user compute resources prefs
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/17425c08
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/17425c08
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/17425c08
Branch: refs/heads/develop
Commit: 17425c084ef45a9cf7f98884f98b7507c5cfaa93
Parents: 6555a6e
Author: Marcus Christie <ma...@gmail.com>
Authored: Fri Oct 14 11:57:19 2016 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Fri Oct 28 15:04:29 2016 -0400
----------------------------------------------------------------------
app/controllers/AccountController.php | 10 +++-
app/libraries/URPUtilities.php | 8 +++
app/routes.php | 1 +
.../account/user-compute-resources.blade.php | 54 +++++++++++++-----
.../user-compute-resource-preferences.blade.php | 58 +++++++++++---------
5 files changed, 91 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/17425c08/app/controllers/AccountController.php
----------------------------------------------------------------------
diff --git a/app/controllers/AccountController.php b/app/controllers/AccountController.php
index 1fe9d80..bf069db 100644
--- a/app/controllers/AccountController.php
+++ b/app/controllers/AccountController.php
@@ -562,7 +562,6 @@ class AccountController extends BaseController
public function addUserComputeResourcePreference() {
- // TODO: flash message isn't setup in the view
if( URPUtilities::add_or_update_user_CRP( Input::all()) )
{
return Redirect::to("account/user-compute-resources")->with("message","Compute Resource Account Settings have been saved.");
@@ -576,4 +575,13 @@ class AccountController extends BaseController
return Redirect::to("account/user-compute-resources")->with("message","Compute Resource Account Settings have been updated.");
}
}
+
+ public function deleteUserComputeResourcePreference() {
+ $computeResourceId = Input::get("rem-user-crId");
+ $result = URPUtilities::delete_user_CRP( $computeResourceId );
+ if( $result )
+ {
+ return Redirect::to("account/user-compute-resources")->with("message","Compute Resource Account Settings have been deleted.");
+ }
+ }
}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/17425c08/app/libraries/URPUtilities.php
----------------------------------------------------------------------
diff --git a/app/libraries/URPUtilities.php b/app/libraries/URPUtilities.php
index 026b06e..3da8f21 100644
--- a/app/libraries/URPUtilities.php
+++ b/app/libraries/URPUtilities.php
@@ -93,6 +93,14 @@ class URPUtilities
}
}
+ public static function delete_user_CRP($computeResourceId)
+ {
+ $userId = Session::get('username');
+ $gatewayId = Session::get('gateway_id');
+ $result = Airavata::deleteUserComputeResourcePreference(Session::get('authz-token'), $userId, $gatewayId, $computeResourceId);
+ return $result;
+ }
+
// Only used for testing
public static function delete_user_resource_profile()
{
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/17425c08/app/routes.php
----------------------------------------------------------------------
diff --git a/app/routes.php b/app/routes.php
index b8b5aeb..ffb6850 100755
--- a/app/routes.php
+++ b/app/routes.php
@@ -56,6 +56,7 @@ Route::post("account/delete-credential", "AccountController@deleteCredential");
Route::get("account/user-compute-resources", "AccountController@getComputeResources");
Route::post("account/add-user-crp", "AccountController@addUserComputeResourcePreference");
Route::post("account/update-user-crp", "AccountController@updateUserComputeResourcePreference");
+Route::post("account/delete-user-crp", "AccountController@deleteUserComputeResourcePreference");
/*
* The following routes will not work without logging in.
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/17425c08/app/views/account/user-compute-resources.blade.php
----------------------------------------------------------------------
diff --git a/app/views/account/user-compute-resources.blade.php b/app/views/account/user-compute-resources.blade.php
index a8dbff7..a1a1f99 100644
--- a/app/views/account/user-compute-resources.blade.php
+++ b/app/views/account/user-compute-resources.blade.php
@@ -7,6 +7,9 @@ button.add-user-cr {
margin-top: 10px;
margin-bottom: 10px;
}
+#user-cr-select-input-group {
+ margin-bottom: 10px;
+}
</style>
@stop
@@ -36,16 +39,8 @@ button.add-user-cr {
<a class="accordion-toggle collapsed"
data-toggle="collapse" data-parent="#accordion"
href="#collapse-user-crp-{{$indexUserCRP}}">
- HOSTNAME TODO: {{$user_crp->computeResourceId}}
+ {{$user_crp->crDetails->hostName}}
</a>
- <div class="pull-right col-md-2 fade">
- <span class="glyphicon glyphicon-remove remove-compute-resource"
- style="cursor:pointer;" data-toggle="modal"
- data-target="#remove-compute-resource-block"
- data-cr-name="TODO"
- data-cr-id="{{$user_crp->computeResourceId}}"
- data-gp-id="{{ $userResourceProfile->gatewayID }}"></span>
- </div>
</h4>
</div>
<div id="collapse-user-crp-{{$indexUserCRP}}"
@@ -62,7 +57,8 @@ button.add-user-cr {
<div class="form-horizontal">
@include('partials/user-compute-resource-preferences',
array('computeResource' => $user_crp->crDetails,
- 'preferences'=>$user_crp, 'show'=>true))
+ 'preferences'=>$user_crp, 'show'=>true,
+ 'allowDelete'=>true))
</div>
</form>
</div>
@@ -73,12 +69,11 @@ button.add-user-cr {
</div>
<div class="add-user-compute-resource-block hide">
<div class="well">
- <!-- TODO: need to implement /add-user-crp -->
<form action="{{URL::to('/')}}/account/add-user-crp" method="POST">
<input type="hidden" name="gatewayId" id="gatewayId" value="{{$userResourceProfile->gatewayID}}">
- <div class="input-group">
- <select name="computeResourceId" class="cr-select form-control">
+ <div id="user-cr-select-input-group" class="input-group">
+ <select id="user-cr-select" name="computeResourceId" class="form-control">
<option value="">Select a Compute Resource and configure your account</option>
@foreach( (array)$unselectedCRs as $index => $cr)
<option value="{{ $cr->computeResourceId}}">{{ $cr->hostName }}</option>
@@ -91,6 +86,33 @@ button.add-user-cr {
</form>
</div>
</div>
+
+<div class="modal fade" id="remove-user-compute-resource-block" tabindex="-1" role="dialog" aria-labelledby="add-modal"
+ aria-hidden="true">
+ <div class="modal-dialog">
+
+ <form action="{{URL::to('/')}}/account/delete-user-crp" method="POST">
+ <div class="modal-content">
+ <div class="modal-header">
+ <h3 class="text-center">Remove Compute Resource Account Confirmation</h3>
+ </div>
+ <div class="modal-body">
+ <input type="hidden" class="form-control remove-user-crId" name="rem-user-crId"/>
+
+ Do you really want to remove your Compute Resource Account settings for <span class="remove-user-cr-name"> </span>?
+ </div>
+ <div class="modal-footer">
+ <div class="form-group">
+ <input type="submit" class="btn btn-danger" value="Remove"/>
+ <input type="button" class="btn btn-default" data-dismiss="modal" value="Cancel"/>
+ </div>
+ </div>
+ </div>
+
+ </form>
+ </div>
+</div>
+
<pre>
{{var_dump($userResourceProfile)}}
</pre>
@@ -104,7 +126,11 @@ $('.add-user-cr').on('click', function(){
$(this).after( $(".add-user-compute-resource-block").html() );
});
-$("body").on("change", ".cr-select", function(){
+$(".remove-user-compute-resource").click( function(){
+ $(".remove-user-cr-name").html( $(this).data("cr-name") );
+ $(".remove-user-crId").val( $(this).data("cr-id") );
+});
+$("body").on("change", "#user-cr-select", function(){
crId = $(this).val();
//This is done as Jquery creates problems when using period(.) in id or class.
crId = crId.replace(/\./g,"_");
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/17425c08/app/views/partials/user-compute-resource-preferences.blade.php
----------------------------------------------------------------------
diff --git a/app/views/partials/user-compute-resource-preferences.blade.php b/app/views/partials/user-compute-resource-preferences.blade.php
index af70ecc..0e2036c 100644
--- a/app/views/partials/user-compute-resource-preferences.blade.php
+++ b/app/views/partials/user-compute-resource-preferences.blade.php
@@ -2,6 +2,7 @@
computeResource - (required, ComputeResourceDescription) the compute resource object
preferences - (optional, UserComputeResourcePreference) the saved preference data
show - (optional, boolean)
+ allowDelete - (optional, boolean)
-->
<!-- String replace is done as Jquery creates problems when using period(.) in id or class. -->
<div id="cr-{{ str_replace( '.', "_", $computeResource->computeResourceId) }}" class="@if(isset( $show) ) @if( !$show) hide @endif @else hide @endif">
@@ -96,37 +97,44 @@ if( isset( $preferences) && $preferences->reservationEndTime != '')
$reservationEndTime = strtotime( $addOrSubtract . " " . Session::get("user_timezone") . " hours", $preferences->reservationEndTime/1000);
?>
-<div class="form-group col-md-6">
- <label class="control-label col-md-3">Reservation Start Time</label>
-
- <div class="input-group date datetimepicker1">
- <input type="text" name="reservationStartTime" class="form-control"
- value="@if( isset( $preferences) )@if( trim($preferences->reservationStartTime) != '' || $preferences->reservationStartTime != null){{date('m/d/Y h:i:s A', intval( $reservationStartTime))}}@endif @endif"/>
- <span class="input-group-addon">
- <span class="glyphicon glyphicon-calendar"></span>
- </span>
+
+<div class="row">
+ <div class="form-group col-md-6">
+ <label class="control-label col-md-3">Reservation Start Time</label>
+
+ <div class="input-group date datetimepicker1">
+ <input type="text" name="reservationStartTime" class="form-control"
+ value="@if( isset( $preferences) )@if( trim($preferences->reservationStartTime) != '' || $preferences->reservationStartTime != null){{date('m/d/Y h:i:s A', intval( $reservationStartTime))}}@endif @endif"/>
+ <span class="input-group-addon">
+ <span class="glyphicon glyphicon-calendar"></span>
+ </span>
+ </div>
</div>
-</div>
-<div class="form-group col-md-6">
- <label class="control-label col-md-3">Reservation End Time</label>
+ <div class="form-group col-md-6">
+ <label class="control-label col-md-3">Reservation End Time</label>
- <div class="input-group date datetimepicker2">
- <input type="text" name="reservationEndTime" class="form-control"
- value="@if( isset( $preferences) )@if( trim($preferences->reservationEndTime) != ''|| $preferences->reservationStartTime != null){{date('m/d/Y h:i:s A', intval($reservationEndTime))}}@endif @endif"/>
- <span class="input-group-addon">
- <span class="glyphicon glyphicon-calendar"></span>
- </span>
+ <div class="input-group date datetimepicker2">
+ <input type="text" name="reservationEndTime" class="form-control"
+ value="@if( isset( $preferences) )@if( trim($preferences->reservationEndTime) != ''|| $preferences->reservationStartTime != null){{date('m/d/Y h:i:s A', intval($reservationEndTime))}}@endif @endif"/>
+ <span class="input-group-addon">
+ <span class="glyphicon glyphicon-calendar"></span>
+ </span>
+ </div>
</div>
</div>
-<div class="form-group col-md-12 text-center">
- <input type="submit" class="btn btn-primary submit-user-crp-form" value="Save"/>
-</div>
+<div class="row">
+ <div class="form-group col-md-12 text-center">
+ <input type="submit" class="btn btn-primary" value="Save"/>
+ <button type="button" class="btn btn-danger remove-user-compute-resource @if(isset( $allowDelete ) ) @if( !$allowDelete) hide @endif @else hide @endif"
+ data-toggle="modal"
+ data-target="#remove-user-compute-resource-block"
+ data-cr-name="{{$computeResource->hostName}}"
+ data-cr-id="{{$computeResource->computeResourceId}}">
+ Remove
+ </button>
+ </div>
</div>
-<div class="loading-gif text-center hide">
- <img src='{{URL::to('/')}}/assets/ajax-loader.gif'/>
</div>
-<div class="col-md-offset-2 col-md-8 alert alert-success hide">Compute Resource Preferences have been updated.</div>
-<div class="col-md-offset-2 col-md-8 alert alert-danger hide">An error has occurred.</div>
\ No newline at end of file