- Folder tree in navigator now has correct ordering with folder list in file view

- added translation to alert popup
- SCOUT_QUEUE default to true
This commit is contained in:
Peter Papp
2020-12-05 11:18:37 +01:00
parent 77e29852a5
commit 08bf6654fc
7 changed files with 244 additions and 230 deletions

View File

@@ -198,6 +198,7 @@ class User extends Authenticatable
return FileManagerFolder::with(['folders.shared', 'shared:token,id,item_id,permission,protected,expire_in'])
->where('parent_id', 0)
->where('user_id', $this->id)
->orderByDesc('created_at')
->get();
}

View File

@@ -41,7 +41,7 @@ return [
|
*/
'queue' => env('SCOUT_QUEUE', false),
'queue' => env('SCOUT_QUEUE', true),
/*
|--------------------------------------------------------------------------

View File

@@ -1,65 +1,87 @@
{
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=41af466b1f4273001d7c",
"/js/main.js": "/js/main.js?id=0d14ab3cf3a4d202ddad",
"/css/app.css": "/css/app.css?id=f8c73c820aec223765b3",
"/chunks/admin.js": "/chunks/admin.js?id=30267f37fc2ee75dbd7a",
"/chunks/admin-account.js": "/chunks/admin-account.js?id=23a7cfd36a51c3108c97",
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=6e9fb4caf19c3b9c37a2",
"/chunks/app-billings.js": "/chunks/app-billings.js?id=5d361c9f75b7c7872983",
"/chunks/app-email.js": "/chunks/app-email.js?id=8850f09b2db5fdc3277b",
"/chunks/app-index.js": "/chunks/app-index.js?id=aca4089fe408efe5cffe",
"/chunks/app-others.js": "/chunks/app-others.js?id=07873e46aeb50d72ff4d",
"/chunks/app-payments.js": "/chunks/app-payments.js?id=1d4de15342581e2e8fd5",
"/chunks/app-settings.js": "/chunks/app-settings.js?id=e3d9880ee3e81686d7a7",
"/chunks/app-setup.js": "/chunks/app-setup.js?id=9f7296a31778d3f91d03",
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=1f0a7d35c12bc9c55bf0",
"/chunks/contact-us.js": "/chunks/contact-us.js?id=a5150dcf81c8e1ab23a4",
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=58c543c4f92b5ca9a284",
"/chunks/dashboard.js": "/chunks/dashboard.js?id=c7bc864167d4f66fe171",
"/chunks/database.js": "/chunks/database.js?id=d9c01852701bebeb6823",
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=08a0c2de8f93e0222600",
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=e1b7c5899f04051746b2",
"/chunks/files.js": "/chunks/files.js?id=1b7a8cdb019ffb1f4e01",
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=7ff98232e7b4cc5d2c2a",
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=4299b18a1c2e8d4290e9",
"/chunks/invoices.js": "/chunks/invoices.js?id=38bb6599098c0546af78",
"/chunks/landing-page.js": "/chunks/landing-page.js?id=193e04f070db423f74d0",
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=53d4f9c58bdac1e568c7",
"/chunks/page-edit.js": "/chunks/page-edit.js?id=43423a35c4cc6ff303d7",
"/chunks/pages.js": "/chunks/pages.js?id=577701e480c9c4822d0e",
"/chunks/plan.js": "/chunks/plan.js?id=847d80475259bf406a7b",
"/chunks/plan-create.js": "/chunks/plan-create.js?id=4b0287960ac5a412a035",
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=80045ea6ac5f363093ae",
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=04ae9080882a5e768704",
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=a3b7031fb88c457f2b04",
"/chunks/plans.js": "/chunks/plans.js?id=eaad048a451823f8a446",
"/chunks/profile.js": "/chunks/profile.js?id=7a7b9b376fb0063f0074",
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=38fd64171bb89640c22d",
"/chunks/settings.js": "/chunks/settings.js?id=da4b9c0158d113702541",
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=591c3d3e6d9814e957bf",
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=9168282b651f72d2f2aa",
"/chunks/settings-password.js": "/chunks/settings-password.js?id=977cb91885e63a15b7ba",
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=0b5cfc3e5290bdd2cc4f",
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=380d3bfdfa2326444ef9",
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=99682d85d30b2d6f46b7",
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=47090233afc7b0cdf855",
"/chunks/shared-files.js": "/chunks/shared-files.js?id=8206e3b2e1011455d406",
"/chunks/shared-page.js": "/chunks/shared-page.js?id=6782abbfd2c43f37dad9",
"/chunks/sign-in.js": "/chunks/sign-in.js?id=ec080714b24154cf1081",
"/chunks/sign-up.js": "/chunks/sign-up.js?id=0d8b571bcf5a54f073fd",
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=d62e8ecdbb0c45be9d27",
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=01f83b986d87cf9d7c4e",
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=f7ad97672e4c3aebaee6",
"/chunks/upgrade.js": "/chunks/upgrade.js?id=b742eda77c2ba257a7a0",
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=8b5dc6a6947384a903ea",
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=001a77d89b37f23bc9d7",
"/chunks/user.js": "/chunks/user.js?id=fbca3a769bd00a28c777",
"/chunks/user-create.js": "/chunks/user-create.js?id=e78773c0c7a5da4f4e0a",
"/chunks/user-delete.js": "/chunks/user-delete.js?id=ae185fc4ad035c7a4d99",
"/chunks/user-detail.js": "/chunks/user-detail.js?id=08393537e5264c994764",
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=f1fca4967545a2be5db9",
"/chunks/user-password.js": "/chunks/user-password.js?id=646e5cb76aab50d51c16",
"/chunks/user-storage.js": "/chunks/user-storage.js?id=c3f72412f350e51a9ecd",
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=526de31006f799134093",
"/chunks/users.js": "/chunks/users.js?id=9a0a7dc6fac9084764f8"
"/js/main.js": "/js/main.js",
"/css/app.css": "/css/app.css",
"/chunks/admin.js": "/chunks/admin.js?id=5807ec412746448047f9",
"/chunks/admin-account.js": "/chunks/admin-account.js?id=d820e99a25f40cc97570",
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js?id=1ad1b7b56512338223eb",
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~01aef58e.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~01aef58e.js?id=6c02fe91a2e167b63a98",
"/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.js?id=312acc0ff7daa010eea5",
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=03e587de7dd10fba3ead",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js?id=fd3c7242b5c765b469e4",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=ebb1b6ed1df237b56cd9",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js?id=9df028786df5d3279ab9",
"/chunks/app-billings.js": "/chunks/app-billings.js?id=2b87899e656ed382d260",
"/chunks/app-email.js": "/chunks/app-email.js?id=2e5a1b525d335367cfc1",
"/chunks/app-index.js": "/chunks/app-index.js?id=05747ca2c86a1daea9cd",
"/chunks/app-others.js": "/chunks/app-others.js?id=55e1ec30bdca87c1adef",
"/chunks/app-payments.js": "/chunks/app-payments.js?id=796c7c2cfb9c6c39c8a7",
"/chunks/app-settings.js": "/chunks/app-settings.js?id=b85ce942737e25c37b8a",
"/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js": "/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js?id=99eb5ed6af46738c97e0",
"/chunks/app-setup.js": "/chunks/app-setup.js?id=78bbf0b2065cf270dbe6",
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=573e29a00589cb5d3489",
"/chunks/contact-us.js": "/chunks/contact-us.js?id=7ded3c3e9668eea6c15c",
"/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js": "/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js?id=96ac1ede73f3fc9afa37",
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=278eef02eace89698f20",
"/chunks/dashboard.js": "/chunks/dashboard.js?id=67d8b906c2200d7ddeb0",
"/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js": "/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js?id=d7795f20187163939276",
"/chunks/database.js": "/chunks/database.js?id=c7aa7caa9126b1ecdffa",
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=1d8ee4bfbcde69c97021",
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=86093752b39920044fda",
"/chunks/files.js": "/chunks/files.js?id=5b67bf937fbdaf671618",
"/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js?id=e285e842f58178d681c4",
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=aa4de4e667af0da539c3",
"/chunks/files~chunks/shared-page.js": "/chunks/files~chunks/shared-page.js?id=825fdc29b64056380220",
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=06fc72f0d9a057bb8f18",
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=8a5dfc3d2d07db1102db",
"/chunks/invoices.js": "/chunks/invoices.js?id=ed09e9eb75df449d92da",
"/chunks/landing-page.js": "/chunks/landing-page.js?id=dabf50b10edb2ae2f388",
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=6666b81edc5ff6f60e82",
"/chunks/page-edit.js": "/chunks/page-edit.js?id=f7e24a5841604313332a",
"/chunks/pages.js": "/chunks/pages.js?id=fd95e621e5a9de421d34",
"/chunks/plan.js": "/chunks/plan.js?id=cc041fb9c2cb9ad8f0ff",
"/chunks/plan-create.js": "/chunks/plan-create.js?id=a66d8ae3a6edd08b755b",
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=0732885b6e0839afe66e",
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=445ca1affcefaf37cbfc",
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=8372954a6c160302859d",
"/chunks/plans.js": "/chunks/plans.js?id=33aeae014e80cf2dd177",
"/chunks/profile.js": "/chunks/profile.js?id=b91a5757f57bdaee120d",
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=a44394b1fa09f996a9fd",
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=8c92667fa59dc9fd7ac7",
"/chunks/settings.js": "/chunks/settings.js?id=0be829a409b9cbcb9bfc",
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=25225a758b04d6d48617",
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=c7499d2d79bf9620dfa5",
"/chunks/settings-password.js": "/chunks/settings-password.js?id=015ead5623aee1a543cf",
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=7c45369792974d83352e",
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=013b6f15f907caaecd1e",
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=6172a89afe3b27cb76cd",
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=99b4f321902fe6b0eb23",
"/chunks/shared-files.js": "/chunks/shared-files.js?id=a1262ec81010fb16f1e8",
"/chunks/shared-page.js": "/chunks/shared-page.js?id=1843d4b70b6a1f2ee744",
"/chunks/sign-in.js": "/chunks/sign-in.js?id=ddb0ae9561462e691ce3",
"/chunks/sign-up.js": "/chunks/sign-up.js?id=be89f6dcf7372d23668f",
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=0e09f1509a73646c3198",
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=7a4e1ba1d08b0bb37453",
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=f672876adcf877e6e126",
"/chunks/upgrade.js": "/chunks/upgrade.js?id=1c94ed3f8c2c366f730b",
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=638ac716c4995894563c",
"/chunks/upgrade-billing~chunks/upgrade-plan.js": "/chunks/upgrade-billing~chunks/upgrade-plan.js?id=7e805915ede7c330c6d1",
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=ecc3c773b7c8ff422cf7",
"/chunks/user.js": "/chunks/user.js?id=1e0f9c8cab76e5ef871f",
"/chunks/user-create.js": "/chunks/user-create.js?id=fb808e071ab049b55490",
"/chunks/user-delete.js": "/chunks/user-delete.js?id=9c7eb4dab2be288cb884",
"/chunks/user-detail.js": "/chunks/user-detail.js?id=43545e2d110b40a47756",
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=b05dcb7e7ad2f4959e52",
"/chunks/user-password.js": "/chunks/user-password.js?id=57fe622e9a03e834d6fa",
"/chunks/user-storage.js": "/chunks/user-storage.js?id=76465e9a36a2ab78eff3",
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=e9528debb38dc1654cef",
"/chunks/users.js": "/chunks/users.js?id=05709c5a34d052a69d16",
"/js/main.20bb95cdabea8a32786f.hot-update.js": "/js/main.20bb95cdabea8a32786f.hot-update.js",
"/chunks/files.20bb95cdabea8a32786f.hot-update.js": "/chunks/files.20bb95cdabea8a32786f.hot-update.js",
"/js/main.329e3330d9f1305fee55.hot-update.js": "/js/main.329e3330d9f1305fee55.hot-update.js",
"/js/main.e9dde629c4e3bc2ee1e2.hot-update.js": "/js/main.e9dde629c4e3bc2ee1e2.hot-update.js",
"/js/main.c654a85fd7545790ca68.hot-update.js": "/js/main.c654a85fd7545790ca68.hot-update.js",
"/chunks/files.f866a861dfffb7a28cd5.hot-update.js": "/chunks/files.f866a861dfffb7a28cd5.hot-update.js",
"/chunks/files.578c6cbac487a813c614.hot-update.js": "/chunks/files.578c6cbac487a813c614.hot-update.js",
"/chunks/files.425c69829cf8b3d39b06.hot-update.js": "/chunks/files.425c69829cf8b3d39b06.hot-update.js",
"/chunks/files.f31081ecd5aa4a951b9e.hot-update.js": "/chunks/files.f31081ecd5aa4a951b9e.hot-update.js"
}

View File

@@ -256,6 +256,7 @@
},
"alerts": {
"error_confirm": "哦,出了个问题!",
"leave_to_sign_in": "Do you really want to leave?",
"success_confirm": "太棒了!"
},
"context_menu": {

View File

@@ -258,6 +258,7 @@
},
"alerts": {
"error_confirm": "Thats horrible!",
"leave_to_sign_in": "Do you really want to leave?",
"success_confirm": "Awesome!"
},
"context_menu": {

View File

@@ -258,6 +258,7 @@
},
"alerts": {
"error_confirm": "To je hrozné!",
"leave_to_sign_in": "Naozaj chcete odísť?",
"success_confirm": "Skvelé!"
},
"context_menu": {

View File

@@ -1,11 +1,11 @@
<template>
<section id="viewport" v-if="user">
<section id="viewport" v-if="user">
<ContentSidebar>
<!--Empty storage warning-->
<ContentGroup v-if="config.storageLimit && storage.used > 95">
<UpgradeSidebarBanner />
<UpgradeSidebarBanner/>
</ContentGroup>
<!--Locations-->
@@ -19,8 +19,7 @@
{{ $t('sidebar.home') }}
</div>
</a>
<a class="menu-list-item link" :class="{'is-active': $isThisLocation(['latest'])}"
@click="getLatest">
<a class="menu-list-item link" :class="{'is-active': $isThisLocation(['latest'])}" @click="getLatest">
<div class="icon">
<upload-cloud-icon size="17"></upload-cloud-icon>
</div>
@@ -28,8 +27,7 @@
{{ $t('sidebar.latest') }}
</div>
</a>
<a class="menu-list-item link trash" :class="{'is-active-trash': $isThisLocation(['trash', 'trash-root'])}"
@click="getTrash">
<a class="menu-list-item link trash" :class="{'is-active-trash': $isThisLocation(['trash', 'trash-root'])}" @click="getTrash">
<div class="icon">
<trash2-icon size="17"></trash2-icon>
</div>
@@ -45,29 +43,19 @@
<span class="empty-note navigator" v-if="tree.length == 0">
{{ $t('sidebar.folders_empty') }}
</span>
<TreeMenuNavigator class="folder-tree" :depth="0" :nodes="items" v-for="items in tree"
:key="items.unique_id"/>
<TreeMenuNavigator class="folder-tree" :depth="0" :nodes="items" v-for="items in tree" :key="items.unique_id"/>
</ContentGroup>
<!--Favourites-->
<ContentGroup :title="$t('sidebar.favourites')" slug="favourites" :can-collapse="true">
<div class="menu-list-wrapper vertical favourites"
:class="{ 'is-dragenter': area }"
@dragover.prevent="dragEnter"
@dragleave="dragLeave"
@drop="dragFinish($event)"
>
<div class="menu-list-wrapper vertical favourites" :class="{ 'is-dragenter': area }" @dragover.prevent="dragEnter" @dragleave="dragLeave" @drop="dragFinish($event)">
<transition-group tag="div" class="menu-list" name="folder-item">
<span class="empty-note favourites" v-if="favourites.length == 0" :key="0">
{{ $t('sidebar.favourites_empty') }}
</span>
<a @click.stop="openFolder(folder)"
class="menu-list-item"
:class="{'is-current': (folder && currentFolder) && (currentFolder.unique_id === folder.unique_id)}"
v-for="folder in favourites"
:key="folder.unique_id">
<a @click.stop="openFolder(folder)" class="menu-list-item" :class="{'is-current': (folder && currentFolder) && (currentFolder.unique_id === folder.unique_id)}" v-for="folder in favourites" :key="folder.unique_id">
<div>
<folder-icon size="17" class="folder-icon"></folder-icon>
<span class="label">{{ folder.name }}</span>
@@ -85,190 +73,190 @@
</template>
<script>
import UpgradeSidebarBanner from '@/components/Others/UpgradeSidebarBanner'
import TreeMenuNavigator from '@/components/Others/TreeMenuNavigator'
import MultiSelected from '@/components/FilesView/MultiSelected'
import ContentFileView from '@/components/Others/ContentFileView'
import ContentSidebar from '@/components/Sidebar/ContentSidebar'
import ContentGroup from '@/components/Sidebar/ContentGroup'
import {mapGetters} from 'vuex'
import {events} from '@/bus'
import {
import UpgradeSidebarBanner from '@/components/Others/UpgradeSidebarBanner'
import TreeMenuNavigator from '@/components/Others/TreeMenuNavigator'
import MultiSelected from '@/components/FilesView/MultiSelected'
import ContentFileView from '@/components/Others/ContentFileView'
import ContentSidebar from '@/components/Sidebar/ContentSidebar'
import ContentGroup from '@/components/Sidebar/ContentGroup'
import { mapGetters } from 'vuex'
import { events } from '@/bus'
import {
UploadCloudIcon,
FolderIcon,
Trash2Icon,
HomeIcon,
XIcon
} from 'vue-feather-icons'
export default {
name: 'FilesView',
components: {
UpgradeSidebarBanner,
TreeMenuNavigator,
ContentFileView,
MultiSelected,
ContentSidebar,
UploadCloudIcon,
ContentGroup,
FolderIcon,
Trash2Icon,
HomeIcon,
XIcon,
} from 'vue-feather-icons'
export default {
name: 'FilesView',
components: {
UpgradeSidebarBanner,
TreeMenuNavigator,
ContentFileView,
MultiSelected,
ContentSidebar,
UploadCloudIcon,
ContentGroup,
FolderIcon,
Trash2Icon,
HomeIcon,
XIcon,
XIcon
},
computed: {
...mapGetters(['user', 'homeDirectory', 'currentFolder', 'config', 'fileInfoDetail']),
favourites() {
return this.user.relationships.favourites.data.attributes.folders
},
computed: {
...mapGetters(['user', 'homeDirectory', 'currentFolder', 'config', 'fileInfoDetail']),
favourites() {
return this.user.relationships.favourites.data.attributes.folders
},
tree() {
return this.user.relationships.tree.data.attributes.folders
},
storage() {
return this.$store.getters.user.relationships.storage.data.attributes
}
tree() {
return this.user.relationships.tree.data.attributes.folders
},
data() {
return {
area: false,
draggedItem: undefined,
}
storage() {
return this.$store.getters.user.relationships.storage.data.attributes
}
},
data() {
return {
area: false,
draggedItem: undefined
}
},
methods: {
getTrash() {
this.$store.dispatch('getTrash')
},
methods: {
getTrash() {
this.$store.dispatch('getTrash')
},
getLatest() {
this.$store.dispatch('getLatest')
},
goHome() {
this.$store.dispatch('getFolder', [{folder: this.homeDirectory, back: false, init: true}])
},
openFolder(folder) {
this.$store.dispatch('getFolder', [{folder: folder, back: false, init: false}])
},
dragEnter() {
if (this.draggedItem && this.draggedItem.type !== 'folder') return
getLatest() {
this.$store.dispatch('getLatest')
},
goHome() {
this.$store.dispatch('getFolder', [{ folder: this.homeDirectory, back: false, init: true }])
},
openFolder(folder) {
this.$store.dispatch('getFolder', [{ folder: folder, back: false, init: false }])
},
dragEnter() {
if (this.draggedItem && this.draggedItem.type !== 'folder') return
if(this.fileInfoDetail.length > 0 && this.fileInfoDetail.find(item => item.type !== 'folder')) return
if (this.fileInfoDetail.length > 0 && this.fileInfoDetail.find(item => item.type !== 'folder')) return
this.area = true
},
dragLeave() {
this.area = false
},
dragFinish() {
this.area = false
this.area = true
},
dragLeave() {
this.area = false
},
dragFinish() {
this.area = false
events.$emit('drop')
events.$emit('drop')
// Check if dragged item is folder
if (this.draggedItem && this.draggedItem.type !== 'folder') return
// Check if dragged item is folder
if (this.draggedItem && this.draggedItem.type !== 'folder') return
// Check if folder exist in favourites
if (this.favourites.find(folder => folder.unique_id == this.draggedItem.unique_id)) return
// Check if folder exist in favourites
if (this.favourites.find(folder => folder.unique_id == this.draggedItem.unique_id)) return
// Prevent to move folders to self
if(this.fileInfoDetail.length > 0 && this.fileInfoDetail.find(item => item.type !== 'folder')) return
// Store favourites folder
//Add to favourites non selected folder
if(!this.fileInfoDetail.includes(this.draggedItem)){
// Prevent to move folders to self
if (this.fileInfoDetail.length > 0 && this.fileInfoDetail.find(item => item.type !== 'folder')) return
// Store favourites folder
//Add to favourites non selected folder
if (!this.fileInfoDetail.includes(this.draggedItem)) {
this.$store.dispatch('addToFavourites', this.draggedItem)
}
//Add to favourites selected folders
if(this.fileInfoDetail.includes(this.draggedItem)) {
this.$store.dispatch('addToFavourites', null)
}
},
removeFavourite(folder) {
this.$store.dispatch('removeFromFavourites', folder)
}
//Add to favourites selected folders
if (this.fileInfoDetail.includes(this.draggedItem)) {
this.$store.dispatch('addToFavourites', null)
}
},
created() {
this.goHome()
removeFavourite(folder) {
this.$store.dispatch('removeFromFavourites', folder)
}
},
created() {
this.goHome()
// Listen for dragstart folder items
events.$on('dragstart', (item) => { this.draggedItem = item , this.dragInProgress = true})
// Listen for dragstart folder items
events.$on('dragstart', (item) => {
this.draggedItem = item , this.dragInProgress = true
})
events.$on('drop', () => {
this.dragInProgress = false
})
},
beforeRouteLeave(to, from, next) {
// Inquire user about his willing to step back to sign in page
if (to.name === 'SignIn') {
const answer = window.confirm('Do you really want to leave?')
if (answer) {
next()
} else {
next(false)
}
} else {
events.$on('drop', () => {
this.dragInProgress = false
})
},
beforeRouteLeave(to, from, next) {
// Inquire user about his willing to step back to sign in page
if (to.name === 'SignIn') {
if (window.confirm(this.$t('alerts.leave_to_sign_in'))) {
next()
} else {
next(false)
}
},
} else {
next()
}
}
}
</script>
<style lang="scss" scoped>
.empty-note {
&.navigator {
padding: 5px 25px 10px;
}
&.favourites {
padding: 5px 23px 10px;
}
}
.navigator {
width: 100%;
overflow-x: auto;
}
@media only screen and (max-width: 1024px) {
.empty-note {
&.navigator {
padding: 5px 25px 10px;
padding: 5px 20px 10px;
}
&.favourites {
padding: 5px 23px 10px;
padding: 5px 18px 10px;
}
}
}
.navigator {
width: 100%;
overflow-x: auto;
}
// Transition
.folder-item-move {
transition: transform 300s ease;
}
@media only screen and (max-width: 1024px) {
.folder-item-enter-active {
transition: all 300ms ease;
}
.empty-note {
.folder-item-leave-active {
transition: all 300ms;
}
&.navigator {
padding: 5px 20px 10px;
}
.folder-item-enter, .folder-item-leave-to /* .list-leave-active below version 2.1.8 */
{
opacity: 0;
transform: translateX(30px);
}
&.favourites {
padding: 5px 18px 10px;
}
}
}
// Transition
.folder-item-move {
transition: transform 300s ease;
}
.folder-item-enter-active {
transition: all 300ms ease;
}
.folder-item-leave-active {
transition: all 300ms;
}
.folder-item-enter, .folder-item-leave-to /* .list-leave-active below version 2.1.8 */
{
opacity: 0;
transform: translateX(30px);
}
.folder-item-leave-active {
position: absolute;
}
.folder-item-leave-active {
position: absolute;
}
</style>