This is an automated email from the ASF dual-hosted git repository. machristie pushed a commit to branch airavata-3016 in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
commit 8657f9d775c8debcb579fbdfe78e9fa293011616 Author: Marcus Christie <[email protected]> AuthorDate: Mon May 27 17:34:47 2019 -0400 AIRAVATA-3032 Add isInputFileUpload to DataProductSerializer Use isInputFileUpload to distinguish between input files that were uploaded from ones that are selected from user storage. This is then used to delete input files that were uploaded when the user no longer wants to use that file in an experiment. --- django_airavata/apps/api/serializers.py | 6 ++++++ .../apps/api/static/django_airavata_api/js/models/DataProduct.js | 1 + .../js/components/experiment/input-editors/FileInputEditor.vue | 4 +++- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/django_airavata/apps/api/serializers.py b/django_airavata/apps/api/serializers.py index 4e6a0fe..91a5d6b 100644 --- a/django_airavata/apps/api/serializers.py +++ b/django_airavata/apps/api/serializers.py @@ -432,6 +432,7 @@ class DataProductSerializer( lastModifiedTime = UTCPosixTimestampDateTimeField() replicaLocations = DataReplicaLocationSerializer(many=True) downloadURL = serializers.SerializerMethodField() + isInputFileUpload = serializers.SerializerMethodField() def get_downloadURL(self, data_product): """Getter for downloadURL field.""" @@ -443,6 +444,11 @@ class DataProductSerializer( urlencode({'data-product-uri': data_product.productUri})) return None + def get_isInputFileUpload(self, data_product): + """Return True if this is an uploaded input file.""" + request = self.context['request'] + return data_products_helper.is_input_file_upload(request, data_product) + # TODO move this into airavata_sdk? class FullExperiment: diff --git a/django_airavata/apps/api/static/django_airavata_api/js/models/DataProduct.js b/django_airavata/apps/api/static/django_airavata_api/js/models/DataProduct.js index 1f95ce3..2634807 100644 --- a/django_airavata/apps/api/static/django_airavata_api/js/models/DataProduct.js +++ b/django_airavata/apps/api/static/django_airavata_api/js/models/DataProduct.js @@ -28,6 +28,7 @@ const FIELDS = [ list: true }, 'downloadURL', + 'isInputFileUpload' ]; const FILENAME_REGEX = /[^/]+$/; diff --git a/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/experiment/input-editors/FileInputEditor.vue b/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/experiment/input-editors/FileInputEditor.vue index b37bf2a..4009866 100644 --- a/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/experiment/input-editors/FileInputEditor.vue +++ b/django_airavata/apps/workspace/static/django_airavata_workspace/js/components/experiment/input-editors/FileInputEditor.vue @@ -10,12 +10,14 @@ :input-file="true" /> <delete-link + v-if="dataProduct.isInputFileUpload" class="ml-2" @delete="deleteDataProduct" > - Are you sure you want to delete input file {{ dataProduct.filename }}? + Are you sure you want to delete input file {{ dataProduct.productName }}? </delete-link> <b-link + v-else @click="unselect" class="ml-2 text-secondary" >
