Skip to content

Commit 4e22dae

Browse files
authored
Merge pull request #8 from Giveth/Allow-to-filter-Donation-data-by-verified-project-donations
Allow to filter Donation data by verified project donations
2 parents b16e0d9 + 6cd7093 commit 4e22dae

File tree

6 files changed

+32
-6
lines changed

6 files changed

+32
-6
lines changed

src/components/views/home/DonationsCount.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,12 @@ const DonationsCount = () => {
2626
const [fromDate, setFromDate] = useState(firstOfGiveth());
2727
const [toDate, setToDate] = useState(firstOfNextMonth());
2828
const [fromOptimism, setFromOptimism] = useState(false);
29+
const [onlyVerified, setOnlyVerified] = useState(false);
2930
const { donationsCount, loading } = useDonationsCount(
3031
fromDate,
3132
toDate,
3233
fromOptimism,
34+
onlyVerified,
3335
);
3436

3537
const { total, totalPerMonthAndYear } = donationsCount || {};
@@ -64,6 +66,12 @@ const DonationsCount = () => {
6466
onChange={setFromOptimism}
6567
label='From Optimism only'
6668
/>
69+
<br />
70+
<CheckBox
71+
checked={onlyVerified}
72+
onChange={setOnlyVerified}
73+
label='To verified projects only'
74+
/>
6775
</Col>
6876
<Col md={1} />
6977
<Col md={2}>

src/components/views/home/TotalDonations.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,21 +28,21 @@ const TotalDonations = () => {
2828
const [fromDate, setFromDate] = useState(firstOfGiveth());
2929
const [toDate, setToDate] = useState(firstOfNextMonth());
3030
const [fromOptimism, setFromOptimism] = useState(false);
31+
const [onlyVerified, setOnlyVerified] = useState(false);
3132
const { totalDonations, loading: loadingTotal } = useTotalDonations(
3233
fromDate,
3334
toDate,
3435
fromOptimism,
36+
onlyVerified,
3537
);
3638
const { categoryDonations, loading: loadingCategories } =
37-
useCategoryDonations(fromDate, toDate, fromOptimism);
39+
useCategoryDonations(fromDate, toDate, fromOptimism, onlyVerified);
3840

3941
const totalCategoryDonations = categoryDonations?.reduce(
4042
(i, j) => i + j.totalUsd,
4143
0,
4244
);
4345

44-
console.log('totalCategoryDonations', fromDate);
45-
4646
const norCategoryDonations = categoryDonations?.map(i => {
4747
return {
4848
...i,
@@ -84,6 +84,12 @@ const TotalDonations = () => {
8484
onChange={setFromOptimism}
8585
label='From Optimism only'
8686
/>
87+
<br />
88+
<CheckBox
89+
checked={onlyVerified}
90+
onChange={setOnlyVerified}
91+
label='To verified projects only'
92+
/>
8793
</Col>
8894
<Col md={1} />
8995
<Col md={2}>

src/gql/gqlDonations.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@ export const fetchTotalDonationsUSD = `
33
$fromDate: String
44
$toDate: String
55
$fromOptimismOnly: Boolean
6+
$onlyVerified: Boolean
67
) {
78
donationsTotalUsdPerDate (
89
fromDate: $fromDate
910
toDate: $toDate
1011
fromOptimismOnly: $fromOptimismOnly
12+
onlyVerified: $onlyVerified
1113
) {
1214
total
1315
totalPerMonthAndYear {
@@ -23,11 +25,13 @@ export const fetchTotalDonationsPerCategory = `
2325
$fromDate: String
2426
$toDate: String
2527
$fromOptimismOnly: Boolean
28+
$onlyVerified: Boolean
2629
) {
2730
totalDonationsPerCategory (
2831
fromDate: $fromDate
2932
toDate: $toDate
3033
fromOptimismOnly: $fromOptimismOnly
34+
onlyVerified: $onlyVerified
3135
) {
3236
id
3337
title
@@ -42,11 +46,13 @@ export const fetchDonationsCount = `
4246
$fromDate: String
4347
$toDate: String
4448
$fromOptimismOnly: Boolean
49+
$onlyVerified: Boolean
4550
) {
4651
totalDonationsNumberPerDate (
4752
fromDate: $fromDate
4853
toDate: $toDate
4954
fromOptimismOnly: $fromOptimismOnly
55+
onlyVerified: $onlyVerified
5056
) {
5157
total
5258
totalPerMonthAndYear {

src/hooks/useCategoryDonations.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const useCategoryDonations = (
1111
fromDate: Date,
1212
toDate: Date,
1313
fromOptimism?: boolean,
14+
onlyVerified?: boolean,
1415
) => {
1516
const [categoryDonations, setCategoryDonations] =
1617
useState<ITotalDonationsPerCategory[]>();
@@ -22,6 +23,7 @@ const useCategoryDonations = (
2223
fromDate: formatDateToISO(fromDate),
2324
toDate: formatDateToISO(toDate),
2425
fromOptimismOnly: fromOptimism || false,
26+
onlyVerified,
2527
};
2628
backendGQLRequest(fetchTotalDonationsPerCategory, variables)
2729
.then((res: IFetchTotalDonationsPerCategory) => {
@@ -30,7 +32,7 @@ const useCategoryDonations = (
3032
})
3133
.catch(showToastError)
3234
.finally(() => setLoading(false));
33-
}, [fromDate, toDate, fromOptimism]);
35+
}, [fromDate, toDate, fromOptimism, onlyVerified]);
3436

3537
return { categoryDonations, loading };
3638
};

src/hooks/useDonationsCount.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ const useDonationsCount = (
88
fromDate: Date,
99
toDate: Date,
1010
fromOptimism?: boolean,
11+
onlyVerified?: boolean,
1112
) => {
1213
const [donationsCount, setDonationsCount] = useState<IResFormat>();
1314
const [loading, setLoading] = useState<boolean>(true);
@@ -18,14 +19,15 @@ const useDonationsCount = (
1819
fromDate: formatDateToISO(fromDate),
1920
toDate: formatDateToISO(toDate),
2021
fromOptimismOnly: fromOptimism || false,
22+
onlyVerified,
2123
};
2224
backendGQLRequest(fetchDonationsCount, variables)
2325
.then((res: IFetchDonationsCount) => {
2426
setDonationsCount(res.data.totalDonationsNumberPerDate);
2527
})
2628
.catch(showToastError)
2729
.finally(() => setLoading(false));
28-
}, [fromDate, toDate, fromOptimism]);
30+
}, [fromDate, toDate, fromOptimism, onlyVerified]);
2931

3032
return { donationsCount, loading };
3133
};

src/hooks/useTotalDonations.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ const useTotalDonations = (
88
fromDate: Date,
99
toDate: Date,
1010
fromOptimism?: boolean,
11+
onlyVerified?: boolean,
1112
) => {
1213
const [totalDonations, setTotalDonations] = useState<IResFormat>();
1314
const [loading, setLoading] = useState<boolean>(true);
@@ -18,6 +19,7 @@ const useTotalDonations = (
1819
fromDate: formatDateToISO(fromDate),
1920
toDate: formatDateToISO(toDate),
2021
fromOptimismOnly: fromOptimism || false,
22+
onlyVerified,
2123
};
2224
backendGQLRequest(fetchTotalDonationsUSD, variables)
2325
.then((res: IFetchTotalDonationsUSD) => {
@@ -26,7 +28,7 @@ const useTotalDonations = (
2628
})
2729
.catch(showToastError)
2830
.finally(() => setLoading(false));
29-
}, [fromDate, toDate, fromOptimism]);
31+
}, [fromDate, toDate, fromOptimism, onlyVerified]);
3032

3133
return { totalDonations, loading };
3234
};

0 commit comments

Comments
 (0)