This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git

commit 496530cca4370d97bf5fdbe834dce0d18076bf07
Author: Marcus Christie <[email protected]>
AuthorDate: Tue Feb 21 18:43:41 2023 -0500

    AIRAVATA-3682 Users may have write access on shared directory but can never 
delete it
---
 django_airavata/apps/api/serializers.py                            | 7 ++-----
 .../js/components/storage/UserStoragePathViewer.vue                | 6 +++++-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/django_airavata/apps/api/serializers.py 
b/django_airavata/apps/api/serializers.py
index 618075f2..f2339ea5 100644
--- a/django_airavata/apps/api/serializers.py
+++ b/django_airavata/apps/api/serializers.py
@@ -575,7 +575,7 @@ class DataProductSerializer(
 
     def get_userHasWriteAccess(self, data_product: DataProductModel):
         request = self.context['request']
-        file_metadata = user_storage.get_data_product_metadata(request, 
data_product_uri=data_product.productUri)
+        file_metadata = user_storage.get_data_product_metadata(request, 
data_product=data_product)
         if "userHasWriteAccess" in file_metadata:
             return file_metadata["userHasWriteAccess"]
         else:
@@ -979,11 +979,8 @@ class 
UserHasWriteAccessToPathSerializer(serializers.Serializer):
             else:
                 return False
 
-        is_shared_dir = view_utils.is_shared_dir(instance["path"])
         is_shared_path = view_utils.is_shared_path(instance["path"])
-        if is_shared_dir:
-            return False
-        elif is_shared_path:
+        if is_shared_path:
             return request.is_gateway_admin
         else:
             return True
diff --git 
a/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/storage/UserStoragePathViewer.vue
 
b/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/storage/UserStoragePathViewer.vue
index 31cb8d4b..2e4c2898 100644
--- 
a/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/storage/UserStoragePathViewer.vue
+++ 
b/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/storage/UserStoragePathViewer.vue
@@ -77,7 +77,11 @@
           <i class="fa fa-file-archive" aria-hidden="true"></i>
         </b-link>
         <delete-link
-          v-if="includeDeleteAction && data.item.userHasWriteAccess"
+          v-if="
+            includeDeleteAction &&
+            data.item.userHasWriteAccess &&
+            !data.item.isSharedDir
+          "
           @delete="deleteItem(data.item)"
         >
           Are you sure you want to delete <strong>{{ data.item.name }}</strong

Reply via email to