Phase3: Billing Customerpage/Mailings
All checks were successful
Build and Push / build (push) Successful in 1m37s
All checks were successful
Build and Push / build (push) Successful in 1m37s
This commit is contained in:
@@ -8,7 +8,7 @@ interface Props {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const statusColors: Record<string, string> = {
|
const statusColors: Record<string, string> = {
|
||||||
issued: "text-text-secondary bg-surface-3",
|
open: "text-text-secondary bg-surface-3",
|
||||||
paid: "text-success bg-success/10",
|
paid: "text-success bg-success/10",
|
||||||
overdue: "text-error bg-error/10",
|
overdue: "text-error bg-error/10",
|
||||||
void: "text-text-muted bg-surface-3",
|
void: "text-text-muted bg-surface-3",
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ interface Props {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const statusColors: Record<string, string> = {
|
const statusColors: Record<string, string> = {
|
||||||
issued: "text-text-secondary bg-surface-3",
|
open: "text-text-secondary bg-surface-3",
|
||||||
paid: "text-success bg-success/10",
|
paid: "text-success bg-success/10",
|
||||||
overdue: "text-error bg-error/10",
|
overdue: "text-error bg-error/10",
|
||||||
void: "text-text-muted bg-surface-3 line-through",
|
void: "text-text-muted bg-surface-3 line-through",
|
||||||
|
|||||||
@@ -74,17 +74,6 @@ function NavBar() {
|
|||||||
{t("settings")}
|
{t("settings")}
|
||||||
</NavLink>
|
</NavLink>
|
||||||
)}
|
)}
|
||||||
{/* Feature 5: Support is available to every signed-in
|
|
||||||
user. Customers see their own tickets only; platform
|
|
||||||
admins see the queue. */}
|
|
||||||
{user && (
|
|
||||||
<NavLink
|
|
||||||
href="/support"
|
|
||||||
active={pathname.startsWith("/support")}
|
|
||||||
>
|
|
||||||
{t("support")}
|
|
||||||
</NavLink>
|
|
||||||
)}
|
|
||||||
{/* Phase 3: Billing visible to anyone signed in. The
|
{/* Phase 3: Billing visible to anyone signed in. The
|
||||||
page is org-scoped server-side — non-owner members
|
page is org-scoped server-side — non-owner members
|
||||||
see the same invoice history their owner does, but
|
see the same invoice history their owner does, but
|
||||||
@@ -99,6 +88,17 @@ function NavBar() {
|
|||||||
{t("billing")}
|
{t("billing")}
|
||||||
</NavLink>
|
</NavLink>
|
||||||
)}
|
)}
|
||||||
|
{/* Feature 5: Support is available to every signed-in
|
||||||
|
user. Customers see their own tickets only; platform
|
||||||
|
admins see the queue. */}
|
||||||
|
{user && (
|
||||||
|
<NavLink
|
||||||
|
href="/support"
|
||||||
|
active={pathname.startsWith("/support")}
|
||||||
|
>
|
||||||
|
{t("support")}
|
||||||
|
</NavLink>
|
||||||
|
)}
|
||||||
{user?.isPlatform && (
|
{user?.isPlatform && (
|
||||||
<NavLink href="/admin" active={pathname === "/admin"}>
|
<NavLink href="/admin" active={pathname === "/admin"}>
|
||||||
{t("admin")}
|
{t("admin")}
|
||||||
|
|||||||
@@ -731,10 +731,12 @@
|
|||||||
"totalLabel": "Gesamt",
|
"totalLabel": "Gesamt",
|
||||||
"downloadPdf": "PDF herunterladen",
|
"downloadPdf": "PDF herunterladen",
|
||||||
"status": {
|
"status": {
|
||||||
"issued": "Ausgestellt",
|
"draft": "Entwurf",
|
||||||
|
"open": "Offen",
|
||||||
"paid": "Bezahlt",
|
"paid": "Bezahlt",
|
||||||
"overdue": "Überfällig",
|
"overdue": "Überfällig",
|
||||||
"void": "Storniert"
|
"void": "Storniert",
|
||||||
|
"uncollectible": "Uneinbringlich"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -731,10 +731,12 @@
|
|||||||
"totalLabel": "Total",
|
"totalLabel": "Total",
|
||||||
"downloadPdf": "Download PDF",
|
"downloadPdf": "Download PDF",
|
||||||
"status": {
|
"status": {
|
||||||
"issued": "Issued",
|
"draft": "Draft",
|
||||||
|
"open": "Open",
|
||||||
"paid": "Paid",
|
"paid": "Paid",
|
||||||
"overdue": "Overdue",
|
"overdue": "Overdue",
|
||||||
"void": "Void"
|
"void": "Void",
|
||||||
|
"uncollectible": "Uncollectible"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -731,10 +731,12 @@
|
|||||||
"totalLabel": "Total",
|
"totalLabel": "Total",
|
||||||
"downloadPdf": "Télécharger le PDF",
|
"downloadPdf": "Télécharger le PDF",
|
||||||
"status": {
|
"status": {
|
||||||
"issued": "Émise",
|
"draft": "Brouillon",
|
||||||
|
"open": "Ouverte",
|
||||||
"paid": "Payée",
|
"paid": "Payée",
|
||||||
"overdue": "En retard",
|
"overdue": "En retard",
|
||||||
"void": "Annulée"
|
"void": "Annulée",
|
||||||
|
"uncollectible": "Irrécouvrable"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -731,10 +731,12 @@
|
|||||||
"totalLabel": "Totale",
|
"totalLabel": "Totale",
|
||||||
"downloadPdf": "Scarica PDF",
|
"downloadPdf": "Scarica PDF",
|
||||||
"status": {
|
"status": {
|
||||||
"issued": "Emessa",
|
"draft": "Bozza",
|
||||||
|
"open": "Aperta",
|
||||||
"paid": "Pagata",
|
"paid": "Pagata",
|
||||||
"overdue": "In ritardo",
|
"overdue": "In ritardo",
|
||||||
"void": "Annullata"
|
"void": "Annullata",
|
||||||
|
"uncollectible": "Inesigibile"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user