website/signup/index.html
2024-03-06 16:07:48 +01:00

80 lines
4.8 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>TBZ Community | Registration</title>
<link rel="stylesheet" href="https://unpkg.com/chota@latest">
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="/assets/css/nav.css" />
<link rel="stylesheet" href="/assets/css/signup.css" />
<link rel="icon" href="/assets/img/favicon.svg" />
<script>
function validateEmail() {
var email = document.forms["registrationForm"]["email"].value;
var regex = /^[a-zA-Z0-9._%+-]+@(edu\.tbz\.ch|tbz\.ch)$/;
if (!regex.test(email)) {
alert("Please provide a TBZ Email address.\nEnds with '@edu.tbz.ch' or '@tbz.ch'.");
return false;
}
return true;
}
</script>
</head>
<body>
<nav>
<div class="language-switcher">
<select id="languageSelect" onchange="changeLanguage(this.value)">
<option value="en">🇬🇧 English</option>
<option value="de">🇨🇭 German</option>
</select>
</div>
</nav>
<div class="content-container">
<div class="blur"></div>
<div class="signup content banner"></div>
<div class="signup content container">
<div class="signup form">
<button data-i18n="signup.header.back" class="button clear nopadding" onclick="window.history.back()">← Back</button>
<h2 data-i18n="signup.header.title">TBZ Community Signup Form</h2>
<form name="registrationForm" onsubmit="return validateEmail()" method="post">
<label data-i18n="signup.form.labels.fullname" for="fullName">Full Name:</label><span data-i18n="signup.form.legends.required" class="required">*</span><br>
<input type="text" id="fullName" name="fullName" data-i18n-placeholder="signup.form.labels.fullnamePlaceholder" placeholder="Full Name" required><br>
<label data-i18n="signup.form.labels.username" for="username">Username:</label><span data-i18n="signup.form.legends.required" class="required">*</span><br>
<input type="text" id="username" name="username" data-i18n-placeholder="signup.form.labels.usernamePlaceholder" placeholder="Username" required><br>
<label data-i18n="signup.form.labels.email" for="email">Email:</label><span data-i18n="signup.form.legends.required" class="required">*</span><br>
<input type="email" id="email" name="email" data-i18n-placeholder="signup.form.labels.emailPlaceholder" placeholder="full.name@edu.tbz.ch" required><br>
<label data-i18n="signup.form.labels.ssh" for="sshKey">SSH-Key:</label><span class="optional">(optional)</span><br>
<textarea id="sshKey" name="sshKey" data-i18n-placeholder="signup.form.labels.sshPlaceholder" placeholder="ssh-ed25519 AAAAXXXXXXXYYYYYYYZZZZZZZ+00a" rows="4"></textarea><br>
<p data-i18n="signup.form.legal.codeofconduct">
Signing up implies that you agree to abide by our code of conduct.<br>
No drama. Be respectful. Have fun. We're all trying, and we're all in this together :)
</p>
<input type="checkbox" id="apprenticeship" name="apprenticeship">
<label data-i18n="signup.form.legal.apprenticeVerify" for="apprenticeship">I visit the TBZ and have an apprenticeship.</label><span data-i18n="signup.form.legends.required" class="required">*</span><br>
<input type="checkbox" id="terms" name="terms" required>
<label data-i18n="signup.form.legal.termsVerify" for="terms">I agree! I have read and understood the terms of service and privacy policy.</label><span data-i18n="signup.form.legends.required" class="required">*</span><br><br>
<p><span data-i18n="signup.form.legends.required" class="required">*</span><span data-i18n="signup.form.legends.requiredText"> = required</span><br>
<span data-i18n="signup.form.legends.optional" class="optional">*</span><span data-i18n="signup.form.legends.optionalText"> = optional</span></p>
<div class="button-container">
<input data-i18n="signup.form.buttons.submit" type="submit" value="Register">
<a data-i18n="signup.form.buttons.login" class="button secondary outline" href="#">Login</a>
</div>
</form>
</div>
</div>
</div>
<script src="/assets/js/i18n.js"></script>
</body>
</html>