From f0dd99b330f2c7f2331ae054cab2fa98ea1a636e Mon Sep 17 00:00:00 2001 From: hfizzx Date: Tue, 19 May 2026 11:20:11 +0700 Subject: [PATCH] ganti hero dan logo --- .../database.sql | 58 --- .../server/server.js | 356 ---------------- .../src/assets/main.css | 41 -- .../src/components/Navbar.vue | 168 -------- .../src/utils.js | 138 ------ .../src/views/ProductDetailView.vue | 105 ----- .../src/views/SellProductView.vue | 171 -------- .../tailwind.config.js | 25 -- .../database.sql | 69 --- .../server/server.js | 348 --------------- .../src/assets/main.css | 95 ----- .../src/components/Navbar.vue | 150 ------- .../src/utils.js | 137 ------ .../src/views/ProductDetailView.vue | 135 ------ .../src/views/SellProductView.vue | 149 ------- .../tailwind.config.js | 27 -- .../src/assets/main.css | 304 -------------- .../src/components/DashboardSidebar.vue | 127 ------ .../src/components/ProductCard.vue | 66 --- .../src/views/HomeView.vue | 114 ----- .../server/server.js | 348 --------------- .../src/assets/main.css | 95 ----- .../src/components/Navbar.vue | 150 ------- .../src/components/ProductCard.vue | 66 --- .../src/data/products.js | 137 ------ .../src/views/ProductDetailView.vue | 135 ------ .../src/views/SellProductView.vue | 162 ------- .../tailwind.config.js | 27 -- .../server/server.js | 395 ------------------ .../src/assets/main.css | 200 --------- .../src/views/ProductDetailView.vue | 138 ------ .../src/views/SellProductView.vue | 173 -------- .../server/server.js | 393 ----------------- .../src/assets/main.css | 106 ----- .../src/components/ProductCard.vue | 66 --- .../src/utils.js | 137 ------ .../src/views/ProductDetailView.vue | 135 ------ .../src/views/SellProductView.vue | 173 -------- .../SellProductView.vue | 158 ------- .../server.js | 348 --------------- .../server/server.js | 349 ---------------- .../src/utils.js | 137 ------ .../src/views/SellProductView.vue | 173 -------- public/Hero.jpeg | Bin 0 -> 327119 bytes src/components/Navbar.vue | 66 ++- src/views/HomeView.vue | 2 +- 46 files changed, 33 insertions(+), 7019 deletions(-) delete mode 100644 backup-before-dark-multiphoto-20260519-091652/database.sql delete mode 100644 backup-before-dark-multiphoto-20260519-091652/server/server.js delete mode 100644 backup-before-dark-multiphoto-20260519-091652/src/assets/main.css delete mode 100644 backup-before-dark-multiphoto-20260519-091652/src/components/Navbar.vue delete mode 100644 backup-before-dark-multiphoto-20260519-091652/src/utils.js delete mode 100644 backup-before-dark-multiphoto-20260519-091652/src/views/ProductDetailView.vue delete mode 100644 backup-before-dark-multiphoto-20260519-091652/src/views/SellProductView.vue delete mode 100644 backup-before-dark-multiphoto-20260519-091652/tailwind.config.js delete mode 100644 backup-before-dark-multiphoto-20260519-092338/database.sql delete mode 100644 backup-before-dark-multiphoto-20260519-092338/server/server.js delete mode 100644 backup-before-dark-multiphoto-20260519-092338/src/assets/main.css delete mode 100644 backup-before-dark-multiphoto-20260519-092338/src/components/Navbar.vue delete mode 100644 backup-before-dark-multiphoto-20260519-092338/src/utils.js delete mode 100644 backup-before-dark-multiphoto-20260519-092338/src/views/ProductDetailView.vue delete mode 100644 backup-before-dark-multiphoto-20260519-092338/src/views/SellProductView.vue delete mode 100644 backup-before-dark-multiphoto-20260519-092338/tailwind.config.js delete mode 100644 backup-before-darkmode-final-20260519-103706/src/assets/main.css delete mode 100644 backup-before-darkmode-final-20260519-103706/src/components/DashboardSidebar.vue delete mode 100644 backup-before-darkmode-final-20260519-103706/src/components/ProductCard.vue delete mode 100644 backup-before-darkmode-final-20260519-103706/src/views/HomeView.vue delete mode 100644 backup-before-fix-20260519-092338/server/server.js delete mode 100644 backup-before-fix-20260519-092338/src/assets/main.css delete mode 100644 backup-before-fix-20260519-092338/src/components/Navbar.vue delete mode 100644 backup-before-fix-20260519-092338/src/components/ProductCard.vue delete mode 100644 backup-before-fix-20260519-092338/src/data/products.js delete mode 100644 backup-before-fix-20260519-092338/src/views/ProductDetailView.vue delete mode 100644 backup-before-fix-20260519-092338/src/views/SellProductView.vue delete mode 100644 backup-before-fix-20260519-092338/tailwind.config.js delete mode 100644 backup-before-force-multiphoto-dark-20260519-103129/server/server.js delete mode 100644 backup-before-force-multiphoto-dark-20260519-103129/src/assets/main.css delete mode 100644 backup-before-force-multiphoto-dark-20260519-103129/src/views/ProductDetailView.vue delete mode 100644 backup-before-force-multiphoto-dark-20260519-103129/src/views/SellProductView.vue delete mode 100644 backup-before-gallery-darkmode-repair-20260519-100158/server/server.js delete mode 100644 backup-before-gallery-darkmode-repair-20260519-100158/src/assets/main.css delete mode 100644 backup-before-gallery-darkmode-repair-20260519-100158/src/components/ProductCard.vue delete mode 100644 backup-before-gallery-darkmode-repair-20260519-100158/src/utils.js delete mode 100644 backup-before-gallery-darkmode-repair-20260519-100158/src/views/ProductDetailView.vue delete mode 100644 backup-before-gallery-darkmode-repair-20260519-100158/src/views/SellProductView.vue delete mode 100644 backup-before-upload-limit-20260519-093708/SellProductView.vue delete mode 100644 backup-before-upload-limit-20260519-093708/server.js delete mode 100644 backup-before-upload-repair-20260519-095013/server/server.js delete mode 100644 backup-before-upload-repair-20260519-095013/src/utils.js delete mode 100644 backup-before-upload-repair-20260519-095013/src/views/SellProductView.vue create mode 100644 public/Hero.jpeg diff --git a/backup-before-dark-multiphoto-20260519-091652/database.sql b/backup-before-dark-multiphoto-20260519-091652/database.sql deleted file mode 100644 index a58e462..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/database.sql +++ /dev/null @@ -1,58 +0,0 @@ -CREATE DATABASE IF NOT EXISTS secondtech_market - CHARACTER SET utf8mb4 - COLLATE utf8mb4_unicode_ci; - -USE secondtech_market; - -CREATE TABLE IF NOT EXISTS users ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - name VARCHAR(120) NOT NULL, - email VARCHAR(160) NOT NULL UNIQUE, - whatsapp VARCHAR(30) NOT NULL, - password_hash VARCHAR(255) NOT NULL, - role ENUM('user', 'superadmin') NOT NULL DEFAULT 'user', - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP -); - -CREATE TABLE IF NOT EXISTS products ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - user_id INT UNSIGNED NULL, - title VARCHAR(180) NOT NULL, - category VARCHAR(80) NOT NULL, - price INT UNSIGNED NOT NULL, - `condition` VARCHAR(80) NOT NULL, - location VARCHAR(120) NOT NULL, - seller VARCHAR(120) NOT NULL, - whatsapp VARCHAR(30) NOT NULL, - image VARCHAR(255) NOT NULL, - description TEXT NOT NULL, - status ENUM('Tersedia', 'Terjual') NOT NULL DEFAULT 'Tersedia', - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - CONSTRAINT fk_products_user - FOREIGN KEY (user_id) REFERENCES users(id) - ON DELETE SET NULL -); - -INSERT INTO products - (id, title, category, price, `condition`, location, seller, whatsapp, image, description, status) -VALUES - (1, 'Laptop Lenovo ThinkPad T480', 'Laptop', 3200000, 'Bekas Normal', 'Yogyakarta', 'Raka SIJA', '6281234567890', 'https://images.unsplash.com/photo-1496181133206-80ce9b88a853?q=80&w=1200&auto=format&fit=crop', 'Laptop bekas cocok untuk belajar coding, jaringan, virtual machine ringan, dan kebutuhan sekolah. RAM 8GB, SSD 256GB, keyboard normal.', 'Tersedia'), - (2, 'PC Rakitan i5 Gen 8', 'PC', 4100000, 'Bekas Normal', 'Bantul', 'Dimas Tech', '628111222333', 'https://images.unsplash.com/photo-1587202372775-e229f172b9d7?q=80&w=1200&auto=format&fit=crop', 'PC rakitan untuk lab jaringan, desain ringan, dan multitasking. Intel Core i5, RAM 16GB, SSD 512GB.', 'Tersedia'), - (3, 'Monitor LG 24 Inch IPS', 'Monitor', 1150000, 'Bekas Mulus', 'Sleman', 'Adit Hardware', '628555666777', 'https://images.unsplash.com/photo-1527443224154-c4a3942d3acf?q=80&w=1200&auto=format&fit=crop', 'Monitor IPS 24 inch, warna masih bagus, cocok untuk coding dan editing. Include kabel power dan HDMI.', 'Tersedia'), - (4, 'Keyboard Mechanical Keychron K2', 'Keyboard', 850000, 'Bekas Normal', 'Solo', 'Naufal Keys', '628333444555', 'https://images.unsplash.com/photo-1618384887929-16ec33fab9ef?q=80&w=1200&auto=format&fit=crop', 'Keyboard mechanical wireless, switch brown, cocok untuk coding. Kondisi normal dan keycap lengkap.', 'Tersedia'), - (5, 'MikroTik RB941 hAP Lite', 'Router', 180000, 'Bekas Normal', 'Kulon Progo', 'Lab Network', '628777888999', 'https://images.unsplash.com/photo-1606904825846-647eb07f5be2?q=80&w=1200&auto=format&fit=crop', 'Router MikroTik untuk belajar routing, firewall, DHCP, hotspot, dan konfigurasi dasar jaringan.', 'Tersedia'), - (6, 'Switch TP-Link 8 Port Gigabit', 'Switch', 250000, 'Bekas Normal', 'Magelang', 'Fajar Net', '628999111222', 'https://images.unsplash.com/photo-1558494949-ef010cbdcc31?q=80&w=1200&auto=format&fit=crop', 'Switch 8 port gigabit, cocok untuk lab kecil, warnet mini, dan praktik jaringan lokal.', 'Tersedia'), - (7, 'Server Dell PowerEdge R620', 'Server', 6500000, 'Bekas Server Room', 'Jakarta', 'Server Bekas ID', '628222333444', 'https://images.unsplash.com/photo-1558494949-ef010cbdcc31?q=80&w=1200&auto=format&fit=crop', 'Server rackmount bekas data center, cocok untuk belajar virtualization, Proxmox, Docker, dan homelab.', 'Tersedia'), - (8, 'Access Point TP-Link EAP225', 'Access Point', 620000, 'Bekas Mulus', 'Semarang', 'WiFi Store', '6281212121212', 'https://images.unsplash.com/photo-1544197150-b99a580bb7a8?q=80&w=1200&auto=format&fit=crop', 'Access point ceiling untuk hotspot sekolah, kantor, dan lab jaringan. Kondisi normal.', 'Tersedia') -ON DUPLICATE KEY UPDATE - title = VALUES(title), - category = VALUES(category), - price = VALUES(price), - `condition` = VALUES(`condition`), - location = VALUES(location), - seller = VALUES(seller), - whatsapp = VALUES(whatsapp), - image = VALUES(image), - description = VALUES(description), - status = VALUES(status); diff --git a/backup-before-dark-multiphoto-20260519-091652/server/server.js b/backup-before-dark-multiphoto-20260519-091652/server/server.js deleted file mode 100644 index 7bbd7c8..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/server/server.js +++ /dev/null @@ -1,356 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: 3 * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [id] - ) - - product.images = images.length ? images.map((item) => item.image) : [product.image] - - return product -} - - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - const products = await Promise.all( - rows.map(async (product) => { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [product.id] - ) - - return { - ...product, - images: images.length ? images.map((item) => item.image) : [product.image] - } - }) -) - -res.json({ products }) - -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: rows }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post("/api/products", auth, upload.array("images", 6), async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !req.files?.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${req.files[0].filename}` - - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = req.files.map((file, index) => [ - result.insertId, - `/uploads/${file.filename}`, - index - ]) - - await pool.query( - "INSERT INTO product_images (product_id, image, sort_order) VALUES ?", - [imageRows] - ) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } -}) - - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - - if (product.image.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(product.image)), { force: true }, () => {}) - } - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - - if (product.image.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(product.image)), { force: true }, () => {}) - } - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: "Upload gagal. Ukuran foto maksimal 10MB." }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ message: "Terjadi kesalahan pada server." }) -}) - -app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) -}) - - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query( - "SELECT role FROM users WHERE id = ?", - [req.user.id] - ) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} diff --git a/backup-before-dark-multiphoto-20260519-091652/src/assets/main.css b/backup-before-dark-multiphoto-20260519-091652/src/assets/main.css deleted file mode 100644 index a5213cc..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/src/assets/main.css +++ /dev/null @@ -1,41 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"); - -@tailwind base; -@tailwind components; -@tailwind utilities; - -* { - scroll-behavior: smooth; -} - -body { - @apply bg-slate-50 text-slate-900 font-sans; -} - -.container-page { - @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; -} - -.btn-primary { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-brand-600 px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-700; -} - -.btn-secondary { - @apply inline-flex items-center justify-center gap-2 rounded-xl border border-slate-200 bg-white px-5 py-3 text-sm font-semibold text-slate-800 transition hover:bg-slate-100; -} - -.card { - @apply rounded-2xl border border-slate-200 bg-white shadow-sm; -} - -.input { - @apply w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm outline-none transition focus:border-brand-500 focus:ring-4 focus:ring-brand-100; -} - -.label { - @apply text-sm font-semibold text-slate-700; -} - -.btn-WA { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-green-500 px-5 py-3 text-sm font-semibold text-white transition hover:bg-green-600; -} diff --git a/backup-before-dark-multiphoto-20260519-091652/src/components/Navbar.vue b/backup-before-dark-multiphoto-20260519-091652/src/components/Navbar.vue deleted file mode 100644 index f043072..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/src/components/Navbar.vue +++ /dev/null @@ -1,168 +0,0 @@ - - - - - diff --git a/backup-before-dark-multiphoto-20260519-091652/src/utils.js b/backup-before-dark-multiphoto-20260519-091652/src/utils.js deleted file mode 100644 index 1754fc4..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/src/utils.js +++ /dev/null @@ -1,138 +0,0 @@ -export const API_BASE_URL = import.meta.env.VITE_API_URL || "http://localhost:5000" - -export function formatRupiah(value) { - return new Intl.NumberFormat("id-ID", { - style: "currency", - currency: "IDR", - maximumFractionDigits: 0 - }).format(value) -} - -export function getLocal(key, fallback) { - try { - const value = localStorage.getItem(key) - return value ? JSON.parse(value) : fallback - } catch { - return fallback - } -} - -export function setLocal(key, value) { - localStorage.setItem(key, JSON.stringify(value)) -} - -export function getToken() { - return localStorage.getItem("secondtech_token") -} - -export function getCurrentUser() { - return getLocal("secondtech_user", null) -} - -export function setAuth({ token, user }) { - localStorage.setItem("secondtech_token", token) - - setLocal("secondtech_user", { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - }) -} - -export function clearAuth() { - localStorage.removeItem("secondtech_token") - localStorage.removeItem("secondtech_user") -} - -export function getProductImageUrl(image) { - if (!image) return "" - if (image.startsWith("http://") || image.startsWith("https://") || image.startsWith("data:")) return image - return `${API_BASE_URL}${image}` -} - -async function requestJson(path, options = {}) { - const headers = new Headers(options.headers || {}) - const token = getToken() - - if (token) headers.set("Authorization", `Bearer ${token}`) - if (!(options.body instanceof FormData)) headers.set("Content-Type", "application/json") - - const response = await fetch(`${API_BASE_URL}${path}`, { - ...options, - headers - }) - - const data = await response.json().catch(() => ({})) - - if (!response.ok) { - throw new Error(data.message || "Request gagal.") - } - - return data -} - -export function registerUser(payload) { - return requestJson("/api/auth/register", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function loginUser(payload) { - return requestJson("/api/auth/login", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function fetchCurrentUser() { - return requestJson("/api/auth/me") -} - -export function fetchProducts() { - return requestJson("/api/products") -} - -export function fetchProduct(id) { - return requestJson(`/api/products/${id}`) -} - -export function fetchMyProducts() { - return requestJson("/api/products/mine") -} - -export function createProduct(formData) { - return requestJson("/api/products", { - method: "POST", - body: formData - }) -} - -export function updateProductStatus(id, status) { - return requestJson(`/api/products/${id}/status`, { - method: "PATCH", - body: JSON.stringify({ status }) - }) -} - -export function deleteProductById(id) { - return requestJson(`/api/products/${id}`, { - method: "DELETE" - }) -} - -export function deleteProductAsAdmin(id) { - return requestJson(`/api/admin/products/${id}`, { - method: "DELETE" - }) -} - -export function getSavedProducts() { - return getLocal("secondtech_saved", []) -} - -export function setSavedProducts(ids) { - setLocal("secondtech_saved", ids) -} diff --git a/backup-before-dark-multiphoto-20260519-091652/src/views/ProductDetailView.vue b/backup-before-dark-multiphoto-20260519-091652/src/views/ProductDetailView.vue deleted file mode 100644 index eec3fe5..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/src/views/ProductDetailView.vue +++ /dev/null @@ -1,105 +0,0 @@ - - - diff --git a/backup-before-dark-multiphoto-20260519-091652/src/views/SellProductView.vue b/backup-before-dark-multiphoto-20260519-091652/src/views/SellProductView.vue deleted file mode 100644 index 4628875..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/src/views/SellProductView.vue +++ /dev/null @@ -1,171 +0,0 @@ - - - diff --git a/backup-before-dark-multiphoto-20260519-091652/tailwind.config.js b/backup-before-dark-multiphoto-20260519-091652/tailwind.config.js deleted file mode 100644 index 5203320..0000000 --- a/backup-before-dark-multiphoto-20260519-091652/tailwind.config.js +++ /dev/null @@ -1,25 +0,0 @@ -/** @type {import('tailwindcss').Config} */ -export default { - content: [ - "./index.html", - "./src/**/*.{vue,js}" - ], - theme: { - extend: { - fontFamily: { - sans: ["Inter", "system-ui", "sans-serif"] - }, - colors: { - brand: { - 50: "#eff6ff", - 100: "#dbeafe", - 500: "#2563eb", - 600: "#1d4ed8", - 700: "#1e40af", - 900: "#172554" - } - } - } - }, - plugins: [] -} diff --git a/backup-before-dark-multiphoto-20260519-092338/database.sql b/backup-before-dark-multiphoto-20260519-092338/database.sql deleted file mode 100644 index f559507..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/database.sql +++ /dev/null @@ -1,69 +0,0 @@ -CREATE DATABASE IF NOT EXISTS secondtech_market - CHARACTER SET utf8mb4 - COLLATE utf8mb4_unicode_ci; - -USE secondtech_market; - -CREATE TABLE IF NOT EXISTS users ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - name VARCHAR(120) NOT NULL, - email VARCHAR(160) NOT NULL UNIQUE, - whatsapp VARCHAR(30) NOT NULL, - password_hash VARCHAR(255) NOT NULL, - role ENUM('user', 'superadmin') NOT NULL DEFAULT 'user', - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP -); - -CREATE TABLE IF NOT EXISTS products ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - user_id INT UNSIGNED NULL, - title VARCHAR(180) NOT NULL, - category VARCHAR(80) NOT NULL, - price INT UNSIGNED NOT NULL, - `condition` VARCHAR(80) NOT NULL, - location VARCHAR(120) NOT NULL, - seller VARCHAR(120) NOT NULL, - whatsapp VARCHAR(30) NOT NULL, - image VARCHAR(255) NOT NULL, - description TEXT NOT NULL, - status ENUM('Tersedia', 'Terjual') NOT NULL DEFAULT 'Tersedia', - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, - CONSTRAINT fk_products_user - FOREIGN KEY (user_id) REFERENCES users(id) - ON DELETE SET NULL -); - -INSERT INTO products - (id, title, category, price, `condition`, location, seller, whatsapp, image, description, status) -VALUES - (1, 'Laptop Lenovo ThinkPad T480', 'Laptop', 3200000, 'Bekas Normal', 'Yogyakarta', 'Raka SIJA', '6281234567890', 'https://images.unsplash.com/photo-1496181133206-80ce9b88a853?q=80&w=1200&auto=format&fit=crop', 'Laptop bekas cocok untuk belajar coding, jaringan, virtual machine ringan, dan kebutuhan sekolah. RAM 8GB, SSD 256GB, keyboard normal.', 'Tersedia'), - (2, 'PC Rakitan i5 Gen 8', 'PC', 4100000, 'Bekas Normal', 'Bantul', 'Dimas Tech', '628111222333', 'https://images.unsplash.com/photo-1587202372775-e229f172b9d7?q=80&w=1200&auto=format&fit=crop', 'PC rakitan untuk lab jaringan, desain ringan, dan multitasking. Intel Core i5, RAM 16GB, SSD 512GB.', 'Tersedia'), - (3, 'Monitor LG 24 Inch IPS', 'Monitor', 1150000, 'Bekas Mulus', 'Sleman', 'Adit Hardware', '628555666777', 'https://images.unsplash.com/photo-1527443224154-c4a3942d3acf?q=80&w=1200&auto=format&fit=crop', 'Monitor IPS 24 inch, warna masih bagus, cocok untuk coding dan editing. Include kabel power dan HDMI.', 'Tersedia'), - (4, 'Keyboard Mechanical Keychron K2', 'Keyboard', 850000, 'Bekas Normal', 'Solo', 'Naufal Keys', '628333444555', 'https://images.unsplash.com/photo-1618384887929-16ec33fab9ef?q=80&w=1200&auto=format&fit=crop', 'Keyboard mechanical wireless, switch brown, cocok untuk coding. Kondisi normal dan keycap lengkap.', 'Tersedia'), - (5, 'MikroTik RB941 hAP Lite', 'Router', 180000, 'Bekas Normal', 'Kulon Progo', 'Lab Network', '628777888999', 'https://images.unsplash.com/photo-1606904825846-647eb07f5be2?q=80&w=1200&auto=format&fit=crop', 'Router MikroTik untuk belajar routing, firewall, DHCP, hotspot, dan konfigurasi dasar jaringan.', 'Tersedia'), - (6, 'Switch TP-Link 8 Port Gigabit', 'Switch', 250000, 'Bekas Normal', 'Magelang', 'Fajar Net', '628999111222', 'https://images.unsplash.com/photo-1558494949-ef010cbdcc31?q=80&w=1200&auto=format&fit=crop', 'Switch 8 port gigabit, cocok untuk lab kecil, warnet mini, dan praktik jaringan lokal.', 'Tersedia'), - (7, 'Server Dell PowerEdge R620', 'Server', 6500000, 'Bekas Server Room', 'Jakarta', 'Server Bekas ID', '628222333444', 'https://images.unsplash.com/photo-1558494949-ef010cbdcc31?q=80&w=1200&auto=format&fit=crop', 'Server rackmount bekas data center, cocok untuk belajar virtualization, Proxmox, Docker, dan homelab.', 'Tersedia'), - (8, 'Access Point TP-Link EAP225', 'Access Point', 620000, 'Bekas Mulus', 'Semarang', 'WiFi Store', '6281212121212', 'https://images.unsplash.com/photo-1544197150-b99a580bb7a8?q=80&w=1200&auto=format&fit=crop', 'Access point ceiling untuk hotspot sekolah, kantor, dan lab jaringan. Kondisi normal.', 'Tersedia') -ON DUPLICATE KEY UPDATE - title = VALUES(title), - category = VALUES(category), - price = VALUES(price), - `condition` = VALUES(`condition`), - location = VALUES(location), - seller = VALUES(seller), - whatsapp = VALUES(whatsapp), - image = VALUES(image), - description = VALUES(description), - status = VALUES(status); - -CREATE TABLE IF NOT EXISTS product_images ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - product_id INT UNSIGNED NOT NULL, - image VARCHAR(255) NOT NULL, - sort_order INT UNSIGNED NOT NULL DEFAULT 0, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - CONSTRAINT fk_product_images_product - FOREIGN KEY (product_id) REFERENCES products(id) - ON DELETE CASCADE -); diff --git a/backup-before-dark-multiphoto-20260519-092338/server/server.js b/backup-before-dark-multiphoto-20260519-092338/server/server.js deleted file mode 100644 index eae1282..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/server/server.js +++ /dev/null @@ -1,348 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: 3 * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query("SELECT role FROM users WHERE id = ?", [req.user.id]) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} - -async function getProductImages(productId, fallbackImage) { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [productId] - ) - - return images.length ? images.map((item) => item.image) : [fallbackImage] -} - -async function attachProductImages(products) { - return Promise.all( - products.map(async (product) => ({ - ...product, - images: await getProductImages(product.id, product.image) - })) - ) -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - product.images = await getProductImages(product.id, product.image) - return product -} - -async function deleteUploadedImages(product) { - const images = product.images?.length ? product.images : [product.image] - - images.forEach((image) => { - if (image?.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(image)), { force: true }, () => {}) - } - }) -} - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products ORDER BY created_at DESC, id DESC" - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post("/api/products", auth, upload.array("images", 6), async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !req.files?.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${req.files[0].filename}` - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = req.files.map((file, index) => [result.insertId, `/uploads/${file.filename}`, index]) - await pool.query("INSERT INTO product_images (product_id, image, sort_order) VALUES ?", [imageRows]) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } -}) - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: "Upload gagal. Ukuran setiap foto maksimal 3MB dan maksimal 6 foto." }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ message: "Terjadi kesalahan pada server." }) -}) - -app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) -}) diff --git a/backup-before-dark-multiphoto-20260519-092338/src/assets/main.css b/backup-before-dark-multiphoto-20260519-092338/src/assets/main.css deleted file mode 100644 index 75edddb..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/src/assets/main.css +++ /dev/null @@ -1,95 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"); - -@tailwind base; -@tailwind components; -@tailwind utilities; - -* { - scroll-behavior: smooth; -} - -body { - @apply bg-slate-50 text-slate-900 font-sans; -} - -.container-page { - @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; -} - -.btn-primary { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-brand-600 px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-700; -} - -.btn-secondary { - @apply inline-flex items-center justify-center gap-2 rounded-xl border border-slate-200 bg-white px-5 py-3 text-sm font-semibold text-slate-800 transition hover:bg-slate-100; -} - -.card { - @apply rounded-2xl border border-slate-200 bg-white shadow-sm; -} - -.input { - @apply w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm outline-none transition focus:border-brand-500 focus:ring-4 focus:ring-brand-100; -} - -.label { - @apply text-sm font-semibold text-slate-700; -} - -.btn-WA { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-green-500 px-5 py-3 text-sm font-semibold text-white transition hover:bg-green-600; -} - -/* SecondTech dark mode */ -html.dark body { - background: #121212; - color: #f8fafc; -} - -html.dark header { - background: rgba(18, 18, 18, 0.92); - border-color: rgba(37, 99, 235, 0.28); -} - -html.dark .card { - background: #181818; - border-color: rgba(37, 99, 235, 0.28); - box-shadow: 0 12px 32px rgba(37, 99, 235, 0.18); -} - -html.dark .input { - background: #181818; - border-color: rgba(37, 99, 235, 0.28); - color: #f8fafc; -} - -html.dark .input::placeholder { - color: #94a3b8; -} - -html.dark .btn-secondary { - background: #181818; - border-color: rgba(37, 99, 235, 0.32); - color: #f8fafc; -} - -html.dark .bg-white, -html.dark .bg-slate-50 { - background-color: #181818; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700 { - color: #f8fafc; -} - -html.dark .text-slate-600, -html.dark .text-slate-500 { - color: #cbd5e1; -} - -html.dark .border-slate-200 { - border-color: rgba(37, 99, 235, 0.28); -} diff --git a/backup-before-dark-multiphoto-20260519-092338/src/components/Navbar.vue b/backup-before-dark-multiphoto-20260519-092338/src/components/Navbar.vue deleted file mode 100644 index b2715a5..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/src/components/Navbar.vue +++ /dev/null @@ -1,150 +0,0 @@ - - - - - diff --git a/backup-before-dark-multiphoto-20260519-092338/src/utils.js b/backup-before-dark-multiphoto-20260519-092338/src/utils.js deleted file mode 100644 index 725ba6a..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/src/utils.js +++ /dev/null @@ -1,137 +0,0 @@ -export const API_BASE_URL = import.meta.env.VITE_API_URL || "http://localhost:5000" - -export function formatRupiah(value) { - return new Intl.NumberFormat("id-ID", { - style: "currency", - currency: "IDR", - maximumFractionDigits: 0 - }).format(value) -} - -export function getLocal(key, fallback) { - try { - const value = localStorage.getItem(key) - return value ? JSON.parse(value) : fallback - } catch { - return fallback - } -} - -export function setLocal(key, value) { - localStorage.setItem(key, JSON.stringify(value)) -} - -export function getToken() { - return localStorage.getItem("secondtech_token") -} - -export function getCurrentUser() { - return getLocal("secondtech_user", null) -} - -export function setAuth({ token, user }) { - localStorage.setItem("secondtech_token", token) - - setLocal("secondtech_user", { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - }) -} - -export function clearAuth() { - localStorage.removeItem("secondtech_token") - localStorage.removeItem("secondtech_user") -} - -export function getProductImageUrl(image) { - if (!image) return "" - if (image.startsWith("http://") || image.startsWith("https://") || image.startsWith("data:")) return image - return `${API_BASE_URL}${image}` -} - -async function requestJson(path, options = {}) { - const headers = new Headers(options.headers || {}) - const token = getToken() - - if (token) headers.set("Authorization", `Bearer ${token}`) - if (!(options.body instanceof FormData)) headers.set("Content-Type", "application/json") - - const response = await fetch(`${API_BASE_URL}${path}`, { - ...options, - headers - }) - const data = await response.json().catch(() => ({})) - - if (!response.ok) { - throw new Error(data.message || "Request gagal.") - } - - return data -} - -export function registerUser(payload) { - return requestJson("/api/auth/register", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function loginUser(payload) { - return requestJson("/api/auth/login", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function fetchCurrentUser() { - return requestJson("/api/auth/me") -} - -export function fetchProducts() { - return requestJson("/api/products") -} - -export function fetchProduct(id) { - return requestJson(`/api/products/${id}`) -} - -export function fetchMyProducts() { - return requestJson("/api/products/mine") -} - -export function createProduct(formData) { - return requestJson("/api/products", { - method: "POST", - body: formData - }) -} - -export function updateProductStatus(id, status) { - return requestJson(`/api/products/${id}/status`, { - method: "PATCH", - body: JSON.stringify({ status }) - }) -} - -export function deleteProductById(id) { - return requestJson(`/api/products/${id}`, { - method: "DELETE" - }) -} - -export function deleteProductAsAdmin(id) { - return requestJson(`/api/admin/products/${id}`, { - method: "DELETE" - }) -} - -export function getSavedProducts() { - return getLocal("secondtech_saved", []) -} - -export function setSavedProducts(ids) { - setLocal("secondtech_saved", ids) -} diff --git a/backup-before-dark-multiphoto-20260519-092338/src/views/ProductDetailView.vue b/backup-before-dark-multiphoto-20260519-092338/src/views/ProductDetailView.vue deleted file mode 100644 index bf34d2c..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/src/views/ProductDetailView.vue +++ /dev/null @@ -1,135 +0,0 @@ - - - diff --git a/backup-before-dark-multiphoto-20260519-092338/src/views/SellProductView.vue b/backup-before-dark-multiphoto-20260519-092338/src/views/SellProductView.vue deleted file mode 100644 index 435c21f..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/src/views/SellProductView.vue +++ /dev/null @@ -1,149 +0,0 @@ - - - diff --git a/backup-before-dark-multiphoto-20260519-092338/tailwind.config.js b/backup-before-dark-multiphoto-20260519-092338/tailwind.config.js deleted file mode 100644 index c5e9579..0000000 --- a/backup-before-dark-multiphoto-20260519-092338/tailwind.config.js +++ /dev/null @@ -1,27 +0,0 @@ -/** @type {import('tailwindcss').Config} */ -export default { - darkMode: "class", - content: [ - "./index.html", - "./src/**/*.{vue,js}" - ], - theme: { - extend: { - fontFamily: { - sans: ["Inter", "system-ui", "sans-serif"] - }, - colors: { - brand: { - 50: "#eff6ff", - 100: "#dbeafe", - 500: "#2563eb", - 600: "#1d4ed8", - 700: "#1e40af", - 900: "#172554" - } - } - } - }, - plugins: [] -} - diff --git a/backup-before-darkmode-final-20260519-103706/src/assets/main.css b/backup-before-darkmode-final-20260519-103706/src/assets/main.css deleted file mode 100644 index b8743a8..0000000 --- a/backup-before-darkmode-final-20260519-103706/src/assets/main.css +++ /dev/null @@ -1,304 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"); - -@tailwind base; -@tailwind components; -@tailwind utilities; - -* { - scroll-behavior: smooth; -} - -body { - @apply bg-slate-50 text-slate-900 font-sans; -} - -.container-page { - @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; -} - -.btn-primary { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-brand-600 px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-700; -} - -.btn-secondary { - @apply inline-flex items-center justify-center gap-2 rounded-xl border border-slate-200 bg-white px-5 py-3 text-sm font-semibold text-slate-800 transition hover:bg-slate-100; -} - -.card { - @apply rounded-2xl border border-slate-200 bg-white shadow-sm; -} - -.input { - @apply w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm outline-none transition focus:border-brand-500 focus:ring-4 focus:ring-brand-100; -} - -.label { - @apply text-sm font-semibold text-slate-700; -} - -.btn-WA { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-green-500 px-5 py-3 text-sm font-semibold text-white transition hover:bg-green-600; -} - -/* SecondTech dark mode */ -html.dark body { - background: #121212; - color: #f8fafc; -} - -html.dark header { - background: rgba(18, 18, 18, 0.94); - border-color: rgba(37, 99, 235, 0.34); -} - -html.dark main, -html.dark section { - background: #121212; -} - -html.dark .card { - background: #181818; - border-color: rgba(37, 99, 235, 0.30); - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.20); -} - -html.dark .input { - background: #181818; - border-color: rgba(37, 99, 235, 0.34); - color: #f8fafc; -} - -html.dark .input::placeholder { - color: #94a3b8; -} - -html.dark .btn-secondary { - background: #181818; - border-color: rgba(37, 99, 235, 0.38); - color: #f8fafc; - box-shadow: 0 10px 24px rgba(37, 99, 235, 0.12); -} - -html.dark .btn-primary { - box-shadow: 0 12px 28px rgba(37, 99, 235, 0.24); -} - -html.dark .bg-white, -html.dark .bg-slate-50, -html.dark .bg-slate-100 { - background-color: #181818; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700 { - color: #f8fafc; -} - -html.dark .text-slate-600, -html.dark .text-slate-500 { - color: #cbd5e1; -} - -html.dark .border-slate-200 { - border-color: rgba(37, 99, 235, 0.30); -} - -/* SecondTech stronger dark mode repair */ -html.dark, -html.dark body { - background: #121212 !important; - color: #f8fafc !important; -} - -html.dark header, -html.dark footer, -html.dark main, -html.dark section { - background-color: #121212 !important; -} - -html.dark header { - border-color: rgba(37, 99, 235, 0.35) !important; -} - -html.dark .card { - background: #181818 !important; - border-color: rgba(37, 99, 235, 0.34) !important; - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.22) !important; -} - -html.dark .input, -html.dark input, -html.dark select, -html.dark textarea { - background-color: #181818 !important; - border-color: rgba(37, 99, 235, 0.38) !important; - color: #f8fafc !important; -} - -html.dark .input::placeholder, -html.dark input::placeholder, -html.dark textarea::placeholder { - color: #94a3b8 !important; -} - -html.dark .btn-secondary { - background: #181818 !important; - border-color: rgba(37, 99, 235, 0.42) !important; - color: #f8fafc !important; - box-shadow: 0 10px 24px rgba(37, 99, 235, 0.14) !important; -} - -html.dark .btn-primary { - box-shadow: 0 12px 28px rgba(37, 99, 235, 0.26) !important; -} - -html.dark .bg-white, -html.dark .bg-slate-50, -html.dark .bg-slate-100, -html.dark .bg-brand-50 { - background-color: #181818 !important; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700, -html.dark .text-brand-900, -html.dark .text-brand-800, -html.dark .text-brand-700 { - color: #f8fafc !important; -} - -html.dark .text-slate-600, -html.dark .text-slate-500, -html.dark .text-slate-400 { - color: #cbd5e1 !important; -} - -html.dark .nav-link, -html.dark .mobile-link, -html.dark a:not(.btn-primary) { - color: #dbeafe !important; -} - -html.dark .nav-link:hover, -html.dark .mobile-link:hover, -html.dark a:not(.btn-primary):hover { - color: #ffffff !important; -} - -html.dark .border-slate-200, -html.dark .border-brand-600 { - border-color: rgba(37, 99, 235, 0.42) !important; -} - -html.dark .shadow-sm { - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.18) !important; -} - -/* SecondTech final dark mode repair */ -html.dark, -html.dark body { - background: #121212 !important; - color: #f8fafc !important; -} - -html.dark header, -html.dark footer, -html.dark main, -html.dark section { - background-color: #121212 !important; -} - -html.dark header { - border-color: rgba(37, 99, 235, 0.35) !important; -} - -html.dark .card { - background: #181818 !important; - border-color: rgba(37, 99, 235, 0.34) !important; - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.22) !important; -} - -html.dark .input, -html.dark input, -html.dark select, -html.dark textarea { - background-color: #181818 !important; - border-color: rgba(37, 99, 235, 0.38) !important; - color: #f8fafc !important; -} - -html.dark .input::placeholder, -html.dark input::placeholder, -html.dark textarea::placeholder { - color: #94a3b8 !important; -} - -html.dark .btn-secondary { - background: #181818 !important; - border-color: rgba(37, 99, 235, 0.42) !important; - color: #f8fafc !important; - box-shadow: 0 10px 24px rgba(37, 99, 235, 0.14) !important; -} - -html.dark .btn-primary { - box-shadow: 0 12px 28px rgba(37, 99, 235, 0.26) !important; -} - -html.dark .bg-white, -html.dark .bg-slate-50, -html.dark .bg-slate-100, -html.dark .bg-brand-50, -html.dark .bg-emerald-50, -html.dark .bg-red-50 { - background-color: #181818 !important; -} - -html.dark .text-zinc-950, -html.dark .text-zinc-900, -html.dark .text-zinc-800, -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700, -html.dark .text-brand-900, -html.dark .text-brand-800, -html.dark .text-brand-700, -html.dark .text-emerald-700, -html.dark .text-red-700 { - color: #f8fafc !important; -} - -html.dark .text-slate-600, -html.dark .text-slate-500, -html.dark .text-slate-400, -html.dark .text-zinc-600, -html.dark .text-zinc-500, -html.dark .text-zinc-400 { - color: #cbd5e1 !important; -} - -html.dark .nav-link, -html.dark .mobile-link, -html.dark a:not(.btn-primary) { - color: #dbeafe !important; -} - -html.dark .nav-link:hover, -html.dark .mobile-link:hover, -html.dark a:not(.btn-primary):hover { - color: #ffffff !important; -} - -html.dark .border-slate-200, -html.dark .border-brand-600 { - border-color: rgba(37, 99, 235, 0.42) !important; -} - -html.dark .shadow-sm { - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.18) !important; -} diff --git a/backup-before-darkmode-final-20260519-103706/src/components/DashboardSidebar.vue b/backup-before-darkmode-final-20260519-103706/src/components/DashboardSidebar.vue deleted file mode 100644 index 5820201..0000000 --- a/backup-before-darkmode-final-20260519-103706/src/components/DashboardSidebar.vue +++ /dev/null @@ -1,127 +0,0 @@ - - - - - diff --git a/backup-before-darkmode-final-20260519-103706/src/components/ProductCard.vue b/backup-before-darkmode-final-20260519-103706/src/components/ProductCard.vue deleted file mode 100644 index b70be73..0000000 --- a/backup-before-darkmode-final-20260519-103706/src/components/ProductCard.vue +++ /dev/null @@ -1,66 +0,0 @@ - - - diff --git a/backup-before-darkmode-final-20260519-103706/src/views/HomeView.vue b/backup-before-darkmode-final-20260519-103706/src/views/HomeView.vue deleted file mode 100644 index 88e668d..0000000 --- a/backup-before-darkmode-final-20260519-103706/src/views/HomeView.vue +++ /dev/null @@ -1,114 +0,0 @@ - - - diff --git a/backup-before-fix-20260519-092338/server/server.js b/backup-before-fix-20260519-092338/server/server.js deleted file mode 100644 index eae1282..0000000 --- a/backup-before-fix-20260519-092338/server/server.js +++ /dev/null @@ -1,348 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: 3 * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query("SELECT role FROM users WHERE id = ?", [req.user.id]) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} - -async function getProductImages(productId, fallbackImage) { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [productId] - ) - - return images.length ? images.map((item) => item.image) : [fallbackImage] -} - -async function attachProductImages(products) { - return Promise.all( - products.map(async (product) => ({ - ...product, - images: await getProductImages(product.id, product.image) - })) - ) -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - product.images = await getProductImages(product.id, product.image) - return product -} - -async function deleteUploadedImages(product) { - const images = product.images?.length ? product.images : [product.image] - - images.forEach((image) => { - if (image?.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(image)), { force: true }, () => {}) - } - }) -} - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products ORDER BY created_at DESC, id DESC" - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post("/api/products", auth, upload.array("images", 6), async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !req.files?.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${req.files[0].filename}` - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = req.files.map((file, index) => [result.insertId, `/uploads/${file.filename}`, index]) - await pool.query("INSERT INTO product_images (product_id, image, sort_order) VALUES ?", [imageRows]) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } -}) - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: "Upload gagal. Ukuran setiap foto maksimal 3MB dan maksimal 6 foto." }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ message: "Terjadi kesalahan pada server." }) -}) - -app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) -}) diff --git a/backup-before-fix-20260519-092338/src/assets/main.css b/backup-before-fix-20260519-092338/src/assets/main.css deleted file mode 100644 index 75edddb..0000000 --- a/backup-before-fix-20260519-092338/src/assets/main.css +++ /dev/null @@ -1,95 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"); - -@tailwind base; -@tailwind components; -@tailwind utilities; - -* { - scroll-behavior: smooth; -} - -body { - @apply bg-slate-50 text-slate-900 font-sans; -} - -.container-page { - @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; -} - -.btn-primary { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-brand-600 px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-700; -} - -.btn-secondary { - @apply inline-flex items-center justify-center gap-2 rounded-xl border border-slate-200 bg-white px-5 py-3 text-sm font-semibold text-slate-800 transition hover:bg-slate-100; -} - -.card { - @apply rounded-2xl border border-slate-200 bg-white shadow-sm; -} - -.input { - @apply w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm outline-none transition focus:border-brand-500 focus:ring-4 focus:ring-brand-100; -} - -.label { - @apply text-sm font-semibold text-slate-700; -} - -.btn-WA { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-green-500 px-5 py-3 text-sm font-semibold text-white transition hover:bg-green-600; -} - -/* SecondTech dark mode */ -html.dark body { - background: #121212; - color: #f8fafc; -} - -html.dark header { - background: rgba(18, 18, 18, 0.92); - border-color: rgba(37, 99, 235, 0.28); -} - -html.dark .card { - background: #181818; - border-color: rgba(37, 99, 235, 0.28); - box-shadow: 0 12px 32px rgba(37, 99, 235, 0.18); -} - -html.dark .input { - background: #181818; - border-color: rgba(37, 99, 235, 0.28); - color: #f8fafc; -} - -html.dark .input::placeholder { - color: #94a3b8; -} - -html.dark .btn-secondary { - background: #181818; - border-color: rgba(37, 99, 235, 0.32); - color: #f8fafc; -} - -html.dark .bg-white, -html.dark .bg-slate-50 { - background-color: #181818; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700 { - color: #f8fafc; -} - -html.dark .text-slate-600, -html.dark .text-slate-500 { - color: #cbd5e1; -} - -html.dark .border-slate-200 { - border-color: rgba(37, 99, 235, 0.28); -} diff --git a/backup-before-fix-20260519-092338/src/components/Navbar.vue b/backup-before-fix-20260519-092338/src/components/Navbar.vue deleted file mode 100644 index b2715a5..0000000 --- a/backup-before-fix-20260519-092338/src/components/Navbar.vue +++ /dev/null @@ -1,150 +0,0 @@ - - - - - diff --git a/backup-before-fix-20260519-092338/src/components/ProductCard.vue b/backup-before-fix-20260519-092338/src/components/ProductCard.vue deleted file mode 100644 index b70be73..0000000 --- a/backup-before-fix-20260519-092338/src/components/ProductCard.vue +++ /dev/null @@ -1,66 +0,0 @@ - - - diff --git a/backup-before-fix-20260519-092338/src/data/products.js b/backup-before-fix-20260519-092338/src/data/products.js deleted file mode 100644 index ff2457c..0000000 --- a/backup-before-fix-20260519-092338/src/data/products.js +++ /dev/null @@ -1,137 +0,0 @@ -export const products = [ - { - id: 1, - title: "Laptop Lenovo ThinkPad T480", - category: "Laptop", - price: 3200000, - condition: "Bekas Normal", - location: "Yogyakarta", - seller: "Raka SIJA", - whatsapp: "6281234567890", - image: "https://images.unsplash.com/photo-1496181133206-80ce9b88a853?q=80&w=1200&auto=format&fit=crop", - description: "Laptop bekas cocok untuk belajar coding, jaringan, virtual machine ringan, dan kebutuhan sekolah. RAM 8GB, SSD 256GB, keyboard normal." - }, - { - id: 2, - title: "PC Rakitan i5 Gen 8", - category: "PC", - price: 4100000, - condition: "Bekas Normal", - location: "Bantul", - seller: "Dimas Tech", - whatsapp: "628111222333", - image: "https://images.unsplash.com/photo-1587202372775-e229f172b9d7?q=80&w=1200&auto=format&fit=crop", - description: "PC rakitan untuk lab jaringan, desain ringan, dan multitasking. Intel Core i5, RAM 16GB, SSD 512GB." - }, - { - id: 3, - title: "Monitor LG 24 Inch IPS", - category: "Monitor", - price: 1150000, - condition: "Bekas Mulus", - location: "Sleman", - seller: "Adit Hardware", - whatsapp: "628555666777", - image: "https://images.unsplash.com/photo-1527443224154-c4a3942d3acf?q=80&w=1200&auto=format&fit=crop", - description: "Monitor IPS 24 inch, warna masih bagus, cocok untuk coding dan editing. Include kabel power dan HDMI." - }, - { - id: 4, - title: "Keyboard Mechanical Keychron K2", - category: "Keyboard", - price: 850000, - condition: "Bekas Normal", - location: "Solo", - seller: "Naufal Keys", - whatsapp: "628333444555", - image: "https://images.unsplash.com/photo-1618384887929-16ec33fab9ef?q=80&w=1200&auto=format&fit=crop", - description: "Keyboard mechanical wireless, switch brown, cocok untuk coding. Kondisi normal dan keycap lengkap." - }, - { - id: 5, - title: "MikroTik RB941 hAP Lite", - category: "Router", - price: 180000, - condition: "Bekas Normal", - location: "Kulon Progo", - seller: "Lab Network", - whatsapp: "628777888999", - image: "https://images.unsplash.com/photo-1606904825846-647eb07f5be2?q=80&w=1200&auto=format&fit=crop", - description: "Router MikroTik untuk belajar routing, firewall, DHCP, hotspot, dan konfigurasi dasar jaringan." - }, - { - id: 6, - title: "Switch TP-Link 8 Port Gigabit", - category: "Switch", - price: 250000, - condition: "Bekas Normal", - location: "Magelang", - seller: "Fajar Net", - whatsapp: "628999111222", - image: "https://images.unsplash.com/photo-1558494949-ef010cbdcc31?q=80&w=1200&auto=format&fit=crop", - description: "Switch 8 port gigabit, cocok untuk lab kecil, warnet mini, dan praktik jaringan lokal." - }, - { - id: 7, - title: "Server Dell PowerEdge R620", - category: "Server", - price: 6500000, - condition: "Bekas Server Room", - location: "Jakarta", - seller: "Server Bekas ID", - whatsapp: "628222333444", - image: "https://images.unsplash.com/photo-1558494949-ef010cbdcc31?q=80&w=1200&auto=format&fit=crop", - description: "Server rackmount bekas data center, cocok untuk belajar virtualization, Proxmox, Docker, dan homelab." - }, - { - id: 8, - title: "Access Point TP-Link EAP225", - category: "Access Point", - price: 620000, - condition: "Bekas Mulus", - location: "Semarang", - seller: "WiFi Store", - whatsapp: "6281212121212", - image: "https://images.unsplash.com/photo-1544197150-b99a580bb7a8?q=80&w=1200&auto=format&fit=crop", - description: "Access point ceiling untuk hotspot sekolah, kantor, dan lab jaringan. Kondisi normal." - } -] - -export const categories = [ - { - name: "Semua", - icon: "Boxes" - }, - { - name: "Laptop", - icon: "Laptop" - }, - { - name: "PC", - icon: "PcCase" - }, - { - name: "Monitor", - icon: "Monitor" - }, - { - name: "Keyboard", - icon: "Keyboard" - }, - { - name: "Router", - icon: "Router" - }, - { - name: "Switch", - icon: "Network" - }, - { - name: "Server", - icon: "Server" - }, - { - name: "Access Point", - icon: "Wifi" - } -] diff --git a/backup-before-fix-20260519-092338/src/views/ProductDetailView.vue b/backup-before-fix-20260519-092338/src/views/ProductDetailView.vue deleted file mode 100644 index bf34d2c..0000000 --- a/backup-before-fix-20260519-092338/src/views/ProductDetailView.vue +++ /dev/null @@ -1,135 +0,0 @@ - - - diff --git a/backup-before-fix-20260519-092338/src/views/SellProductView.vue b/backup-before-fix-20260519-092338/src/views/SellProductView.vue deleted file mode 100644 index 0842d46..0000000 --- a/backup-before-fix-20260519-092338/src/views/SellProductView.vue +++ /dev/null @@ -1,162 +0,0 @@ - - - diff --git a/backup-before-fix-20260519-092338/tailwind.config.js b/backup-before-fix-20260519-092338/tailwind.config.js deleted file mode 100644 index c5e9579..0000000 --- a/backup-before-fix-20260519-092338/tailwind.config.js +++ /dev/null @@ -1,27 +0,0 @@ -/** @type {import('tailwindcss').Config} */ -export default { - darkMode: "class", - content: [ - "./index.html", - "./src/**/*.{vue,js}" - ], - theme: { - extend: { - fontFamily: { - sans: ["Inter", "system-ui", "sans-serif"] - }, - colors: { - brand: { - 50: "#eff6ff", - 100: "#dbeafe", - 500: "#2563eb", - 600: "#1d4ed8", - 700: "#1e40af", - 900: "#172554" - } - } - } - }, - plugins: [] -} - diff --git a/backup-before-force-multiphoto-dark-20260519-103129/server/server.js b/backup-before-force-multiphoto-dark-20260519-103129/server/server.js deleted file mode 100644 index efec7d1..0000000 --- a/backup-before-force-multiphoto-dark-20260519-103129/server/server.js +++ /dev/null @@ -1,395 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const maxImageSizeMb = Number(process.env.MAX_IMAGE_SIZE_MB || 10) -const maxImageCount = Number(process.env.MAX_IMAGE_COUNT || 6) -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: maxImageSizeMb * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -async function ensureSchema() { - await pool.query(` - CREATE TABLE IF NOT EXISTS product_images ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - product_id INT UNSIGNED NOT NULL, - image VARCHAR(255) NOT NULL, - sort_order INT UNSIGNED NOT NULL DEFAULT 0, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - CONSTRAINT fk_product_images_product - FOREIGN KEY (product_id) REFERENCES products(id) - ON DELETE CASCADE - ) - `) -} - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query("SELECT role FROM users WHERE id = ?", [req.user.id]) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} - -function getUploadedImages(req) { - if (Array.isArray(req.files)) return req.files.slice(0, maxImageCount) - return [ - ...(req.files?.images || []), - ...(req.files?.image || []) - ].slice(0, maxImageCount) -} - -async function getProductImages(productId, fallbackImage) { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [productId] - ) - - const imagePaths = images.map((item) => item.image) - if (imagePaths.length) return imagePaths - return fallbackImage ? [fallbackImage] : [] -} - -async function attachProductImages(products) { - return Promise.all( - products.map(async (product) => ({ - ...product, - images: await getProductImages(product.id, product.image) - })) - ) -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - product.images = await getProductImages(product.id, product.image) - return product -} - -async function deleteUploadedImages(product) { - const images = product.images?.length ? product.images : [product.image] - - images.forEach((image) => { - if (image?.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(image)), { force: true }, () => {}) - } - }) -} - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products ORDER BY created_at DESC, id DESC" - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post( - "/api/products", - auth, - upload.fields([ - { name: "images", maxCount: maxImageCount }, - { name: "image", maxCount: maxImageCount } - ]), - async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - const uploadedImages = getUploadedImages(req) - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !uploadedImages.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${uploadedImages[0].filename}` - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = uploadedImages.map((file, index) => [result.insertId, `/uploads/${file.filename}`, index]) - await pool.query("INSERT INTO product_images (product_id, image, sort_order) VALUES ?", [imageRows]) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } - } -) - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: `Upload gagal. Ukuran setiap foto maksimal ${maxImageSizeMb} MB dan maksimal ${maxImageCount} foto.` }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ - message: "Terjadi kesalahan pada server.", - detail: process.env.NODE_ENV === "production" ? undefined : error.message - }) -}) - -ensureSchema() - .then(() => { - app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) - console.log(`Upload foto: maksimal ${maxImageSizeMb} MB per foto, maksimal ${maxImageCount} foto.`) - }) - }) - .catch((error) => { - console.error("Gagal menyiapkan database:", error) - process.exit(1) - }) diff --git a/backup-before-force-multiphoto-dark-20260519-103129/src/assets/main.css b/backup-before-force-multiphoto-dark-20260519-103129/src/assets/main.css deleted file mode 100644 index 003ca64..0000000 --- a/backup-before-force-multiphoto-dark-20260519-103129/src/assets/main.css +++ /dev/null @@ -1,200 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"); - -@tailwind base; -@tailwind components; -@tailwind utilities; - -* { - scroll-behavior: smooth; -} - -body { - @apply bg-slate-50 text-slate-900 font-sans; -} - -.container-page { - @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; -} - -.btn-primary { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-brand-600 px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-700; -} - -.btn-secondary { - @apply inline-flex items-center justify-center gap-2 rounded-xl border border-slate-200 bg-white px-5 py-3 text-sm font-semibold text-slate-800 transition hover:bg-slate-100; -} - -.card { - @apply rounded-2xl border border-slate-200 bg-white shadow-sm; -} - -.input { - @apply w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm outline-none transition focus:border-brand-500 focus:ring-4 focus:ring-brand-100; -} - -.label { - @apply text-sm font-semibold text-slate-700; -} - -.btn-WA { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-green-500 px-5 py-3 text-sm font-semibold text-white transition hover:bg-green-600; -} - -/* SecondTech dark mode */ -html.dark body { - background: #121212; - color: #f8fafc; -} - -html.dark header { - background: rgba(18, 18, 18, 0.94); - border-color: rgba(37, 99, 235, 0.34); -} - -html.dark main, -html.dark section { - background: #121212; -} - -html.dark .card { - background: #181818; - border-color: rgba(37, 99, 235, 0.30); - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.20); -} - -html.dark .input { - background: #181818; - border-color: rgba(37, 99, 235, 0.34); - color: #f8fafc; -} - -html.dark .input::placeholder { - color: #94a3b8; -} - -html.dark .btn-secondary { - background: #181818; - border-color: rgba(37, 99, 235, 0.38); - color: #f8fafc; - box-shadow: 0 10px 24px rgba(37, 99, 235, 0.12); -} - -html.dark .btn-primary { - box-shadow: 0 12px 28px rgba(37, 99, 235, 0.24); -} - -html.dark .bg-white, -html.dark .bg-slate-50, -html.dark .bg-slate-100 { - background-color: #181818; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700 { - color: #f8fafc; -} - -html.dark .text-slate-600, -html.dark .text-slate-500 { - color: #cbd5e1; -} - -html.dark .border-slate-200 { - border-color: rgba(37, 99, 235, 0.30); -} - -/* SecondTech stronger dark mode repair */ -html.dark, -html.dark body { - background: #121212 !important; - color: #f8fafc !important; -} - -html.dark header, -html.dark footer, -html.dark main, -html.dark section { - background-color: #121212 !important; -} - -html.dark header { - border-color: rgba(37, 99, 235, 0.35) !important; -} - -html.dark .card { - background: #181818 !important; - border-color: rgba(37, 99, 235, 0.34) !important; - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.22) !important; -} - -html.dark .input, -html.dark input, -html.dark select, -html.dark textarea { - background-color: #181818 !important; - border-color: rgba(37, 99, 235, 0.38) !important; - color: #f8fafc !important; -} - -html.dark .input::placeholder, -html.dark input::placeholder, -html.dark textarea::placeholder { - color: #94a3b8 !important; -} - -html.dark .btn-secondary { - background: #181818 !important; - border-color: rgba(37, 99, 235, 0.42) !important; - color: #f8fafc !important; - box-shadow: 0 10px 24px rgba(37, 99, 235, 0.14) !important; -} - -html.dark .btn-primary { - box-shadow: 0 12px 28px rgba(37, 99, 235, 0.26) !important; -} - -html.dark .bg-white, -html.dark .bg-slate-50, -html.dark .bg-slate-100, -html.dark .bg-brand-50 { - background-color: #181818 !important; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700, -html.dark .text-brand-900, -html.dark .text-brand-800, -html.dark .text-brand-700 { - color: #f8fafc !important; -} - -html.dark .text-slate-600, -html.dark .text-slate-500, -html.dark .text-slate-400 { - color: #cbd5e1 !important; -} - -html.dark .nav-link, -html.dark .mobile-link, -html.dark a:not(.btn-primary) { - color: #dbeafe !important; -} - -html.dark .nav-link:hover, -html.dark .mobile-link:hover, -html.dark a:not(.btn-primary):hover { - color: #ffffff !important; -} - -html.dark .border-slate-200, -html.dark .border-brand-600 { - border-color: rgba(37, 99, 235, 0.42) !important; -} - -html.dark .shadow-sm { - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.18) !important; -} diff --git a/backup-before-force-multiphoto-dark-20260519-103129/src/views/ProductDetailView.vue b/backup-before-force-multiphoto-dark-20260519-103129/src/views/ProductDetailView.vue deleted file mode 100644 index f50eaa2..0000000 --- a/backup-before-force-multiphoto-dark-20260519-103129/src/views/ProductDetailView.vue +++ /dev/null @@ -1,138 +0,0 @@ - - - diff --git a/backup-before-force-multiphoto-dark-20260519-103129/src/views/SellProductView.vue b/backup-before-force-multiphoto-dark-20260519-103129/src/views/SellProductView.vue deleted file mode 100644 index c31b072..0000000 --- a/backup-before-force-multiphoto-dark-20260519-103129/src/views/SellProductView.vue +++ /dev/null @@ -1,173 +0,0 @@ - - - - diff --git a/backup-before-gallery-darkmode-repair-20260519-100158/server/server.js b/backup-before-gallery-darkmode-repair-20260519-100158/server/server.js deleted file mode 100644 index 72df172..0000000 --- a/backup-before-gallery-darkmode-repair-20260519-100158/server/server.js +++ /dev/null @@ -1,393 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const maxImageSizeMb = Number(process.env.MAX_IMAGE_SIZE_MB || 10) -const maxImageCount = Number(process.env.MAX_IMAGE_COUNT || 6) -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: maxImageSizeMb * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -async function ensureSchema() { - await pool.query(` - CREATE TABLE IF NOT EXISTS product_images ( - id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, - product_id INT UNSIGNED NOT NULL, - image VARCHAR(255) NOT NULL, - sort_order INT UNSIGNED NOT NULL DEFAULT 0, - created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, - CONSTRAINT fk_product_images_product - FOREIGN KEY (product_id) REFERENCES products(id) - ON DELETE CASCADE - ) - `) -} - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query("SELECT role FROM users WHERE id = ?", [req.user.id]) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} - -function getUploadedImages(req) { - if (Array.isArray(req.files)) return req.files - return [ - ...(req.files?.images || []), - ...(req.files?.image || []) - ].slice(0, maxImageCount) -} - -async function getProductImages(productId, fallbackImage) { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [productId] - ) - - return images.length ? images.map((item) => item.image) : [fallbackImage] -} - -async function attachProductImages(products) { - return Promise.all( - products.map(async (product) => ({ - ...product, - images: await getProductImages(product.id, product.image) - })) - ) -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - product.images = await getProductImages(product.id, product.image) - return product -} - -async function deleteUploadedImages(product) { - const images = product.images?.length ? product.images : [product.image] - - images.forEach((image) => { - if (image?.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(image)), { force: true }, () => {}) - } - }) -} - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products ORDER BY created_at DESC, id DESC" - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post( - "/api/products", - auth, - upload.fields([ - { name: "images", maxCount: maxImageCount }, - { name: "image", maxCount: maxImageCount } - ]), - async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - const uploadedImages = getUploadedImages(req) - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !uploadedImages.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${uploadedImages[0].filename}` - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = uploadedImages.map((file, index) => [result.insertId, `/uploads/${file.filename}`, index]) - await pool.query("INSERT INTO product_images (product_id, image, sort_order) VALUES ?", [imageRows]) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } - } -) - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: `Upload gagal. Ukuran setiap foto maksimal ${maxImageSizeMb} MB dan maksimal ${maxImageCount} foto.` }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ - message: "Terjadi kesalahan pada server.", - detail: process.env.NODE_ENV === "production" ? undefined : error.message - }) -}) - -ensureSchema() - .then(() => { - app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) - console.log(`Upload foto: maksimal ${maxImageSizeMb} MB per foto, maksimal ${maxImageCount} foto.`) - }) - }) - .catch((error) => { - console.error("Gagal menyiapkan database:", error) - process.exit(1) - }) diff --git a/backup-before-gallery-darkmode-repair-20260519-100158/src/assets/main.css b/backup-before-gallery-darkmode-repair-20260519-100158/src/assets/main.css deleted file mode 100644 index 00deec0..0000000 --- a/backup-before-gallery-darkmode-repair-20260519-100158/src/assets/main.css +++ /dev/null @@ -1,106 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"); - -@tailwind base; -@tailwind components; -@tailwind utilities; - -* { - scroll-behavior: smooth; -} - -body { - @apply bg-slate-50 text-slate-900 font-sans; -} - -.container-page { - @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; -} - -.btn-primary { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-brand-600 px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-700; -} - -.btn-secondary { - @apply inline-flex items-center justify-center gap-2 rounded-xl border border-slate-200 bg-white px-5 py-3 text-sm font-semibold text-slate-800 transition hover:bg-slate-100; -} - -.card { - @apply rounded-2xl border border-slate-200 bg-white shadow-sm; -} - -.input { - @apply w-full rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm outline-none transition focus:border-brand-500 focus:ring-4 focus:ring-brand-100; -} - -.label { - @apply text-sm font-semibold text-slate-700; -} - -.btn-WA { - @apply inline-flex items-center justify-center gap-2 rounded-xl bg-green-500 px-5 py-3 text-sm font-semibold text-white transition hover:bg-green-600; -} - -/* SecondTech dark mode */ -html.dark body { - background: #121212; - color: #f8fafc; -} - -html.dark header { - background: rgba(18, 18, 18, 0.94); - border-color: rgba(37, 99, 235, 0.34); -} - -html.dark main, -html.dark section { - background: #121212; -} - -html.dark .card { - background: #181818; - border-color: rgba(37, 99, 235, 0.30); - box-shadow: 0 14px 34px rgba(37, 99, 235, 0.20); -} - -html.dark .input { - background: #181818; - border-color: rgba(37, 99, 235, 0.34); - color: #f8fafc; -} - -html.dark .input::placeholder { - color: #94a3b8; -} - -html.dark .btn-secondary { - background: #181818; - border-color: rgba(37, 99, 235, 0.38); - color: #f8fafc; - box-shadow: 0 10px 24px rgba(37, 99, 235, 0.12); -} - -html.dark .btn-primary { - box-shadow: 0 12px 28px rgba(37, 99, 235, 0.24); -} - -html.dark .bg-white, -html.dark .bg-slate-50, -html.dark .bg-slate-100 { - background-color: #181818; -} - -html.dark .text-slate-950, -html.dark .text-slate-900, -html.dark .text-slate-800, -html.dark .text-slate-700 { - color: #f8fafc; -} - -html.dark .text-slate-600, -html.dark .text-slate-500 { - color: #cbd5e1; -} - -html.dark .border-slate-200 { - border-color: rgba(37, 99, 235, 0.30); -} diff --git a/backup-before-gallery-darkmode-repair-20260519-100158/src/components/ProductCard.vue b/backup-before-gallery-darkmode-repair-20260519-100158/src/components/ProductCard.vue deleted file mode 100644 index b70be73..0000000 --- a/backup-before-gallery-darkmode-repair-20260519-100158/src/components/ProductCard.vue +++ /dev/null @@ -1,66 +0,0 @@ - - - diff --git a/backup-before-gallery-darkmode-repair-20260519-100158/src/utils.js b/backup-before-gallery-darkmode-repair-20260519-100158/src/utils.js deleted file mode 100644 index 725ba6a..0000000 --- a/backup-before-gallery-darkmode-repair-20260519-100158/src/utils.js +++ /dev/null @@ -1,137 +0,0 @@ -export const API_BASE_URL = import.meta.env.VITE_API_URL || "http://localhost:5000" - -export function formatRupiah(value) { - return new Intl.NumberFormat("id-ID", { - style: "currency", - currency: "IDR", - maximumFractionDigits: 0 - }).format(value) -} - -export function getLocal(key, fallback) { - try { - const value = localStorage.getItem(key) - return value ? JSON.parse(value) : fallback - } catch { - return fallback - } -} - -export function setLocal(key, value) { - localStorage.setItem(key, JSON.stringify(value)) -} - -export function getToken() { - return localStorage.getItem("secondtech_token") -} - -export function getCurrentUser() { - return getLocal("secondtech_user", null) -} - -export function setAuth({ token, user }) { - localStorage.setItem("secondtech_token", token) - - setLocal("secondtech_user", { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - }) -} - -export function clearAuth() { - localStorage.removeItem("secondtech_token") - localStorage.removeItem("secondtech_user") -} - -export function getProductImageUrl(image) { - if (!image) return "" - if (image.startsWith("http://") || image.startsWith("https://") || image.startsWith("data:")) return image - return `${API_BASE_URL}${image}` -} - -async function requestJson(path, options = {}) { - const headers = new Headers(options.headers || {}) - const token = getToken() - - if (token) headers.set("Authorization", `Bearer ${token}`) - if (!(options.body instanceof FormData)) headers.set("Content-Type", "application/json") - - const response = await fetch(`${API_BASE_URL}${path}`, { - ...options, - headers - }) - const data = await response.json().catch(() => ({})) - - if (!response.ok) { - throw new Error(data.message || "Request gagal.") - } - - return data -} - -export function registerUser(payload) { - return requestJson("/api/auth/register", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function loginUser(payload) { - return requestJson("/api/auth/login", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function fetchCurrentUser() { - return requestJson("/api/auth/me") -} - -export function fetchProducts() { - return requestJson("/api/products") -} - -export function fetchProduct(id) { - return requestJson(`/api/products/${id}`) -} - -export function fetchMyProducts() { - return requestJson("/api/products/mine") -} - -export function createProduct(formData) { - return requestJson("/api/products", { - method: "POST", - body: formData - }) -} - -export function updateProductStatus(id, status) { - return requestJson(`/api/products/${id}/status`, { - method: "PATCH", - body: JSON.stringify({ status }) - }) -} - -export function deleteProductById(id) { - return requestJson(`/api/products/${id}`, { - method: "DELETE" - }) -} - -export function deleteProductAsAdmin(id) { - return requestJson(`/api/admin/products/${id}`, { - method: "DELETE" - }) -} - -export function getSavedProducts() { - return getLocal("secondtech_saved", []) -} - -export function setSavedProducts(ids) { - setLocal("secondtech_saved", ids) -} diff --git a/backup-before-gallery-darkmode-repair-20260519-100158/src/views/ProductDetailView.vue b/backup-before-gallery-darkmode-repair-20260519-100158/src/views/ProductDetailView.vue deleted file mode 100644 index bf34d2c..0000000 --- a/backup-before-gallery-darkmode-repair-20260519-100158/src/views/ProductDetailView.vue +++ /dev/null @@ -1,135 +0,0 @@ - - - diff --git a/backup-before-gallery-darkmode-repair-20260519-100158/src/views/SellProductView.vue b/backup-before-gallery-darkmode-repair-20260519-100158/src/views/SellProductView.vue deleted file mode 100644 index c31b072..0000000 --- a/backup-before-gallery-darkmode-repair-20260519-100158/src/views/SellProductView.vue +++ /dev/null @@ -1,173 +0,0 @@ - - - - diff --git a/backup-before-upload-limit-20260519-093708/SellProductView.vue b/backup-before-upload-limit-20260519-093708/SellProductView.vue deleted file mode 100644 index d927e52..0000000 --- a/backup-before-upload-limit-20260519-093708/SellProductView.vue +++ /dev/null @@ -1,158 +0,0 @@ - - - diff --git a/backup-before-upload-limit-20260519-093708/server.js b/backup-before-upload-limit-20260519-093708/server.js deleted file mode 100644 index eae1282..0000000 --- a/backup-before-upload-limit-20260519-093708/server.js +++ /dev/null @@ -1,348 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: 3 * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query("SELECT role FROM users WHERE id = ?", [req.user.id]) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} - -async function getProductImages(productId, fallbackImage) { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [productId] - ) - - return images.length ? images.map((item) => item.image) : [fallbackImage] -} - -async function attachProductImages(products) { - return Promise.all( - products.map(async (product) => ({ - ...product, - images: await getProductImages(product.id, product.image) - })) - ) -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - product.images = await getProductImages(product.id, product.image) - return product -} - -async function deleteUploadedImages(product) { - const images = product.images?.length ? product.images : [product.image] - - images.forEach((image) => { - if (image?.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(image)), { force: true }, () => {}) - } - }) -} - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products ORDER BY created_at DESC, id DESC" - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post("/api/products", auth, upload.array("images", 6), async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !req.files?.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${req.files[0].filename}` - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = req.files.map((file, index) => [result.insertId, `/uploads/${file.filename}`, index]) - await pool.query("INSERT INTO product_images (product_id, image, sort_order) VALUES ?", [imageRows]) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } -}) - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: "Upload gagal. Ukuran setiap foto maksimal 3MB dan maksimal 6 foto." }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ message: "Terjadi kesalahan pada server." }) -}) - -app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) -}) diff --git a/backup-before-upload-repair-20260519-095013/server/server.js b/backup-before-upload-repair-20260519-095013/server/server.js deleted file mode 100644 index 0abda9f..0000000 --- a/backup-before-upload-repair-20260519-095013/server/server.js +++ /dev/null @@ -1,349 +0,0 @@ -import bcrypt from "bcryptjs" -import cors from "cors" -import dotenv from "dotenv" -import express from "express" -import fs from "fs" -import jwt from "jsonwebtoken" -import multer from "multer" -import path from "path" -import { fileURLToPath } from "url" -import { pool } from "./db.js" - -dotenv.config() - -const app = express() -const port = Number(process.env.PORT || 5000) -const jwtSecret = process.env.JWT_SECRET || "secondtech_dev_secret" -const __filename = fileURLToPath(import.meta.url) -const __dirname = path.dirname(__filename) -const uploadsDir = path.join(__dirname, "uploads") - -if (!fs.existsSync(uploadsDir)) { - fs.mkdirSync(uploadsDir, { recursive: true }) -} - -app.use(cors({ - origin: process.env.CLIENT_URL || "http://localhost:5173", - credentials: true -})) -app.use(express.json()) -app.use("/uploads", express.static(uploadsDir)) - -const storage = multer.diskStorage({ - destination: uploadsDir, - filename: (req, file, cb) => { - const ext = path.extname(file.originalname).toLowerCase() - cb(null, `${Date.now()}-${Math.round(Math.random() * 1e9)}${ext}`) - } -}) - -const upload = multer({ - storage, - limits: { fileSize: 10 * 1024 * 1024 }, - fileFilter: (req, file, cb) => { - if (!file.mimetype.startsWith("image/")) { - cb(new Error("File harus berupa gambar.")) - return - } - cb(null, true) - } -}) - -function signUser(user) { - return jwt.sign({ id: user.id, email: user.email }, jwtSecret, { expiresIn: "7d" }) -} - -function publicUser(user) { - return { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - } -} - -function auth(req, res, next) { - const header = req.headers.authorization || "" - const token = header.startsWith("Bearer ") ? header.slice(7) : "" - - if (!token) { - res.status(401).json({ message: "Silakan login terlebih dahulu." }) - return - } - - try { - req.user = jwt.verify(token, jwtSecret) - next() - } catch { - res.status(401).json({ message: "Sesi login tidak valid." }) - } -} - -async function superadminOnly(req, res, next) { - try { - const [rows] = await pool.query("SELECT role FROM users WHERE id = ?", [req.user.id]) - - if (!rows[0] || rows[0].role !== "superadmin") { - res.status(403).json({ message: "Hanya superadmin yang boleh mengakses fitur ini." }) - return - } - - next() - } catch (error) { - next(error) - } -} - -async function getProductImages(productId, fallbackImage) { - const [images] = await pool.query( - "SELECT image FROM product_images WHERE product_id = ? ORDER BY sort_order ASC, id ASC", - [productId] - ) - - return images.length ? images.map((item) => item.image) : [fallbackImage] -} - -async function attachProductImages(products) { - return Promise.all( - products.map(async (product) => ({ - ...product, - images: await getProductImages(product.id, product.image) - })) - ) -} - -async function findProductById(id) { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE id = ?", - [id] - ) - - const product = rows[0] - if (!product) return null - - product.images = await getProductImages(product.id, product.image) - return product -} - -async function deleteUploadedImages(product) { - const images = product.images?.length ? product.images : [product.image] - - images.forEach((image) => { - if (image?.startsWith("/uploads/")) { - fs.rm(path.join(uploadsDir, path.basename(image)), { force: true }, () => {}) - } - }) -} - -app.get("/api/health", async (req, res, next) => { - try { - await pool.query("SELECT 1") - res.json({ status: "ok" }) - } catch (error) { - next(error) - } -}) - -app.post("/api/auth/register", async (req, res, next) => { - try { - const { name, email, whatsapp, password } = req.body - - if (!name || !email || !whatsapp || !password) { - res.status(400).json({ message: "Semua field wajib diisi." }) - return - } - - if (password.length < 6) { - res.status(400).json({ message: "Password minimal 6 karakter." }) - return - } - - const passwordHash = await bcrypt.hash(password, 10) - const [result] = await pool.query( - "INSERT INTO users (name, email, whatsapp, password_hash) VALUES (?, ?, ?, ?)", - [name, email.toLowerCase(), whatsapp, passwordHash] - ) - - const user = { id: result.insertId, name, email: email.toLowerCase(), whatsapp, role: "user" } - res.status(201).json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - if (error.code === "ER_DUP_ENTRY") { - res.status(409).json({ message: "Email sudah terdaftar." }) - return - } - next(error) - } -}) - -app.post("/api/auth/login", async (req, res, next) => { - try { - const { email, password } = req.body - - if (!email || !password) { - res.status(400).json({ message: "Email dan password wajib diisi." }) - return - } - - const [rows] = await pool.query("SELECT * FROM users WHERE email = ?", [email.toLowerCase()]) - const user = rows[0] - - if (!user || !(await bcrypt.compare(password, user.password_hash))) { - res.status(401).json({ message: "Email atau password salah." }) - return - } - - res.json({ token: signUser(user), user: publicUser(user) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/auth/me", auth, async (req, res, next) => { - try { - const [rows] = await pool.query("SELECT id, name, email, whatsapp, role FROM users WHERE id = ?", [req.user.id]) - if (!rows[0]) { - res.status(404).json({ message: "User tidak ditemukan." }) - return - } - res.json({ user: rows[0] }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products", async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products ORDER BY created_at DESC, id DESC" - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/mine", auth, async (req, res, next) => { - try { - const [rows] = await pool.query( - "SELECT id, user_id, title, category, price, `condition`, location, seller, whatsapp, image, description, status, created_at FROM products WHERE user_id = ? ORDER BY created_at DESC, id DESC", - [req.user.id] - ) - res.json({ products: await attachProductImages(rows) }) - } catch (error) { - next(error) - } -}) - -app.get("/api/products/:id", async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.post("/api/products", auth, upload.array("images", 6), async (req, res, next) => { - try { - const { title, category, price, condition, location, seller, whatsapp, description } = req.body - - if (!title || !category || !price || !condition || !location || !seller || !whatsapp || !description || !req.files?.length) { - res.status(400).json({ message: "Semua field produk dan minimal 1 foto wajib diisi." }) - return - } - - const mainImagePath = `/uploads/${req.files[0].filename}` - const [result] = await pool.query( - "INSERT INTO products (user_id, title, category, price, `condition`, location, seller, whatsapp, image, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", - [req.user.id, title, category, Number(price), condition, location, seller, whatsapp, mainImagePath, description] - ) - - const imageRows = req.files.map((file, index) => [result.insertId, `/uploads/${file.filename}`, index]) - await pool.query("INSERT INTO product_images (product_id, image, sort_order) VALUES ?", [imageRows]) - - const product = await findProductById(result.insertId) - res.status(201).json({ product }) - } catch (error) { - next(error) - } -}) - -app.patch("/api/products/:id/status", auth, async (req, res, next) => { - try { - const status = req.body.status === "Terjual" ? "Terjual" : "Tersedia" - const [result] = await pool.query( - "UPDATE products SET status = ? WHERE id = ? AND user_id = ?", - [status, req.params.id, req.user.id] - ) - - if (!result.affectedRows) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - const product = await findProductById(req.params.id) - res.json({ product }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/products/:id", auth, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - if (!product || product.user_id !== req.user.id) { - res.status(404).json({ message: "Produk milik kamu tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ? AND user_id = ?", [req.params.id, req.user.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus." }) - } catch (error) { - next(error) - } -}) - -app.delete("/api/admin/products/:id", auth, superadminOnly, async (req, res, next) => { - try { - const product = await findProductById(req.params.id) - - if (!product) { - res.status(404).json({ message: "Produk tidak ditemukan." }) - return - } - - await pool.query("DELETE FROM products WHERE id = ?", [req.params.id]) - await deleteUploadedImages(product) - - res.json({ message: "Produk berhasil dihapus oleh superadmin." }) - } catch (error) { - next(error) - } -}) - -app.use((error, req, res, next) => { - if (error instanceof multer.MulterError) { - res.status(400).json({ message: "Upload gagal. Ukuran setiap foto maksimal 10 MB dan maksimal 6 foto." }) - return - } - - if (error.message === "File harus berupa gambar.") { - res.status(400).json({ message: error.message }) - return - } - - console.error(error) - res.status(500).json({ message: "Terjadi kesalahan pada server." }) -}) - -app.listen(port, () => { - console.log(`SecondTech API berjalan di http://localhost:${port}`) -}) - diff --git a/backup-before-upload-repair-20260519-095013/src/utils.js b/backup-before-upload-repair-20260519-095013/src/utils.js deleted file mode 100644 index 725ba6a..0000000 --- a/backup-before-upload-repair-20260519-095013/src/utils.js +++ /dev/null @@ -1,137 +0,0 @@ -export const API_BASE_URL = import.meta.env.VITE_API_URL || "http://localhost:5000" - -export function formatRupiah(value) { - return new Intl.NumberFormat("id-ID", { - style: "currency", - currency: "IDR", - maximumFractionDigits: 0 - }).format(value) -} - -export function getLocal(key, fallback) { - try { - const value = localStorage.getItem(key) - return value ? JSON.parse(value) : fallback - } catch { - return fallback - } -} - -export function setLocal(key, value) { - localStorage.setItem(key, JSON.stringify(value)) -} - -export function getToken() { - return localStorage.getItem("secondtech_token") -} - -export function getCurrentUser() { - return getLocal("secondtech_user", null) -} - -export function setAuth({ token, user }) { - localStorage.setItem("secondtech_token", token) - - setLocal("secondtech_user", { - id: user.id, - name: user.name, - email: user.email, - whatsapp: user.whatsapp, - role: user.role || "user" - }) -} - -export function clearAuth() { - localStorage.removeItem("secondtech_token") - localStorage.removeItem("secondtech_user") -} - -export function getProductImageUrl(image) { - if (!image) return "" - if (image.startsWith("http://") || image.startsWith("https://") || image.startsWith("data:")) return image - return `${API_BASE_URL}${image}` -} - -async function requestJson(path, options = {}) { - const headers = new Headers(options.headers || {}) - const token = getToken() - - if (token) headers.set("Authorization", `Bearer ${token}`) - if (!(options.body instanceof FormData)) headers.set("Content-Type", "application/json") - - const response = await fetch(`${API_BASE_URL}${path}`, { - ...options, - headers - }) - const data = await response.json().catch(() => ({})) - - if (!response.ok) { - throw new Error(data.message || "Request gagal.") - } - - return data -} - -export function registerUser(payload) { - return requestJson("/api/auth/register", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function loginUser(payload) { - return requestJson("/api/auth/login", { - method: "POST", - body: JSON.stringify(payload) - }) -} - -export function fetchCurrentUser() { - return requestJson("/api/auth/me") -} - -export function fetchProducts() { - return requestJson("/api/products") -} - -export function fetchProduct(id) { - return requestJson(`/api/products/${id}`) -} - -export function fetchMyProducts() { - return requestJson("/api/products/mine") -} - -export function createProduct(formData) { - return requestJson("/api/products", { - method: "POST", - body: formData - }) -} - -export function updateProductStatus(id, status) { - return requestJson(`/api/products/${id}/status`, { - method: "PATCH", - body: JSON.stringify({ status }) - }) -} - -export function deleteProductById(id) { - return requestJson(`/api/products/${id}`, { - method: "DELETE" - }) -} - -export function deleteProductAsAdmin(id) { - return requestJson(`/api/admin/products/${id}`, { - method: "DELETE" - }) -} - -export function getSavedProducts() { - return getLocal("secondtech_saved", []) -} - -export function setSavedProducts(ids) { - setLocal("secondtech_saved", ids) -} diff --git a/backup-before-upload-repair-20260519-095013/src/views/SellProductView.vue b/backup-before-upload-repair-20260519-095013/src/views/SellProductView.vue deleted file mode 100644 index c31b072..0000000 --- a/backup-before-upload-repair-20260519-095013/src/views/SellProductView.vue +++ /dev/null @@ -1,173 +0,0 @@ - - - - diff --git a/public/Hero.jpeg b/public/Hero.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..2080586e969eebc230ae01cc8a00a93a1b1418e9 GIT binary patch literal 327119 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
vh^GG6NcXuE+-EWyMhq#6$1$H6*X-#nA_v}de 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 literal 0 HcmV?d00001 diff --git a/src/components/Navbar.vue b/src/components/Navbar.vue index 6a9df3c..6fdf52d 100644 --- a/src/components/Navbar.vue +++ b/src/components/Navbar.vue @@ -2,9 +2,7 @@
-
- -
+ SecondTech logo SecondTech
@@ -52,7 +50,7 @@
@@ -74,60 +72,60 @@