(function ($){
'use strict';
function ensureHiddenInput($form){
var $input=$form.find('input[name="cf-turnstile-response"]');
if(!$input.length){
$input=$('<input>', { type: 'hidden', name: 'cf-turnstile-response', value: '' }).appendTo($form);
}
return $input;
}
function ensureContainer(wrapper){
if(!wrapper) return;
var form=wrapper.closest ? wrapper.closest('.elementor-form'):null;
if(!form) return;
if(form.querySelector('.cf-turnstile')){
ensureHiddenInput($(form));
return;
}
var cfg=window.KitgenixCaptchaForCloudflareTurnstileConfig||{};
var siteKey=cfg.site_key ? String(cfg.site_key):'';
if(!siteKey){
ensureHiddenInput($(form));
return;
}
ensureHiddenInput($(form));
var submitGroup=wrapper.querySelector('.elementor-field-type-submit');
var container=document.createElement('div');
container.className='cf-turnstile';
container.setAttribute('data-sitekey', siteKey);
if(cfg.theme)      container.setAttribute('data-theme', String(cfg.theme));
if(cfg.size)       container.setAttribute('data-size', String(cfg.size));
if(cfg.appearance) container.setAttribute('data-appearance', String(cfg.appearance));
container.setAttribute('data-KitgenixCaptchaForCloudflareTurnstile-owner', 'elementor');
if(submitGroup&&submitGroup.parentNode){
submitGroup.parentNode.insertBefore(container, submitGroup);
}else if(wrapper&&wrapper.appendChild){
wrapper.appendChild(container);
}
try {
document.dispatchEvent(new CustomEvent('KitgenixCaptchaForCloudflareTurnstile:turnstile-containers-added', { detail: { source: 'elementor' }}));
} catch (e){}}
$(function (){
document.querySelectorAll('.elementor-form-fields-wrapper').forEach(ensureContainer);
});
if(window.elementorFrontend&&elementorFrontend.hooks){
elementorFrontend.hooks.addAction('frontend/element_ready/form.default', function ($scope){
$scope.find('.elementor-form-fields-wrapper').each(function (){ ensureContainer(this); });
});
elementorFrontend.hooks.addAction('frontend/element_ready/popup.default', function ($scope){
$scope.find('.elementor-form-fields-wrapper').each(function (){ ensureContainer(this); });
});
}
$(document).on('elementor/popup/show', function (){
document.querySelectorAll('.elementor-popup-modal .elementor-form-fields-wrapper').forEach(ensureContainer);
});
$(document).on('ajaxComplete', function (_e, xhr, settings){
var data=settings&&settings.data ? String(settings.data):'';
if(data.indexOf('action=elementor_pro_forms_send_form')!==-1){
$('.elementor-form').each(function (){
var $form=$(this);
var $input=$form.find('input[name="cf-turnstile-response"]');
if($input.length) $input.val('');
$form.find('.cf-turnstile').each(function(){
this.classList.add('kitgenix-ts-collapsed');
this.classList.add('kitgenix-ts-hide');
});
});
}});
$(window).on('elementor/frontend/init', function (){
document.querySelectorAll('.elementor-form-fields-wrapper').forEach(ensureContainer);
});
})(jQuery);