From 841c8d619fceb99b4494e7d62c2cd8594f72bdf2 Mon Sep 17 00:00:00 2001 From: syuilo Date: Mon, 8 Jul 2019 04:17:53 +0900 Subject: 既定のアップロード先フォルダを設定できるように MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/components/messaging-room.form.vue | 2 +- .../app/common/views/components/settings/drive.vue | 33 ++++++++++++++++++++-- src/client/app/common/views/widgets/post-form.vue | 2 +- 3 files changed, 33 insertions(+), 4 deletions(-) (limited to 'src/client/app/common/views') diff --git a/src/client/app/common/views/components/messaging-room.form.vue b/src/client/app/common/views/components/messaging-room.form.vue index 1dfb0589e4..74e30d29e8 100644 --- a/src/client/app/common/views/components/messaging-room.form.vue +++ b/src/client/app/common/views/components/messaging-room.form.vue @@ -158,7 +158,7 @@ export default Vue.extend({ }, upload(file) { - (this.$refs.uploader as any).upload(file); + (this.$refs.uploader as any).upload(file, this.$store.state.settings.uploadFolder); }, onUploaded(file) { diff --git a/src/client/app/common/views/components/settings/drive.vue b/src/client/app/common/views/components/settings/drive.vue index 7bdc806ae7..9b049c98e3 100644 --- a/src/client/app/common/views/components/settings/drive.vue +++ b/src/client/app/common/views/components/settings/drive.vue @@ -11,6 +11,12 @@
{{ $t('stats') }}
+ +
+
{{ $t('default-upload-folder') }}
+ {{ $t('default-upload-folder-name') }} + {{ $t('change-default-upload-folder') }} +
@@ -26,7 +32,8 @@ export default Vue.extend({ return { fetching: true, usage: null, - capacity: null + capacity: null, + uploadFolderName: null }; }, @@ -40,10 +47,25 @@ export default Vue.extend({ l: 0.5 }) }; - } + }, + + uploadFolder: { + get() { return this.$store.state.settings.uploadFolder; }, + set(value) { this.$store.dispatch('settings/set', { key: 'uploadFolder', value }); } + }, }, mounted() { + if (this.uploadFolder == null) { + this.uploadFolderName = this.$t('@._settings.root'); + } else { + this.$root.api('drive/folders/show', { + folderId: this.uploadFolder + }).then(folder => { + this.uploadFolderName = folder.name; + }); + } + this.$root.api('drive').then(info => { this.capacity = info.capacity; this.usage = info.usage; @@ -152,6 +174,13 @@ export default Vue.extend({ chart.render(); }); + }, + + chooseUploadFolder() { + this.$chooseDriveFolder().then(folder => { + this.uploadFolder = folder ? folder.id : null; + this.uploadFolderName = folder ? folder.name : this.$t('@._settings.root'); + }) } } }); diff --git a/src/client/app/common/views/widgets/post-form.vue b/src/client/app/common/views/widgets/post-form.vue index e180290f95..5e577c9a43 100644 --- a/src/client/app/common/views/widgets/post-form.vue +++ b/src/client/app/common/views/widgets/post-form.vue @@ -122,7 +122,7 @@ export default define({ }, upload(file) { - (this.$refs.uploader as any).upload(file); + (this.$refs.uploader as any).upload(file, this.$store.state.settings.uploadFolder); }, onDragover(e) { -- cgit v1.2.3-freya