feat(portfolio): add artwork refinement and price visibility fields

This commit is contained in:
2026-02-12 22:49:00 +01:00
parent 984511f166
commit 697b3ab5e7
12 changed files with 230 additions and 2 deletions

View File

@@ -17,6 +17,17 @@ function formatLabelList(values: string[]) {
return values.join(", ")
}
function formatArtworkPrice(priceAmountCents: number | null, priceCurrency: string | null) {
if (!priceAmountCents || !priceCurrency) {
return "-"
}
return new Intl.NumberFormat("en-US", {
style: "currency",
currency: priceCurrency,
}).format(priceAmountCents / 100)
}
export default async function PublicArtworkPage({ params }: PublicArtworkPageProps) {
const [{ slug }, t] = await Promise.all([params, getTranslations("Portfolio")])
const artwork = await getPublishedArtworkBySlug(slug)
@@ -78,6 +89,12 @@ export default async function PublicArtworkPage({ params }: PublicArtworkPagePro
<p>
<strong>{t("fields.availability")}:</strong> {artwork.availability || "-"}
</p>
<p>
<strong>{t("fields.price")}:</strong>{" "}
{artwork.isPriceVisible
? formatArtworkPrice(artwork.priceAmountCents, artwork.priceCurrency)
: "-"}
</p>
</div>
<div className="space-y-2 text-sm">
<p>

View File

@@ -84,6 +84,7 @@
"dimensions": "Abmessungen",
"year": "Jahr",
"availability": "Verfügbarkeit",
"price": "Preis",
"galleries": "Galerien",
"albums": "Alben",
"categories": "Kategorien",

View File

@@ -84,6 +84,7 @@
"dimensions": "Dimensions",
"year": "Year",
"availability": "Availability",
"price": "Price",
"galleries": "Galleries",
"albums": "Albums",
"categories": "Categories",

View File

@@ -84,6 +84,7 @@
"dimensions": "Dimensiones",
"year": "Año",
"availability": "Disponibilidad",
"price": "Precio",
"galleries": "Galerías",
"albums": "Álbumes",
"categories": "Categorías",

View File

@@ -84,6 +84,7 @@
"dimensions": "Dimensions",
"year": "Année",
"availability": "Disponibilité",
"price": "Prix",
"galleries": "Galeries",
"albums": "Albums",
"categories": "Catégories",