/** Library interface functions */

function setTemplate(aTemplate)
{
  elAdminNetGlobal.currentTemplate = aTemplate;
}

function reloadTemplate(aLink)
{
  window.location.href = aLink;
}

/** Library interface functions upto here*/

/** Load dispatchment related functions */

function pushLoadComponent(aTask)
{
  elAdminNetGlobal.tasks[elAdminNetGlobal.tasks.length] = aTask;
}

function dispatchLoadSite(aID)
{
  if (onTheFly != true)
  {
    if (aID != elAdminNetGlobal.currentSite)
    {
      elAdminNetGlobal.currentSite = aID;
      verifyTemplate(aID);
    }
    return false;
  }
  return true;
}

function doDispatchement(refreshContent)
{
  siteID = elAdminNetGlobal.currentSite;
  elAdminNetGlobal.launchesByClass = Array();
  elAdminNetGlobal.scheduledLoads  = elAdminNetGlobal.tasks.length;
  //elAdminNetGlobal.refreshCanvas   = refreshContent;
  for (var i=0; i<elAdminNetGlobal.tasks.length; i++)
  {
    eval(elAdminNetGlobal.tasks[i]);
  }
}

function verifyTemplate(aID)
{
  createXmlHttp("checkTemplate");
  getXmlHttp("checkTemplate").open("GET", "elAdmin/components/system/frontEnd/backoffice.php?action=getTemplate&item=" + aID,true);
  getXmlHttp("checkTemplate").onreadystatechange=receiveTemplateVerification;
  getXmlHttp("checkTemplate").send(null);
}

function receiveTemplateVerification()
{
  if (getXmlHttp("checkTemplate").readyState==4)
  {	
    var aResponse,aTemplate,aLink;
    aResponse = getXmlHttp("checkTemplate").responseXML;
        
    aTemplate = aResponse.getElementsByTagName("template");
    aLink     = aResponse.getElementsByTagName("link");
        
    aTemplate = unescape(aTemplate.item(0).firstChild.nodeValue);
    aLink     = unescape(aLink.item(0).firstChild.nodeValue);
    
    if (aTemplate != elAdminNetGlobal.currentTemplate)
    {
      elAdminNetGlobal.currentTemplate = aTemplate;
      reloadTemplate(aLink);
    }
    else
    {
      doDispatchement(false);
    }
    removeXmlHttp("checkTemplate");
  }
}

/** Load dispatchment related functions upto here */

