diff --git a/assets/src/components/prompts/Delete.vue b/assets/src/components/prompts/Delete.vue index 1be2a238..e0cba26e 100644 --- a/assets/src/components/prompts/Delete.vue +++ b/assets/src/components/prompts/Delete.vue @@ -28,11 +28,13 @@ export default { this.closeHovers() buttons.loading('delete') + // If we are not on a listing, delete the current + // opened file. if (this.req.kind !== 'listing') { api.delete(this.$route.path) .then(() => { buttons.done('delete') - this.$router.push({path: url.removeLastDir(this.$route.path) + '/'}) + this.$router.push({ path: url.removeLastDir(this.$route.path) + '/' }) }) .catch(error => { buttons.done('delete') @@ -47,6 +49,8 @@ export default { return } + // Create the promises array and fill it with + // the delete request for every selected file. let promises = [] for (let index of this.selected) { @@ -55,13 +59,12 @@ export default { Promise.all(promises) .then(() => { - this.$store.commit('setReload', true) buttons.done('delete') + this.$store.commit('setReload', true) }) .catch(error => { - console.log(error) - this.$store.commit('setReload', true) buttons.done('delete') + this.$store.commit('setReload', true) this.$store.commit('showError', error) }) } diff --git a/assets/src/components/prompts/Info.vue b/assets/src/components/prompts/Info.vue index df6e5300..8f625e43 100644 --- a/assets/src/components/prompts/Info.vue +++ b/assets/src/components/prompts/Info.vue @@ -40,10 +40,14 @@ export default { }, methods: { humanSize: function () { + // If there are no files selected or this is not a listing + // show the human file size of the current request. if (this.selectedCount === 0 || this.req.kind !== 'listing') { return filesize(this.req.size) } + // Otherwise, sum the sizes of each selected file and returns + // its human form. var sum = 0 for (let i = 0; i < this.selectedCount; i++) { @@ -53,17 +57,27 @@ export default { return filesize(sum) }, humanTime: function () { + // If there are no selected files, return the current request + // modified time. if (this.selectedCount === 0) { return moment(this.req.modified).fromNow() } + // Otherwise return the modified time of the first item + // that is selected since this should not appear when + // there is more than one file selected. return moment(this.req.items[this.selected[0]]).fromNow() }, name: function () { + // Return the name of the current opened file if there + // are no selected files. if (this.selectedCount === 0) { return this.req.name } + // Otherwise, just return the name of the selected file. + // This field won't show when there is more than one + // file selected. return this.req.items[this.selected[0]].name }, dir: function () { @@ -79,6 +93,8 @@ export default { return this.req.items[this.selected[0]].isDir }, checksum: function (event, hash) { + // Gets the checksum of the current selected or + // opened file. Doesn't work for directories. event.preventDefault() let link @@ -90,12 +106,8 @@ export default { } api.checksum(link, hash) - .then((hash) => { - event.target.innerHTML = hash - }) - .catch(error => { - console.log(error) - }) + .then((hash) => { event.target.innerHTML = hash }) + .catch(error => { this.$store.commit('showError', error) }) } } } diff --git a/assets/src/components/prompts/NewDir.vue b/assets/src/components/prompts/NewDir.vue index a7c17426..bee602fd 100644 --- a/assets/src/components/prompts/NewDir.vue +++ b/assets/src/components/prompts/NewDir.vue @@ -26,6 +26,7 @@ export default { event.preventDefault() if (this.new === '') return + // Build the path of the new directory. let uri = this.$route.path if (this.$store.state.req.kind !== 'listing') { uri = url.removeLastDir(uri) + '/' @@ -35,13 +36,10 @@ export default { uri = uri.replace('//', '/') api.post(uri) - .then(() => { - this.$router.push({ path: uri }) - }) - .catch(error => { - this.$store.commit('showError', error) - }) + .then(() => { this.$router.push({ path: uri }) }) + .catch(error => { this.$store.commit('showError', error) }) + // Close the prompt this.$store.commit('closeHovers') } } diff --git a/assets/src/components/prompts/NewFile.vue b/assets/src/components/prompts/NewFile.vue index a7f98a88..c40e2844 100644 --- a/assets/src/components/prompts/NewFile.vue +++ b/assets/src/components/prompts/NewFile.vue @@ -26,6 +26,7 @@ export default { event.preventDefault() if (this.new === '') return + // Build the path of the new file. let uri = this.$route.path if (this.$store.state.req.kind !== 'listing') { uri = url.removeLastDir(uri) + '/' @@ -34,14 +35,12 @@ export default { uri += this.name uri = uri.replace('//', '/') + // Create the new file. api.post(uri) - .then(() => { - this.$router.push({ path: uri }) - }) - .catch(error => { - this.$store.commit('showError', error) - }) + .then(() => { this.$router.push({ path: uri }) }) + .catch(error => { this.$store.commit('showError', error) }) + // Close the prompt. this.$store.commit('closeHovers') } } diff --git a/assets/src/components/prompts/Rename.vue b/assets/src/components/prompts/Rename.vue index 46d1e5f7..bfaee700 100644 --- a/assets/src/components/prompts/Rename.vue +++ b/assets/src/components/prompts/Rename.vue @@ -28,6 +28,7 @@ export default { this.$store.commit('closeHovers') }, oldName: function () { + // Get the current name of the file we are editing. if (this.req.kind !== 'listing') { return this.req.name } @@ -58,14 +59,12 @@ export default { this.$router.push({ path: newLink }) return } - // TODO: keep selected after reload? this.$store.commit('setReload', true) }).catch(error => { this.$store.commit('showError', error) }) this.$store.commit('closeHovers') - return } } }