93 lines
4.0 KiB
HTML
93 lines
4.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>RDP Web Gateway - Login</title>
|
|
<link rel="stylesheet" href="/css/style.css">
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="login-card" id="loginCard">
|
|
<div class="logo">
|
|
<svg width="60" height="60" viewBox="0 0 60 60" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<rect x="5" y="5" width="50" height="50" rx="8" stroke="#007acc" stroke-width="3" fill="none"/>
|
|
<rect x="15" y="15" width="30" height="20" rx="2" fill="#007acc"/>
|
|
<circle cx="30" cy="45" r="3" fill="#007acc"/>
|
|
</svg>
|
|
</div>
|
|
<h1>RDP Web Gateway</h1>
|
|
<p class="subtitle">Connect to remote desktops through your browser</p>
|
|
|
|
<form id="loginForm">
|
|
<div class="form-group">
|
|
<label for="username">Username</label>
|
|
<input type="text" id="username" name="username" required autocomplete="username" autofocus>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="password">Password</label>
|
|
<input type="password" id="password" name="password" required autocomplete="current-password">
|
|
</div>
|
|
|
|
<button type="submit" class="btn btn-primary" id="loginBtn">
|
|
<span class="btn-text">Sign In</span>
|
|
<span class="spinner" style="display: none;"></span>
|
|
</button>
|
|
|
|
<div class="error-message" id="errorMessage" style="display: none;"></div>
|
|
</form>
|
|
</div>
|
|
|
|
<div class="targets-card" id="targetsCard" style="display: none;">
|
|
<div class="header">
|
|
<h2>Select Remote Desktop</h2>
|
|
<div class="user-info">
|
|
<span id="currentUser"></span>
|
|
<button class="btn btn-secondary btn-sm" id="logoutBtn">Logout</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="targets-list" id="targetsList"></div>
|
|
|
|
<div class="error-message" id="targetsError" style="display: none;"></div>
|
|
</div>
|
|
|
|
<div class="rdp-viewer" id="rdpViewer" style="display: none;">
|
|
<div class="viewer-header">
|
|
<div class="connection-info">
|
|
<span class="status-indicator"></span>
|
|
<span id="connectionInfo"></span>
|
|
</div>
|
|
<div class="viewer-controls">
|
|
<button class="btn btn-icon" id="fullscreenBtn" title="Fullscreen">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
|
|
<path d="M3 3h5v2H5v3H3V3zm9 0h5v5h-2V5h-3V3zM3 12h2v3h3v2H3v-5zm14 0h2v5h-5v-2h3v-3z"/>
|
|
</svg>
|
|
</button>
|
|
<button class="btn btn-icon" id="ctrlAltDelBtn" title="Send Ctrl+Alt+Del">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
|
|
<path d="M3 3h14v2H3V3zm0 4h14v2H3V7zm0 4h14v2H3v-2zm0 4h14v2H3v-2z"/>
|
|
</svg>
|
|
</button>
|
|
<button class="btn btn-danger btn-sm" id="disconnectBtn">Disconnect</button>
|
|
</div>
|
|
</div>
|
|
<div class="viewer-container">
|
|
<canvas id="rdpCanvas"></canvas>
|
|
<div class="loading-overlay" id="loadingOverlay">
|
|
<div class="spinner large"></div>
|
|
<p>Connecting to remote desktop...</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<footer>
|
|
<p>RDP Web Gateway v1.0.0 | Powered by FreeRDP-WebConnect</p>
|
|
</footer>
|
|
|
|
<script src="/js/app.js"></script>
|
|
</body>
|
|
</html>
|