137 lines
5.9 KiB
HTML
137 lines
5.9 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>WaifuBoard - Marketplace</title>
|
|
<link rel="stylesheet" href="/views/css/globals.css">
|
|
<link rel="stylesheet" href="/views/css/components/navbar.css">
|
|
<link rel="stylesheet" href="/views/css/marketplace.css">
|
|
<link rel="stylesheet" href="/views/css/components/updateNotifier.css">
|
|
<link rel="icon" href="/public/assets/waifuboards.ico" type="image/x-icon">
|
|
<link rel="stylesheet" href="/views/css/components/titlebar.css">
|
|
</head>
|
|
<body>
|
|
<div id="titlebar">
|
|
<div class="title-left">
|
|
<img class="app-icon" src="/public/assets/waifuboards.ico" alt=""/>
|
|
<span class="app-title">WaifuBoard</span>
|
|
</div>
|
|
<div class="title-right">
|
|
<button class="min">—</button>
|
|
<button class="max">🗖</button>
|
|
<button class="close">✕</button>
|
|
</div>
|
|
</div>
|
|
|
|
<nav class="navbar" id="navbar">
|
|
<a href="#" class="nav-brand">
|
|
<div class="brand-icon">
|
|
<img src="/public/assets/waifuboards.ico" alt="WF Logo">
|
|
</div>
|
|
WaifuBoard
|
|
</a>
|
|
|
|
<div class="nav-center">
|
|
<button class="nav-button" onclick="window.location.href='/anime'">Anime</button>
|
|
<button class="nav-button" onclick="window.location.href='/books'">Books</button>
|
|
<button class="nav-button" onclick="window.location.href='/gallery'">Gallery</button>
|
|
<button class="nav-button" onclick="window.location.href='/schedule.html'">Schedule</button>
|
|
<button class="nav-button" onclick="window.location.href='/my-list'">My List</button>
|
|
<button class="nav-button">Marketplace</button>
|
|
</div>
|
|
|
|
<div class="nav-right">
|
|
<div class="search-wrapper" style="visibility: hidden;">
|
|
<svg class="search-icon" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
|
|
<circle cx="11" cy="11" r="8"/>
|
|
<path d="M21 21l-4.35-4.35"/>
|
|
</svg>
|
|
<input type="text" class="search-input" id="search-input" placeholder="Search anime..." autocomplete="off">
|
|
<div class="search-results" id="search-results"></div>
|
|
</div>
|
|
|
|
<div class="nav-user" id="nav-user" style="display:none;">
|
|
<div class="user-avatar-btn">
|
|
<img id="nav-avatar" src="/public/assets/waifuboards.ico" alt="avatar">
|
|
<div class="online-indicator"></div>
|
|
</div>
|
|
|
|
<div class="nav-dropdown" id="nav-dropdown">
|
|
<div class="dropdown-header">
|
|
<img id="dropdown-avatar" src="/public/assets/waifuboards.ico" alt="avatar" class="dropdown-avatar">
|
|
<div class="dropdown-user-info">
|
|
<div class="dropdown-username" id="nav-username"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<a href="/my-list" class="dropdown-item">
|
|
<svg width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
|
|
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/>
|
|
<polyline points="17 21 17 13 7 13 7 21"/>
|
|
<polyline points="7 3 7 8 15 8"/>
|
|
</svg>
|
|
<span>My List</span>
|
|
</a>
|
|
<button class="dropdown-item logout-item" id="nav-logout">
|
|
<svg width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24">
|
|
<path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/>
|
|
<polyline points="16 17 21 12 16 7"/>
|
|
<line x1="21" y1="12" x2="9" y2="12"/>
|
|
</svg>
|
|
<span>Logout</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
<div class="hero-spacer"></div>
|
|
|
|
<main>
|
|
<section class="section">
|
|
<header class="section-header">
|
|
<div class="tabs-container">
|
|
<button class="tab-button active" data-tab="marketplace">Marketplace</button>
|
|
<button class="tab-button" data-tab="installed">My Extensions</button>
|
|
</div>
|
|
|
|
<div class="filter-controls">
|
|
<button id="btn-update-all" class="btn-blur hidden" style="margin-right: 10px; width: auto; padding: 0 15px;">
|
|
Update All
|
|
</button>
|
|
<label for="extension-filter" class="filter-label">Filter by Type:</label>
|
|
<select id="extension-filter" class="filter-select">
|
|
<option value="All">All Categories</option>
|
|
<option value="image-board">Image Boards</option>
|
|
<option value="anime-board">Anime Boards</option>
|
|
<option value="book-board">Book Boards</option>
|
|
<option value="Local">Local/Manual</option>
|
|
</select>
|
|
</div>
|
|
</header>
|
|
|
|
<div id="marketplace-content">
|
|
</div>
|
|
</section>
|
|
|
|
<div id="customModal" class="modal-overlay hidden">
|
|
<div class="modal-content">
|
|
<h3 id="modalTitle"></h3>
|
|
<p id="modalMessage"></p>
|
|
<div class="modal-actions">
|
|
<button id="modalConfirmButton" class="modal-button btn-uninstall hidden">Confirm</button>
|
|
<button id="modalCloseButton" class="modal-button btn-install">OK</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</main>
|
|
|
|
<script src="/src/scripts/utils/notification-utils.js"></script>
|
|
<script src="/src/scripts/updateNotifier.js"></script>
|
|
<script src="/src/scripts/marketplace.js"></script>
|
|
<script src="/src/scripts/titlebar.js"></script>
|
|
<script src="/src/scripts/rpc-inapp.js"></script>
|
|
<script src="/src/scripts/auth-guard.js"></script>
|
|
</body>
|
|
</html> |