This commit is contained in:
gpt-engineer-app[bot]
2025-12-19 14:43:28 +00:00
parent 04a140b305
commit b63da103cd
8 changed files with 265 additions and 35 deletions

View File

@@ -32,13 +32,12 @@ interface Product {
price: number;
sale_price: number | null;
is_active: boolean;
consulting_duration_minutes: number | null;
}
const emptyProduct = {
title: '',
slug: '',
type: 'consulting',
type: 'webinar',
description: '',
content: '',
meeting_link: '',
@@ -46,7 +45,6 @@ const emptyProduct = {
price: 0,
sale_price: null as number | null,
is_active: true,
consulting_duration_minutes: 60,
};
export default function AdminProducts() {
@@ -89,7 +87,6 @@ export default function AdminProducts() {
price: product.price,
sale_price: product.sale_price,
is_active: product.is_active,
consulting_duration_minutes: product.consulting_duration_minutes || 60,
});
setActiveTab('details');
setDialogOpen(true);
@@ -119,7 +116,6 @@ export default function AdminProducts() {
price: form.price,
sale_price: form.sale_price || null,
is_active: form.is_active,
consulting_duration_minutes: form.type === 'consulting' ? form.consulting_duration_minutes : null,
};
if (editingProduct) {
@@ -246,23 +242,11 @@ export default function AdminProducts() {
<Select value={form.type} onValueChange={(v) => setForm({ ...form, type: v })}>
<SelectTrigger className="border-2"><SelectValue /></SelectTrigger>
<SelectContent>
<SelectItem value="consulting">Consulting</SelectItem>
<SelectItem value="webinar">Webinar</SelectItem>
<SelectItem value="bootcamp">Bootcamp</SelectItem>
</SelectContent>
</Select>
</div>
{form.type === 'consulting' && (
<div className="space-y-2">
<Label>Durasi Konsultasi (menit)</Label>
<Input
type="number"
value={form.consulting_duration_minutes || 60}
onChange={(e) => setForm({ ...form, consulting_duration_minutes: parseInt(e.target.value) || 60 })}
className="border-2"
/>
</div>
)}
<div className="space-y-2">
<Label>Deskripsi</Label>
<RichTextEditor content={form.description} onChange={(v) => setForm({ ...form, description: v })} />