[BACK]Return to form.min.js CVS log [TXT][DIR] Up to [local] / draft

Diff for /draft/form.min.js between version 1.49 and 1.103

version 1.49, 2024/03/29 20:13:18 version 1.103, 2024/04/02 07:28:58
Line 1 
Line 1 
 const form = document.querySelector("#cform");  const form = document.querySelector("#cform");
   
 function validateEmail(email) {  function parseString(str) {
         const regex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;          return str.replace(/[!~`%&^{}\[\]<>|\\\/"'@#$;]/g, '_');
   }
   
   function parseMail(email) {
           return email.toLowerCase().slice(0,96);
   }
   
   function validateMail(email) {
           const regex = /^[a-z0-9._%+-]+@[a-z0-9.-]+(\.[a-z]{2,})+$/;
         return regex.test(email);          return regex.test(email);
 };  };
   
 function validateSubject(subject) {  function parseSubj(subject) {
         return (subject.length>5);          return parseString(subject).slice(0,96);
 }  }
   
 function validateMsg(msg) {  function validateSubj(subject) {
         return (msg.length>5);          return (subject.length>3);
 }  }
   
   function parseMess(msg) {
           return parseString(msg).slice(0,3904);
   }
   
   function validateMess(msg) {
           return (msg.length>3);
   }
   
 async function sendData() {  async function sendData() {
         var er = 0;          var erro = 0,
                 em = document.getElementById("cfem").value,                  info = document.getElementById("cfinfo"),
                 su = document.getElementById("cfsu").value,                  mail = parseMail(document.getElementById("cfem").value),
                 ms = document.getElementById("cfme").value,                  subj = parseSubj(document.getElementById("cfsu").value),
                 ii = document.getElementById("cfinfo");                  mess = parseMess(document.getElementById("cfme").value);
         er=validateEmail(em)?er:++er;  
         er=validateSubject(su)?er:++er;          erro=validateMail(mail)?erro:++erro;
         er=validateMsg(ms)?er:++er;          erro=validateSubj(subj)?erro:++erro;
         if(er){          erro=validateMess(mess)?erro:++erro;
                 ii.textContent="One or more fields have an error. Please check and try again.";  
           if(erro) {
                   info.textContent="One or more fields have an error. Please check and try again."
         } else {          } else {
                 var fc = document.querySelectorAll(".wpcf7-form-control");                  var fcon = document.querySelectorAll(".wpcf7-form-control");
                 ii.textContent="All good.";  
                 fc.forEach((f) => {                  info.textContent="Verifying..."
                   fcon.forEach((f) => {
                 f.disabled=true;                  f.disabled=true;
                         l=f;                          l=f;
                 });                  });
                 l.style.visibility="hidden";                  l.style.visibility="hidden";
                 turnstile.ready(function() {                  turnstile.ready(function() {
                         turnstile.render('#cfcontainer', {                          turnstile.render('#cfcontainer', {
                                   retry: 'never',
                                 theme: 'light',                                  theme: 'light',
                                 sitekey: '0x4AAAAAAAVpXFEy152AON1L',  
                                 'response-field': false,                                  'response-field': false,
                                 retry: 'never',                                  sitekey: '0x4AAAAAAAVpXFEy152AON1L',
                                 'error-callback': function(e) {                                  'error-callback': function(e) {
                                           info.textContent="Verification error. Try again later.";
                                         turnstile.remove();                                          turnstile.remove();
                                 },                                  },
                                 callback: function(token) {                                  callback: function(token) {
                                         ii.textContent="Sent";                                          const data = JSON.stringify({"add": mail, "sub": subj, "msg": mess, "tok": token});
                                         console.log(`Challenge Success ${token}`);                                          info.textContent="Sending...";
 /* --------------------- */                                          fetch("/feedbk/", {
 const ob = {mail: em, sub: su, msg: ms, id: token };                                                  headers: { "Content-Type": "application/json" },
 var data="",                                                  credentials: "same-origin",
         status="",                                                  mode: "same-origin",
         feed=JSON.stringify(ob);                                                  method: "post",
 $.post("/feedbk/", feed, function(data, status){                                                  body: data
     console.log("Data: " + data + "\nStatus: " + status);                                          })
         console.log("JSON: " + JSON.parse(data.getJSON()));                                          .then(response => response.json())
                                           .then(json => info.textContent=json['msg'])
 });                                          .then(turnstile.remove());
 /* --------------------- */                                  }
 //ovar re="";  
 //const dataToSend = JSON.stringify({"email": "hey@mail.com", "password": "101010"});  
 //let dataReceived = "";  
 //fetch("/feedbk/", {  
 //   credentials: "same-origin",  
 //    mode: "same-origin",  
 //    method: "post",  
 //    headers: { "Content-Type": "application/json" },  
 //    body: dataToSend  
 //})  
 //    .then(resp => {  
 //        if (resp.status === 200) {  
 //            return resp.json()  
 //       } else {  
 //            console.log("Status: " + resp.status)  
 //            return Promise.reject("server")  
 //        }  
 //    })  
 //    .then(dataJson => {  
 //        dataReceived = JSON.parse(dataJson)  
 //    })  
 //    .catch(err => {  
 //        if (err === "server") return  
 //        console.log(err)  
 //    })  
 //console.log(`Received: ${dataReceived}`)  
   
   
                                 },  
                         });                          });
                 });                  });
         }          };
 };  }
   
 form.addEventListener("submit", (event) => {  form.addEventListener("submit", (event) => {
         event.preventDefault();          event.preventDefault();

Legend:
Removed from v.1.49  
changed lines
  Added in v.1.103

https://cvs.kroczynski.net