- reCAPTCHA
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-04-23 19:08:06 +10:00
parent da02da6661
commit 11dcd11a3e
2 changed files with 36 additions and 33 deletions

View File

@@ -5,7 +5,7 @@
<link rel="icon" href="https://img.icons8.com/?size=100&id=0ny63oDHuHzk&format=png&color=000000" /> <link rel="icon" href="https://img.icons8.com/?size=100&id=0ny63oDHuHzk&format=png&color=000000" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Parser</title> <title>Parser</title>
<script src="https://www.google.com/recaptcha/api.js?render=6LdfSo8sAAAAAGGhbgIGO51nHgMUALYjcAMOxnOg"></script> <!-- <script src="https://www.google.com/recaptcha/api.js?render=6LdfSo8sAAAAAGGhbgIGO51nHgMUALYjcAMOxnOg"></script> -->
</head> </head>
<body> <body>
<div id="app"></div> <div id="app"></div>

View File

@@ -15,42 +15,42 @@ const password = ref("");
const authError = ref(false); const authError = ref(false);
const isLoggedIn = ref(false); const isLoggedIn = ref(false);
// Показать badge reCAPTCHA // // Показать badge reCAPTCHA
const showRecaptchaBadge = () => { // const showRecaptchaBadge = () => {
setTimeout(() => { // setTimeout(() => {
const badge = document.querySelector(".grecaptcha-badge"); // const badge = document.querySelector(".grecaptcha-badge");
if (badge) { // if (badge) {
badge.style.display = "block"; // badge.style.display = "block";
} // }
}, 100); // }, 100);
}; // };
// Скрыть badge reCAPTCHA // // Скрыть badge reCAPTCHA
const hideRecaptchaBadge = () => { // const hideRecaptchaBadge = () => {
const badge = document.querySelector(".grecaptcha-badge"); // const badge = document.querySelector(".grecaptcha-badge");
if (badge) { // if (badge) {
badge.style.display = "none"; // badge.style.display = "none";
} // }
}; // };
// Функция авторизации // Функция авторизации
const auth_my = async () => { const auth_my = async () => {
try { try {
// Получение токена reCAPTCHA // Получение токена reCAPTCHA
const recaptchaToken = await grecaptcha.execute( // const recaptchaToken = await grecaptcha.execute(
"6LdfSo8sAAAAAGGhbgIGO51nHgMUALYjcAMOxnOg", // "6LdfSo8sAAAAAGGhbgIGO51nHgMUALYjcAMOxnOg",
{ action: "login" }, // { action: "login" },
); // );
const response = await axios.post("https://allowlgroup.ru/api/8004/login", { const response = await axios.post("https://allowlgroup.ru/api/8004/login", {
username: login.value, username: login.value,
password: password.value, password: password.value,
recaptcha_token: recaptchaToken, // recaptcha_token: recaptchaToken,
}); });
if (response.data.message === "Login successful") { if (response.data.message === "Login successful") {
authError.value = false; authError.value = false;
isLoggedIn.value = true; isLoggedIn.value = true;
hideRecaptchaBadge(); // hideRecaptchaBadge();
emit("update", "rezylt"); emit("update", "rezylt");
} else { } else {
authError.value = true; authError.value = true;
@@ -71,7 +71,7 @@ const handleKeyDown = (event) => {
// Добавляем глобальный слушатель при монтировании // Добавляем глобальный слушатель при монтировании
onMounted(() => { onMounted(() => {
window.addEventListener("keydown", handleKeyDown); window.addEventListener("keydown", handleKeyDown);
showRecaptchaBadge(); // showRecaptchaBadge();
}); });
// Удаляем при размонтировании // Удаляем при размонтировании
@@ -87,15 +87,18 @@ function showStartPage() {
authError.value = false; authError.value = false;
isLoggedIn.value = false; isLoggedIn.value = false;
// Показываем badge reCAPTCHA // Показываем badge reCAPTCHA
showRecaptchaBadge(); // showRecaptchaBadge();
} }
// Отслеживание перехода на страницу admin-panel // Отслеживание перехода на страницу admin-panel
watch(() => props.currentPage, (newPage) => { // watch(
if (newPage === 'admin-panel' && !isLoggedIn.value) { // () => props.currentPage,
showRecaptchaBadge(); // (newPage) => {
} // if (newPage === "admin-panel" && !isLoggedIn.value) {
}); // showRecaptchaBadge();
// }
// },
// );
</script> </script>
<template> <template>
@@ -130,8 +133,8 @@ watch(() => props.currentPage, (newPage) => {
</div> </div>
</template> </template>
<style scoped> <!-- <style scoped>
.grecaptcha-badge { .grecaptcha-badge {
display: block !important; display: block !important;
} }
</style> </style> -->