فهرست منبع

improve benevole export/import

tripeur 4 سال پیش
والد
کامیت
32abd2a850
1فایلهای تغییر یافته به همراه6 افزوده شده و 3 حذف شده
  1. 6 3
      src/views/BenevoleManager.vue

+ 6 - 3
src/views/BenevoleManager.vue

@@ -231,10 +231,12 @@ export default defineComponent({
               b.email,
               b.comment,
               ...competences.map((c) => (b.competenceIdList.includes(c.id) ? "X" : "")),
-            ].join(",") + "\r\n")
+            ]
+              .map((s) => csv.escapeCsvField(s))
+              .join(",") + "\r\n")
       );
       const dummy = document.createElement("a");
-      dummy.href = "data:text/csv;charset=utf-8, " + encodeURI(csvContent);
+      dummy.href = "data:text/csv;charset=utf-8," + encodeURI(csvContent);
       dummy.download = "Benevole-import" + dayjs().format("-YYYY-MM-DD-hh-mm-ss[.csv]");
       document.body.appendChild(dummy);
       dummy.click();
@@ -253,7 +255,7 @@ export default defineComponent({
             if (!defaultKey.includes(key)) {
               key = key.trim();
               // check if a competence exist with this name
-              let c = this.competenceList.find((c) => c.name == key);
+              let c = this.competenceList.find((c) => c.name.trim() == key);
               if (c == undefined) {
                 Toast({ html: "Compétence inconnue: " + key, classes: "warning" });
                 c = Competence.fromObject({ name: key, description: "" });
@@ -265,6 +267,7 @@ export default defineComponent({
             }
           }
           const objectList = csv.toObject(csvtxt);
+          console.log(objectList);
           for (let item of objectList) {
             const id = parseInt(item.id);