feat(donations): Implemented donation deletion via confirm modal

This commit is contained in:
2023-04-19 17:41:21 +02:00
parent e5c9265588
commit 505fb8cb08
4 changed files with 1144 additions and 1000 deletions

View File

@@ -22,6 +22,7 @@
import DonationRunner from "./DonationRunner.svelte";
import DonationStatus from "./DonationStatus.svelte";
import DonationTableAction from "./DonationTableAction.svelte";
import DeleteDonationModal from "./DeleteDonationModal.svelte";
$: searchvalue = "";
$: active_deletes = [];
$: active_edits = [];
@@ -32,10 +33,6 @@
$: dataLoaded = false;
export let current_donations = [];
export let payment_modal_open = false;
export let editable = {};
export let original_data = {};
export let paid_amount_input = 0;
export const addDonations = (donations) => {
current_donations = current_donations.concat(...donations);
options.update((options) => ({
@@ -150,6 +147,22 @@
});
const table = createSvelteTable(options);
async function deleteDonation(delete_donation_id) {
await DonationService.donationControllerRemove(delete_donation_id, true);
current_donations = current_donations.filter(
(r) => r.id !== delete_donation_id
);
options.update((options) => ({
...options,
data: current_donations,
}));
Toastify({
text: $_("donation-deleted"),
duration: 3500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
}
onMount(async () => {
let page = 0;
while (page >= 0) {
@@ -188,6 +201,13 @@
}));
}}
/>
<DeleteDonationModal
delete_donation={active_deletes[0]}
modal_open={active_deletes.length > 0}
on:delete={(event) => {
deleteDonation(event.detail.id);
}}
/>
{#if store.state.jwtinfo.userdetails.permissions.includes("DONATION:GET")}
{#if !dataLoaded}
<div