diff --git a/svelte/src/admin_panel/AbuseReport.svelte b/svelte/src/admin_panel/AbuseReport.svelte index a730777..ad04387 100644 --- a/svelte/src/admin_panel/AbuseReport.svelte +++ b/svelte/src/admin_panel/AbuseReport.svelte @@ -59,6 +59,7 @@ let set_status = async (action, report_type) => { + diff --git a/svelte/src/admin_panel/MollieAPI.js b/svelte/src/admin_panel/MollieAPI.js new file mode 100644 index 0000000..5423c86 --- /dev/null +++ b/svelte/src/admin_panel/MollieAPI.js @@ -0,0 +1,5 @@ +export let mollie_proxy_call = endpoint => { + const proxy_url = window.api_endpoint + "/admin/mollie_request?endpoint=" + const url = encodeURIComponent("https://api.mollie.com/v2/" + endpoint) + return fetch(proxy_url + url); +} diff --git a/svelte/src/admin_panel/MollieSettlement.svelte b/svelte/src/admin_panel/MollieSettlement.svelte index acd5063..6a10525 100644 --- a/svelte/src/admin_panel/MollieSettlement.svelte +++ b/svelte/src/admin_panel/MollieSettlement.svelte @@ -1,6 +1,7 @@ + + + +
+
+
Payments: {payments.length}
+
+
Range
+ +
Months
+ + +
+ +
+ Showing payments from {formatDate(startDate)} to {formatDate(endDate)} +
+
+ + + {#if per_country.NL} +

Accounting information

+ + + + + + + + + + + + + + + + + + + + + + + + + +
BedragBTW-codeBTWTegenrekening
BTW hoog 21%8040 - Omzet PayPal inkomsten
Geen BTW1651 - BTW OSS
Geen BTW8040 - Omzet PayPal inkomsten
+ {/if} + +

Taxes per country

+ +
+ + + + + + + + + + + + {#each Object.entries(per_country) as [country, row]} + + + + + + + + + + + {/each} + + + + + + + + + + + + {#if per_country.NL} + + + + + + + + + + + {/if} +
CountryPaymentsAmountVATVAT%TotalFeeTotal
{country}{row.count}{row.vat_fraction*100}%
Total{totals.count}
Total ex NL{totals.count - per_country.NL.count}
+
+ +

Payments

+ {#each payments as row (row.id)} + +
+
{row.id}
+
+ Date
+ {formatDate(row.createdAt, false, false, false)} +
+
+ Total
+ +
+
+ Amount
+ +
+
+ VAT
+ +
+
+ Status
+ {row.status} +
+
+
+ Amount:
+ VAT:
+ Country: {row.metadata.country}
+ User: {row.metadata.user_id}
+
+
+ {/each} +
+ + diff --git a/svelte/src/admin_panel/Router.svelte b/svelte/src/admin_panel/Router.svelte index 7260f15..4177a54 100644 --- a/svelte/src/admin_panel/Router.svelte +++ b/svelte/src/admin_panel/Router.svelte @@ -7,6 +7,7 @@ import TabMenu from "../util/TabMenu.svelte"; import UserManagement from "./UserManagement.svelte"; import EmailReporters from "./EmailReporters.svelte"; import MollieSettlements from "./MollieSettlements.svelte"; +import PayPalTaxes from "./PayPalTaxes.svelte"; let pages = [ { @@ -41,9 +42,22 @@ let pages = [ component: UserManagement, }, { path: "/admin/mollie_settlements", - title: "Mollie Settlements", + title: "Prepaid accounting", icon: "paid", component: MollieSettlements, + subpages: [ + { + path: "/admin/mollie_settlements", + title: "Mollie Settlements", + icon: "paid", + component: MollieSettlements, + }, { + path: "/admin/paypal_taxes", + title: "Paypal Taxes", + icon: "paypal", + component: PayPalTaxes, + }, + ], }, ] diff --git a/webcontroller/web_controller.go b/webcontroller/web_controller.go index bb91a2c..4201a0c 100644 --- a/webcontroller/web_controller.go +++ b/webcontroller/web_controller.go @@ -191,6 +191,7 @@ func New(r *httprouter.Router, prefix string, conf Config) (wc *WebController) { {GET, "admin/ip_bans" /* */, wc.serveTemplate("admin", handlerOpts{Auth: true})}, {GET, "admin/user_management" /* */, wc.serveTemplate("admin", handlerOpts{Auth: true})}, {GET, "admin/mollie_settlements" /**/, wc.serveTemplate("admin", handlerOpts{Auth: true})}, + {GET, "admin/paypal_taxes" /* */, wc.serveTemplate("admin", handlerOpts{Auth: true})}, {GET, "admin/globals" /* */, wc.serveForm(wc.adminGlobalsForm, handlerOpts{Auth: true})}, {PST, "admin/globals" /* */, wc.serveForm(wc.adminGlobalsForm, handlerOpts{Auth: true})},