wip: recurring transactions
Some checks failed
Build Docker Image / Build-Docker-Image (push) Has been cancelled

This commit is contained in:
2025-05-22 09:33:08 +02:00
parent 0b5a9f8b61
commit 0d9869000e
4 changed files with 8 additions and 8 deletions

View File

@@ -17,14 +17,12 @@ type TransactionRecurring interface {
type TransactionRecurringImpl struct { type TransactionRecurringImpl struct {
s service.TransactionRecurring s service.TransactionRecurring
a service.Auth
r *Render r *Render
} }
func NewTransactionRecurring(s service.TransactionRecurring, a service.Auth, r *Render) TransactionRecurring { func NewTransactionRecurring(s service.TransactionRecurring, r *Render) TransactionRecurring {
return TransactionRecurringImpl{ return TransactionRecurringImpl{
s: s, s: s,
a: a,
r: r, r: r,
} }
} }

View File

@@ -124,12 +124,14 @@ func createHandler(d *sqlx.DB, serverSettings *types.Settings) http.Handler {
accountHandler := handler.NewAccount(accountService, render) accountHandler := handler.NewAccount(accountService, render)
treasureChestHandler := handler.NewTreasureChest(treasureChestService, transactionRecurringService, render) treasureChestHandler := handler.NewTreasureChest(treasureChestService, transactionRecurringService, render)
transactionHandler := handler.NewTransaction(transactionService, accountService, treasureChestService, render) transactionHandler := handler.NewTransaction(transactionService, accountService, treasureChestService, render)
transactionRecurringHandler := handler.NewTransactionRecurring(transactionRecurringService, render)
indexHandler.Handle(router) indexHandler.Handle(router)
accountHandler.Handle(router) accountHandler.Handle(router)
treasureChestHandler.Handle(router) treasureChestHandler.Handle(router)
authHandler.Handle(router) authHandler.Handle(router)
transactionHandler.Handle(router) transactionHandler.Handle(router)
transactionRecurringHandler.Handle(router)
// Serve static files (CSS, JS and images) // Serve static files (CSS, JS and images)
router.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("./static/")))) router.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("./static/"))))

View File

@@ -34,7 +34,7 @@ templ TransactionRecurringItem(transactionRecurring *types.TransactionRecurring)
<p class="mr-8 w-22 text-right text-green-700">{ displayBalance(transactionRecurring.Value)+" €" }</p> <p class="mr-8 w-22 text-right text-green-700">{ displayBalance(transactionRecurring.Value)+" €" }</p>
} }
<button <button
hx-get={ "/transaction/" + transactionRecurring.Id.String() + "?edit=true" } hx-get={ "/transaction-recurring/" + transactionRecurring.Id.String() + "?edit=true" }
hx-target="closest #transaction" hx-target="closest #transaction"
hx-swap="outerHTML" hx-swap="outerHTML"
class="button button-neglect px-1 flex items-center gap-2" class="button button-neglect px-1 flex items-center gap-2"
@@ -45,7 +45,7 @@ templ TransactionRecurringItem(transactionRecurring *types.TransactionRecurring)
</span> </span>
</button> </button>
<button <button
hx-delete={ "/transaction/" + transactionRecurring.Id.String() } hx-delete={ "/transaction-recurring/" + transactionRecurring.Id.String() }
hx-target="closest #transaction" hx-target="closest #transaction"
hx-swap="outerHTML" hx-swap="outerHTML"
hx-confirm="Are you sure you want to delete this transaction?" hx-confirm="Are you sure you want to delete this transaction?"
@@ -77,12 +77,12 @@ templ EditTransactionRecurring(transactionRecurring *types.TransactionRecurring,
value = displayBalance(transactionRecurring.Value) value = displayBalance(transactionRecurring.Value)
id = transactionRecurring.Id.String() id = transactionRecurring.Id.String()
cancelUrl = "/transaction/" + id cancelUrl = "/transaction-recurring/" + id
} }
}} }}
<div id="transaction" class="border-1 border-gray-300 w-full my-4 p-4 bg-gray-50 rounded-lg"> <div id="transaction" class="border-1 border-gray-300 w-full my-4 p-4 bg-gray-50 rounded-lg">
<form <form
hx-post={ "/transaction/" + id } hx-post={ "/transaction-recurring/" + id }
hx-target="closest #transaction" hx-target="closest #transaction"
hx-swap="outerHTML" hx-swap="outerHTML"
class="text-xl flex justify-end gap-4 items-center" class="text-xl flex justify-end gap-4 items-center"

View File

@@ -99,7 +99,7 @@ templ EditTreasureChest(treasureChest *types.TreasureChest, parents []*types.Tre
<div class="flex"> <div class="flex">
<h3 class="text-sm text-gray-500">Monthly Transactions</h3> <h3 class="text-sm text-gray-500">Monthly Transactions</h3>
<button <button
hx-get="/transaction-rucurring/new" hx-get="/transaction-recurring/new"
hx-target="#transaction-recurring-items" hx-target="#transaction-recurring-items"
hx-swap="afterbegin" hx-swap="afterbegin"
class="button button-primary ml-auto px-2 flex items-center gap-2" class="button button-primary ml-auto px-2 flex items-center gap-2"