/*************************
 * Create an ajax object *
 *************************/
function changePage(varname, id, page, element, lg, subval){
  Effect.Fade(element, { duration:0.5 });
  if(subval.length != 0){
    ret = ajax_query_text('lg/lang_'+lg+'.php?varname='+varname+'&id='+id+'&page='+page+'&sub='+subval);
  }
  else {
    ret = ajax_query_text('lg/lang_'+lg+'.php?varname='+varname+'&id='+id+'&page='+page);

  }
  setTimeout('document.getElementById(\''+element+'\').innerHTML = \''+ret+'\';', 300);
  setTimeout('Effect.Appear(\''+element+'\', { duration:0.5 }); ', 500);
  document.getElementById(element).style.visibility = 'visible';
  document.getElementById(element).style.display = 'block';
}

function ajax_object()
{
  // Create XmlHttp Object
  
  if( window.XMLHttpRequest )     return new XMLHttpRequest();
  else if( window.ActiveXObject ) return new ActiveXObject("Microsoft.XMLHTTP");

  return false;
}

/***************************************
 * Execute GET query and return result *
 ***************************************/

function ajax_query(url)
{
  // Create XmlHttp Object

  ajax_obj = ajax_object();
  
  if( !ajax_obj ) 
  {
    alert("Cannot create XMLHTTP Object !!!");
    return false;
  }
 
  // Execute GET request in synchronous mode

  ajax_obj.open("GET", url, false);
  ajax_obj.send(null);

  // If request is ok, return ajax object

  if( ajax_obj.readyState == 4)
  {
    return ajax_obj;
  }
  else
  {
    return false;
  }
}


/********************************************* 
 * Execute a GET query and return XML result *
 *********************************************/

function ajax_query_xml(url)
{
  res = ajax_query(url);
  
  if( res ) return res.responseXML;
  else      return false;
}

/********************************************** 
 * Execute a GET query and return TEXT result *
 **********************************************/

function ajax_query_text(url)
{ 
  res = ajax_query(url);

  if( res ) return res.responseText;
  else      return false;
}
