{{- /* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Commercial */ -}} {{- /* SPDX-FileCopyrightText: 2025-2026 Christian Galo */ -}} {{/* operator_product_detail.html Composite per-product detail page. Addressable at /operator/products/{productID}; rendered as the operator.html BodyTemplate by GetProductDetailPage and swapped into #operator-body by the in-page mutation re-renders. Built from the page-anatomy parts: the header carries the product's own name below the Products trail (chrome-conventions "One location trail"); the sections (Details, Plan ladders, Purchasability, Add price, Prices) are titled by sectionHeader outside their boxes, supplied by operator_product_edit.html and operator_product_prices.html. */}} {{ template "pageHeader" .Header }} {{ if .Error }}