Files
rdgen/rdgenerator/templates/generator.html
Bryan Gerlach d8941870b2 images fix
2024-09-26 10:48:34 -05:00

142 lines
8.0 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<title>Server Configuration Form</title>
<style>
.container {
display: grid;
grid-template-columns: 50% 50%;
grid-template-rows: repeat(2, auto); /* Adjust the number of rows as needed */
padding: 20px; /* Adjust the padding value as needed */
max-width: 1000px; /* Set a maximum width for the container */
margin: 0 auto; /* Center the container horizontally */
}
.section {
border: 1px solid #ccc;
padding: 10px;
margin-bottom: 20px;
margin-left: 10px;
margin-right: 10px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Add a subtle box shadow */
border-radius: 5px; /* Add rounded corners for a more 3D effect */
}
label {
font-weight: bold;
}
</style>
</head>
<body>
<form action="/generator" method="post" enctype="multipart/form-data" class="container">
<h2>Select Platform</h2>
<label for="{{ form.platform.id_for_label }}"></label>
{{ form.platform }}<br><br>
<div class="section">
<h2>General</h2>
<label for="{{ form.exename.id_for_label }}">Name of the configuration:</label>
{{ form.exename }}<br><br>
<label for="{{ form.appname.id_for_label }}">Custom Application Name:</label>
{{ form.appname }}<br><br>
<label for="{{ form.direction.id_for_label }}">Connection Type:</label>
{{ form.direction }}<br><br>
<label for="{{ form.installation.id_for_label }}">Disable Installation:</label>
{{ form.installation }}<br><br>
<label for="{{ form.settings.id_for_label }}">Disable Settings:</label>
{{ form.settings }}<br><br>
</div>
<div class="section">
<h2>Custom Server</h2>
<label for="{{ form.serverIP.id_for_label }}">Host:</label>
{{ form.serverIP }}<br><br>
<label for="{{ form.key.id_for_label }}">Key:</label>
{{ form.key }}<br><br>
<label for="{{ form.apiServer.id_for_label }}">API:</label>
{{ form.apiServer }}<br><br>
<label for="{{ form.urlLink.id_for_label }}">Custom URL for links (replaces https://rustdesk.com):</label>
{{ form.urlLink }}<br><br>
</div>
<div class="section">
<h2>Security</h2>
<label for="{{ form.runasadmin.id_for_label }}">Always run as Administrator?</label>
{{ form.runasadmin }}<br><br>
<label for="{{ form.passApproveMode.id_for_label }}">Password Approve mode:</label>
{{ form.passApproveMode }}<br><br>
<label for="{{ form.permanentPassword.id_for_label }}">Set Permanent Password:</label>
{{ form.permanentPassword }} *The password is used as default, but can be changed by the client<br><br>
{{ form.denyLan }}
<label for="{{ form.denyLan.id_for_label }}">Deny LAN discovery</label><br><br>
{{ form.enableDirectIP }}
<label for="{{ form.enableDirectIP.id_for_label }}">Enable direct IP access</label><br><br>
{{ form.autoClose }}
<label for="{{ form.autoClose.id_for_label }}">Automatically close incoming sessions on user inactivity</label><br><br>
</div>
<div class="section">
<h2>Visual</h2>
<label for="{{ form.iconfile.id_for_label }}">Custom App Icon (in .png format)</label>
<!-- {{ form.iconfile }}<br><br> -->
<input type="file" name="iconfile" id="iconfile" accept="image/png">
<div id="icon-preview"></div><br><br>
<label for="{{ form.logofile.id_for_label }}">Custom App Logo (in .png format)</label>
<!-- {{ form.logofile }}<br><br> -->
<input type="file" name="logofile" id="logofile" accept="image/png">
<div id="logo-preview"></div><br><br>
<label for="{{ form.theme.id_for_label }}">Theme:</label>
{{ form.theme }} {{ form.themeDorO }} *Default sets the theme but allows the client to change it, Override sets the theme permanently.<br><br>
</div>
<script>
document.getElementById('id_iconfile').addEventListener('change', function(event) {
previewImage(event.target, 'icon-preview');
});
document.getElementById('id_logofile').addEventListener('change', function(event) {
previewImage(event.target, 'logo-preview');
});
function previewImage(input, previewContainerId) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function(e) {
var img = document.createElement('img');
img.src = e.target.result;  
img.style.maxWidth = '300px';
img.style.maxHeight = '60px';
document.getElementById(previewContainerId).innerHTML = '';
document.getElementById(previewContainerId).appendChild(img);
};
reader.readAsDataURL(input.files[0]);
}
}
</script>
<div class="section">
<h2>Permissions</h2>
The following Permissions can be set as default (the user can change the settins) or override (the settings cannot be changed).<br>
{{ form.permissionsDorO }}
<label for="{{ form.permissionsType.id_for_label }}">Permission type:</label>
{{ form.permissionsType }}<br><br>
{{ form.enableKeyboard }} <label for="{{ form.enableKeyboard.id_for_label }}">Enable keyboard/mouse</label>
{{ form.enableClipboard }} <label for="{{ form.enableClipboard.id_for_label }}">Enable clipboard</label><br>
{{ form.enableFileTransfer }} <label for="{{ form.enableFileTransfer.id_for_label }}">Enable file transfer</label>
{{ form.enableAudio }} <label for="{{ form.enableAudio.id_for_label }}">Enable audio</label><br>
{{ form.enableTCP }} <label for="{{ form.enableTCP.id_for_label }}">Enable TCP tunneling</label>
{{ form.enableRemoteRestart }} <label for="{{ form.enableRemoteRestart.id_for_label }}">Enable remote restart</label><br>
{{ form.enableRecording }} <label for="{{ form.enableRecording.id_for_label }}">Enable recording session</label>
{{ form.enableBlockingInput }} <label for="{{ form.enableBlockingInput.id_for_label }}">Enable blocking user input</label><br>
{{ form.enableRemoteModi }} <label for="{{ form.enableRemoteModi.id_for_label }}">Enable remote configuration modification</label><br><br>
</div>
<div class="section">
<h2>Other</h2>
{{ form.removeWallpaper }} <label for="{{ form.removeWallpaper.id_for_label }}">Remove wallpaper during incoming sessions</label><br><br>
<label for="{{ form.defaultManual.id_for_label }}">Default settings</label><br>
{{ form.defaultManual }}<br><br>
<label for="{{ form.overrideManual.id_for_label }}">Override settings</label><br>
{{ form.overrideManual }}<br><br>
</div>
<div class="section">
<button type="submit">Submit</button> Generate a custom client exe file
</div>
</form>
</body>
</html>