var execCount = 0;
var currentDiv = "";
var topHeading = "";
var queAllow = true;
var queBool = new Array();
var queUrl = new Array();
var quePost = new Array();
var queLoader = new Array();
var ajaxHistory = new Array();
var postDone = new Array();
var ajaxHistoryCount = 0;
var ajaxHistoryMaxCount = 0;
var recordHistory = true;
var totalBytes = 0;
var queBusy = false;
queBool[0] = false;
queUrl[0] = "";
quePos = 0;
queDone = 0;


function uc(val) {
  return encodeURIComponent(val);
}

function loadPage(post) {
  queBool[quePos] = true;
  queUrl[quePos] = "/index.php";
  quePost[quePos] = post;
  queLoader[quePos] = "AjaxLoader";
  quePos++;
}



/* function loadMenu(category_id,fk_category_id) {
	post = "loadMenu=1";
	if (category_id !== "") {
		post += "&category_id="+category_id;
	}
	if (fk_category_id !== "") {
		post += "&fk_category_id="+fk_category_id;
	}
	if (postDone[post] != true) {
		queBool[quePos] = true;
		queUrl[quePos] = "/ajaxservice.php";
		quePost[quePos] = post;
		queLoader[quePos] = "AjaxLoader";
		quePos++;
		postDone[post] = true;
	}
}

function loadSearch(searchInput) {
	post = "loadSearch=1";
	if (searchInput !== "") {
		post += "&searchInput="+searchInput;
	}
	queBool[quePos] = true;
	queUrl[quePos] = "/ajaxservice.php";
	quePost[quePos] = post;
	queLoader[quePos] = "AjaxLoader";
	quePos++;
	return false;
}

function loadSearchHints(searchInput) {
	post = "loadSearchHints=1";
	if (searchInput != "") {
		post += "&searchInput="+searchInput;
		queBool[quePos] = true;
		queUrl[quePos] = "/ajaxservice.php";
		quePost[quePos] = post;
		queLoader[quePos] = "AjaxLoader";
		quePos++;
	} else {
		document.getElementById('SearchHints').className='hideDiv';
	}
	return false;
}

function loadAdmin(post) {
  queBool[quePos] = true;
  queUrl[quePos] = "/ajaxadmin.php";
  quePost[quePos] = post;
  queLoader[quePos] = "AdminAjaxLoader";
  quePos++;
}*/

function getXML() {
  url = false;
  if (queBool[queDone] && queBusy == false) {
      url = queUrl[queDone];
      postvalue = quePost[queDone];
      queDone++;
  }
  if (url) {
      xmlHttp = new GetXmlHttpObject()
      if (xmlHttp==null) {
        alert ("Browser does not support HTTP Request")
        return
      }
      if (url.charAt(0)=="-")
        recordHistory = false;
      if (recordHistory) {
        ajaxHistoryCount++;
        if (ajaxHistoryCount > ajaxHistoryMaxCount) {
          ajaxHistoryMaxCount++;
        }
        ajaxHistory[""+ajaxHistoryCount+""]=url;
      }
      recordHistory = true;
      setTimeout("xmlHttp.onreadystatechange=stateChanged",0);
      setTimeout('xmlHttp.open("POST",url,true)',0);
      setTimeout('xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded")',0);
      setTimeout('xmlHttp.setRequestHeader("Content-length", postvalue.length)',0);
      setTimeout('xmlHttp.setRequestHeader("Connection", "close")',0);
      setTimeout('xmlHttp.send("ajaxpost=1&"+postvalue)',0);
  } else {
      //alert(document.getElementById("AdminAjaxLoader"));//.className='hidden';
  }
  setTimeout('getXML()',100);
}

function prevPage() {
  recordHistory = false;
  if (ajaxHistoryCount > 1) {
    ajaxHistoryCount--;
    loadPage(ajaxHistory[""+ajaxHistoryCount+""]);
  }
  recordHistory = true;
}

function refreshPage() {
  recordHistory = false;
  loadPage(ajaxHistory[""+ajaxHistoryCount+""]);
  recordHistory = true;
}

function nextPage() {
  recordHistory = false;
  if (ajaxHistoryCount < ajaxHistoryMaxCount) {
    ajaxHistoryCount++;
    loadPage(ajaxHistory[""+ajaxHistoryCount+""]);
  }
  recordHistory = true;
}

function stateChanged() {
  if (xmlHttp.readyState==1) {
    document.getElementById("AdminAjaxLoader").className='';
    queBusy = true;
  }
  if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
    execCount++;
    //var debugText = "<strong>Execution: "+execCount+"</strong><br />"+xmlHttp.responseText.replace(/</g,"&lt;");
   // var debugText = "<strong>Execution: "+execCount+"</strong><br />"+xmlHttp.responseText;
    var contentText = xmlHttp.responseText;
    //document.getElementById('AjaxDebug').innerHTML=debugText;
    //var countBytesText = xmlHttp.responseText.replace(/\n/g,"  ");
    //countBytesText = countBytesText.replace(/\t/g,"  ");
    //totalBytes = totalBytes+countBytesText.length;
    //document.getElementById('ByteStats').innerHTML="Last Fetch: "+countBytesText.length+" bytes<br />Total Fetched: "+(Math.round((totalBytes/1024)*100)/100)+"KB";
    var divContent = new Array();
    divContent = contentText.split("{%startDiv:");
    for (var i=1;i<divContent.length;i++) {
      var divIDEndPos = divContent[i].indexOf('%}');
      var contentStartPos = divIDEndPos+2;
      var appendContent = false;
      if ((divContent[i].indexOf('+')) == (divIDEndPos-1)) {
        divIDEndPos--;
        contentStartPos++;
        appendContent = true;
      }
      var divID = divContent[i].substring(0,divIDEndPos);
      //alert(divID);
      var contentEndPos = divContent[i].indexOf('{%endDiv');
      var divInnerHTML = divContent[i].substring(contentStartPos,contentEndPos);
      if (appendContent) {
        document.getElementById(divID).innerHTML=document.getElementById(divID).innerHTML+divInnerHTML;
      } else {
        //alert(divID)
        document.getElementById(divID).innerHTML=divInnerHTML;
      }
      if (divContent[i].charAt(contentEndPos+8)==":") {
        var endEndTag = divContent[i].lastIndexOf('%}');
        if (divContent[i].substring(contentEndPos+9,contentEndPos+19) == "javascript") {
          var endEndTag = divContent[i].lastIndexOf('%}');
          var exeJS = divContent[i].substring(contentEndPos+20,endEndTag);
          setTimeout(exeJS,0);
        } else {
          var endEndTag = divContent[i].lastIndexOf('%}');
          var newLoadPage = divContent[i].substring(contentEndPos+9,endEndTag);
          setTimeout('loadPage(\''+newLoadPage+'\');',0);
        }
      }
    }
    //queAllow = true
    //i = 0;
    //while (queBool[i] == false) {
    //  i++;
    //}
    //if (queBool[i]==true) {
    //  loadPage(queUrl[i])
    //  queBool[i] = false
    //   queUrl[i] = ""
   // }
    
    //document.getElementById("AdminAjaxLoader").className='hideLoader';
    
    queBusy = false;
  }
}
function GetXmlHttpObject(handler) { 
  var objXMLHttp = null
  if (window.XMLHttpRequest) {
    objXMLHttp = new XMLHttpRequest()
  }
  else if (window.ActiveXObject) {
    objXMLHttp = new ActiveXObject("Microsoft.XMLHTTP")
  }
  return objXMLHttp
}
function encodeIdValue(Id) {
  return escape(document.getElementById(Id).value);
}

function setCheckboxValue(obj) {
  if (obj.checked) {
    loadPage('setvar='+obj.name+'&value='+obj.value);
  } else {
    loadPage('setvar='+obj.name+'&value=');
  }
}

function getRadioValue(obj) {
  for (var i=0; i < obj.length; i++) {
    if (obj[i].checked) {
      return obj[i].value;
    }
  }
}

function getCheckboxValue(obj) {
  returnVal = "";
  for (var i=0; i < obj.length; i++) {
    if (obj[i].checked) {
      returnVal = returnVal + obj[i].value + "|";
    }
  }
}


function hideSelects(action) {
    if (action!='visible'){action='hidden';}
    if (navigator.appName.indexOf("Explorer") || navigator.appName.indexOf("MSIE")) {
            for (var R = 0; R < document.getElementsByTagName("select").length; R++) {
                if (document.getElementsByTagName("select")[R].options) {
                    document.getElementsByTagName("select")[R].style.visibility = action;
                }
            }
        
    }
}

function showLarge(img) {
	document.getElementById('largeImage').src = img;
}

function showHideSearch() {
	if (document.getElementById('search-container').className != 'hidden') {
		document.getElementById('search-container').className = 'hidden';
		document.getElementById('searchShowText').innerHTML = '[show]';
		document.getElementById('moreOptions').className = 'hidden';
	} else {
		document.getElementById('search-container').className = '';
		document.getElementById('searchShowText').innerHTML = '[hide]';
		document.getElementById('moreOptions').className = '';
		
	}
}

function showHideSearchMore() {
	if (document.getElementById('search-more-container').className != 'hidden') {
		document.getElementById('search-more-container').className = 'hidden';
		document.getElementById('searchShowTextMore').innerHTML = '[show]';
	} else {
		document.getElementById('search-more-container').className = '';
		document.getElementById('searchShowTextMore').innerHTML = '[hide]';
	}
}

function searchIconClick(iconid) {
	if (document.getElementById('iconover_'+iconid).className != 'iconover') {
		document.getElementById('iconover_'+iconid).className = 'iconover';
	} else {
		document.getElementById('iconover_'+iconid).className = 'iconover hidden';
	}
}

getXML();
