Fix add folder to collections being broken when logged in (#1299)

* Moved add folder modal logic out

* Pass around folder paths for collections to fix folder not applying on
logged in users

* Remove unwanted use of folder value for addFolder store mutation

Co-authored-by: Liyas Thomas <liyascthomas@gmail.com>
This commit is contained in:
Andrew Bastin
2020-10-25 21:14:59 -04:00
committed by GitHub
parent f9ae242792
commit dc98ef8b57
5 changed files with 39 additions and 20 deletions

View File

@@ -53,6 +53,7 @@ export default {
props: {
show: Boolean,
folder: Object,
folderPath: String,
collectionIndex: Number,
},
data() {
@@ -61,20 +62,12 @@ export default {
}
},
methods: {
syncCollections() {
if (fb.currentUser !== null) {
if (fb.currentSettings[0].value) {
fb.writeCollections(JSON.parse(JSON.stringify(this.$store.state.postwoman.collections)))
}
}
},
addFolder() {
this.$store.commit("postwoman/addFolder", {
name: this.$data.name,
folder: this.$props.folder,
this.$emit("add-folder", {
name: this.name,
folder: this.folder,
path: this.folderPath || `${this.collectionIndex}`,
})
this.hideModal()
this.syncCollections()
},
hideModal() {
this.$emit("hide-modal")

View File

@@ -32,7 +32,7 @@
<div>
<button
class="icon"
@click="$emit('add-folder', { folder: collection })"
@click="$emit('add-folder', { folder: collection, path: `${collectionIndex}` })"
v-close-popover
>
<i class="material-icons">create_new_folder</i>
@@ -66,6 +66,7 @@
<folder
:folder="folder"
:folder-index="index"
:folder-path="`${collectionIndex}/${index}`"
:collection-index="collectionIndex"
:doc="doc"
:isFiltered="isFiltered"

View File

@@ -23,7 +23,11 @@
</button>
<template slot="popover">
<div>
<button class="icon" @click="$emit('add-folder', { folder })" v-close-popover>
<button
class="icon"
@click="$emit('add-folder', { folder, path: folderPath })"
v-close-popover
>
<i class="material-icons">create_new_folder</i>
<span>{{ $t("new_folder") }}</span>
</button>
@@ -73,6 +77,7 @@
:folder-index="subFolderIndex"
:collection-index="collectionIndex"
:doc="doc"
:folder-path="`${folderPath}/${subFolderIndex}`"
@add-folder="$emit('add-folder', $event)"
@edit-folder="$emit('edit-folder', $event)"
@edit-request="$emit('edit-request', $event)"
@@ -94,6 +99,7 @@ export default {
folder: Object,
folderIndex: Number,
collectionIndex: Number,
folderPath: String,
doc: Boolean,
isFiltered: Boolean,
},

View File

@@ -21,6 +21,8 @@ TODO:
<add-folder
:show="showModalAddFolder"
:folder="editingFolder"
:folder-path="editingFolderPath"
@add-folder="onAddFolder($event)"
@hide-modal="displayModalAddFolder(false)"
/>
<edit-folder
@@ -121,6 +123,7 @@ export default {
editingFolder: undefined,
editingFolderName: undefined,
editingFolderIndex: undefined,
editingFolderPath: undefined,
editingRequest: undefined,
editingRequestIndex: undefined,
filterText: "",
@@ -213,12 +216,21 @@ export default {
this.displayModalEdit(true)
this.syncCollections()
},
addFolder(payload) {
const { folder } = payload
this.$data.editingFolder = folder
this.displayModalAddFolder(true)
onAddFolder({ name, path }) {
this.$store.commit("postwoman/addFolder", {
name,
path,
})
this.displayModalAddFolder(false)
this.syncCollections()
},
addFolder(payload) {
const { folder, path } = payload
this.$data.editingFolder = folder
this.$data.editingFolderPath = path
this.displayModalAddFolder(true)
},
editFolder(payload) {
const { collectionIndex, folder, folderIndex } = payload
this.$data.editingCollectionIndex = collectionIndex