var eppawstock=new function(){ var me=this; var shopid="okimono-limited-editions"; var key="Ffz93MINXY+uAvXiFMnWuEOR4ysb74fHlr/xjnbD168="; var domain="eppaw.com"; var prot="https"; var urlSearchParams; var params; var posfix; me.init=function (){ var addStockmail=document.querySelectorAll('[data-available="0"]'); urlSearchParams = new URLSearchParams(window.location.search); postfix="Shopify"; params = Object.fromEntries(urlSearchParams.entries()); if(("oid" in params) && ("ordernr" in params)){ document.querySelector("#oid").value=params.oid; document.querySelector("#ordernr").value=params.ordernr; document.querySelector(".order").textContent="#"+params.ordernr; document.querySelector("#address").addEventListener('input', (e)=>{ if(me.getStreetNumber(document.querySelector("#address").value)!==""){ document.querySelector("#address").classList.add("valid"); }; }); document.querySelector("#update").addEventListener('click', (e)=>{ document.querySelector("#addresswrap").classList.add("sending"); me.send(params.ordernr,params.oid,document.querySelector("#address").value,posfix); }); me.getOrder(params.oid,params.ordernr); } } me.getOrder=function (oid,ordernr){ var xmlhttp = new XMLHttpRequest(); var url=prot+"://"+domain+"/pubapi/GetOrder"; xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var data = JSON.parse(this.responseText); console.log(data); let address=data.address; document.querySelector(".name").textContent=address.name; document.querySelector(".zip").textContent=address.zip; document.querySelector(".city").textContent=address.city; document.querySelector(".country").textContent=address.country; document.querySelector("#address").value=address.address1; document.querySelector("#addresswrap").classList.remove("notset") } }; console.log(`fetch order`); xmlhttp.open("POST", url, true); xmlhttp.setRequestHeader("x-eppaw-hmac", key); xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8"); xmlhttp.send(JSON.stringify({ "shopid":shopid,"platform":postfix, "data": { "ordernr":ordernr,"oid":oid } })); } me.send=function(ordernr,oid,address,posfix){ var xmlhttp = new XMLHttpRequest(); var url=prot+"://"+domain+"/pubapi/UpdateOrder"; xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var data = JSON.parse(this.responseText); document.querySelector("#addresswrap .updating span:first-child").textContent="Thank you for upating"; } }; xmlhttp.open("POST", url, true); xmlhttp.setRequestHeader("x-eppaw-hmac", key); xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8"); xmlhttp.send(JSON.stringify({ "shopid":shopid,"platform":postfix, "data": { "ordernr":ordernr,"oid":oid,"address1":address } })); } function validateEmail(email) { const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; return re.test(String(email).toLowerCase()); } me.getStreetNumber=function(address){ var streetNumber=""; var addressArray=address.split(" "); var numbers="1234567890"; var size = addressArray.length; for (let i = 1;i < size;i++){ var subpart=addressArray[i]; if(streetNumber===""){ if(subpart!=""){ if( numbers.indexOf(subpart.substring(0,1))>-1){ streetNumber+=subpart+" "; } } }else{ if(subpart!=""){ streetNumber+=subpart+" "; } } } // System.out.println(streetNumber.trim()); return streetNumber.trim(); } document.addEventListener("DOMContentLoaded", function(event) { }); me.init(); }