function Ajax()
{
	var XHR = null;
	var error = null;
	var response = null;
	var element = null;
	this.Call = Call;
	
	function Call(url, OnResponse, OnError, elmnt)
	{
		try
		{
			error = OnError;
			response = OnResponse;
			
			if(elmnt.style)
			    element=elmnt;
			else
			    element	= document.getElementById(elmnt);
			if(element)
	            if(element.style)
	                element.innerHTML+="<div class='notifications'>please wait while data is loading...</div>";
	       
			BuildXHR(url);
		}
		
		catch(e)
		{
			error(e.message);
		}
	}
	

    
    function BuildXHR(url)
	{
		if (window.XMLHttpRequest)
		{
			/* Universal Read
			try
			{
				netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
			}
			catch(e)
			{
				alert("Permission UniversalBrowserRead denied.");
			}*/
			
			XHR = new XMLHttpRequest();
		}
		else if (window.ActiveXObject)
		{
			XHR = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		if (XHR == null)
		{
			alert ("Browser does not support HTTP Request");
			return;
		}		
		

		window.status = "Loading ...";
		XHR.onreadystatechange = StateChanged;
		XHR.open("GET",url,true);
		XHR.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 1900 00:00:00 GMT" );
		//XHR.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded; charset=UTF-8" );	
		XHR.send(null);
	}
	
	function StateChanged() 
	{
		try
		{
			if (XHR.readyState == 4 || XHR.readyState == "complete")
			{
       	        if(element != null)
    			{
                  element.innerHTML=XHR.responseText;
                  if(element.getElementsByTagName("form"))
                    element=element.getElementsByTagName("form");
    			}
				
				if(response != null)
				{
                
					try
					{  if(XHR.readyState == 4)
					   response(XHR.responseText);
					}
					catch(e)
					{
					   eval(response);
					}
					
				}

			}
	
		}
		
		catch(e)
		{
			if(error != null)
			{
				error(e.message);
			}
			else
			{
				alert(e.message);
			}			
		}
		
		window.status = "Done";

	}
	
	
	
	
function voting(elem,page)
{
var xmlHttp;
try

 {  
 // Firefox, Opera 8.0+, Safari 
  xmlHttp=new XMLHttpRequest();  
 }
catch (e)
  {  // Internet Explorer  
  try
    {   
     xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");  
     
     }
  catch (e)
    {   
     try
      {     
       xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");     
        }
    catch (e)
      {      
      alert("Your browser does not support AJAX!");     
       return false;      
       }    
       } 
        }
        
  xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
      //document.myForm.time.value=xmlHttp.responseText;
      //document.myForm.f1.value=xmlHttp.responseText;

        document.getElementById(elem).innerHTML=xmlHttp.responseText;

      }
    }
  xmlHttp.open("GET",page,true);
  xmlHttp.send(null);
  
                 }
}

