var login = new loginobj();

function loginobj()
{
	
}

login.bounceBack = function()
{
	if (window.XMLHttpRequest)
  		var req = new XMLHttpRequest();
  	else if (window.ActiveXObject)
		var req = new ActiveXObject("Microsoft.XMLHTTP")
	if(!req)
		var req = new ActiveXObject("Msxml2.XMLHTTP")
	
	req.open("POST","/"+tmwareinstance+"/index.php",true);
	req.onreadystatechange = function()
	{
		if (req.readyState == 4) 
		{
			login.reqAction(req)
		}		
	}
	
	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	req.setRequestHeader("Content-length", login.reqHeader.length);
	req.setRequestHeader("Connection", "close");
	req.send(login.reqHeader);
}

login.reqAction = function(req)
{
	document.getElementById("bodywrapper").innerHTML = req.responseText;
	
	var regex = /<script\b.*?>([\s\S]*?)<\/script>/igm;
	var match;
	while (match = regex.exec(req.responseText))
	
	{
		var startInnerJs = match[0].indexOf('>')+1;
		var innerJsEnd = match[0].indexOf('</script>');				
		var innerJs = match[0].substring(startInnerJs,innerJsEnd);
		innerJs = trimAll(innerJs);
		try
		{
			eval(innerJs);
		}
		catch(e)
		{	
			//document.getElementById('jsDebugOutput').innerHTML += "<div>"+e+"</div>";
			alert("Output2 "+e)
		}
						
		var findSrcStart = match[0].search(/src=[\'\"]/)+4;
		var findSrcEnd = match[0].indexOf('.js');
		
		if(findSrcStart > 0 && findSrcEnd > 0)
		{
			var srcScript = match[0].substring(findSrcStart,findSrcEnd);
			srcScript = srcScript.replace(/[\'\"]/,'')+'.js'; 
			var head = document.getElementsByTagName("head")[0];
			scriptObj = document.createElement('script');
			scriptObj.language = 'javascript';
			head.appendChild(scriptObj);
			scriptObj.src = srcScript;
		}
	}

	
	
	
	
	if(document.getElementById("focus_me"))
		document.getElementById("focus_me").focus();
	if(document.getElementById("kickout"))
		document.getElementById("kickout").submit();
	if(document.getElementById("noresume"))
	{
		if(document.getElementById("FW_samewin"))		
			login.openAppWindow('noresume',true);
		else
			login.openAppWindow('noresume');
	}
}

login.submitLogin = function(windowId)
{
	login.windowId = windowId;
	login.reqHeader = "";
	if(document.getElementById('focus_me'))
		login.reqHeader = "username="+document.getElementById('focus_me').value;
	if(document.getElementById('FW_username'))
		login.reqHeader = "username="+document.getElementById('FW_username').value;
	if(document.getElementById('password_input'))
		login.reqHeader += "&password="+SHA1(document.getElementById('password_input').value);
	if(document.getElementById('authkey'))
		login.reqHeader += "&authkey="+document.getElementById('authkey').value;
	if(document.getElementById('request_type'))
		login.reqHeader += "&FW_request_type="+document.getElementById('request_type').value;
	else
		login.reqHeader += "&FW_request_type=validate"
	if(document.getElementById('password1'))
	{
		if(document.getElementById('password1').value != document.getElementById('password2').value)
		{
			document.getElementById('password1').value = "";
			document.getElementById('password2').value = "";
			document.getElementById('password1').focus();
			alert("Passwords do not match");
			return;
		}
		login.reqHeader += "&new_password="+SHA1(document.getElementById('password1').value);
	}
	login.reqHeader += "&FW_username=FWorphans";
	login.reqHeader += "&FW_loginsessionid="+document.getElementById('FW_loginsessionid').value;
	login.reqHeader += "&FW_sesspath="+document.getElementById('FW_sesspath').value;
	login.bounceBack();	
}

login.openAppWindow = function(formName,sameWin)
{
	if(!sameWin)
	{			
		var checkopened = window.open("", login.windowId, "scrollbars=yes, resizable=yes, directories=no, menubar=no, status=no");
		if (checkopened == null || typeof(checkopened)=="undefined")
		{
			alert("Cannot open a window for tmWare as you seem to have a popup blocker.\nPlease change the settings to allow poups for this URL.");
			return false;
		}
		document.getElementById(formName).submit();
		document.getElementById("input_wrapper").innerHTML = '<div style="margin-top:5px;padding: 10px; width: 50%; position: relative; top: 50px; left: 20px;text-align:center">Login successful<br /><br /><br /><a style="background:#666;border:3px outset #666;color:white" href="index.php">Login Again</a></div>';		
	}
	else
	{
		window.name = login.windowId	
	}	
	document.getElementById(formName).submit();	
}