@@ -112,7 +111,8 @@
data: function () {
return {
files: [],
- uploadedFiles: []
+ uploadedFiles: [],
+ selectionContainsLockedMedias : true
}
},
methods: {
@@ -159,6 +159,58 @@
});
}
},
+ deleteMedias() {
+ let self = this, medias = this.storeGrabbed
+ if (Object.keys(medias).length === 0) {
+ $.fancyMessage({
+ title: "Supprimer un média",
+ message: "Veuillez sélectionner un média.",
+ type: "info"
+ });
+ } else {
+ $.fancyConfirm({
+ title: "Suppression de panier",
+ message: 'Etes-vous sûr de vouloir supprimer ces média ?',
+ okButton: 'Supprimer',
+ noButton: 'Annuler',
+ callback: function (value) {
+ if(!value) {
+ return;
+ }
+ $.ajax({
+ url: '/ajax/remove-media',
+ method: 'POST',
+ dataType : 'json',
+ data: {
+ medias: medias.map(function(obj) { return obj.id })
+ },
+ success: function(result) {
+ let reload = function() {
+ self.$store.commit({
+ type: 'Reload',
+ reload: Math.random()
+ })
+ }
+ if(result.length != medias.length) {
+ $.fancybox.close()
+ if(medias.length == 1) {
+ $.fancyMessage({title : "Attention", message : "Ce média est lié à Arcadia. Suppression refusée. ", type : "error"})
+ }else{
+ $.fancyMessage({title : "Attention", message : "Votre sélection contient des médias liés à Arcadia. Ces médias ne seront pas supprimés.", type : "info", callback: reload})
+ }
+ } else {
+ $.fancyMessage({title : "Suppression de média", message : "Le média a été supprimé.", type : "info", callback: reload})
+ }
+ },
+ error: function(jqXHR, textStatus, errorThrown) {
+ $.fancybox.close()
+ $.fancyMessage({title : "Attention", message : "Erreur lors de la suppression du média, merci d'actualiser la page.", type : "error"})
+ }
+ })
+ }
+ })
+ }
+ },
applySticker() {
if (Object.keys(this.storeGrabbed).length === 0) {
$.fancyMessage({
@@ -375,6 +427,19 @@
}
});
}
+ },
+ storeGrabbed() {
+ let self = this
+ self.selectionContainsLockedMedias = false
+ this.storeGrabbed.map((obj) => {
+ if(obj.isLocked) {
+ self.selectionContainsLockedMedias = true
+ }
+ })
+ if(!this.storeGrabbed.length) {
+ // * Hide if empty selection
+ self.selectionContainsLockedMedias = true
+ }
}
},
}
diff --git a/resources/js/components/media-manager/DisplayComponent.vue b/resources/js/components/media-manager/DisplayComponent.vue
index 23f3352..5f0eae4 100644
--- a/resources/js/components/media-manager/DisplayComponent.vue
+++ b/resources/js/components/media-manager/DisplayComponent.vue
@@ -161,13 +161,14 @@
}else{
if (response.data.data.length){
this.medias.data.push(...response.data.data);
- $state.loaded();
+ console.log($state)
+ $state.loaded()
this.$store.commit({
type: 'updateRole',
role: response.data.role
});
}else{
- $state.complete();
+ $state.complete()
}
this.scrollLoader = false;
}
@@ -189,6 +190,7 @@
this.offset = this.offset + this.limit;
})
.catch(function (error) {
+ console.log(error)
if(error.response.status === 419) {
__DAM.methods.sessionTimedOut()
return;
@@ -197,7 +199,7 @@
});
},
infiniteScroll($state) {
- this.loadMedias($state);
+ this.loadMedias($state)
},
resetInfiniteScroll() {
this.infiniteId = Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15);
diff --git a/resources/js/components/media-manager/media-editor/EditComponents.vue b/resources/js/components/media-manager/media-editor/EditComponents.vue
index c8b8b6c..984081f 100644
--- a/resources/js/components/media-manager/media-editor/EditComponents.vue
+++ b/resources/js/components/media-manager/media-editor/EditComponents.vue
@@ -16,7 +16,7 @@
-
+
diff --git a/resources/js/components/media-manager/media-editor/tabs/EditComponent.vue b/resources/js/components/media-manager/media-editor/tabs/EditComponent.vue
index c03508b..16e3c8f 100644
--- a/resources/js/components/media-manager/media-editor/tabs/EditComponent.vue
+++ b/resources/js/components/media-manager/media-editor/tabs/EditComponent.vue
@@ -196,9 +196,8 @@