var Ajax = { 
	createXMLHttp:function() {
	
		if (typeof XMLHttpRequest != "undefined") {
			return new XMLHttpRequest();
		} else if (window.ActiveXObject) {
			var aVersions = [ "MSXML2.XMLHttp.5.0",
			"MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0",
			"MSXML2.XMLHttp","Microsoft.XMLHttp"
			];
		
			for (var i = 0; i < aVersions.length; i++) {
				try {
					var oXmlHttp = new ActiveXObject(aVersions[i]);
					return oXmlHttp;
				} catch (oError) {
				//Do nothing
				}
			}
		}
	}
}

var namak = null;

function getSalt(){
	var username = document.getElementById('username');
	var password = document.getElementById('password');
	var ajax = Ajax.createXMLHttp();
	var xmlDoc = null;
	var user = username.value;
		
	try{
		ajax.open("get", "../contest/get_salt.php5?username=" + user, true);
		ajax.send("username=" + user);
			
		ajax.onreadystatechange = function () {
			if (ajax.readyState == 4 && ajax.status == 200) {
				namak = eval('('+ ajax.responseText +')');
				if(namak.namak != null){
					password.disabled = '';
					password.focus();
					namak = namak.namak;
				}
			} else if(ajax.status == 500){
				throw new Error("ERROR JS.001 Application Error. Please contact your administrator.");
			}
		};
	} catch(e){
			alert(e);
	}
}

function hashPwd(namak){
	pwd = document.getElementById('password');
	pwd.value = hex_md5(namak + pwd.value);
 }
 //Used for hint.php
 function computeHash(el, namak){
	el.value = hex_md5(namak + el.value);
 }
