
function createQCObject()
   { 
	   var req; 
		   if(window.XMLHttpRequest){ 
			  // Firefox, Safari, Opera... 
			  req = new XMLHttpRequest(); 
		   } else if(window.ActiveXObject) { 
			  // Internet Explorer 5+ 
			  req = new ActiveXObject("Microsoft.XMLHTTP"); 
		   } else { 
			  alert('Problem creating the XMLHttpRequest object'); 
		   } 
	   return req; 
   } 

// Make the XMLHttpRequest object 
var http = createQCObject(); 
var hostName = '';

function displayQCalendar(m,y,myHostName)
	{
		hostName = myHostName;
        var ran_no=(Math.round((Math.random()*9999)));
		//var list = document.getElementById('researchAreas');
		//alert(list);
		var rArea='';
		if(rArea !='')
		{
			http.open('get', 'http://'+hostName+'/calendar?m='+m+'&y='+y+'&rArea='+rArea+'&ran='+ran_no);
		}else{
	    
			http.open('get', 'http://'+hostName+'/calendar?m='+m+'&y='+y+'&rArea='+rArea+'&ran='+ran_no);
		}
			http.onreadystatechange = function() {
					if(http.readyState == 4)
					{ 
							var response = http.responseText;
							//alert (response);

					if(response)
					{ 
							document.getElementById("quickCalender").innerHTML = http.responseText;
					} 
				}					
			} 
			http.send(null); 
}


var ajaxResponse='';

function displayLayer(obj,cellNo,month,year,weekNo,stDate,endDate)
	{
				var rArea='';
				//url = 'http://localhost/calendar?cell='+cellNo+'&month='+month+'&year='+year+'&weekNo='+weekNo+'&rArea='+rArea+'&startDate='+stDate+'&endDate='+endDate;
				//alert(url);
				http.open('get', 'http://'+hostName+'/calendar?cell='+cellNo+'&month='+month+'&year='+year+'&weekNo='+weekNo+'&rArea='+rArea+'&startDate='+stDate+'&endDate='+endDate);
				http.onreadystatechange = function() {
					if(http.readyState == 4)
					{ 
						var response = '';
						response = http.responseText;

						//alert(response);
						ajaxResponse=response;
						if(response)
						{ 
							obj.innerHTML =response;
						} 
					}					
				} 
				http.send(null); 				
}

function display1Layer(obj)
	{
		//alert("inside layer");

		//alert(ajaxResponse);
		obj.style.display = 'block' ;
			  obj.style.visibility = 'visible' ;
			  
	obj.innerHTML=ajaxResponse;
	}



function showLayer( obj, e, myHostName )
	{
			 hostName = myHostName;
			  var tempX = 0;
			  var tempY = 0;
			  var offset = 5;
			  var objHolder = obj;

			  // step 2
			  obj = getObject( obj );
			  if (obj==null) return;

			  // step 3
			 /* if (document.all) {
				tempX = event.clientX + document.body.scrollLeft;
				tempY = event.clientY + document.body.scrollTop;
			  } else {
				tempX = e.pageX;
				tempY = e.pageY;
			  }

			  // step 4
			  if (tempX < 0){tempX = 0}
			  if (tempY < 0){tempY = 0}

			  // Setting the offset - left and top
			  obj.style.top  = (tempY + offset) + 'px';
			  obj.style.left = ((tempX + offset)-200) + 'px';*/
			  // step 6
			  //alert(obj);
			  display1Object( obj, true );
  }

//capturing the mouse position
function showObject( obj, e ,cellNo,month,year,weekNo,myHostName,stDate,endDate)
	{
			 hostName = myHostName;
			  //alert("inside the moveobject");
			  // step 1
			  var tempX = 0;
			  var tempY = 0;
			  var offset = 5;
			  var objHolder = obj;
			  // step 2
			  obj = getObject( obj );
			  if (obj==null) return;
			  // step 3
			  if (document.all) {
				var de = document.documentElement;
				var b = document.body;
				tempX = e.clientX + (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
				tempY = e.clientY + (de.scrollTop || b.scrollTop) - (de.clientTop || 0);
				/*tempX = e.clientX + document.body.scrollLeft;
				tempY = e.clientY + document.body.scrollTop;*/				
			  } else {				  
				tempX = e.pageX;
				tempY = e.pageY;
			  }
			  // step 4
			  if (tempX < 0){tempX = 0}
			  if (tempY < 0){tempY = 0}

			  // Setting the offset - left and top
			  obj.style.top = (tempY ) + 'px';
			  obj.style.left = ((tempX + offset)-200) + 'px';
			  
			  // display the object
			  displayObject( obj, true,cellNo,month,year,weekNo,stDate,endDate);			  

  }
  
function hideObject( obj, e ) {	  
			var objHolder = getObject(obj);
			objHolder.style.display = 'none';
			objHolder.style.visibility ='hidden';
  }
  function hideLayer( obj, e, myHostName ) {

		hostName = myHostName;
		obj = getObject( obj );
		obj.style.visibility ='hidden';
		//alert(obj.style.visibility);
  }
  function displayObject( obj, show,cellNo,month,year,weekNo,stDate,endDate )
	  {
		if (obj==null) return;
		// Append the object to the present document.
		document.body.appendChild(obj);
		//Dynamic layer Width
		obj.style.width="200px";
		obj.style.display = show ? 'block' : 'none';
		obj.style.visibility = show ? 'visible' : 'hidden';
		obj.style.background='#eef6ff';
		obj.style.padding='5px 0px 5px 10px';

		//Displaying the Dynamic layer 
		displayLayer(obj,cellNo,month,year,weekNo,stDate,endDate);

        }
  
 function check(obj)
  {  
		  obj = document.getElementById( obj );
		  obj.style.visibility = 'show';
  }
  
  function getObject( obj )
  {
		if ( document.getElementById ) {			  
			obj = document.getElementById( obj );
		  } else if ( document.all ) {
			obj = document.all.item( obj );
		  } else {
			obj = null;
		  }
		  return obj;
  }


function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }



/* Filtering the event calendar based on the Research Area selection */
  function go(month,year,myHostName)
	{

		hostName = myHostName;

		var list = document.getElementById('researchAreas');
		//alert(list);

		var rArea=list.options[list.selectedIndex].value;

		//alert(value);

		displayQCalendar(month,year,myHostName);
				
				
     }

	 function showEvents(){
			obj = document.getElementById('bookFormLayer');
			obj.style.display = 'block' ;
			obj.style.visibility = 'visible' ;
		
	 }

	 function hideEvents(){
			obj = document.getElementById('bookFormLayer');
			obj.style.display = 'none' ;
			obj.style.visibility = 'hidden' ;
	 }

	 
