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>Security Verification - hCaptcha</title> 7 <link rel="stylesheet" href="/styles.css"> 8
8<script src="https://js.hcaptcha.com/1/api.js?hl=en" async defer></script>
8 9</head> 10<body> 11 <div class="container"> 12 <!-- Language Switcher --> 13 <div class="language-switcher"> 14 <button class="lang-btn " 15 onclick="switchLanguage('sk')" 16 title="Prepnúť na slovenÄinu"> 17 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 18 <circle cx="12" cy="12" r="10"/> 19 <path d="M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/> 20 </svg> 21 SK 22 </button> 23 <button class="lang-btn active" 24 onclick="switchLanguage('en')" 25 title="English"> 26 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 27 <circle cx="12" cy="12" r="10"/> 28 <path d="M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/> 29 </svg> 30 EN 31 </button> 32 </div> 33 34 <div class="verification-box"> 35 <!-- Icon --> 36 <div class="icon"> 37 <svg width="70" height="70" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 38 <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/> 39 <path d="M9 12l2 2 4-4"/> 40 </svg> 41 </div> 42 43 <!-- Nadpis --> 44 <h1>Security Verification</h1> 45 <p class="description"> 46 Before accessing this page, we need to verify that you are not a robot.<br>This verification protects us from automated attacks. </p> 47 48 <!-- Error messages --> 49 50 <!-- Verification Form --> 51 <form id="verificationForm" action="/verify-captcha?lang=en" method="POST"> 52 <input type="hidden" name="redirect" value="/"> 53 <input type="hidden" name="lang" value="en"> 54 55 <div class="captcha-container"> 56 <div class="h-captcha" 57 data-sitekey="1564cf6e-e634-44bc-864c-07ae759627a0" 58 data-theme="light" 59 data-size="normal" 60 data-callback="onCaptchaSuccess" 61 data-error-callback="onCaptchaError" 62 data-expired-callback="onCaptchaExpired"> 63 </div> 64 </div> 65 66 <button type="submit" id="submitBtn" class="submit-btn" disabled> 67 <svg class="btn-spinner" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 68 <circle cx="12" cy="12" r="10"/> 69 </svg> 70 <span class="btn-text">Waiting for verification...</span> 71 <svg class="btn-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 72 <polyline points="20 6 9 17 4 12"></polyline> 73 </svg> 74 </button> 75 </form> 76 77 <!-- Info section --> 78 <div class="info-box"> 79 <h3> 80 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 81 <circle cx="12" cy="12" r="10"/> 82 <line x1="12" y1="16" x2="12" y2="12"/> 83 <line x1="12" y1="8" x2="12.01" y2="8"/> 84 </svg> 85 Why am I seeing this? </h3> 86 <p> 87 This security layer helps protect us from malicious bots, DDoS attacks, and automated threats. Verification is valid for 60 minutes. </p> 88 <div class="info-features"> 89 <div class="feature">
90 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 91 <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/> 92 </svg> 93 <span>Bot protection</span> 94 </div> 95 <div class="feature"> 96 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 97 <rect x="3" y="11" width="18" height="11" rx="2" ry="2"/> 98 <path d="M7 11V7a5 5 0 0 1 10 0v4"/> 99 </svg> 100 <span>User privacy</span> 101 </div> 102 <div class="feature"> 103 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 104 <polyline points="22 12 18 12 15 21 9 3 6 12 2 12"/> 105 </svg> 106 <span>DDoS prevention</span> 107 </div> 108 </div> 109 </div> 110 </div> 111 112 <!-- Footer --> 113 <div class="footer"> 114 <p> 115 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 116 <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/> 117 </svg> 118 Protected by hCaptcha security system </p> 119 <p class="powered-by">Powered by hCaptcha</p> 120 </div> 121 </div> 122 123
123<script> 124 // Translations for JavaScript 125 const translations = {"sk":{"title":"Bezpe\u010dnostn\u00e9 overenie","description":"Pred pr\u00edstupom na t\u00fato str\u00e1nku mus\u00edme overi\u0165, \u017ee nie ste robot.<br>Toto overenie n\u00e1s chr\u00e1ni pred automatizovan\u00fdmi \u00fatokmi.","error_title":"Chyba overenia","error_captcha":"Overenie hCaptcha zlyhalo. Sk\u00faste to pros\u00edm znova.","error_timeout":"Vypr\u0161al \u010dasov\u00fd limit. Sk\u00faste to pros\u00edm znova.","error_invalid":"Neplatn\u00fd po\u017eiadavok. Obnovte str\u00e1nku a sk\u00faste znova.","error_default":"Nastala neo\u010dak\u00e1van\u00e1 chyba. Sk\u00faste to pros\u00edm znova.","btn_waiting":"\u010cak\u00e1m na overenie...","btn_verify":"Overi\u0165 a pokra\u010dova\u0165","btn_error":"Chyba overenia","btn_expired":"Overenie vypr\u0161alo","btn_verifying":"Overujem...","info_title":"Pre\u010do toto vid\u00edm?","info_text":"T\u00e1to bezpe\u010dnostn\u00e1 vrstva n\u00e1s pom\u00e1ha chr\u00e1ni\u0165 pred \u0161kodliv\u00fdmi botmi, DDoS \u00fatokmi a automatizovan\u00fdmi hrozbami. Overenie je platn\u00e9 {time} min\u00fat.","feature_bots":"Ochrana pred botmi","feature_privacy":"S\u00fakromie pou\u017e\u00edvate\u013eov","feature_ddos":"Prevencia DDoS","footer_text":"Chr\u00e1nen\u00e9 bezpe\u010dnostn\u00fdm syst\u00e9mom s hCaptcha","footer_powered":"Powered by hCaptcha","lang_name":"Sloven\u010dina","lang_switch":"Switch to English"},"en":{"title":"Security Verification","description":"Before accessing this page, we need to verify that you are not a robot.<br>This verification protects us from automated attacks.","error_title":"Verification Error","error_captcha":"hCaptcha verification failed. Please try again.","error_timeout":"Time limit exceeded. Please try again.","error_invalid":"Invalid request. Refresh the page and try again.","error_default":"An unexpected error occurred. Please try again.","btn_waiting":"Waiting for verification...","btn_verify":"Verify and continue","btn_error":"Verification error","btn_expired":"Verification expired","btn_verifying":"Verifying...","info_title":"Why am I seeing this?","info_text":"This security layer helps protect us from malicious bots, DDoS attacks, and automated threats. Verification is valid for {time} minutes.","feature_bots":"Bot protection","feature_privacy":"User privacy","feature_ddos":"DDoS prevention","footer_text":"Protected by hCaptcha security system","footer_powered":"Powered by hCaptcha","lang_name":"English","lang_switch":"Prepn\u00fa\u0165 na sloven\u010dinu"}}; 126 const currentLang = 'en'; 127 const t = translations[currentLang]; 128 129 let captchaCompleted = false; 130 const submitBtn = document.getElementById('submitBtn'); 131 const form = document.getElementById('verificationForm'); 132 133 // Language switcher 134 function switchLanguage(lang) { 135 const url = new URL(window.location); 136 url.searchParams.set('lang', lang); 137 window.location.href = url.toString(); 138 } 139 140 // Callback po úspeÅ¡nom vyrieÅ¡enà hCaptcha 141 function onCaptchaSuccess(token) { 142 console.log('hCaptcha completed'); 143 captchaCompleted = true; 144 submitBtn.disabled = false; 145 submitBtn.classList.add('active'); 146 submitBtn.querySelector('.btn-text').textContent = t.btn_verify; 147 } 148 149 // Callback pri chybe 150 function onCaptchaError(error) { 151 console.error('hCaptcha error:', error); 152 captchaCompleted = false; 153 submitBtn.disabled = true; 154 submitBtn.classList.remove('active'); 155 submitBtn.querySelector('.btn-text').textContent = t.btn_error; 156 } 157 158 // Callback keÄ vyprÅ¡ala platnosÅ¥ 159 function onCaptchaExpired() { 160 console.log('hCaptcha expired'); 161 captchaCompleted = false; 162 submitBtn.disabled = true; 163 submitBtn.classList.remove('active'); 164 submitBtn.querySelector('.btn-text').textContent = t.btn_expired; 165 } 166 167 // Submit handling 168 form.addEventListener('submit', function(e) { 169 if (!captchaCompleted) { 170 e.preventDefault(); 171 return false;
172 } 173 174 // Show loading state 175 submitBtn.classList.add('loading'); 176 submitBtn.disabled = true; 177 submitBtn.querySelector('.btn-text').textContent = t.btn_verifying; 178 }); 179 180 // Auto-focus na captcha po naÄÃtanà (voliteľné) 181 window.addEventListener('load', function() { 182 setTimeout(function() { 183 const captchaFrame = document.querySelector('iframe[src*="hcaptcha"]'); 184 if (captchaFrame) { 185 captchaFrame.scrollIntoView({ behavior: 'smooth', block: 'center' }); 186 } 187 }, 500); 188 }); 189 </script>
189 190</body> 191</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.