Files
2026-09-21 10:14:57 +01:00

126 lines
6.3 KiB
PHP
Executable File

@php
$featuresText = old('features', implode("\n", $price->featureRows()));
@endphp
<div class="grid gap-5 lg:grid-cols-2">
<div>
<label for="name" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Name</label>
<input id="name" name="name" value="{{ old('name', $price->name) }}" required
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="Basic">
@error('name')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="code" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Code</label>
<input id="code" name="code" value="{{ old('code', $price->code) }}"
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="basic">
@error('code')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="strapline" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Strapline</label>
<input id="strapline" name="strapline" value="{{ old('strapline', $price->strapline) }}"
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="Core warehouse visibility">
@error('strapline')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="badge_label" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Badge label</label>
<input id="badge_label" name="badge_label" value="{{ old('badge_label', $price->badge_label) }}"
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="Popular">
@error('badge_label')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="monthly_amount" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Monthly price</label>
<input id="monthly_amount" name="monthly_amount" type="number" step="0.01" min="0"
value="{{ old('monthly_amount', $price->exists ? number_format($price->monthly_amount / 100, 2, '.', '') : '0.00') }}"
required
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="99.00">
@error('monthly_amount')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="annual_amount" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Annual price</label>
<input id="annual_amount" name="annual_amount" type="number" step="0.01" min="0"
value="{{ old('annual_amount', $price->annual_amount !== null ? number_format($price->annual_amount / 100, 2, '.', '') : '') }}"
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="990.00">
@error('annual_amount')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="currency" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Currency</label>
<input id="currency" name="currency" value="{{ old('currency', $price->currency ?: 'gbp') }}" maxlength="3"
required
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm uppercase dark:border-zinc-700 dark:bg-zinc-950"
placeholder="gbp">
@error('currency')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div>
<label for="sort_order" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Sort order</label>
<input id="sort_order" name="sort_order" type="number" min="0"
value="{{ old('sort_order', $price->sort_order ?? 0) }}" required
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950">
@error('sort_order')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div class="lg:col-span-2">
<label for="description" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Description</label>
<textarea id="description" name="description" rows="3"
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="Short customer-facing description">{{ old('description', $price->description) }}</textarea>
@error('description')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div class="lg:col-span-2">
<label for="features" class="text-sm font-semibold text-zinc-700 dark:text-zinc-200">Features</label>
<textarea id="features" name="features" rows="6"
class="mt-2 w-full rounded-xl border-zinc-300 bg-white px-4 py-3 text-sm dark:border-zinc-700 dark:bg-zinc-950"
placeholder="One feature per line">{{ $featuresText }}</textarea>
@error('features')
<p class="mt-1 text-sm text-red-500">{{ $message }}</p>
@enderror
</div>
<div class="flex flex-wrap gap-4 lg:col-span-2">
<label
class="inline-flex items-center gap-2 rounded-xl border border-zinc-200 bg-zinc-50 px-4 py-3 text-sm font-semibold dark:border-zinc-800 dark:bg-zinc-950">
<input type="checkbox" name="is_featured" value="1" @checked(old('is_featured', $price->is_featured))
class="rounded border-zinc-300">
Featured price
</label>
<label
class="inline-flex items-center gap-2 rounded-xl border border-zinc-200 bg-zinc-50 px-4 py-3 text-sm font-semibold dark:border-zinc-800 dark:bg-zinc-950">
<input type="checkbox" name="is_active" value="1" @checked(old('is_active', $price->is_active ?? true))
class="rounded border-zinc-300">
Active
</label>
</div>
</div>