Jonell01 commited on
Commit
3dde51d
·
verified ·
1 Parent(s): e68ae31

Create public/index.html

Browse files
Files changed (1) hide show
  1. public/index.html +204 -0
public/index.html ADDED
@@ -0,0 +1,204 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Login Appstate Getter [ JONELL CC PROJECT ]</title>
7
+ <meta property="og:title" content="Login Appstate Getter [ JONELL CC PROJECT ]">
8
+ <meta property="og:description" content="Get appstate less logout and new and safe">
9
+ <meta property="og:image" content="https://files.catbox.moe/aj94sw.png">
10
+ <meta property="og:image:width" content="1200">
11
+ <meta property="og:image:height" content="630">
12
+
13
+ <script src="https://cdn.tailwindcss.com"></script>
14
+ <style>
15
+ .watermark {
16
+ position: fixed;
17
+ bottom: 10px;
18
+ left: 10px;
19
+ font-size: 12px;
20
+ color: rgba(0, 0, 0, 0.5);
21
+ }
22
+
23
+ /* Pop-in animation */
24
+ .popIn {
25
+ animation: popIn 0.6s ease-out;
26
+ }
27
+
28
+ @keyframes popIn {
29
+ 0% {
30
+ opacity: 0;
31
+ transform: scale(0.8);
32
+ }
33
+ 100% {
34
+ opacity: 1;
35
+ transform: scale(1);
36
+ }
37
+ }
38
+
39
+ /* Circle animation for loading */
40
+ .circle-loading {
41
+ border: 4px solid #f3f3f3;
42
+ border-top: 4px solid #4CAF50;
43
+ border-radius: 50%;
44
+ width: 50px;
45
+ height: 50px;
46
+ animation: spin 1s linear infinite;
47
+ }
48
+
49
+ @keyframes spin {
50
+ 0% { transform: rotate(0deg); }
51
+ 100% { transform: rotate(360deg); }
52
+ }
53
+
54
+ .error-message {
55
+ color: #e53e3e;
56
+ }
57
+
58
+ /* Docs Button (Positioned in the top right corner) */
59
+ .docs-button {
60
+ position: absolute;
61
+ top: 10px;
62
+ right: 10px;
63
+ padding: 10px 20px;
64
+ background-color: #1e3a8a; /* Tailwind blue-800 */
65
+ color: white;
66
+ border-radius: 5px;
67
+ font-weight: bold;
68
+ text-align: center;
69
+ text-decoration: none;
70
+ }
71
+
72
+ .docs-button:hover {
73
+ background-color: #2563eb; /* Tailwind blue-600 */
74
+ }
75
+ </style>
76
+ </head>
77
+ <body class="bg-gray-100 font-sans antialiased">
78
+
79
+ <!-- Docs Button -->
80
+ <a href="docs.html" class="docs-button">Go to Docs</a>
81
+
82
+ <div class="container mx-auto mt-10">
83
+ <div class="flex justify-center items-center">
84
+ <div class="w-full max-w-md bg-white shadow-lg rounded-lg p-6 space-y-6 popIn">
85
+ <h3 class="text-2xl font-semibold text-center text-gray-700">Login your Facebook Account Bot</h3>
86
+
87
+ <form id="loginForm">
88
+ <div class="mb-4">
89
+ <label for="mobile" class="block text-sm font-medium text-gray-700">Mobile Number and Email</label>
90
+ <input type="text" id="mobile" name="mobile" class="w-full px-4 py-2 mt-1 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-2 focus:ring-green-500" required>
91
+ </div>
92
+
93
+ <div class="mb-4">
94
+ <label for="password" class="block text-sm font-medium text-gray-700">Password</label>
95
+ <div class="relative">
96
+ <input type="password" id="password" name="password" class="w-full px-4 py-2 mt-1 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-2 focus:ring-green-500" required>
97
+ <button type="button" id="togglePassword" class="absolute right-3 top-2 text-gray-500">Show</button>
98
+ </div>
99
+ </div>
100
+
101
+ <button type="submit" id="loginButton" class="w-full py-2 bg-green-500 text-white font-semibold rounded-lg hover:bg-green-400 transition duration-300">Login</button>
102
+
103
+ <div class="text-center mt-2" id="loadingIndicator" style="display: none;">
104
+ <div class="circle-loading"></div> <!-- Circle loading -->
105
+ </div>
106
+ </form>
107
+ </div>
108
+ </div>
109
+
110
+ <div class="flex justify-center items-center mt-6 fadeIn popIn" id="responseSection" style="display: none;">
111
+ <div class="w-full max-w-md bg-white shadow-lg rounded-lg p-6 space-y-4">
112
+ <h3 class="text-xl font-semibold text-center text-gray-700">Response from Server</h3>
113
+
114
+ <h5 class="text-sm text-gray-600">Appstate Season:</h5>
115
+ <pre id="response" class="bg-gray-100 p-2 rounded-md text-sm text-gray-700"></pre>
116
+
117
+ <h5 class="text-sm text-gray-600">Cookies Datr:</h5>
118
+ <pre id="datrResponse" class="bg-gray-100 p-2 rounded-md text-sm text-gray-700"></pre>
119
+
120
+ <h5 class="text-sm text-gray-600">Cookies:</h5>
121
+ <pre id="cookiesResponse" class="bg-gray-100 p-2 rounded-md text-sm text-gray-700"></pre>
122
+
123
+ <div id="errorMessage" class="error-message text-center" style="display: none;">Incorrect username or password</div>
124
+
125
+ <button id="copyButton" class="w-full py-2 bg-green-500 text-white font-semibold rounded-lg hover:bg-green-400 transition duration-300">Copy</button>
126
+ </div>
127
+ </div>
128
+ </div>
129
+
130
+ <div class="watermark">Developer Appstate Getter: Jonell Magallanes</div>
131
+
132
+ <script>
133
+ document.getElementById('togglePassword').addEventListener('click', function () {
134
+ const passwordField = document.getElementById('password');
135
+ const toggleButton = document.getElementById('togglePassword');
136
+ const isPasswordVisible = passwordField.type === 'text';
137
+
138
+ passwordField.type = isPasswordVisible ? 'password' : 'text';
139
+ toggleButton.textContent = isPasswordVisible ? 'Show' : 'Hide';
140
+ });
141
+
142
+ document.getElementById('loginForm').addEventListener('submit', function(event) {
143
+ event.preventDefault();
144
+ const mobile = document.getElementById('mobile').value;
145
+ const password = document.getElementById('password').value;
146
+ const loginButton = document.getElementById('loginButton');
147
+ const loadingIndicator = document.getElementById('loadingIndicator');
148
+ const responseSection = document.getElementById('responseSection');
149
+ const responseElement = document.getElementById('response');
150
+ const datrResponseElement = document.getElementById('datrResponse');
151
+ const cookiesResponseElement = document.getElementById('cookiesResponse');
152
+ const errorMessage = document.getElementById('errorMessage');
153
+
154
+ loadingIndicator.style.display = 'block'; // Show circle loading
155
+ loginButton.disabled = true;
156
+ responseSection.style.display = 'none';
157
+ errorMessage.style.display = 'none';
158
+
159
+ fetch(`/appstate?e=${mobile}&p=${password}`)
160
+ .then(response => {
161
+ if (!response.ok) {
162
+ throw new Error('Incorrect password');
163
+ }
164
+ return response.json();
165
+ })
166
+ .then(data => {
167
+ if (!data.cookies || !data.datr) {
168
+ throw new Error('Incorrect username or password');
169
+ }
170
+ responseElement.textContent = JSON.stringify(data.jsonCookies, null, 2);
171
+ datrResponseElement.textContent = data.datr || 'No datr cookie found';
172
+ cookiesResponseElement.textContent = data.cookies || 'No cookies found';
173
+ responseSection.style.display = 'block';
174
+ })
175
+ .catch(error => {
176
+ responseElement.textContent = '';
177
+ datrResponseElement.textContent = '';
178
+ cookiesResponseElement.textContent = '';
179
+ errorMessage.style.display = 'block';
180
+ })
181
+ .finally(() => {
182
+ loadingIndicator.style.display = 'none'; // Hide circle loading
183
+ loginButton.disabled = false;
184
+ });
185
+ });
186
+
187
+ document.getElementById('copyButton').addEventListener('click', function() {
188
+ const responseText = document.getElementById('response').textContent;
189
+ const datrText = document.getElementById('datrResponse').textContent;
190
+ const cookiesText = document.getElementById('cookiesResponse').textContent;
191
+ const combinedText = `Appstate:\n${responseText}\n\nDatr Cookies\ndatr=${datrText}\n\nCookies:\n${cookiesText}`;
192
+
193
+ navigator.clipboard.writeText(combinedText)
194
+ .then(() => {
195
+ alert('Appstate and data copied to clipboard');
196
+ })
197
+ .catch(error => {
198
+ console.error('Error copying to clipboard:', error);
199
+ });
200
+ });
201
+ </script>
202
+
203
+ </body>
204
+ </html>