numerus/web/template/payments/methods/index.gohtml

114 lines
4.8 KiB
Plaintext
Raw Normal View History

{{ define "title" -}}
{{- /*gotype: dev.tandem.ws/tandem/numerus/pkg.PaymentMethodsPage*/ -}}
{{( pgettext "Invoicing Methods" "title" )}}
{{- end }}
{{ define "breadcrumbs" -}}
{{- /*gotype: dev.tandem.ws/tandem/numerus/pkg.PaymentMethodsPage*/ -}}
<nav data-hx-target="main" data-hx-boost="true">
<p>
<a href="{{ companyURI "/" }}">{{( pgettext "Home" "title" )}}</a> /
<a>{{ template "title" . }}</a>
</p>
</nav>
{{- end }}
{{ define "content" }}
{{- /*gotype: dev.tandem.ws/tandem/numerus/pkg.PaymentMethodsPage*/ -}}
<section data-hx-target="main" data-hx-swap="innerHTML show:false">
<h2>{{ template "title" . }}</h2>
<table>
<thead>
<tr>
<th>{{( pgettext "Default" "title" )}}</th>
<th>{{( pgettext "Invoicing Method" "title" )}}</th>
<th>{{( pgettext "Instructions" "title" )}}</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody data-hx-target="closest tr" data-hx-swap="outerHTML">
{{ with .PaymentMethods }}
{{- range . }}
{{- block "row" . }}
{{ $confirm := ( gettext "Are you sure?" )}}
<tr>
<td>
<span class="description-text"></span>
<input type="radio"
form="default_payment_form"
aria-label="{{ pgettext "Set as default" "action" }}"
name="default_payment_id"
value="{{ .Id }}"
{{ if .IsDefault }} checked{{ end}}
>
</td>
<td>{{ .Name }}</td>
<td>{{ .Instructions }}</td>
<td>
<a href="{{ companyURI "/payment-methods"}}/{{ .Id }}/edit"
aria-label="{{( gettext "Edit invoicing method" )}}"
data-hx-boost="true"
data-hx-push-url="false"
><i class="ri-edit-2-line"></i></a>
</td>
<td>
<form method="POST" action="{{ companyURI "/payment-methods"}}/{{ .Id }}"
data-hx-boost="true"
data-hx-confirm="{{ $confirm }}"
data-hx-swap="outerHTML swap:1s"
>
{{ csrfToken }}
{{ deleteMethod }}
<button class="icon" aria-label="{{( gettext "Delete invoicing method" )}}"
><i class="ri-delete-back-2-line"></i></button>
</form>
</td>
</tr>
{{- end }}
{{- end }}
{{ else }}
<tr>
<td colspan="5">{{( gettext "No invoicing methods added yet." )}}</td>
</tr>
{{ end }}
</tbody>
{{ if gt (len .PaymentMethods) 1 -}}
<tfoot>
<tr>
<td>
<form id="default_payment_form"
method="POST"
action="{{ companyURI "/payment-methods" }}/default"
data-hx-boost="true"
>
{{ csrfToken }}
{{ putMethod }}
{{ if .UpdateDefaultError -}}
<p>{{ .UpdateDefaultError}}</p>
{{- end }}
<button>{{( pgettext "Set" "action")}}</button>
</form>
</td>
<td colspan="4"></td>
</tr>
</tfoot>
{{- end }}
</table>
<form method="POST" action="{{ companyURI "/payment-methods" }}" data-hx-boost="true">
<h3>{{( pgettext "New Invoicing Method" "title")}}</h3>
<fieldset>
{{ csrfToken }}
{{ with .Form -}}
{{ template "input-field" .Name }}
{{ template "input-field" .Instructions }}
{{- end }}
</fieldset>
<footer>
<button>{{( pgettext "Add new invoicing method" "action" )}}</button>
</footer>
</form>
</section>
{{- end }}