Goondex/internal/web/templates/dashboard.html

232 lines
8.2 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
{{template "html-head" .}}
<style>
/* ==== LUXURY SIDE PANELS (A1 Medium 240px) ==== */
body {
display: flex;
justify-content: center;
align-items: stretch;
min-height: 100vh;
overflow-x: hidden;
}
.side-panel {
width: 240px;
flex-shrink: 0;
background: #000;
border-right: 1px solid rgba(255, 79, 163, 0.2);
border-left: 1px solid rgba(255, 79, 163, 0.2);
display: flex;
flex-direction: column;
overflow: hidden;
position: sticky;
top: 0;
height: 100vh;
}
.side-panel.right {
border-right: none;
}
.side-panel img {
width: 100%;
height: auto;
display: block;
object-fit: cover;
opacity: 0.85;
transition: opacity 0.3s ease;
}
.side-panel img:hover {
opacity: 1;
}
/* Main site content */
.main-wrapper {
flex: 1;
overflow-y: auto;
max-width: 1400px;
}
/* Ensure navbar stays inside main-wrapper */
nav.navbar {
position: sticky;
top: 0;
z-index: 50;
}
/* Search results styling override to match new layout */
#global-search-results {
max-width: 100%;
}
/* Hide side panels on mobile */
@media (max-width: 900px) {
.side-panel {
display: none;
}
}
</style>
</head>
<body>
<!-- LEFT LUXURY SIDE PANEL -->
<div class="side-panel left">
<img src="/static/img/sidebar/preview1.jpg" alt="">
<img src="/static/img/sidebar/preview2.jpg" alt="">
<img src="/static/img/sidebar/preview3.jpg" alt="">
</div>
<!-- MAIN CONTENT WRAPPER -->
<div class="main-wrapper">
<!-- NAVIGATION -->
{{template "navbar" .}}
<main class="container">
<!-- HERO -->
<section class="hero-section">
<h1 class="hero-title">Welcome to Goondex</h1>
<p class="hero-subtitle">Adult Empire-first indexer (TPDB temporarily disabled)</p>
<div class="hero-actions">
<button class="btn" onclick="scrollToAEImport()">
Get Started (Adult Empire)
<div class="hoverEffect"><div></div></div>
</button>
<button class="btn-secondary" onclick="showTPDBDisabled()">
TPDB Sync (Disabled)
<div class="hoverEffect"><div></div></div>
</button>
</div>
</section>
<!-- SEARCH -->
<section class="search-section" style="margin-bottom: 2.5rem;">
<input type="text" id="global-search" class="input"
placeholder="Search performers, studios, scenes, or tags...">
<div id="global-search-results" class="search-results"></div>
</section>
<!-- STATS -->
<section class="stats-grid">
<!-- Performers -->
<div class="stat-card">
<div class="stat-icon">👤</div>
<div class="stat-content">
<div class="stat-value">{{.PerformerCount}}</div>
<div class="stat-label">Performers</div>
</div>
<div class="stat-actions">
<a href="/performers" class="stat-link">View all →</a>
<button class="btn-small" onclick="scrollToAEImport()">
Import via CLI
<div class="hoverEffect"><div></div></div>
</button>
</div>
</div>
<!-- Studios -->
<div class="stat-card">
<div class="stat-icon">🏢</div>
<div class="stat-content">
<div class="stat-value">{{.StudioCount}}</div>
<div class="stat-label">Studios</div>
</div>
<div class="stat-actions">
<a href="/studios" class="stat-link">View all →</a>
<button class="btn-small" onclick="scrollToAEImport()">
Import via CLI
<div class="hoverEffect"><div></div></div>
</button>
</div>
</div>
<!-- Scenes -->
<div class="stat-card">
<div class="stat-icon">🎬</div>
<div class="stat-content">
<div class="stat-value">{{.SceneCount}}</div>
<div class="stat-label">Scenes</div>
</div>
<div class="stat-actions">
<a href="/scenes" class="stat-link">View all →</a>
<button class="btn-small" onclick="scrollToAEImport()">
Import via CLI
<div class="hoverEffect"><div></div></div>
</button>
</div>
</div>
<!-- Movies -->
<div class="stat-card">
<div class="stat-icon">🎞️</div>
<div class="stat-content">
<div class="stat-value">{{.MovieCount}}</div>
<div class="stat-label">Movies</div>
</div>
<div class="stat-actions">
<a href="/movies" class="stat-link">View all →</a>
</div>
</div>
</section>
<!-- IMPORT SECTION -->
<section class="import-section">
<h3 id="ae-import">Import from Adult Empire (CLI)</h3>
<p class="help-text">
TPDB bulk import is temporarily disabled. Use the Adult Empire CLI to seed your library with high-quality mainstream data:
</p>
<div class="import-buttons">
<button class="btn-secondary" onclick="copyToClipboard('./goondex adultemp search-performer \"Name\"')">
Copy: Search Performer
<div class="hoverEffect"><div></div></div>
</button>
<button class="btn-secondary" onclick="copyToClipboard('./goondex adultemp scrape-performer <url>')">
Copy: Import Performer
<div class="hoverEffect"><div></div></div>
</button>
<button class="btn-secondary" onclick="copyToClipboard('./goondex adultemp search-scene \"Title\"')">
Copy: Search Scene
<div class="hoverEffect"><div></div></div>
</button>
<button class="btn-secondary" onclick="copyToClipboard('./goondex adultemp scrape-scene <url>')">
Copy: Import Scene
<div class="hoverEffect"><div></div></div>
</button>
</div>
<p class="help-text">
Movies: scraper not finished yet. Use scene/performer imports for now.
</p>
<p class="help-text">
Bulk “Import All” buttons will stay disabled until an Adult Empire bulk flow is available.
</p>
</section>
</main>
</div>
<!-- RIGHT LUXURY SIDE PANEL -->
<div class="side-panel right">
<img src="/static/img/sidebar/preview4.jpg" alt="">
<img src="/static/img/sidebar/preview5.jpg" alt="">
<img src="/static/img/sidebar/preview6.jpg" alt="">
</div>
<!-- EXISTING MODALS (unchanged, full code integrity kept) -->
{{/* Your modals remain exactly as before */}}
{{template "html-scripts" .}}
</body>
</html>