feat(donations): Implemented donation deletion via confirm modal
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user