var timerStatsID = 5;
var dTimer=5000;
var xmlHttpStats = createXmlHttpStatsRequestObject();
var serverStatsAdr = "http://"+location.host+"/servercapacity/update";
fStatsProcess();


function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure )
{
  var cookie_string = name + "=" + escape ( value );

  if ( exp_y )
  {
    var expires = new Date ( exp_y, exp_m, exp_d );
    cookie_string += "; expires=" + expires.toGMTString();
  }

  if ( path )
        cookie_string += "; path=" + escape ( path );

  if ( domain )
        cookie_string += "; domain=" + escape ( domain );
  
  if ( secure )
        cookie_string += "; secure";
  
  document.cookie = cookie_string;
}

function delete_cookie ( cookie_name )
{
  var cookie_date = new Date ( );  // current date & time
  cookie_date.setTime ( cookie_date.getTime() - 1 );
  document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}

function get_cookie ( cookie_name )
{
  var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );

  if ( results )
    return ( unescape ( results[2] ) );
  else
    return null;
}
function set_sv_cookie(sv_name) {
	var current_date = new Date;
	var cookie_year = current_date.getFullYear ( ) + 1;
	var cookie_month = current_date.getMonth ( );
	var cookie_day = current_date.getDate ( );
	set_cookie ( "myOwnsv", sv_name, cookie_year, cookie_month, cookie_day, '/',"rev6.com" );
}

function createXmlHttpStatsRequestObject() {
  var xmlHttpStats;
  try {
    xmlHttpStats = new XMLHttpRequest();
  } catch(e) {
    var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP");
    for (var i=0;i<XmlHttpVersions.length;i++) {
      try {
        xmlHttpStats = new ActiveXObject(XmlHttpVersions[i]);
      } catch (e) {}
      if(xmlHttpStats) break;
    }
  }
  if (!xmlHttpStats)
    alert("Error creating the XMLHttpRequest object.");
  else
    return xmlHttpStats;
}

function fStatsProcess() {
var sData;
  if (xmlHttpStats) {
    try {
	  sData=document.getElementById("data").innerHTML;
      xmlHttpStats.open("GET", serverStatsAdr, true);
      xmlHttpStats.onreadystatechange = handleRequestStatsStateChange;
      xmlHttpStats.send(null);
    } catch (e){}
  }
}

function fDelete(sID) {
var sData;
  if (xmlHttpStats) {
    try {
      xmlHttpStats.open("GET", "http://"+location.host+"/stall/mylisting/delete/?id=" + sID, true);
      xmlHttpStats.onreadystatechange = handleRequestDelete;
      xmlHttpStats.send(null);
    } catch (e){}
  }
}

function fSave(sID,sPrice,sQty) {
var sData;
  if (xmlHttpStats) {
    try {
      xmlHttpStats.open("GET", "http://"+location.host+"/stall/mylisting/save/?id=" + sID + "&price=" + sPrice + "&quant=" + sQty, true);
      xmlHttpStats.onreadystatechange = handleRequestSave;
      xmlHttpStats.send(null);
    } catch (e){}
  }
}

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function handleRequestDelete() {
  if (xmlHttpStats.readyState == 4) {
    if (xmlHttpStats.status == 200) {
      try {
		var sData = xmlHttpStats.responseText;
		var sArr=sData.split('|');
		document.getElementById("sMsg").innerHTML=sArr[2];
		if(sArr[1]=="success"){
			var objt = document.getElementById("t" + trim(sArr[0]));
			objt.style.visibility = "hidden";
			objt.style.display = "none";
		}
      } catch(e) {}
    } else {}
  }
}

function handleRequestSave() {
  if (xmlHttpStats.readyState == 4) {
    if (xmlHttpStats.status == 200) {
      try {
		var sData = xmlHttpStats.responseText;
		var sArr=sData.split('|');
		document.getElementById("sMsg").innerHTML=sArr[2];
		if(sArr[1]=="success"){
			var objs = document.getElementById("s" + trim(sArr[0]));
			objs.style.visibility = "hidden";
			objs.style.display = "none";
			objs = document.getElementById("d" + trim(sArr[0]));
			objs.style.visibility = "visible";
			objs.style.display = "inline";
		}
      } catch(e) {}
    } else {}
  }
}

function handleRequestStatsStateChange() {
  if (xmlHttpStats.readyState == 4) {
    if (xmlHttpStats.status == 200) {
      try {
	var sData = xmlHttpStats.responseText;
	if(sData.indexOf('<!-- Very Slow -->')>-1) window.dTimer=30000;
	if(sData.indexOf('<!-- Slow -->')>-1) window.dTimer=15000;
	if(sData.indexOf('<!-- Fast -->')>-1) window.dTimer=5000;
	if(sData.indexOf('<!-- Very Fast -->')>-1) window.dTimer=2000;
		document.getElementById("data").innerHTML=sData;
		//pageTracker._trackPageview("/sv_stats.html" );
      } catch(e) {
        //alert("Error reading the response: " + e.toString());
      }
      handleServerResponse();
    } else {
      //alert("There was a problem retrieving the data:\n" + xmlHttpStats.statusText);
    }
  }
}

function handleServerResponse() {
  window.clearInterval(timerStatsID);
  timerStatsID = window.setInterval("fStatsProcess()",window.dTimer);
}