Spaces:
Running
Running
File size: 5,662 Bytes
8aeb522 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 |
<!DOCTYPE html>
<html lang="en">
<!-- Mirrored from es-teams-database2025.onrender.com/esteams-ai-lock.html by HTTrack Website Copier/3.x [XR&CO'2017], Fri, 14 Feb 2025 22:35:13 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=UTF-8" /><!-- /Added by HTTrack -->
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login to Premium</title>
<!-- Tailwind CSS -->
<script src="../external.html?link=https://cdn.tailwindcss.com/"></script>
<!-- Google Fonts -->
<link href="../external.html?link=https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap" rel="stylesheet">
<style>
body {
font-family: 'Inter', sans-serif;
}
/* Moving text animation */
.moving-text {
font-weight: bold;
color: #ff4d4d; /* Thin red bold text */
white-space: nowrap;
position: relative;
display: inline-block;
animation: moveText 10s linear infinite, zoomText 2s ease-in-out infinite;
transform-origin: center center;
}
@keyframes moveText {
from { transform: translateX(100%); }
to { transform: translateX(-100%); }
}
@keyframes zoomText {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.05); } /* Slight zoom to avoid cutting off */
}
/* Ensure container handles text overflow */
.text-container {
overflow: hidden;
width: 100%;
text-align: center; /* Center the text horizontally */
}
</style>
</head>
<body class="bg-gray-900 text-white flex flex-col items-center justify-center min-h-screen">
<div id="login-page" class="w-full max-w-md bg-gray-800 p-6 rounded-lg shadow-md">
<h2 class="text-3xl font-bold text-center mb-6">ππ’πππ‘ π§π’ π£π₯ππ ππ¨π </h2>
<form id="login-form" class="space-y-6">
<div class="form-group">
<label for="username" class="block font-medium mb-2">Username</label>
<input
type="text"
id="username"
name="username"
placeholder="Enter your username"
required
class="w-full px-4 py-2 bg-gray-700 rounded-md focus:ring-2 focus:ring-blue-500 focus:outline-none"
/>
</div>
<div class="form-group">
<label for="pin" class="block font-medium mb-2">Pin</label>
<input
type="text"
id="pin"
name="pin"
placeholder="Enter your 4-digit pin"
maxlength="4"
required
oninput="validatePin(this)"
class="w-full px-4 py-2 bg-gray-700 rounded-md focus:ring-2 focus:ring-blue-500 focus:outline-none"
/>
</div>
<!-- Replacing Click to Purchase Premium with moving text -->
<div class="text-container mb-4">
<span class="moving-text">Click Our LiveChat Button below and Purchase Username/Pin</span>
</div>
<button
type="submit"
class="w-full py-3 bg-blue-600 rounded-md text-white font-bold hover:bg-blue-700 transition focus:outline-none focus:ring-4 focus:ring-blue-500">
Login
</button>
</form>
</div>
<script>
const rawFileUrl = 'https://huggingface.co/spaces/HenzHosting/Database/raw/main/id.json';
// This function validates the pin to ensure it's a 4-digit number
function validatePin(input) {
input.value = input.value.replace(/[^0-9]/g, '').slice(0, 4);
}
// Function to handle the login action when the form is submitted
async function handleLogin(event) {
event.preventDefault(); // Prevent default form submission
const username = document.getElementById('username').value.trim();
const pin = document.getElementById('pin').value.trim();
if (!username || pin.length !== 4) {
alert('Invalid Input');
return;
}
try {
const response = await fetch(rawFileUrl);
if (!response.ok) {
alert('Error fetching data. Please try again later.');
return;
}
const approvedUsers = await response.json();
const userKey = `${username}-${pin}`; // Combine username and pin as the key
// Check if the username and PIN pair exists in the JSON data
const userExists = approvedUsers.includes(userKey);
if (userExists) {
// Redirect if the user exists
window.location.href = 'esteams-ai-pro.html';
} else {
alert('Unable to Access ES TEAMS PREMIUM. Please check your credentials.');
}
} catch (error) {
console.error('Error processing login:', error);
alert('An error occurred. Please try again later.');
}
}
// Add event listener for form submission
document.getElementById('login-form').addEventListener('submit', handleLogin);
</script>
<!-- Begin of Chaport Live Chat code -->
<script type="text/javascript">
(function(w,d,v3){
w.chaportConfig = {
appId : '67afc72cb566d6e8eae35b55'
};
if(w.chaport)return;v3=w.chaport={};v3._q=[];v3._l={};v3.q=function(){v3._q.push(arguments)};v3.on=function(e,fn){if(!v3._l[e])v3._l[e]=[];v3._l[e].push(fn)};var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='https://app.chaport.com/javascripts/insert.js';var ss=d.getElementsByTagName('script')[0];ss.parentNode.insertBefore(s,ss)})(window, document);
</script>
<!-- End of Chaport Live Chat code -->
</body>
<!-- Mirrored from es-teams-database2025.onrender.com/esteams-ai-lock.html by HTTrack Website Copier/3.x [XR&CO'2017], Fri, 14 Feb 2025 22:35:14 GMT -->
</html> |