changeset 2376:6efd7ecd3a7d

client: pdf-gen: generate more expressive filename
author Markus Kottlaender <markus@intevation.de>
date Fri, 22 Feb 2019 08:22:57 +0100
parents 4aabbf324e55
children fdec7a652f34
files client/src/components/Pdftool.vue
diffstat 1 files changed, 26 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/client/src/components/Pdftool.vue	Thu Feb 21 15:56:07 2019 +0100
+++ b/client/src/components/Pdftool.vue	Fri Feb 22 08:22:57 2019 +0100
@@ -172,7 +172,31 @@
     ...mapState("bottlenecks", ["selectedBottleneck", "selectedSurvey"]),
     ...mapState("map", ["openLayersMap", "isolinesLegendImgDataURL"]),
     ...mapGetters("map", ["getLayerByName"]),
-    ...mapState("user", ["user"])
+    ...mapState("user", ["user"]),
+    filename() {
+      let date = new Date()
+        .toISOString()
+        .slice(0, 10)
+        .replace(/-/g, "");
+      let filename = "map";
+
+      if (this.selectedBottleneck) {
+        filename = this.selectedBottleneck;
+        if (this.selectedSurvey) {
+          filename += "-sr" + this.selectedSurvey.date_info.replace(/-/g, "");
+        }
+      }
+
+      filename =
+        filename
+          .replace(/[^\w-]/gi, "") // remove everything but wordchars and dash
+          .toLowerCase() +
+        "-exported" +
+        date +
+        ".pdf";
+
+      return filename;
+    }
   },
   methods: {
     // When a template is chosen from the dropdown, its propoerties are
@@ -372,7 +396,7 @@
             }
           });
 
-          this.pdf.doc.save("map.pdf");
+          this.pdf.doc.save(this.filename);
         }
 
         // reset to original size