+
{{ $t('file_detail.selected_multiple') }}
{{this.fileInfoDetail.length}} {{ $tc('file_detail.items', this.fileInfoDetail.length) }}
-
+
{{ $t('file_detail.selected_multiple') }}
{{this.fileInfoDetail.length}} {{ $tc('file_detail.items', this.fileInfoDetail.length) }}
- {{ this.dragedItem.name }}
+ {{ this.dragedItem.name }}
@@ -25,10 +25,12 @@
@@ -45,7 +61,6 @@ import {mapGetters} from 'vuex'
@import '@assets/vue-file-manager/_variables';
@import '@assets/vue-file-manager/_mixins';
.ghost {
- // width: 200px !important;
max-width: 300px;
min-width: 250px;
position: fixed;
diff --git a/resources/js/helpers.js b/resources/js/helpers.js
index 2e1e61fe..2b822ee1 100644
--- a/resources/js/helpers.js
+++ b/resources/js/helpers.js
@@ -311,3 +311,9 @@ const Helpers = {
}
export default Helpers
+
+// Handle styled scrollbar for Windows
+if (navigator.userAgent.indexOf('Windows') != -1) {
+ let body = document.body
+ body.classList.add('windows')
+}
\ No newline at end of file
diff --git a/resources/js/main.js b/resources/js/main.js
index bbc346b9..f700d986 100644
--- a/resources/js/main.js
+++ b/resources/js/main.js
@@ -88,6 +88,14 @@ Vue.use(Helpers);
Vue.config.productionTip = false;
+// Handle position of Drag & Drop Ghost
+document.addEventListener('drag', (event) => {
+ let multiSelect = document.getElementById('multi-select-ui')
+ multiSelect.style.top = event.clientY + 20 + 'px'
+ multiSelect.style.left = event.clientX + 'px'
+
+},false)
+
var vueFileManager = new Vue({
i18n,
store,
@@ -98,9 +106,4 @@ var vueFileManager = new Vue({
render: (h) => h(App),
}).$mount("#app");
-document.addEventListener('drag', (event) => {
- let multiSelect = document.getElementById('multi-select-ui')
- multiSelect.style.top = event.clientY + 20 + 'px'
- multiSelect.style.left = event.clientX + 'px'
-},false)
diff --git a/resources/js/store/modules/userAuth.js b/resources/js/store/modules/userAuth.js
index 1167d4ff..d4014da1 100644
--- a/resources/js/store/modules/userAuth.js
+++ b/resources/js/store/modules/userAuth.js
@@ -51,13 +51,13 @@ const actions = {
let addFavourites = []
let items = [folder]
- console.log(context.getters.fileInfoDetail)
if(!folder){
items = context.getters.fileInfoDetail
}
items.forEach((data) => {
- if(data.type === 'folder') {
+ if(data.type === 'folder' ) {
+ if(context.getters.user.relationships.favourites.data.attributes.folders.find(folder => folder.unique_id === data.unique_id)) return
addFavourites.push({
'unique_id': data.unique_id
})
@@ -68,8 +68,16 @@ const actions = {
context.commit('CLEAR_FILEINFO_DETAIL')
}
+ let pushToFavorites = []
+ //Dont push to favorites a folder what is already in favourites
+ items.map(data => {
+ if(!context.getters.user.relationships.favourites.data.attributes.folders.find(folder => folder.unique_id === data.unique_id)){
+ pushToFavorites.push(data)
+ }
+ })
+
// Add to storage
- context.commit('ADD_TO_FAVOURITES', items)
+ context.commit('ADD_TO_FAVOURITES', pushToFavorites)
axios
.post(context.getters.api + '/folders/favourites', {
diff --git a/resources/js/views/FilePages/Files.vue b/resources/js/views/FilePages/Files.vue
index a51666c4..7bdc66d8 100644
--- a/resources/js/views/FilePages/Files.vue
+++ b/resources/js/views/FilePages/Files.vue
@@ -160,6 +160,8 @@
dragFinish() {
this.area = false
+ events.$emit('drop')
+
// Check if draged item is folder
if (this.draggedItem && this.draggedItem.type !== 'folder') return
@@ -181,7 +183,7 @@
this.$store.dispatch('addToFavourites', null)
}
- events.$emit('drop')
+
},
removeFavourite(folder) {
this.$store.dispatch('removeFromFavourites', folder)
diff --git a/resources/js/views/Shared/SharedPage.vue b/resources/js/views/Shared/SharedPage.vue
index ab00495b..7b3f529f 100644
--- a/resources/js/views/Shared/SharedPage.vue
+++ b/resources/js/views/Shared/SharedPage.vue
@@ -17,7 +17,7 @@
-
+
@@ -189,7 +189,6 @@
currentPage: undefined,
homeDirectory: undefined,
draged: false,
- dragedItem: undefined
}
},
methods: {
@@ -269,15 +268,8 @@
},
created() {
- // Handle default scrollbar for the macOS
- if (!navigator.userAgent.indexOf('Mac OS X') != -1) {
- let body = document.body
- body.classList.add('scroll-bar')
- }
-
// Hnadle Drag & Drop Ghost show
events.$on('dragstart', (data) => {
- this.dragedItem = data
setTimeout(() => {
this.draged = true
}, 50);
diff --git a/resources/sass/app.scss b/resources/sass/app.scss
index 0a1a7219..81d5722a 100644
--- a/resources/sass/app.scss
+++ b/resources/sass/app.scss
@@ -440,7 +440,7 @@
}
-.scroll-bar {
+.windows {
::-webkit-scrollbar {
width: 18px;
height: 18px;
@@ -454,11 +454,12 @@
border-radius: 25px;
}
}
+
@media (prefers-color-scheme: dark) {
- .scroll-bar {
+ .windows {
::-webkit-scrollbar-thumb {
border: 6px solid $dark_mode_background;
background: $dark_mode_foreground !important;
}
}
-}
+}
\ No newline at end of file