You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

53 lines
1.2 KiB

( function() {
document.addEventListener( 'DOMContentLoaded', function( event ) {
wpcf7_recaptcha.execute = function( action ) {
grecaptcha.execute(
wpcf7_recaptcha.sitekey,
{ action: action }
).then( function( token ) {
var event = new CustomEvent( 'wpcf7grecaptchaexecuted', {
detail: {
action: action,
token: token,
},
} );
document.dispatchEvent( event );
} );
};
wpcf7_recaptcha.execute_on_homepage = function() {
wpcf7_recaptcha.execute( wpcf7_recaptcha.actions[ 'homepage' ] );
};
wpcf7_recaptcha.execute_on_contactform = function() {
wpcf7_recaptcha.execute( wpcf7_recaptcha.actions[ 'contactform' ] );
};
grecaptcha.ready(
wpcf7_recaptcha.execute_on_homepage
);
document.addEventListener( 'change',
wpcf7_recaptcha.execute_on_contactform
);
document.addEventListener( 'wpcf7submit',
wpcf7_recaptcha.execute_on_homepage
);
} );
document.addEventListener( 'wpcf7grecaptchaexecuted', function( event ) {
var fields = document.querySelectorAll(
"form.wpcf7-form input[name='_wpcf7_recaptcha_response']"
);
for ( var i = 0; i < fields.length; i++ ) {
var field = fields[ i ];
field.setAttribute( 'value', event.detail.token );
}
} );
} )();