You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/11/29 21:50:03 UTC
[2/3] airavata-php-gateway git commit: AIRAVATA-2195 Project owner
can't be removed when creating/editing experiment
AIRAVATA-2195 Project owner can't be removed when creating/editing experiment
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/4d546cf7
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/4d546cf7
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/4d546cf7
Branch: refs/heads/develop
Commit: 4d546cf7652499b9b0351708303e07ef0653e373
Parents: 5738c35
Author: Marcus Christie <ma...@iu.edu>
Authored: Fri Nov 11 14:58:51 2016 -0500
Committer: Marcus Christie <ma...@iu.edu>
Committed: Tue Nov 29 15:44:22 2016 -0500
----------------------------------------------------------------------
app/controllers/ExperimentController.php | 23 ++++++++++++++++++++-
app/views/experiment/create-complete.blade.php | 1 +
app/views/experiment/edit.blade.php | 1 +
3 files changed, 24 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/4d546cf7/app/controllers/ExperimentController.php
----------------------------------------------------------------------
diff --git a/app/controllers/ExperimentController.php b/app/controllers/ExperimentController.php
index a4d3238..392383b 100755
--- a/app/controllers/ExperimentController.php
+++ b/app/controllers/ExperimentController.php
@@ -77,9 +77,19 @@ class ExperimentController extends BaseController
$users = SharingUtilities::getProfilesForSharedUsers($_POST['project'], ResourceType::PROJECT);
$owner = array();
+ $projectOwner = array();
+ $project = ProjectUtilities::get_project($_POST['project']);
+ // TODO: figure out the owner of the project using sharing API
+ if ($project != null && strcmp(Session::get("username"), $project->owner) !== 0) {
+ $projectOwner[$project->owner] = $users[$project->owner];
+ $users = array_diff_key($users, $projectOwner);
+ }
+
return View::make("experiment/create-complete", array("expInputs" => $experimentInputs,
"users" => json_encode($users), "owner" => json_encode($owner),
- "canEditSharing" => true, "updateSharingViaAjax" => false));
+ "canEditSharing" => true,
+ "projectOwner" => json_encode($projectOwner),
+ "updateSharingViaAjax" => false));
}else{
return View::make("experiment/no-sharing-create-complete", array("expInputs" => $experimentInputs));
}
@@ -286,15 +296,26 @@ class ExperimentController extends BaseController
$users = SharingUtilities::getProfilesForSharedUsers($_GET['expId'], ResourceType::EXPERIMENT);
$owner = array();
+ $projectOwner = array();
if (strcmp(Session::get("username"), $experiment->userName) !== 0) {
$owner[$experiment->userName] = $users[$experiment->userName];
$users = array_diff_key($users, $owner);
}
+ // TODO: figure out the owner of the project using sharing API
+ $project = null;
+ if (SharingUtilities::userCanRead(Session::get("username"), $experiment->projectId, ResourceType::PROJECT)) {
+ $project = ProjectUtilities::get_project($experiment->projectId);
+ }
+ if ($project != null && strcmp(Session::get("username"), $project->owner) !== 0) {
+ $projectOwner[$project->owner] = $users[$project->owner];
+ $users = array_diff_key($users, $projectOwner);
+ }
$canEditSharing = $this->isExperimentOwner($experiment, Session::get('username'));
return View::make("experiment/edit", array("expInputs" => $experimentInputs,
"users" => json_encode($users), "owner" => json_encode($owner),
"canEditSharing" => $canEditSharing,
+ "projectOwner" => json_encode($projectOwner),
"updateSharingViaAjax" => false
));
}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/4d546cf7/app/views/experiment/create-complete.blade.php
----------------------------------------------------------------------
diff --git a/app/views/experiment/create-complete.blade.php b/app/views/experiment/create-complete.blade.php
index 78de55b..657af95 100755
--- a/app/views/experiment/create-complete.blade.php
+++ b/app/views/experiment/create-complete.blade.php
@@ -47,6 +47,7 @@
<script>
var users = {{ $users }};
var owner = {{ $owner }};
+ var projectOwner = {{ $projectOwner }};
$('#entity-share').data({url: "{{URL::to('/')}}/project/unshared-users", resourceId: "{{$expInputs['project']}}"})
</script>
{{ HTML::script('js/sharing/sharing_utils.js') }}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/4d546cf7/app/views/experiment/edit.blade.php
----------------------------------------------------------------------
diff --git a/app/views/experiment/edit.blade.php b/app/views/experiment/edit.blade.php
index 7aaf7b3..54ea5cb 100755
--- a/app/views/experiment/edit.blade.php
+++ b/app/views/experiment/edit.blade.php
@@ -55,6 +55,7 @@
<script>
var users = {{ $users }};
var owner = {{ $owner }};
+ var projectOwner = {{ $projectOwner }};
$('#entity-share').data({url: "{{URL::to('/')}}/experiment/unshared-users", resourceId: "{{Input::get('expId')}}"})
</script>
{{ HTML::script('js/sharing/sharing_utils.js') }}