diff --git a/src/components/scans/DeleteScansModal.svelte b/src/components/scans/DeleteScanModal.svelte
similarity index 94%
rename from src/components/scans/DeleteScansModal.svelte
rename to src/components/scans/DeleteScanModal.svelte
index 9d35c6f0..45ac2d0c 100644
--- a/src/components/scans/DeleteScansModal.svelte
+++ b/src/components/scans/DeleteScanModal.svelte
@@ -3,7 +3,13 @@
import { clickOutside } from "../base/outsideclick";
import { createEventDispatcher, onMount } from "svelte";
export let modal_open;
- export let delete_scans = [];
+ export let delete_scan = {
+ id: 0,
+ runner: {
+ firstname: "",
+ lastname: "",
+ },
+ };
const dispatch = createEventDispatcher();
onMount(() => {
document.onkeydown = (e) => {
@@ -20,7 +26,7 @@
};
});
async function submit() {
- dispatch("delete", { scans: delete_scans });
+ dispatch("delete", { id: delete_scan.id });
modal_open = false;
}
@@ -75,7 +81,7 @@
{$_("confirm-delete")}
- please confirm deletion of {delete_scans.length} scans
+ {$_("please-confirm-the-deletion-of-scan")} #{delete_scan.id}
diff --git a/src/components/scans/ScansOverview.svelte b/src/components/scans/ScansOverview.svelte
index 1f3a6127..52fc0318 100644
--- a/src/components/scans/ScansOverview.svelte
+++ b/src/components/scans/ScansOverview.svelte
@@ -22,15 +22,14 @@
import { runnerFilter, statusFilter } from "../shared/tablefilters";
import CardRunner from "../cards/CardRunner.svelte";
import ScanValid from "./ScanValid.svelte";
- import DeleteScansModal from "./DeleteScansModal.svelte";
+ import DeleteScanModal from "./DeleteScanModal.svelte";
$: selectedScans =
$table?.getSelectedRowModel().rows.map((row) => row.original) || [];
$: selected =
$table?.getSelectedRowModel().rows.map((row) => row.index) || [];
- $: delete_active = false;
- $: active_deletes = [];
+ $: active_delete = undefined;
export let current_scans = [];
const scans_promise = ScanService.scanControllerGetAll().then((val) => {
current_scans = val;
@@ -123,12 +122,10 @@
return renderComponent(TableActions, {
detailsLink: `./${info.row.original.id}`,
deleteAction: () => {
- active_deletes = [
+ active_delete =
current_scans[
current_scans.findIndex((r) => r.id == info.row.original.id)
- ],
- ];
- delete_active = true;
+ ];
},
deleteEnabled:
store.state.jwtinfo.userdetails.permissions.includes("SCAN:DELETE"),
@@ -158,41 +155,25 @@
});
const table = createSvelteTable(options);
async function deleteScan(scan_id) {
- // await ScanService.scanControllerRemove(scan_id, true);
+ await ScanService.scanControllerRemove(scan_id, true);
current_scans = current_scans.filter((r) => r.id !== scan_id);
- // options.update((options) => ({
- // ...options,
- // data: current_scans,
- // }));
- // Toastify({
- // text: $_("scans-deleted"),
- // duration: 3500,
- // backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
- // }).showToast();
- }
- async function deleteScans(scan_ids) {
- scan_ids.forEach((scan_id) => {
- deleteScan(scan_id);
- });
- // // await ScanService.scanControllerRemove(scan_id, true);
- // current_scans = current_scans.filter((r) => r.id !== scan_id);
- // options.update((options) => ({
- // ...options,
- // data: current_scans,
- // }));
- // Toastify({
- // text: $_("scans-deleted"),
- // duration: 3500,
- // backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
- // }).showToast();
+ options.update((options) => ({
+ ...options,
+ data: current_scans,
+ }));
+ Toastify({
+ text: $_("scan-deleted"),
+ duration: 3500,
+ backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
+ }).showToast();
}
- {
- deleteScans(event.detail.scans);
+ deleteScan(event.detail.id);
}}
/>
{#if store.state.jwtinfo.userdetails.permissions.includes("SCAN:GET")}
@@ -208,6 +189,36 @@
{#if current_scans.length === 0}
{:else}
+ {#if selected.length > 0}
+
+ {/if}
diff --git a/src/locales/de.json b/src/locales/de.json
index 4c9a5479..c16502c2 100644
--- a/src/locales/de.json
+++ b/src/locales/de.json
@@ -478,6 +478,8 @@
"cards-deleted": "Karten gelöscht",
"please-confirm-the-deletion-of-runner": "Bitte bestätige die Löschung der Läufer:in",
"runner-deleted": "Läufer:in gelöscht",
+ "scan-deleted": "Scan gelöscht",
+ "please-confirm-the-deletion-of-scan": "Bitte bestätige die Löschung des Scans",
"please-confirm-the-deletion-of-card": "Bitte bestätige die Löschung der Karte",
"card": "Läuferkarte"
}
diff --git a/src/locales/en.json b/src/locales/en.json
index ea733426..d82784a9 100644
--- a/src/locales/en.json
+++ b/src/locales/en.json
@@ -478,6 +478,8 @@
"cards-deleted": "Cards deleted",
"please-confirm-the-deletion-of-runner": "Please confirm the deletion of this runner",
"runner-deleted": "runner deleted",
+ "scan-deleted": "scan deleted",
+ "please-confirm-the-deletion-of-scan": "Please confirm the deletion of scan",
"please-confirm-the-deletion-of-card": "Please confirm the deletion of this card",
"card": "card"
}