Files
NotPlexApp/index.html

233 lines
6.0 KiB
HTML
Raw Permalink 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>
<head>
<meta charset="UTF-8">
<title>NotPlexApp</title>
<!-- <script src="https://unpkg.com/@ffmpeg/ffmpeg@0.11.8/dist/ffmpeg.min.js"></script> -->
<style>
html, body {
margin: 0;
padding: 0;
height: 100%;
font-family: Arial, sans-serif;
background-color: rgb(46, 46, 46); /* Dark grey background */
color: #eee; /* Light text for contrast */
}
/* Tabs style */
#tabs {
display: flex;
background: #444; /* Darker grey for tab background */
}
#tabs button {
flex: 1;
padding: 10px;
color: #fff;
background: #555; /* Dark grey button color */
border: none;
cursor: pointer;
font-size: 16px;
}
#tabs button.active {
background: #333; /* Even darker for active state */
}
/* Content lists (item grids inside each section) */
.content-list {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 0px;
overflow-x: visible;
grid-auto-rows: auto;
}
/* Sectioncontainer: stack each <section> as a row */
.section-list {
display: flex;
flex-direction: column;
gap: 40px;
padding: 20px;
box-sizing: border-box;
height: calc(100% - 48px);
overflow-y: auto;
}
.movie-item {
cursor: pointer;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background: transparent; /* removed white background */
padding: 0; /* removed padding */
box-shadow: none; /* removed box-shadow */
}
.movie-item img {
width: 180px; /* reduced width */
height: auto;
margin-bottom: 10px;
border-radius: 5px; /* added rounded corners */
}
/* Overlay for details/stream */
#overlay {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0,0,0,0.8);
display: none;
justify-content: center;
align-items: center;
z-index: 100;
}
#overlay-content {
background: #fff;
padding: 20px;
max-width: 800px;
width: 90%;
max-height: 90%;
overflow-y: auto;
box-sizing: border-box;
position: relative;
}
#close-overlay {
position: absolute;
top: 10px;
right: 10px;
background: red;
color: #fff;
border: none;
padding: 5px 10px;
cursor: pointer;
}
video {
max-width: 100%;
margin-top: 20px;
}
/* Authentication Page Styles */
#auth-page {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 200;
background: rgba(0,0,0,0.8);
display: flex;
justify-content: center;
align-items: center;
}
#auth-content {
background: #fff;
padding: 30px;
border-radius: 4px;
text-align: center;
width: 300px;
}
#auth-content input {
width: 90%;
padding: 10px;
margin: 5px 0;
font-size: 14px;
}
#auth-content button {
width: 45%;
padding: 10px;
margin: 5px;
font-size: 14px;
cursor: pointer;
}
/* show a “Remuxing…” banner above the video */
.remuxing-indicator {
color: #ff0;
font-size: 18px;
font-weight: bold;
text-align: center;
margin-bottom: 8px;
}
/* new: horizontal scrolling row */
.content-row {
display: flex;
overflow-x: auto;
gap: 20px;
padding-bottom: 10px;
}
.content-row::-webkit-scrollbar {
height: 8px;
}
.content-row::-webkit-scrollbar-thumb {
background: rgba(0,0,0,0.2);
border-radius: 4px;
}
/* hide native scrollbar */
.content-row {
scrollbar-width: none; /* Firefox */
-ms-overflow-style: none; /* IE 10+ */
}
.content-row::-webkit-scrollbar { /* WebKit */
display: none;
}
/* wrap arrows + row */
.scroll-container {
position: relative;
display: flex;
align-items: center;
}
.scroll-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
background: rgba(0,0,0,0.5);
color: #fff;
border: none;
width: 30px;
height: 40px;
cursor: pointer;
z-index: 10;
}
.scroll-arrow.left { left: 0; }
.scroll-arrow.right { right: 0; }
</style>
</head>
<body>
<div id="auth-page">
<div id="auth-content">
<h2>Login / Register</h2>
<input type="text" id="username" placeholder="Username" />
<input type="password" id="password" placeholder="Password" />
<div>
<button id="login-btn">Login</button>
<button id="register-btn">Register</button>
</div>
<p id="auth-error" style="color:red;"></p>
</div>
</div>
<div id="tabs">
<button id="movies-tab" class="active">Movies</button>
<button id="shows-tab">TV Shows</button>
<button id="scan-btn">Scan for New Files</button> <!-- New button -->
</div>
<div id="sync-controls" style="text-align: center; margin: 10px;">
<input type="text" id="sync-session-id" placeholder="Enter Sync Session ID" />
<button id="join-sync-btn">Join Sync Session</button>
</div>
<!-- use section-list instead of content-list on the containers -->
<div id="movies-list" class="section-list"></div>
<div id="shows-list" class="section-list" style="display:none;"></div>
<div id="overlay">
<div id="overlay-content">
<button id="close-overlay">Close</button>
<div id="movie-details"></div>
<!-- Add Sync Controls inside the overlay -->
<div id="overlay-sync-controls" style="text-align: center; margin-top: 10px;">
<input type="text" id="overlay-sync-session-id" placeholder="Enter Sync Session ID" />
<button id="overlay-join-sync-btn">Join Sync Session</button>
</div>
</div>
</div>
<script src="renderer.js"></script>
</body>
</html>