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 = "
";
}
if (type=="pass2") {
document.getElementById("pass1").style.border="1px solid #08cd03";
document.getElementById("tickpass1").innerHTML = "
";
}
pass = true;
}
else {
document.getElementById("pass1").style.border="1px solid red";
document.getElementById("tickpass1").innerHTML = "
";
print_msg("Your password needs to be more than 6 characters");
}
}
else {
document.getElementById("pass1").style.border="1px solid red";
document.getElementById("tickpass1").innerHTML = "
";
document.getElementById("pass2").style.border="1px solid red";
document.getElementById("tickpass2").innerHTML = "
";
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 = "
";
document.getElementById("submit").disabled=false;
clear_msg();
}
else {
element.style.border="1px solid red";
document.getElementById("tick"+element.name).innerHTML = "
";
document.getElementById("submit").disabled=true;
print_msg("This email address is taken");
}
}
else {
document.getElementById("tickuser_email").innerHTML = "
";
}
};
xhr.open('GET', url, true);
xhr.send(null);
}
else {
element.style.border="1px solid red";
document.getElementById("tick"+element.name).innerHTML = "
";
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 = "
";
document.getElementById("submit").disabled=false;
clear_msg();
}
else {
element.style.border="1px solid red";
document.getElementById("tick"+element.name).innerHTML = "
";
document.getElementById("submit").disabled=true;
print_msg("This username is taken");
}
}
else {
document.getElementById("tickuser_name").innerHTML = "
";
}
};
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 = "
";
document.getElementById("submit").disabled=false;
clear_msg();
}
else {
element.style.border="1px solid red";
document.getElementById("tick"+element.name).innerHTML = "
";
document.getElementById("submit").disabled=true;
if (type != "pass2") {
print_msg("Please fill out all required fields");
}
}
}
msglock = false;
}