document.querySelector("form").addEventListener("submit",async(e)=>{e.preventDefault();var textPrije=$("form button").text()
$("form button").text("...")
const form=e.target;const ime=form.querySelector("#ime")?form.querySelector("#ime").value:null;const email=form.querySelector("#email")?form.querySelector("#email").value:null;const lozinka=form.querySelector("#lozinka")?form.querySelector("#lozinka").value:null;const poruka=form.querySelector("#poruka")?form.querySelector("#poruka").value:null;if(poruka&&poruka.length>1000){alert("Poruka je previše duga. Može sadržavati najviše 1000 karaktera.");return;}
if(ime&&ime.length<3){alert("Ime mora biti veće od 3 karaktera.");return;}
const emailRegex=/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;if(email&&!emailRegex.test(email)){alert("Email nije ispravan.");return;}
if(lozinka&&lozinka.length<8){alert("Lozinka mora imati najmanje 8 karaktera.");return;}
const formData={};if(ime){formData.ime=ime;}
if(email){formData.email=email;}
if(poruka){formData.poruka=poruka;}
if(lozinka){formData.lozinka=lozinka;}
try{const response=await fetch(form.action,{method:form.method,headers:{"Content-Type":"application/json"},body:JSON.stringify(formData)});const data=await response.json();if(data.error.code!=200){alert(data.error.msg)
$("form button").text(textPrije)}
else{$("form button").text("Uspješno")
setTimeout(function(){if(data.url){window.location.href=data.url}
else{$("form").html(`<p>${data.msg}</p>`)}},1000);}}catch(error){$("form button").text("Greška, pokušajte ponovno.")
console.log(error)}});document.querySelector("#email").addEventListener("input",(e)=>{const input=e.target;input.value=input.value.replace(/[^a-zA-Z0-9._%+-@]/g,'');});