Server : Apache/2.4.18 (Ubuntu) System : Linux canvaswebdesign 3.13.0-71-generic #114-Ubuntu SMP Tue Dec 1 02:34:22 UTC 2015 x86_64 User : oppastar ( 1041) PHP Version : 7.0.33-0ubuntu0.16.04.15 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, Directory : /var/www/laciasmara.com/public_html/shop/application/views/admin_new/layouts/ |
Upload File : |
<!DOCTYPE html> <html lang="id"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title><?= isset($title) ? $title : "Login" ?> - Admin</title> <meta name="csrf-token" content="<?= $this->security->get_csrf_hash() ?>"> <meta name="csrf-name" content="<?= $this->security->get_csrf_token_name() ?>"> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet"> <script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/js/all.min.js"></script> <script src="https://cdn.tailwindcss.com"></script> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/notyf@3.4.0/notyf.min.css"> <script src="https://cdn.jsdelivr.net/npm/notyf@3.4.0/notyf.min.js"></script> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/themes/material_blue.css"> <link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" crossorigin="" /> <script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js" integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo=" crossorigin=""></script> <!-- Tour Guide CSS --> <link rel="stylesheet" href="<?= base_url('assets/admin/css/tour-guide.css') ?>"> <style> #map { height: 500px; width: 100%; z-index: 95; } .legend { line-height: 25px; color: #555; background: rgba(255, 255, 255, 0.8); border-radius: 5px; padding: 10px; } .legend h4 { text-align: center; margin-bottom: 5px; } .legend i { width: 18px; height: 18px; float: left; margin: 0 8px 0 0; opacity: 0.7; } .custom-tooltip { position: absolute; background: white; border: 1px solid #ccc; padding: 10px; border-radius: 5px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); z-index: 1000; display: none; pointer-events: none; } .rotate-180 { transform: rotate(180deg); } .menu-item button i, [data-feather='chevron-down'] { transition: transform 0.2s ease-in-out; } .active { border-left: 2px solid #7A4397; } .active-tab { border-color: #7A4397 !important; color: #7A4397; } /* New styles for better UI/UX */ .menu-item button { transition: all 0.2s ease-in-out; border-radius: 0.375rem; } .menu-item button:hover { background-color: rgba(122, 67, 151, 0.1); } .menu-item.active button { color: #7A4397; font-weight: 500; } .submenu { transition: max-height 0.3s ease-out, opacity 0.2s ease-out; max-height: 0; opacity: 0; overflow: hidden; } .submenu.open { max-height: 500px; opacity: 1; } .submenu li a { transition: all 0.2s ease; border-radius: 0.375rem; margin-bottom: 2px; } .submenu li a.active { color: #7A4397; background-color: rgba(122, 67, 151, 0.1); font-weight: 500; } /* Progress Bar */ @keyframes progress { 0% { width: 0; } 20% { width: 20%; } 50% { width: 50%; } 80% { width: 80%; } 100% { width: 100%; } } .animate-progress { animation: progress 2s ease-in-out infinite; } /* Notyf */ /* Notyf - Perbaikan padding */ .custom-notification, .notyf__toast--success, .notyf__toast--error, .notyf__toast--upper { background-color: #2e3137 !important; border-radius: 4px !important; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3); padding: 6px 10px !important; /* Mengurangi padding vertical dan horizontal */ width: auto !important; min-width: 200px !important; max-width: 80% !important; display: flex !important; align-items: center !important; justify-content: center !important; } /* Kebalikan warna latar belakang yang diatur oleh Notyf */ .notyf__toast[style*="background-color"] { background-color: #2e3137 !important; } .notyf__wrapper { padding: 0 !important; /* Menghilangkan padding tambahan dari wrapper */ } .notyf__message { color: white !important; font-size: 14px !important; text-align: center !important; padding: 0 !important; max-width: 100% !important; word-wrap: break-word !important; } /* Memastikan posisinya di tengah */ .notyf { top: 80px !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: flex-start !important; /* Tetap sesuai yang di-render */ } .notyf__ripple { background-color: transparent !important; /* Menghilangkan efek ripple */ } .fade-out { opacity: 0; transition: opacity 0.5s ease-out; } /* Tambahkan CSS ini di file CSS Anda atau dalam tag <style> */ /* Penyesuaian untuk dropdown filter tanggal */ #dateFilterDropdown .flatpickr-calendar { box-shadow: none !important; border: none !important; box-sizing: border-box; } /* Warna untuk hari yang dipilih */ #dateFilterDropdown .flatpickr-day.selected, #dateFilterDropdown .flatpickr-day.startRange, #dateFilterDropdown .flatpickr-day.endRange, #dateFilterDropdown .flatpickr-day.selected.inRange, #dateFilterDropdown .flatpickr-day.startRange.inRange, #dateFilterDropdown .flatpickr-day.endRange.inRange { background: #7A4397; border-color: #7A4397; } /* Warna untuk hari dalam range */ #dateFilterDropdown .flatpickr-day.inRange { background: #EAE0F3; border-color: #EAE0F3; box-shadow: none; } /* Warna hover untuk hari */ #dateFilterDropdown .flatpickr-day:hover { border-color: #7A4397; background: #F5F0FA; color: #7A4397; } /* Warna untuk hari ini */ #dateFilterDropdown .flatpickr-day.today { border-color: #7A4397; } /* Indikator untuk opsi yang aktif */ #dateFilterDropdown .date-option.bg-gray-100 { background-color: #F9F5FC; position: relative; } #dateFilterDropdown .date-option.bg-gray-100::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background-color: #7A4397; } /* Untuk indikator pilih tanggal yang aktif */ #customDateIndicator { background-color: #22C55E; } .notification-dot { position: absolute; top: -5px; right: -5px; background-color: #f56565; color: white; border-radius: 9999px; font-size: 0.75rem; padding: 0.1rem 0.4rem; display: none; /* Hidden by default */ } .notification-modal { display: none; position: fixed; top: 60px; right: 20px; width: 350px; max-height: 400px; overflow-y: auto; background: white; border-radius: 6px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); z-index: 1000; } .notification-item { padding: 10px 15px; border-bottom: 1px solid #edf2f7; cursor: pointer; } .notification-item:hover { background-color: #f7fafc; } .notification-item.unread { background-color: #ebf8ff; } .notification-header { display: flex; justify-content: space-between; align-items: center; padding: 10px 15px; border-bottom: 1px solid #edf2f7; background-color: #f8fafc; } .notification-empty { padding: 30px 15px; text-align: center; color: #a0aec0; } /* Switch Button */ .toggle-slider.active { background-color: #7A4397 !important; } .toggle-slider.active span { transform: translateX(1.25rem) !important; } /* Efek focus untuk aksesibilitas */ .toggle-input:focus+.toggle-slider { box-shadow: 0 0 0 4px rgba(122, 67, 151, 0.25); } .scrollbar-thin::-webkit-scrollbar { width: 2px; } .scrollbar-thumb-purple-200::-webkit-scrollbar-thumb { background-color: #e9d5ff; /* Tailwind purple-200 */ border-radius: 2px; } .scrollbar-thumb-purple-300::-webkit-scrollbar-thumb { background-color: #d8b4fe; /* Tailwind purple-300 */ } .scrollbar-track-transparent::-webkit-scrollbar-track { background-color: transparent; } /* Firefox scrollbar */ .scrollbar-thin { scrollbar-width: thin; scrollbar-color: #e9d5ff transparent; } .scrollbar-thin:hover { scrollbar-color: #d8b4fe transparent; } .section-title { font-size: 12px; font-weight: 500; color: #6b7280; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 8px; /* padding: 0 8px; */ } /* Custom TomSelect styling to match form design */ .ts-wrapper.single .ts-control, .ts-wrapper.multi .ts-control { border: 1px solid rgb(209 213 219) !important; border-radius: 0.5rem !important; background: white !important; padding: 0.75rem 1rem !important; min-height: 3rem !important; font-size: 0.875rem !important; line-height: 1.25rem !important; color: rgb(17 24 39) !important; box-shadow: none !important; } .ts-wrapper.single .ts-control:focus-within, .ts-wrapper.multi .ts-control:focus-within { border-color: rgb(122 67 151) !important; ring: 1px !important; ring-color: rgb(122 67 151) !important; outline: none !important; } .ts-wrapper.single .ts-control input, .ts-wrapper.multi .ts-control input { color: rgb(17 24 39) !important; font-size: 0.875rem !important; } .ts-wrapper.single .ts-control input::placeholder, .ts-wrapper.multi .ts-control input::placeholder { color: rgb(107 114 128) !important; } /* Dropdown styling */ .ts-dropdown { border: 1px solid rgb(209 213 219) !important; border-radius: 0.5rem !important; box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important; background: white !important; } .ts-dropdown .ts-dropdown-content { padding: 0.25rem !important; } .ts-dropdown .option { padding: 0.5rem 0.75rem !important; border-radius: 0.375rem !important; font-size: 0.875rem !important; color: rgb(17 24 39) !important; } .ts-dropdown .option:hover, .ts-dropdown .option.active { background-color: rgb(122 67 151) !important; color: white !important; } /* Remove button styling for multi-select */ .ts-wrapper.multi .ts-control .item { background: rgb(122 67 151) !important; color: white !important; border-radius: 0.375rem !important; padding: 0.25rem 0.5rem !important; font-size: 0.75rem !important; margin: 0.125rem !important; } .ts-wrapper.multi .ts-control .item .remove { color: white !important; border-left: 1px solid rgba(255, 255, 255, 0.3) !important; margin-left: 0.25rem !important; padding-left: 0.25rem !important; } .ts-wrapper.multi .ts-control .item .remove:hover { color: rgb(254 202 202) !important; } /* Arrow styling for single select */ .ts-wrapper.single .ts-control:after { content: ''; position: absolute; top: 50%; right: 1rem; transform: translateY(-50%); width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid rgb(107 114 128); pointer-events: none; } .ts-wrapper.single.input-active .ts-control:after { border-top: none; border-bottom: 4px solid rgb(107 114 128); } /* Disabled state */ .ts-wrapper.disabled .ts-control { background-color: rgb(249 250 251) !important; color: rgb(107 114 128) !important; cursor: not-allowed !important; } /* Loading state */ .ts-wrapper.loading .ts-control:after { content: ''; width: 1rem; height: 1rem; border: 2px solid rgb(209 213 219); border-top: 2px solid rgb(122 67 151); border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: translateY(-50%) rotate(0deg); } 100% { transform: translateY(-50%) rotate(360deg); } } /* Hide original select styling */ .ts-wrapper select { display: none !important; } /* Ensure consistent spacing */ .ts-wrapper { margin: 0 !important; } /* Date filter */ .date-option-hover { transition: all 0.2s ease-in-out; } .date-option-hover:hover { background: linear-gradient(90deg, #f8fafc 0%, #e2e8f0 100%); border-left: 3px solid #7A4397; padding-left: 12px; } .date-option-active { background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 100%); border-left: 3px solid #7A4397; padding-left: 12px; } .calendar-container { max-height: 400px; overflow-y: auto; } .fade-in { animation: fadeIn 0.3s ease-in-out; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .slide-in { animation: slideIn 0.2s ease-out; } @keyframes slideIn { from { opacity: 0; transform: translateX(10px); } to { opacity: 1; transform: translateX(0); } } .flatpickr-calendar { border-radius: 12px; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); } .flatpicker-day.hover { color: white !important; } .flatpickr-day.selected { background: #7A4397 !important; border-color: #7A4397 !important; } .flatpickr-day.inRange { background: rgba(122, 67, 151, 0.1) !important; border-color: transparent !important; } .loading-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.9); display: flex; justify-content: center; align-items: center; z-index: 9999; backdrop-filter: blur(2px); } .loading-content { text-align: center; background: white; padding: 2rem; border-radius: 8px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); border: 1px solid #e9ecef; } .spinner { display: flex; justify-content: center; align-items: center; } .loading-text { color: #6c757d; font-size: 0.9rem; font-weight: 500; } .spinner-border { display: inline-block; width: 2rem; height: 2rem; vertical-align: -0.125em; border: 0.25em solid currentcolor; border-right-color: transparent; border-radius: 50%; animation: spinner-border-animation 0.75s linear infinite; } .spinner-border.text-primary { color: #7A4397 !important; } @keyframes spinner-border-animation { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* Custom styles for badge positioning preview */ .product-preview { position: relative; overflow: hidden; } .badge-overlay { position: absolute; z-index: 10; font-size: 10px; padding: 6px 10px; border-radius: 16px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); white-space: nowrap; } .badge-top-left { top: 4px; left: 4px; } .badge-top-right { top: 4px; right: 4px; } .badge-bottom-left { bottom: 4px; left: 4px; } .badge-bottom-right { bottom: 4px; right: 4px; } .badge-center { top: 50%; left: 50%; transform: translate(-50%, -50%); } .product-badge-image { transition: transform 0.3s ease; } .product-preview:hover .product-badge-image { transform: scale(1.05); } .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } @media (max-width: 640px) { .badge-overlay { font-size: 8px; padding: 1px 4px; max-width: 60px; } } </style> <script> tailwind.config = { theme: { extend: { colors: { primary: '#7A4397', 'primary-light': '#7A4397', 'primary-dark': '#5D2C75' } } } } </script> <link rel="icon" href="<?= base_url() . 'uploads/favicon1.png'; ?>"> <?php $current_url = current_url(); $uri_segment = $this->uri->segment(2); function is_menu_active($segment_name) { $CI = &get_instance(); return ($CI->uri->segment(2) == $segment_name); } function is_submenu_active($segment_name, $segment_action = '') { $CI = &get_instance(); if ($segment_action) { return ($CI->uri->segment(2) == $segment_name && $CI->uri->segment(3) == $segment_action); } return ($CI->uri->segment(2) == $segment_name); } ?> </head> <body class="bg-gray-100 min-h-screen text-[#333]"> <div id="search-overlay" class="fixed inset-0 bg-black bg-opacity-50 z-[98] opacity-0 pointer-events-none transition-opacity duration-300"></div> <!-- Header --> <header class="bg-white shadow-sm p-4 md:p-6 h-20 flex justify-between items-center z-[98] sticky top-0"> <div class="flex items-center space-x-2 md:space-x-4 cursor-pointer"> <!-- Sidebar Toggle Button --> <button id="sidebar-toggle" class="text-[#333] block md:hidden focus:outline-none"> <i data-feather="menu" class="w-5 h-5 mr-2"></i> </button> <a href="https://www.laciasmara.com/shop/admin/dashboard" class="flex items-center"> <img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/logo-laciasmara1.png" alt="Laciasmara Logo" class="h-8"> </a> </div> <div class="hidden md:block w-1/2"> <input type="text" placeholder="Misalnya 'tambah produk' atau 'pesanan retailer'" id="globalSearch" class="border border-[#333]-400 focus:ring-1 focus:ring-[#7A4397] text-sm focus:outline-none px-4 py-2 rounded-md w-full"> </div> <div class="flex items-center space-x-2 md:space-x-4"> <button id="mobile-search-toggle" class="md:hidden text-[#333] focus:outline-none"> <i data-feather="search" class="w-4 h-4"></i> </button> <div class="relative cursor-pointer" id="notification-bell"> <span class="notification-dot" id="notification-count"></span> <i data-feather="bell" class="w-5 h-5 text-[#333]"></i> </div> <div class="font-semibold text-[#333] text-sm hidden sm:block">Hi, <?= $userdata['name'] ?></div> </div> <!-- Mobile Search Input (Hidden by default) --> <div id="mobile-search" class="fixed top-16 left-0 right-0 bg-white p-4 shadow-md hidden md:hidden z-[97]"> <input type="text" placeholder="Cari..." class="border border-[#333]-400 focus:ring-1 focus:ring-[#7A4397] focus:outline-none p-2 rounded-md w-full max-w-full"> </div> <!-- Notification Modal --> <div class="notification-modal absolute right-4 top-16 md:right-8 md:top-16 w-80 bg-white shadow-lg rounded-md hidden" id="notification-modal"> <div class="notification-header p-3 border-b flex justify-between items-center"> <h3 class="font-medium">Notifikasi</h3> <button class="text-sm text-blue-500" id="mark-all-read">Tandai semua dibaca</button> </div> <div id="notification-list" class="max-h-96 overflow-y-auto"> <div class="notification-empty p-4 text-center text-gray-500">Tidak ada notifikasi baru</div> </div> </div> </header> <!-- Progress Bar --> <div id="progressBar" class="fixed top-0 left-0 w-full h-1 bg-gray-200 hidden z-[99]"> <div class="h-full bg-[#7A4397] w-full animate-progress"></div> </div> <!-- Layout --> <div class="flex min-h-screen"> <!-- Sidebar Navigation --> <nav id="sidebar" class="flex-shrink-0 bg-white md:w-64 lg:w-64 py-4 px-3 shadow-lg fixed md:sticky top-16 left-0 z-[97] transform transition-transform duration-300 -translate-x-full md:translate-x-0 h-[calc(100vh-4rem)]"> <div class="h-full overflow-y-auto scrollbar-thin scrollbar-thumb-purple-200 scrollbar-track-transparent hover:scrollbar-thumb-purple-300"> <ul class="space-y-2 gap-y-2 pb-8"> <!-- Dashboard --> <div class="section-title">Dashboard</div> <li class="<?= is_menu_active('dashboard') ? 'active' : '' ?>"> <a href="<?= base_url('admin/dashboard') ?>" class="block p-2 hover:bg-purple-100 rounded flex items-center text-[#333]"> <i data-feather="home" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Dashboard</span> </a> </li> <!-- Pesanan --> <div class="section-title">Penjualan & Pesanan</div> <li class="menu-item <?= is_menu_active('orders') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="shopping-cart" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Pesanan</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('orders') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('orders') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/orders/manage-order') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('orders', 'manage-order') ? 'active' : '' ?>">Daftar Pesanan</a></li> <li><a href="<?= base_url('admin/orders/add-order') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('orders', 'add-order') ? 'active' : '' ?>">Tambah Pesanan</a></li> <li class="border-t pt-2 mt-2"><a href="<?= base_url('admin/orders/manage-retailer-order') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('orders', 'manage-retailer-order') ? 'active' : '' ?>">Pesanan Retailer</a></li> <!-- <li><a href="<?= base_url('admin/orders/add-retailer-order') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('orders', 'add-retailer-order') ? 'active' : '' ?>">Tambah Pesanan Retailer</a></li> --> <li><a href="<?= base_url('admin/orders/claim') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('orders', 'claim') ? 'active' : '' ?>">Klaim Garansi</a></li> </ul> </li> <!-- Produk --> <div class="section-title">Katalog Produk</div> <li class="menu-item <?= is_menu_active('products') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="package" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Produk</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('products') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= (is_menu_active('products') || is_menu_active('badge')) ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/products/add-product') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('products', 'add-product') ? 'active' : '' ?>">Tambah Produk</a></li> <li><a href="<?= base_url('admin/products/manage-product') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('products', 'manage-product') ? 'active' : '' ?>">Daftar Produk</a></li> <li><a href="<?= base_url('admin/products/variant-product') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('products', 'variant-product') ? 'active' : '' ?>">Varian Produk</a></li> <li><a href="<?= base_url('admin/badge/manage') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('badge', 'manage') ? 'active' : '' ?>">Badge Produk</a></li> <!-- <li class="border-t pt-2 mt-2"><a href="<?= base_url('admin/categories/add-category') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('categories', 'add-category') ? 'active' : '' ?>">Tambah Kategori</a></li> --> <li class="border-t pt-2 mt-2"><a href="<?= base_url('admin/products/manage-category') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('products', 'manage-category') ? 'active' : '' ?>">Kategori</a></li> <li><a href="<?= base_url('admin/products/manage-brand') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('products', 'manage-brand') ? 'active' : '' ?>">Merk</a></li> </ul> </li> <!-- Stok --> <div class="section-title">Manajemen Stok</div> <li class="menu-item <?= is_menu_active('stocks') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="archive" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Stok</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('stocks') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('stocks') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/stocks/stock-product') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('stocks', 'stock-product') ? 'active' : '' ?>">Stok Produk</a></li> <!-- <li><a href="<?= base_url('admin/stocks/transfer-stock') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('stocks', 'transfer-stock') ? 'active' : '' ?>">Transfer Stok</a></li> --> <li><a href="<?= base_url('admin/stocks/list-transfer-stock') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('stocks', 'list-transfer-stock') ? 'active' : '' ?>">Transfer Stok</a></li> <li><a href="<?= base_url('admin/stocks/activity') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('stocks', 'activity') ? 'active' : '' ?>">Aktivitas Stok</a></li> <li class="border-t pt-2 mt-2"><a href="<?= base_url('admin/stocks/warehouses') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('stocks', 'warehouses') ? 'active' : '' ?>">Gudang</a></li> </ul> </li> <!-- Pelanggan --> <div class="section-title">Manajemen Pelanggan</div> <li class="menu-item <?= is_menu_active('customers') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="users" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Pelanggan</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('customers') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('customers') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/customers/add') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('customers', 'add') ? 'active' : '' ?>">Tambah Pelanggan</a></li> <li><a href="<?= base_url('admin/customers/manage') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('customers', 'manage') ? 'active' : '' ?>">Daftar Pelanggan</a></li> </ul> </li> <!-- Retailer --> <li class="menu-item <?= is_menu_active('resellers') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="briefcase" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Retailer</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('resellers') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('resellers') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/resellers/add') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('resellers', 'add') ? 'active' : '' ?>">Tambah Retailer</a></li> <li><a href="<?= base_url('admin/resellers/manage') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('resellers', 'manage') ? 'active' : '' ?>">Daftar Retailer</a></li> <li class="border-t mt-2 pt-2"><a href="<?= base_url('admin/resellers/type') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('resellers', 'type') ? 'active' : '' ?>">Jenis Retailer</a></li> </ul> </li> <!-- Layanan Pelanggan --> <li class="menu-item <?= is_menu_active('customer-services') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="heart" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Layanan Pelanggan</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('customer-services') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('customer-services') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/customer-services/review') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('customer-services', 'review') ? 'active' : '' ?>">Review Produk</a></li> <li><a href="<?= base_url('admin/customer-services/cart') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('customer-services', 'cart') ? 'active' : '' ?>">Riwayat Keranjang</a></li> <li><a href="<?= base_url('admin/customer-services/wishlist') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('customer-services', 'wishlist') ? 'active' : '' ?>">Wishlist</a></li> </ul> </li> <!-- Marketing --> <div class="section-title">Marketing & Konten</div> <li class="menu-item <?= is_menu_active('marketing') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="trending-up" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Marketing</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('marketing') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('marketing') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/marketing/promotion-product') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('marketing', 'promotion-product') ? 'active' : '' ?>">Produk Promosi</a></li> <!-- <li><a href="<?= base_url('admin/marketing/discount') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('marketing', 'discount') ? 'active' : '' ?>">Atur Diskon</a></li> --> <li><a href="<?= base_url('admin/marketing/voucher') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('marketing', 'voucher') ? 'active' : '' ?>">Voucher</a></li> <!-- <li><a href="<?= base_url('admin/marketing/point') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('marketing', 'point') ? 'active' : '' ?>">Poin Hadiah</a></li> --> <li><a href="<?= base_url('admin/marketing/tracking-link') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('marketing', 'tracking-link') ? 'active' : '' ?>">Tracking Link</a></li> <!-- <li><a href="<?= base_url('admin/marketing/review-reminder') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('marketing', 'review-reminder') ? 'active' : '' ?>">Pengingat Ulasan</a></li> --> </ul> </li> <!-- Affiliate --> <li class="menu-item <?= is_menu_active('affiliate') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="dollar-sign" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Program Afiliasi</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('affiliate') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('affiliate') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/affiliate/dashboard') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('affiliate', 'dashboard') ? 'active' : '' ?>">Dashboard</a></li> <li><a href="<?= base_url('admin/affiliate/transactions') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('affiliate', 'transactions') ? 'active' : '' ?>">Transaksi Afiliasi </a></li> <li class="border-t pt-2 mt-2"><a href="<?= base_url('admin/affiliate/manage') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('affiliate', 'manage') ? 'active' : '' ?>">Kelola Afiliasi</a></li> <li><a href="<?= base_url('admin/affiliate/commission') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('affiliate', 'commission') ? 'active' : '' ?>">Laporan Komisi</a></li> </ul> </li> <!-- Konten --> <li class="menu-item"> <button class="w-full p-2 hover:bg-purple-100 flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="layout" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Konten</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('contents') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('contents') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/contents/banners') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('contents', 'banners') ? 'active' : '' ?>">Sliding Banner</a></li> <li><a href="<?= base_url('admin/contents/flying-banners') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('contents', 'flying-banners') ? 'active' : '' ?>">Flying Banner</a></li> <li><a href="<?= base_url('admin/contents/static-pages') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('contents', 'static-pages') ? 'active' : '' ?>">Halaman Statis</a></li> <li><a href="<?= base_url('admin/contents/footer') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('contents', 'footer') ? 'active' : '' ?>">Footer</a></li> </ul> </li> <!-- Statistik --> <div class="section-title">Statistik & Pengaturan</div> <li class="menu-item <?= is_menu_active('statistic') ? 'active' : '' ?>"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="bar-chart-2" class="w-5 h-5 mr-2 sidebar-icons"></i> <span class="text-base">Statistik</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('affiliate') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('statistic') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/statistic/sales') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('statistic', 'sales') ? 'active' : '' ?>">Statistik Penjualan</a></li> <li><a href="<?= base_url('admin/statistic/visits') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('statistic', 'visits') ? 'active' : '' ?>">Statistik Kunjungan</a></li> <li><a href="<?= base_url('admin/statistic/products') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('statistic', 'products') ? 'active' : '' ?>">Statistik Produk</a></li> <li><a href="<?= base_url('admin/statistic/stocks') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('statistic', 'stocks') ? 'active' : '' ?>">Statistik Stok</a></li> <li><a href="<?= base_url('admin/statistic/customers') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('statistic', 'customers') ? 'active' : '' ?>">Statistik Pelanggan</a></li> <li><a href="<?= base_url('admin/statistic/banners') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('statistic', 'banners') ? 'active' : '' ?>">Statistik Banner</a></li> </ul> </li> <!-- Pengaturan --> <li class="menu-item"> <button class="w-full p-2 hover:bg-purple-100 rounded flex items-center justify-between text-[#333]"> <div class="flex items-center"> <i data-feather="settings" class="w-5 h-5 mr-2 sidebar-icon"></i> <span class="text-base">Pengaturan</span> </div> <div class="transform transition-transform duration-350 <?= is_menu_active('settings') ? 'rotate-180' : '' ?> sidebar-arrow"> <i data-feather="chevron-down" class="w-4 h-4"></i> </div> </button> <ul class="ml-7 mt-2 submenu <?= is_menu_active('settings') ? 'open' : '' ?>"> <li><a href="<?= base_url('admin/settings/users') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('settings', 'users') ? 'active' : '' ?>">Users</a></li> <li><a href="<?= base_url('admin/settings/website') ?>" class="block p-2 hover:bg-purple-100 text-sm <?= is_submenu_active('settings', 'website') ? 'active' : '' ?>">Website</a></li> <li><a href="<?= base_url('admin/auth/logout') ?>" class="block p-2 hover:bg-purple-100 text-sm">Logout</a></li> </ul> </li> </ul> </div> </nav>