FauziIsyrinApridal commited on
Commit
da17d35
·
1 Parent(s): 21f686d
Files changed (1) hide show
  1. app/(main)/feedback/page.tsx +0 -89
app/(main)/feedback/page.tsx DELETED
@@ -1,89 +0,0 @@
1
- "use client";
2
-
3
- import { useEffect, useState } from "react";
4
- import { createClient } from "@/utils/supabase/client";
5
- import {
6
- Table,
7
- TableHeader,
8
- TableBody,
9
- TableHead,
10
- TableRow,
11
- TableCell,
12
- } from "@/components/ui/table";
13
- import { revalidatePath } from "next/cache";
14
- import { redirect } from "next/navigation";
15
-
16
- type Feedback = {
17
- id: number;
18
- message: string;
19
- created_at: string;
20
- };
21
-
22
- export default async function FeedbackPage() {
23
- const supabase = createClient();
24
-
25
- const {
26
- data: { session },
27
- } = await supabase.auth.getSession();
28
-
29
- if (!session) {
30
- revalidatePath("/login", "page");
31
- redirect("/login");
32
- }
33
-
34
- const [feedbacks, setFeedbacks] = useState<Feedback[]>([]);
35
- const [loading, setLoading] = useState(true);
36
-
37
- useEffect(() => {
38
- const fetchFeedbacks = async () => {
39
- const { data, error } = await supabase
40
- .from("feedback")
41
- .select("*")
42
- .order("created_at", { ascending: false });
43
-
44
- if (!error && data) {
45
- setFeedbacks(data);
46
- }
47
- setLoading(false);
48
- };
49
-
50
- fetchFeedbacks();
51
- }, []);
52
-
53
- return (
54
- <div className="mx-auto max-w-5xl p-4">
55
- <h1 className="mb-6 text-2xl font-semibold">📋 Feedback Pengguna</h1>
56
-
57
- {loading ? (
58
- <p>Memuat data feedback...</p>
59
- ) : feedbacks.length === 0 ? (
60
- <p className="text-muted-foreground">
61
- Belum ada feedback yang dikirim.
62
- </p>
63
- ) : (
64
- <Table>
65
- <TableHeader>
66
- <TableRow>
67
- <TableHead>ID</TableHead>
68
- <TableHead>Pesan</TableHead>
69
- <TableHead className="text-right">Tanggal</TableHead>
70
- </TableRow>
71
- </TableHeader>
72
- <TableBody>
73
- {feedbacks.map((fb) => (
74
- <TableRow key={fb.id}>
75
- <TableCell>{fb.id}</TableCell>
76
- <TableCell className="max-w-[500px] whitespace-pre-line">
77
- {fb.message}
78
- </TableCell>
79
- <TableCell className="text-right text-sm text-muted-foreground">
80
- {new Date(fb.created_at).toLocaleString("id-ID")}
81
- </TableCell>
82
- </TableRow>
83
- ))}
84
- </TableBody>
85
- </Table>
86
- )}
87
- </div>
88
- );
89
- }