var AjaxClass = new Object();
AjaxClass.Request = function(url,id, callbackMethod)
{
	 if ( id == "" )
	{
		return;
	}
	Page.getPageCenterX();
    
	AjaxClass.request = AjaxClass.createRequestObject();
	AjaxClass.request.onreadystatechange = callbackMethod;
	AjaxClass.request.open("POST", url+id, true);
	AjaxClass.request.send(url);
}

AjaxClass.EmployerList = function ()
{
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request))
	{	
		document.getElementById('EmployerId').length = 0;
		document.getElementById('EmployerId').options[0] = new Option("--Select--","");
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('Employer');
		if(_data.length == 0)
		{
			document.getElementById('EmployerId').options[0] = new Option("No Employer available",'');	
		}
		var i;
		var companyname;
		var userid;
		for ( i = 0 ; i < _data.length ; i++ )
		{
			userid = response.getElementsByTagName('UserId')[i].firstChild.data;
			companyname = response.getElementsByTagName('CompanyName')[i].firstChild.data;
			document.getElementById('EmployerId').options[i+1] = new Option(companyname,userid);
		}
	}
}

AjaxClass.EmployerJobList = function ()
{
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request))
	{	
		document.getElementById('JobId').length = 0;
		document.getElementById('JobId').options[0] = new Option("--Select--","");
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('Job');
		if(_data.length == 0)
		{
			document.getElementById('JobId').options[0] = new Option("No Job available",'');	
		}
		var i
		for ( i = 0 ; i < _data.length ; i ++ )
		{
			document.getElementById('JobId').options[i+1] = new Option(response.getElementsByTagName('JobTitle')[i].firstChild.data,response.getElementsByTagName('JobId')[i].firstChild.data);	
		}
	}
}


AjaxClass.JobDetails = function (){
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request)){
		//alert(AjaxClass.request.responseXML.documentElement);
		document.getElementById('status_msg').innerHTML="";
		var	response = AjaxClass.request.responseXML.documentElement;
		if (response!= null){
			var _data = response.getElementsByTagName('jobdetail');
			if(_data.length == 0){
				document.getElementById('job_code').value = "Job Code is Incorrect";
				document.getElementById('status_msg').innerHTML = '<font color="#ff0000"><b>To select, view advertised jobs in Newspapers</b></font>';	
			}
			if(_data.length > 0){
				document.getElementById('JobTitle').value = response.getElementsByTagName('JobTitle')[0].firstChild.data;
				document.getElementById('CompanyName').value = response.getElementsByTagName('CompanyName')[0].firstChild.data;
				document.getElementById('EmployerId').value = response.getElementsByTagName('EmployerId')[0].firstChild.data;
				var i
				for ( i = 0 ; i < _data.length ; i ++ ){
					document.getElementById('newspaper').options[i+1] = new Option(response.getElementsByTagName('newspaper')[i].firstChild.data,response.getElementsByTagName('newspaper')[i].firstChild.data);
				}
			}
		}
		
	}
}

AjaxClass.NewspaperEditions = function (){
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request)){
		//alert(AjaxClass.request.responseXML.documentElement);
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('city_edition');
		
		if(_data.length > 0){
			var i
			for ( i = 0 ; i < _data.length ; i ++ ){
				document.getElementById('city_edition').options[i+1] = new Option(response.getElementsByTagName('edition')[i].firstChild.data,response.getElementsByTagName('edition')[i].firstChild.data);
			}
		}
		
	}
}

AjaxClass.NewspaperEditionDates = function (){
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request)){
		//alert(AjaxClass.request.responseXML.documentElement);
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('Date');
		
		if(_data.length > 0){
			var i
			for ( i = 0 ; i < _data.length ; i ++ ){
				document.getElementById('advertised_on').options[i+1] = new Option(response.getElementsByTagName('advertised_on')[i].firstChild.data,response.getElementsByTagName('advertised_on')[i].firstChild.data);
			}
		}
		
	}
}

//////////////////////////////////////////////////////
// Advertised Jobs in Newspapers Functions
///////////////////////////////////////////////////

AjaxClass.Newspapers = function (){
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request)){
		//alert(AjaxClass.request.responseXML.documentElement);
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('news_paper');
		if(_data.length == 0)
		{
			document.getElementById('newspaper').options[0] = new Option("No Newspaper available",'');	
		}
		if(_data.length > 0){
			var i
			for ( i = 0 ; i < _data.length ; i ++ ){
				document.getElementById('newspaper').options[i+1] = new Option(response.getElementsByTagName('newspaper')[i].firstChild.data,response.getElementsByTagName('newspaper')[i].firstChild.data);
			}
		}
		
	}
}


AjaxClass.Editions = function (){
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request)){
		//alert(AjaxClass.request.responseXML.documentElement);
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('city_edition');
		if(_data.length == 0)
		{
			document.getElementById('city_edition').options[0] = new Option("No City/Edition available",'');	
		}
		if(_data.length > 0){
			var i
			for ( i = 0 ; i < _data.length ; i ++ ){
				document.getElementById('city_edition').options[i+1] = new Option(response.getElementsByTagName('edition')[i].firstChild.data,response.getElementsByTagName('edition')[i].firstChild.data);
			}
		}
		
	}
}

AjaxClass.adEmployers = function ()
{
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request))
	{	
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('Employer');
		if(_data.length == 0)
		{
			document.getElementById('EmployerId').options[0] = new Option("No Employer available",'');	
		}
		var i;
		var companyname;
		var userid;
		for ( i = 0 ; i < _data.length ; i++ )
		{
			userid = response.getElementsByTagName('EmployerId')[i].firstChild.data;
			companyname = response.getElementsByTagName('CompanyName')[i].firstChild.data;
			document.getElementById('EmployerId').options[i+1] = new Option(companyname,userid);
		}
	}
}

AjaxClass.EmployerAllJobList = function ()
{
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request))
	{	
		var	response = AjaxClass.request.responseXML.documentElement;
		//alert(response);
		
		if (response!= null){
			var _data = response.getElementsByTagName('Job');
			if(_data.length == 0){
				document.getElementById('JobsDiv').innerHTML="";	
			}
			else if(_data.length > 0){
				document.getElementById('JobsDiv').innerHTML='<table align="center" width="100%" cellpadding="2" cellspacing="1"><tr><td width="16%" class="strip1">Job Code</td><td width="28%" class="strip1">Job Title</td><td class="strip1" width="28%">Qualification Required</td><td class="strip1">Job Location</td></tr></tr></table>';
				var i
				var bgcolor;
				for ( i = 0 ; i < _data.length ; i ++ ){
					document.getElementById('JobsDiv').style.display='block';
					//alert('div_'+response.getElementsByTagName('JobId')[i].firstChild.data);
					if (i%2)
					bgcolor='#ffffff';
					else bgcolor='#f0f0f0';
					//alert(document.getElementById('JobsDiv').innerHTML);
					document.getElementById('JobsDiv').innerHTML=document.getElementById('JobsDiv').innerHTML+'<table bgcolor="'+bgcolor+'" align="center" width="100%" cellpadding="4" style="border:#cccccc 1px solid;border-top:none;" cellspacing="0" id="div_'+response.getElementsByTagName('JobId')[i].firstChild.data+'"><tbody><tr><td width="16%" align="left"><b>'+response.getElementsByTagName('JobId')[i].firstChild.data+'</b></td><td width="28%" align="left"><b>'+response.getElementsByTagName('JobTitle')[i].firstChild.data+'</b></td><td width="28%" align="left"><b>'+response.getElementsByTagName('QualReqd')[i].firstChild.data+'</b></td><td align="left"><b>'+response.getElementsByTagName('LocationPref2')[i].firstChild.data+'</b></td></tr><tr><td colspan="4">'+response.getElementsByTagName('JobDesc')[i].firstChild.data+'<br><div align="right"><a href="#" onclick="apply_job(\''+response.getElementsByTagName('JobId')[i].firstChild.data+'\');window.close();"><img src="images/apply.gif" border="0" align="middle"></a>&nbsp;&nbsp;<a href="job_details.php?id1='+response.getElementsByTagName('JobId')[i].firstChild.data+'" target="_new"><img src="images/viewjobdetails.gif" border="0" align="middle"></a></div></td></tr></tbody></table>';
					
				}
				//prompt("",document.getElementById('JobsDiv').innerHTML);
			}
		}
	}
}

AjaxClass.adEmployerJobs = function ()
{
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request))
	{	
		var	response = AjaxClass.request.responseXML.documentElement;
		//alert(AjaxClass.request.responseXML.documentElement);
		var _data = response.getElementsByTagName('Job');
		if(_data.length == 0){
			document.getElementById('JobId').options[0] = new Option("No Job available",'');
			document.getElementById('JobsDiv').innerHTML="";
		}
		else if(_data.length > 0){
			document.getElementById('JobsDiv').innerHTML='<table align="center" width="100%" cellpadding="2" cellspacing="1"><tr><td width="16%" class="strip1">Job Code</td><td width="28%" class="strip1">Job Title</td><td width="28%" class="strip1">Qualification Required</td><td class="strip1">Job Location</td></tr></tr></table>';
			var i
			var bgcolor;
			for ( i = 0 ; i < _data.length ; i ++ ){
				document.getElementById('JobId').options[i+1] = new Option(response.getElementsByTagName('JobTitle')[i].firstChild.data,response.getElementsByTagName('JobId')[i].firstChild.data);
				document.getElementById('JobsDiv').style.display='block';
				
				if (i%2)
				bgcolor='#ffffff';
				else bgcolor='#f0f0f0';
				//alert(document.getElementById('JobsDiv').innerHTML);
				document.getElementById('JobsDiv').innerHTML=document.getElementById('JobsDiv').innerHTML+'<table bgcolor="'+bgcolor+'" align="center" width="100%" cellpadding="4" style="border:#cccccc 1px solid;border-top:none;" cellspacing="0" id="div_'+response.getElementsByTagName('JobId')[i].firstChild.data+'"><tbody><tr><td width="16%" align="left"><b>'+response.getElementsByTagName('JobId')[i].firstChild.data+'</b></td><td width="28%" align="left"><b>'+response.getElementsByTagName('JobTitle')[i].firstChild.data+'</b></td><td width="28%" align="left"><b>'+response.getElementsByTagName('QualReqd')[i].firstChild.data+'</b></td><td align="left"><b>'+response.getElementsByTagName('LocationPref2')[i].firstChild.data+'</b></td></tr><tr><td colspan="4" align="left">'+response.getElementsByTagName('JobDesc')[i].firstChild.data+'<br><div align="right"><a href="#" onclick="apply_job(\''+response.getElementsByTagName('JobId')[i].firstChild.data+'\');window.close();"><img src="images/apply.gif" border="0" align="middle"></a>&nbsp;&nbsp;<a href="job_details.php?id1='+response.getElementsByTagName('JobId')[i].firstChild.data+'" target="_new"><img src="images/viewjobdetails.gif" border="0" align="middle"></a></div></td></tr></tbody></table>';
					//alert(document.getElementById('JobsDiv').innerHTML);
			}
		}
	}
}

AjaxClass.adJobDetails = function (){
	//alert('');
	if(AjaxClass.CheckReadyState(AjaxClass.request)){
		//alert(AjaxClass.request.responseXML.documentElement);
		var	response = AjaxClass.request.responseXML.documentElement;
		
		var _data = response.getElementsByTagName('jobdetail');
		if(_data.length == 0){
			document.getElementById('job_code').value = "No Such Jobcode Available";
		}
		else if(_data.length > 0){
			document.getElementById('second_div2').style.display='block';
			document.getElementById('JobTitle').value = response.getElementsByTagName('JobTitle')[0].firstChild.data;
			document.getElementById('CompanyName').value = response.getElementsByTagName('CompanyName')[0].firstChild.data;
			var i
			for ( i = 0 ; i < _data.length ; i ++ ){
				document.getElementById('newspaper').options[i+1] = new Option(response.getElementsByTagName('newspaper')[i].firstChild.data,response.getElementsByTagName('newspaper')[i].firstChild.data);
			}
		}
		
	}
}


//////////////////////////////////////////////////////////////

AjaxClass.createRequestObject = function()
{
	var obj;
	if(window.XMLHttpRequest)
	{
		obj = new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		obj = new ActiveXObject("MSXML2.XMLHTTP");
	}
	return obj;
}

AjaxClass.CheckReadyState = function(obj)
{
	if(obj.readyState < 4) {		
		document.getElementById('loading').style.position = "absolute";
		document.getElementById('loading').innerHTML = "<font class='req'><b>Loading .....</b></font><img src='http://192.168.1.31:8080/habsons/images/loading.gif'/>";

	}
	if(obj.readyState == 4)
	{
		if(obj.status == 200)
		{
			document.getElementById('loading').innerHTML = "";
			setTimeout('Page.loadOut()',2000);

			setTimeout('Page.loadOut()',2000);
			return true;
		}
		else
		{
			document.getElementById('loading').innerHTML = "HTTP " + obj.status;
		}
	}
}

var Page = new Object();
Page.width;
Page.height;
Page.top;

Page.loadOut = function ()
{
	document.getElementById('loading').innerHTML ='';	
}
Page.getPageCenterX = function ()
{
		var fWidth;
		var fHeight;		
		//For old IE browsers 
		if(document.all) 
		{ 
		fWidth = document.body.clientWidth; 
		fHeight = document.body.clientHeight; 
		} 
		//For DOM1 browsers 
		else if(document.getElementById &&!document.all)
		{ 
		fWidth = innerWidth; 
		fHeight = innerHeight; 
		} 
		else if(document.getElementById) 
		{ 
		fWidth = innerWidth; 
		fHeight = innerHeight; 		
		} 
		//For Opera 
		else if (is.op) 
		{ 
		fWidth = innerWidth; 
		fHeight = innerHeight; 		
		} 
		//For old Netscape 
		else if (document.layers) 
		{ 
		fWidth = window.innerWidth; 
		fHeight = window.innerHeight; 		
		}
	Page.width = fWidth;
	Page.height = fHeight;
	Page.top = window.document.body.scrollTop;
}
