Skip to content

Instantly share code, notes, and snippets.

@khigashi
Created November 12, 2018 18:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save khigashi/edadb216312b7de227ebcb4cc7b93975 to your computer and use it in GitHub Desktop.
Save khigashi/edadb216312b7de227ebcb4cc7b93975 to your computer and use it in GitHub Desktop.
Integração do Mail2Easy com o Contact Form 7 via Javascript.
<script>
window.onload = function() {
var url_formulario_mail2easy = "https://receiver.emkt.dinamize.com/in/32506/1/713/0"; //Essa URL do action deve ser gerada a partir de um formulário criado em sua conta.
jQuery(".wpcf7").each(function( index ) {
var id_formulario = jQuery(this).attr('id');
var form_cf7_id = id_formulario.replace("wpcf7-","");
var defaultform = "#wpcf7-" + form_cf7_id + " .wpcf7-form";
jQuery(defaultform + " .wpcf7-response-output").remove();
if(jQuery(defaultform).length){
document.querySelector(defaultform).action = url_formulario_mail2easy;
document.querySelector(defaultform).target = "iframeFormIntegration-" + form_cf7_id;
document.querySelector(defaultform).removeAttribute("novalidate");
//campo extra
var varisload = document.createElement("input");
varisload.type="hidden";
varisload.name="isload";
varisload.id="isload";
varisload.value = "0"
document.querySelector(defaultform).appendChild(varisload);
//campo form-code
var varcode = document.createElement("input");
varcode.type="hidden";
varcode.name="form-code";
varcode.value = "20";
document.querySelector(defaultform).appendChild(varcode);
//campo form-code
var varcmp4 = document.createElement("input");
varcmp4.type="hidden";
varcmp4.name="cmp4";
varcmp4.value = "newsletter-site";
document.querySelector(defaultform).appendChild(varcmp4);
//campo form-code
var varalert = document.createElement("input");
varalert.type="hidden";
varalert.name="email-alert";
varalert.value = "on";
document.querySelector(defaultform).appendChild(varalert);
//campo form-code
var varalertc = document.createElement("input");
varalertc.type="hidden";
varalertc.name="email-alert-code";
varalertc.value = "2";
document.querySelector(defaultform).appendChild(varalertc);
//campo form-code
var varphase = document.createElement("input");
varphase.type="hidden";
varphase.name="phase-change";
varphase.value = "on";
document.querySelector(defaultform).appendChild(varphase);
//campo form-code
var varupd = document.createElement("input");
varupd.type="hidden";
varupd.name="update_mode";
varupd.value = "AS";
document.querySelector(defaultform).appendChild(varupd);
//campo form-code
var varismsg = document.createElement("input");
varismsg.type = "hidden";
varismsg.name = "isMsg";
varismsg.value = "true";
document.querySelector(defaultform).appendChild(varismsg);
var successok = document.createElement("div");
successok.className= "wpcf7-response-output wpcf7-mail-sent-ok";
successok.innerHTML = "E-mail cadastrado com sucesso!";
successok.style.display = "none";
successok.id="wpcf7-" + form_cf7_id + "-ok";
document.querySelector(defaultform).appendChild(successok);
var codeconvert = document.querySelector("#wpcf7-" + form_cf7_id).innerHTML;
codeconvert = codeconvert.replace("name=\"your-name\"","name=\"cmp2\"");
codeconvert = codeconvert.replace("name=\"your-email\"","name=\"cmp1\" required ");
var ifrm = document.createElement("iframe");
ifrm.setAttribute("id", "iframeFormIntegration-" + form_cf7_id);
ifrm.setAttribute("name", "iframeFormIntegration-" + form_cf7_id);
ifrm.style.display = "none";
document.body.appendChild(ifrm);
document.querySelector("#wpcf7-" + form_cf7_id).innerHTML = codeconvert;
document.querySelector("#iframeFormIntegration-" + form_cf7_id).onload= function(){
if(document.querySelector(defaultform + ' #isload').value=='0'){
document.getElementById("wpcf7-" + form_cf7_id + "-ok").style.display='block';
setTimeout(function(){
document.getElementById("wpcf7-" + form_cf7_id + "-ok").style.display='none';
document.querySelector(defaultform).reset();
document.querySelector(defaultform + ' #isload').value='0';
}, 4000);
}
}
document.querySelector(defaultform).onSubmit=function(){
document.querySelector(defaultform + ' #isload').value='1';
};
}
});
};
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment