var msglock = false; function print_msg(msg) { document.getElementById("msg").innerHTML=''+msg+''; document.getElementById("msg").style.display='block'; } function clear_msg() { document.getElementById("msg").innerHTML=" "; document.getElementById("msg").style.display='none'; } function updateColors(element,type) { var pass = false; if (element.value.length > 0) { if ((type=="pass1" || type=="pass2") && (document.getElementById("pass1").value.length > 0 || document.getElementById("pass2").value.length > 0)) { if (document.getElementById("pass1").value == document.getElementById("pass2").value || document.getElementById("pass2").value.length==0) { if (document.getElementById("pass1").value.length >= 6) { if (type=="pass1" && document.getElementById("pass2").value.length > 0) { document.getElementById("pass2").style.border="1px solid #08cd03"; document.getElementById("tickpass2").innerHTML = " Tick"; } if (type=="pass2") { document.getElementById("pass1").style.border="1px solid #08cd03"; document.getElementById("tickpass1").innerHTML = " Tick"; } pass = true; } else { document.getElementById("pass1").style.border="1px solid red"; document.getElementById("tickpass1").innerHTML = " Cross"; print_msg("Your password needs to be more than 6 characters"); } } else { document.getElementById("pass1").style.border="1px solid red"; document.getElementById("tickpass1").innerHTML = " Cross"; document.getElementById("pass2").style.border="1px solid red"; document.getElementById("tickpass2").innerHTML = " Cross"; print_msg("The two passwords do not match"); } } else if (type == "email") { var patt1=new RegExp(/@/); var patt2=new RegExp(/\./); var email=document.getElementById("user_email").value; if (patt1.test(email) && patt2.test(email)) { var url = 'http://www.republic-game.com/signup/ajax.php?task=vfyemail&vfy='+email; // notice the use of a proxy to circumvent the Same Origin Policy. if (window.XMLHttpRequest) // Object of the current windows { xhr = new XMLHttpRequest(); // Firefox, Safari, ... } else if (window.ActiveXObject) // ActiveX version { xhr = new ActiveXObject("Microsoft.XMLHTTP"); // Internet Explorer } xhr.onreadystatechange = function() { if (xhr.readyState == 4) { var patt3=new RegExp("true"); if(patt3.test(xhr.responseText)) { element.style.border="1px solid #08cd03"; document.getElementById("tick"+element.name).innerHTML = " Tick"; document.getElementById("submit").disabled=false; clear_msg(); } else { element.style.border="1px solid red"; document.getElementById("tick"+element.name).innerHTML = " Cross"; document.getElementById("submit").disabled=true; print_msg("This email address is taken"); } } else { document.getElementById("tickuser_email").innerHTML = " Waiting"; } }; xhr.open('GET', url, true); xhr.send(null); } else { element.style.border="1px solid red"; document.getElementById("tick"+element.name).innerHTML = " Cross"; document.getElementById("submit").disabled=true; print_msg("Your email address is incorrectly formatted"); } } else if (type == "username") { var url = 'http://www.republic-game.com/signup/ajax.php?task=vfyuser&vfy='+element.value; // notice the use of a proxy to circumvent the Same Origin Policy. if (window.XMLHttpRequest) // Object of the current windows { xhr = new XMLHttpRequest(); // Firefox, Safari, ... } else if (window.ActiveXObject) // ActiveX version { xhr = new ActiveXObject("Microsoft.XMLHTTP"); // Internet Explorer } xhr.onreadystatechange = function() { if (xhr.readyState == 4) { var patt3=new RegExp("true"); if(patt3.test(xhr.responseText)) { element.style.border="1px solid #08cd03"; document.getElementById("tick"+element.name).innerHTML = " Tick"; document.getElementById("submit").disabled=false; clear_msg(); } else { element.style.border="1px solid red"; document.getElementById("tick"+element.name).innerHTML = " Cross"; document.getElementById("submit").disabled=true; print_msg("This username is taken"); } } else { document.getElementById("tickuser_name").innerHTML = " Waiting"; } }; xhr.open('GET', url, true); xhr.send(null); } else { pass = true; } } if (type != "email" && type != "username") { if (pass) { element.style.border="1px solid #08cd03"; document.getElementById("tick"+element.name).innerHTML = " Tick"; document.getElementById("submit").disabled=false; clear_msg(); } else { element.style.border="1px solid red"; document.getElementById("tick"+element.name).innerHTML = " Cross"; document.getElementById("submit").disabled=true; if (type != "pass2") { print_msg("Please fill out all required fields"); } } } msglock = false; }