1
0
Fork 0
mirror of https://github.com/EDeev/deev.space.git synced 2026-10-08 04:59:31 +03:00
deev.space/templates/widgets/smartcaptcha.html
Egor Deev 878b4580e4 Версия 2.0: код с продакшена deev.space
Перенесено всё, что накопилось на сервере с декабря 2025:
- анонимный посетитель по подписанной cookie (main/middleware.py), лайки и дизлайки
  без регистрации с антинакруткой, уникальные просмотры статей;
- карточка-паспорт, стек в одну строку, блок «В цифрах»;
- миграции 0005–0008, команды load_initial_data и populate_demo, robots.txt;
- обновлённые шаблоны, стили и скрипты.

Безопасность и порядок:
- все секреты только из окружения, значения по умолчанию пустые;
- DEBUG по умолчанию выключен, без DJANGO_SECRET_KEY запуск в бою невозможен;
- ALLOWED_HOSTS, путь к базе и SSL-редирект настраиваются переменными;
- убрана статика админки Django (результат collectstatic) и media из git;
- добавлены .gitignore и .gitattributes (переводы строк — LF).
2026-10-02 11:58:54 +00:00

27 lines
No EOL
884 B
HTML

<div class="smart-captcha-wrapper" style="height: 100px;">
<div id="captcha-container"
class="smart-captcha"
data-sitekey="{{ client_key }}"
data-hl="ru"></div>
<input type="hidden" name="{{ widget.name }}" id="smart-captcha-token" value="">
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
// Ожидаем загрузки SmartCaptcha
function initSmartCaptcha() {
if (window.smartCaptcha) {
window.smartCaptcha.render('captcha-container', {
sitekey: '{{ client_key }}',
hl: 'ru',
callback: function(token) {
document.getElementById('smart-captcha-token').value = token;
}
});
} else {
setTimeout(initSmartCaptcha, 100);
}
}
initSmartCaptcha();
});
</script>