Compare commits

...

4 Commits
1.3.0 ... 1.3.1

Author SHA1 Message Date
c842c203e2
🚀RELEASE v1.3.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-19 18:00:58 +02:00
5bcfc8db75
More filtering 2023-04-19 18:00:41 +02:00
27b4dde755
feat(donors): Added name and address filtering 2023-04-19 18:00:16 +02:00
91ab199769
feat(donations): Donation table filtering 2023-04-19 17:53:24 +02:00
6 changed files with 61 additions and 13 deletions

View File

@ -2,9 +2,18 @@
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
#### [1.3.1](https://git.odit.services/lfk/frontend/compare/1.3.0...1.3.1)
- feat(donations): Donation table filtering [`91ab199`](https://git.odit.services/lfk/frontend/commit/91ab199769c9f4f8051c74ad43a701db321f3995)
- feat(donors): Added name and address filtering [`27b4dde`](https://git.odit.services/lfk/frontend/commit/27b4dde7551995c9d7e8ca33a9bd97d429a35801)
- More filtering [`5bcfc8d`](https://git.odit.services/lfk/frontend/commit/5bcfc8db752fce96e9f523d14cefff1a4f675661)
#### [1.3.0](https://git.odit.services/lfk/frontend/compare/1.2.0...1.3.0)
> 19 April 2023
- feat(donations): Implemented donation deletion via confirm modal [`505fb8c`](https://git.odit.services/lfk/frontend/commit/505fb8cb08b81a7dcb08561bdda0f6464f140d3e)
- 🚀RELEASE v1.3.0 [`e75be49`](https://git.odit.services/lfk/frontend/commit/e75be49be42c3d5581e2204bfa064bfa3778c1b6)
- feat(donationsoverview): Switched donations overview to datatable [`133470b`](https://git.odit.services/lfk/frontend/commit/133470b6f2a63ec087f27c98ef260648a8672e5f)
- feat(donations): Implemented add donation payment via datatable refresh [`e5c9265`](https://git.odit.services/lfk/frontend/commit/e5c92655886ad9a6fcd7565fadd7955c477c3595)
- feat(donations): Donations reactive create and load into datatable [`02003ec`](https://git.odit.services/lfk/frontend/commit/02003ec80efc16aabd126710a6eeac18df43f841)

View File

@ -13,7 +13,7 @@
</head>
<body>
<span style="display: none;visibility: hidden;" id="buildinfo">RELEASE_INFO-1.3.0-RELEASE_INFO</span>
<span style="display: none;visibility: hidden;" id="buildinfo">RELEASE_INFO-1.3.1-RELEASE_INFO</span>
<noscript>You need to enable JavaScript to run this app.</noscript>
<script src="/env.js"></script>
<script type="module" src="/src/main.js"></script>

View File

@ -1,6 +1,6 @@
{
"name": "@odit/lfk-frontend",
"version": "1.3.0",
"version": "1.3.1",
"type": "module",
"scripts": {
"i18n-order": "node order.js",

View File

@ -23,6 +23,7 @@
import DonationStatus from "./DonationStatus.svelte";
import DonationTableAction from "./DonationTableAction.svelte";
import DeleteDonationModal from "./DeleteDonationModal.svelte";
import { donationDonorFilter, donationRunnerFilter } from "../shared/tablefilters";
$: searchvalue = "";
$: active_deletes = [];
$: active_edits = [];
@ -54,7 +55,7 @@
cell: (info) => {
return renderComponent(DonationDonor, { donor: info.getValue() });
},
filterFn: `includesString`,
filterFn: `donor`,
},
{
accessorKey: "runner",
@ -62,7 +63,7 @@
cell: (info) => {
return renderComponent(DonationRunner, { runner: info.getValue() });
},
filterFn: `includesString`,
filterFn: `runner`,
},
{
accessorKey: "amountPerDistance",
@ -139,6 +140,10 @@
pageSize: 50,
},
},
filterFns: {
donor: donationDonorFilter,
runner: donationRunnerFilter,
},
enableRowSelection: true,
getCoreRowModel: getCoreRowModel(),
getFilteredRowModel: getFilteredRowModel(),

View File

@ -22,6 +22,7 @@
import TableActions from "../shared/TableActions.svelte";
import DonorAddress from "./DonorAddress.svelte";
import DonorDonations from "./DonorDonations.svelte";
import { filterAddress, filterName } from "../shared/tablefilters";
$: searchvalue = "";
$: active_deletes = [];
$: current_donations = [];
@ -32,8 +33,6 @@
$: dataLoaded = false;
let modal_open = false;
let delete_donor = {};
export let current_donors = [];
export const addDonors = (donors) => {
current_donors = current_donors.concat(...donors);
@ -61,7 +60,7 @@
return `${d.firstname} ${d.lastname}`;
}
},
filterFn: `includesString`,
filterFn: `name`,
},
{
accessorKey: "address",
@ -69,7 +68,7 @@
cell: (info) => {
return renderComponent(DonorAddress, { address: info.getValue() });
},
filterFn: `includesString`,
filterFn: `address`,
},
{
accessorKey: "sponsorings",
@ -131,6 +130,10 @@
pageSize: 50,
},
},
filterFns: {
name: filterName,
address: filterAddress,
},
enableRowSelection: true,
getCoreRowModel: getCoreRowModel(),
getFilteredRowModel: getFilteredRowModel(),

View File

@ -15,17 +15,48 @@ export const groupFilter = (row, columnId, value) => {
};
export const runnerFilter = (row, columnId, value) => {
const runner = row.getValue(columnId);
if(!runner && value == "blanko"){return true}
if(!runner){return false}
return filterRunner(runner, value)
};
if(value.startsWith("#")){
return runner.id == value.replace("#","")
export const donationRunnerFilter = (row, columnId, value) => {
const runner = row.getValue(columnId);
if (!runner) { return false; }
return filterRunner(runner, value)
};
export const donationDonorFilter = (row, columnId, value) => {
const runner = row.getValue(columnId);
return filterRunner(runner, value)
};
function filterRunner(runner, value) {
if (!runner && value == "blanko") { return true }
if (!runner) { return false }
if (value.startsWith("#")) {
return runner.id == value.replace("#", "")
}
if(runner.middlename){
if (runner.middlename) {
return `${runner.firstname} ${runner.middlename} ${runner.lastname}`.toLowerCase().includes(value.toLowerCase())
}
return `${runner.firstname} ${runner.lastname}`.toLowerCase().includes(value.toLowerCase())
}
export const filterName = (row, columnId, value) => {
const obj = row.original;
if (obj.middlename) {
return `${obj.firstname} ${obj.middlename} ${obj.lastname}`.toLowerCase().includes(value.toLowerCase())
}
return `${obj.firstname} ${obj.lastname}`.toLowerCase().includes(value.toLowerCase())
};
export const filterAddress = (row, columnId, value) => {
const obj = row.original.address;
if (obj.address2) {s
return `${obj.address1} ${obj.address2} ${obj.postalcode} ${obj.city} ${obj.country}`.toLowerCase().includes(value.toLowerCase())
}
return `${obj.address1} ${obj.postalcode} ${obj.city} ${obj.country}`.toLowerCase().includes(value.toLowerCase())
};
export const statusFilter = (row, columnId, value) => {