diff --git a/atst/domain/csp/files.py b/atst/domain/csp/files.py
index aade1775..0f3e05a0 100644
--- a/atst/domain/csp/files.py
+++ b/atst/domain/csp/files.py
@@ -43,10 +43,12 @@ class AzureFileService(FileService):
from azure.storage.common import CloudStorageAccount
from azure.storage.blob import BlobSasPermissions
+ from azure.storage.blob.models import BlobPermissions
from azure.storage.blob.blockblobservice import BlockBlobService
self.CloudStorageAccount = CloudStorageAccount
self.BlobSasPermissions = BlobSasPermissions
+ self.BlobPermissions = BlobPermissions
self.BlockBlobService = BlockBlobService
def get_token(self):
@@ -72,20 +74,22 @@ class AzureFileService(FileService):
return ({"token": sas_token}, object_name)
def generate_download_link(self, object_name, filename):
- account = self.CloudStorageAccount(
+ block_blob_service = self.BlockBlobService(
account_name=self.account_name, account_key=self.storage_key
)
- bbs = account.create_block_blob_service()
- sas_token = bbs.generate_blob_shared_access_signature(
- self.container_name,
- object_name,
- permission=self.BlobSasPermissions(read=True),
+ sas_token = block_blob_service.generate_blob_shared_access_signature(
+ container_name=self.container_name,
+ blob_name=object_name,
+ permission=self.BlobPermissions(read=True),
expiry=datetime.utcnow() + self.timeout,
content_disposition=f"attachment; filename={filename}",
protocol="https",
)
- return bbs.make_blob_url(
- self.container_name, object_name, protocol="https", sas_token=sas_token
+ return block_blob_service.make_blob_url(
+ container_name=self.container_name,
+ blob_name=object_name,
+ protocol="https",
+ sas_token=sas_token,
)
def download_task_order(self, object_name):
diff --git a/js/components/upload_input.js b/js/components/upload_input.js
index 9856405b..4f9f06fc 100644
--- a/js/components/upload_input.js
+++ b/js/components/upload_input.js
@@ -17,7 +17,7 @@ export default {
filename: {
type: String,
},
- objectName: {
+ initialObjectName: {
type: String,
},
initialErrors: {
@@ -42,6 +42,7 @@ export default {
filenameError: false,
downloadLink: '',
fileSizeLimit: this.sizeLimit,
+ objectName: this.initialObjectName,
}
},
@@ -72,6 +73,7 @@ export default {
const response = await uploader.upload(file)
if (uploadResponseOkay(response)) {
this.attachment = e.target.value
+ this.objectName = uploader.objectName
this.$refs.attachmentFilename.value = file.name
this.$refs.attachmentObjectName.value = response.objectName
this.$refs.attachmentInput.disabled = true
diff --git a/templates/components/upload_input.html b/templates/components/upload_input.html
index 4f4f307f..bd4cd73c 100644
--- a/templates/components/upload_input.html
+++ b/templates/components/upload_input.html
@@ -5,7 +5,7 @@
inline-template
{% if not field.errors %}
v-bind:filename='{{ field.filename.data | tojson }}'
- v-bind:object-name='{{ field.object_name.data | tojson }}'
+ v-bind:initial-object-name='{{ field.object_name.data | tojson }}'
{% else %}
v-bind:initial-errors='true'
{% endif %}
@@ -46,7 +46,7 @@
v-bind:value="attachment"
type="file">
-
+
{{ "forms.task_order.upload_error" | translate }}