First Commit
commit
52c66f11e2
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,105 @@
|
||||||
|
/* :root {
|
||||||
|
--blue: #1e90ff;
|
||||||
|
--black: #121212;
|
||||||
|
} */
|
||||||
|
|
||||||
|
* {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: "Poppins", sans-serif;
|
||||||
|
color: var(--black);
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card {
|
||||||
|
width: 400px;
|
||||||
|
max-width: 90%;
|
||||||
|
background: rgba(255, 255, 255, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg-image {
|
||||||
|
background: url("../img/bg-banksampah.png");
|
||||||
|
width: 100%;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: -80px;
|
||||||
|
background-size: cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type="text"]:focus,
|
||||||
|
input[type="email"]:focus,
|
||||||
|
input[type="password"]:focus,
|
||||||
|
input[type="checkbox"]:focus,
|
||||||
|
select.form-select:focus,
|
||||||
|
input[type="text"],
|
||||||
|
input[type="email"],
|
||||||
|
input[type="password"],
|
||||||
|
input[type="checkbox"],
|
||||||
|
select.form-select {
|
||||||
|
color: #272829;
|
||||||
|
font-weight: 600;
|
||||||
|
font-size: 0.9rem;
|
||||||
|
border: none;
|
||||||
|
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type="checkbox"]:checked {
|
||||||
|
background-color: #fd7402;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Utilities */
|
||||||
|
|
||||||
|
.underline-scribble {
|
||||||
|
text-decoration: underline wavy red;
|
||||||
|
}
|
||||||
|
.backdrop-blur {
|
||||||
|
backdrop-filter: blur(15px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg-orange {
|
||||||
|
background: #fd7402;
|
||||||
|
}
|
||||||
|
|
||||||
|
.prevent-select {
|
||||||
|
-webkit-user-select: none; /* Safari */
|
||||||
|
-ms-user-select: none; /* IE 10 and IE 11 */
|
||||||
|
user-select: none; /* Standard syntax */
|
||||||
|
}
|
||||||
|
|
||||||
|
.fade-in {
|
||||||
|
opacity: 1;
|
||||||
|
animation-name: fadeInOpacity;
|
||||||
|
animation-iteration-count: 1;
|
||||||
|
animation-timing-function: ease-in;
|
||||||
|
animation-duration: 300ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fade-out {
|
||||||
|
opacity: 0;
|
||||||
|
animation-name: fadeOutOpacity;
|
||||||
|
animation-iteration-count: 1;
|
||||||
|
animation-timing-function: ease-out;
|
||||||
|
animation-duration: 300ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes fadeInOpacity {
|
||||||
|
0% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes fadeOutOpacity {
|
||||||
|
0% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,65 @@
|
||||||
|
.content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
margin: auto;
|
||||||
|
text-align: center;
|
||||||
|
width: 80%;
|
||||||
|
transform: translateY(5%);
|
||||||
|
}
|
||||||
|
|
||||||
|
label.label,
|
||||||
|
.toggle {
|
||||||
|
height: 2rem;
|
||||||
|
border-radius: 100px;
|
||||||
|
}
|
||||||
|
label.label {
|
||||||
|
width: 100%;
|
||||||
|
background-color: rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 100px;
|
||||||
|
position: relative;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.toggle {
|
||||||
|
position: absolute;
|
||||||
|
width: 50%;
|
||||||
|
background-color: #fff;
|
||||||
|
box-shadow: 0 2px 15px rgba(0, 0, 0, 0.15);
|
||||||
|
transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
||||||
|
}
|
||||||
|
.names {
|
||||||
|
font-size: 90%;
|
||||||
|
font-weight: bolder;
|
||||||
|
width: 80%;
|
||||||
|
height: 100%;
|
||||||
|
margin-left: 12%;
|
||||||
|
position: absolute;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
.dark {
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dark,
|
||||||
|
.light {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -------- Switch Styles ------------*/
|
||||||
|
.jenisAkun[type="checkbox"] {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
/* Toggle */
|
||||||
|
[type="checkbox"]:checked + .app .toggle {
|
||||||
|
transform: translateX(100%);
|
||||||
|
background-color: #fd7402;
|
||||||
|
}
|
||||||
|
[type="checkbox"]:checked + .app .dark {
|
||||||
|
opacity: 1;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
[type="checkbox"]:checked + .app .light {
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
Binary file not shown.
After Width: | Height: | Size: 451 KiB |
Binary file not shown.
After Width: | Height: | Size: 28 KiB |
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,69 @@
|
||||||
|
// Toggle NIK
|
||||||
|
$("#jenis-nasabah").on("change", function () {
|
||||||
|
const jenis = parseInt($(this).val());
|
||||||
|
const nik = $("#nik").parent();
|
||||||
|
|
||||||
|
if (jenis == 0) {
|
||||||
|
nik.removeClass("d-none").addClass("fade-in");
|
||||||
|
$("#nik").attr("disabled", false);
|
||||||
|
} else {
|
||||||
|
nik.addClass("fade-out");
|
||||||
|
|
||||||
|
nik.on("animationend", function () {
|
||||||
|
nik.addClass("d-none").removeClass("fade-out");
|
||||||
|
$("#nik").attr("disabled", true);
|
||||||
|
nik.off("animationend");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Toggle Password
|
||||||
|
$("#togglePassword").on("click", function () {
|
||||||
|
const $passwordField = $("#password");
|
||||||
|
const passwordFieldType = $passwordField.attr("type");
|
||||||
|
|
||||||
|
if (passwordFieldType === "password") {
|
||||||
|
$passwordField.attr("type", "text");
|
||||||
|
} else {
|
||||||
|
$passwordField.attr("type", "password");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#nik").on("input", function () {
|
||||||
|
// Menghapus semua karakter yang bukan angka
|
||||||
|
$(this).val($(this).val().replace(/\D/g, ""));
|
||||||
|
|
||||||
|
// Memastikan panjang input tidak melebihi 16 karakter
|
||||||
|
if ($(this).val().length > 16) {
|
||||||
|
$(this).val($(this).val().slice(0, 16));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Toggle jenis Akun
|
||||||
|
$("#jenisAkun").on("click", function () {
|
||||||
|
const teksJenis = $("#text-jenis-akun");
|
||||||
|
const deskripsiJenis = $("#deskripsi-jenis-akun");
|
||||||
|
const labelNama = $("#label-nama");
|
||||||
|
const jenisNasabah = $("#jenis-nasabah").parent();
|
||||||
|
const jenisBankSampah = $("#jenis-bank-sampah").parent();
|
||||||
|
|
||||||
|
if ($(this).is(":checked")) {
|
||||||
|
// Action buat Bank Sampah
|
||||||
|
teksJenis.text("Bank Sampah");
|
||||||
|
deskripsiJenis.text(
|
||||||
|
"Daftarkan Bank Sampah anda sekarang untuk lingkungan yang lebih indah 🌳"
|
||||||
|
);
|
||||||
|
labelNama.text("Nama Bank Sampah");
|
||||||
|
jenisBankSampah.removeClass("d-none");
|
||||||
|
jenisNasabah.addClass("d-none");
|
||||||
|
} else {
|
||||||
|
// Action buat Nasabah
|
||||||
|
teksJenis.text("Nasabah");
|
||||||
|
deskripsiJenis.text(
|
||||||
|
"Buat akun nasabah pertama anda dan mulai menabung di E-Bank Sampah 🗑️"
|
||||||
|
);
|
||||||
|
labelNama.text("Nama Lengkap");
|
||||||
|
jenisBankSampah.addClass("d-none");
|
||||||
|
jenisNasabah.removeClass("d-none");
|
||||||
|
}
|
||||||
|
});
|
|
@ -0,0 +1,153 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<meta
|
||||||
|
name="description"
|
||||||
|
content="Login E-Bank Sampah Dinas Lingungan Hidup Provinsi DKI Jakarta"
|
||||||
|
/>
|
||||||
|
<meta name="author" content="Dinas LH DKI" />
|
||||||
|
<title>Register | E-Bank Sampah</title>
|
||||||
|
<link
|
||||||
|
rel="stylesheet"
|
||||||
|
href="./assets/css/cdn.jsdelivr.net_npm_bootstrap@5.3.2_dist_css_bootstrap.min.css"
|
||||||
|
/>
|
||||||
|
<link rel="stylesheet" href="/assets/css/toggle.css" />
|
||||||
|
<link rel="stylesheet" href="/assets/css/custom.css" />
|
||||||
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||||
|
<link
|
||||||
|
href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap"
|
||||||
|
rel="stylesheet"
|
||||||
|
/>
|
||||||
|
<link rel="icon" type="image/x-icon" href="/assets/favicon.ico" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="container-fluid bg-image py-4 py-md-0">
|
||||||
|
<div
|
||||||
|
class="d-flex flex-column vh-100 justify-content-center align-items-center"
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
src="./assets/img/logo.png"
|
||||||
|
class="mx-auto mb-4"
|
||||||
|
width="70"
|
||||||
|
alt="Logo E-Bank Sampah"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<div class="card border-0 backdrop-blur p-4">
|
||||||
|
<!-- Toggle jenis akun -->
|
||||||
|
<input type="checkbox" class="jenisAkun" id="jenisAkun" />
|
||||||
|
<div class="app">
|
||||||
|
<div class="content">
|
||||||
|
<label for="jenisAkun" class="label">
|
||||||
|
<div class="toggle"></div>
|
||||||
|
<div class="names">
|
||||||
|
<p class="light text-center">Nasabah</p>
|
||||||
|
<p class="dark text-center">Bank Sampah</p>
|
||||||
|
</div>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1 class="text-center fs-3 mt-4 mb-3 fw-semibold">
|
||||||
|
Register <span id="text-jenis-akun" class="">Nasabah</span>
|
||||||
|
</h1>
|
||||||
|
<p
|
||||||
|
class="text-center"
|
||||||
|
id="deskripsi-jenis-akun"
|
||||||
|
style="font-size: 0.85rem"
|
||||||
|
>
|
||||||
|
Buat akun nasabah pertama anda dan mulai menabung di E-Bank Sampah
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<form action="">
|
||||||
|
<div class="form-floating mb-3">
|
||||||
|
<input
|
||||||
|
type="text"
|
||||||
|
class="form-control"
|
||||||
|
id="nama"
|
||||||
|
placeholder="Nama Lengkap"
|
||||||
|
/>
|
||||||
|
<label for="nama" id="label-nama">Nama Lengkap</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-floating mb-3">
|
||||||
|
<input
|
||||||
|
type="email"
|
||||||
|
class="form-control"
|
||||||
|
id="email"
|
||||||
|
placeholder="Alamat Email"
|
||||||
|
/>
|
||||||
|
<label for="email">Alamat Email</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-floating mb-3 d-none">
|
||||||
|
<select
|
||||||
|
class="form-select"
|
||||||
|
id="jenis-bank-sampah"
|
||||||
|
aria-label="Floating label select example"
|
||||||
|
>
|
||||||
|
<option hidden selected>Pilih Jenis Bank Sampah</option>
|
||||||
|
<option value="0">BSU</option>
|
||||||
|
<option value="1">BSI</option>
|
||||||
|
</select>
|
||||||
|
<label for="jenis-bank-sampah">Jenis Bank Sampah</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-floating mb-3">
|
||||||
|
<select
|
||||||
|
class="form-select"
|
||||||
|
id="jenis-nasabah"
|
||||||
|
aria-label="Floating label select example"
|
||||||
|
>
|
||||||
|
<option hidden selected>Pilih Jenis Nasabah</option>
|
||||||
|
<option value="0">Perorangan</option>
|
||||||
|
<option value="1">Instansi</option>
|
||||||
|
</select>
|
||||||
|
<label for="jenis-nasabah">Jenis Nasabah</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-floating mb-3 d-none">
|
||||||
|
<input
|
||||||
|
type="text"
|
||||||
|
class="form-control"
|
||||||
|
id="nik"
|
||||||
|
placeholder="NIK"
|
||||||
|
maxlength="16"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<label for="nik">NIK</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-floating mb-3">
|
||||||
|
<input
|
||||||
|
type="password"
|
||||||
|
class="form-control"
|
||||||
|
id="password"
|
||||||
|
placeholder="name@example.com"
|
||||||
|
/>
|
||||||
|
<label for="password">Password</label>
|
||||||
|
</div>
|
||||||
|
<div class="mb-3 form-check prevent-select">
|
||||||
|
<input
|
||||||
|
type="checkbox"
|
||||||
|
class="form-check-input"
|
||||||
|
id="togglePassword"
|
||||||
|
/>
|
||||||
|
<label
|
||||||
|
class="form-check-label prevent-select fw-medium"
|
||||||
|
for="togglePassword"
|
||||||
|
>Lihat Password</label
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button type="submit" class="btn bg-orange text-white w-100">
|
||||||
|
Register
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script src="./assets/js/code.jquery.com_jquery-3.7.1.min.js"></script>
|
||||||
|
<script src="./assets/js/cdn.jsdelivr.net_npm_bootstrap@5.3.2_dist_js_bootstrap.bundle.min.js"></script>
|
||||||
|
|
||||||
|
<!-- Custom JS -->
|
||||||
|
<script src="./assets/js/scripts.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue