diff --git a/lib/www/client/source/src/views/Graphs.vue b/lib/www/client/source/src/views/Graphs.vue index 19110fe..0943305 100644 --- a/lib/www/client/source/src/views/Graphs.vue +++ b/lib/www/client/source/src/views/Graphs.vue @@ -98,7 +98,7 @@ --> - + + + This project has no sequences. + @@ -299,33 +302,37 @@ export default { if (!vm.sequences.length) { vm.sequences = await vm.api([`/project/${vm.$route.params.project}/sequence`]); } - vm.$router.push({name: "graphsBySequence", params: { - project: vm.$route.params.project, - sequence: vm.sequences[0]?.sequence - }}); + if (vm.sequences.length) { // Check that the project has at least one sequence + vm.$router.push({name: "graphsBySequence", params: { + project: vm.$route.params.project, + sequence: vm.sequences[0]?.sequence + }}); + } } - + console.log("beforeRouteEnter exit"); }); }, - + async mounted () { console.log("Graphs mounted"); this.sequences = await this.api([`/project/${this.$route.params.project}/sequence`]); - - if (!this.$route.params.sequence) { - this.$router.push({name: "graphsBySequence", params: { - project: this.$route.params.project, - sequence: this.sequences[0]?.sequence - }}); - } - - const url = `/project/${this.$route.params.project}/sequence/${this.$route.params.sequence}?project=sequence,point,tstamp,geometrypreplot,errorraw,errorfinal,meta&path=$.raw.smsrc`; - this.data = Object.freeze(await this.api([url])); + if (this.sequences && this.sequences.length) { + if (!this.$route.params.sequence) { + this.$router.push({name: "graphsBySequence", params: { + project: this.$route.params.project, + sequence: this.sequences[0]?.sequence + }}); + } + + const url = `/project/${this.$route.params.project}/sequence/${this.$route.params.sequence}?project=sequence,point,tstamp,geometrypreplot,errorraw,errorfinal,meta&path=$.raw.smsrc`; + + this.data = Object.freeze(await this.api([url])); + } console.log("Mount finished"); } - + }