function ajax(method,strURL,variable,value,sid) {
  var xmlHttpReq = false;
  var self = this;

  if (window.XMLHttpRequest) { self.xmlHttpReq = new XMLHttpRequest(); }                           //Mozilla/Safari
  else if (window.ActiveXObject) { self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); }     //IE

  self.xmlHttpReq.open(method, strURL, true);
  self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

  self.xmlHttpReq.onreadystatechange = function() {
    if(value == 'signgb' ) {
      document.signgb.signbutton.disabled = true;
      document.getElementById('signdiv').innerHTML = '<center><img src="images/gb_loading.gif"><br><br><b>'+loadtext+'...</b><br></center>';
    }
    else {
      document.getElementById('entries').innerHTML = '<center><br><br><br><br><img src="images/gb_loading.gif"><br><br><b>'+loadtext+'...</b><br><br><br></center>';
    }

    if (self.xmlHttpReq.readyState == 4) {
      if(value == 'signgb' ) { updatepage(self.xmlHttpReq.responseText,'signgb'); }
      else { updatepage(self.xmlHttpReq.responseText,'page'); }
    }
  }

  if (value == 'signgb') {
    name=document.signgb.name.value;
    email=document.signgb.email.value;
    homepage=document.signgb.homepage.value;
    message=document.signgb.message.value;

    //Fix the "&" bug
    name2 = name.replace(/&/g, "^amp^");
    message2 = message.replace(/&/g, "^amp^");

    self.xmlHttpReq.send('dosign=' + pcode.charAt(0) + pcode.charAt(2) + pcode.charAt(4) + pcode.charAt(1) + pcode.charAt(5) + '&name=' + name2 + '&email=' + escape(email) + '&homepage=' + escape(homepage) + '&message=' + message2);
  }
  else { self.xmlHttpReq.send(escape(variable) + '=' + escape(value) + '&gbid=' + escape(sid)); }
}

//trim = by Can ===================================================================================
function trim(stringToTrim){ return stringToTrim.replace(/^\s+|\s+$/g,""); }

//updatepage ======================================================================================
function updatepage(str, value){
  if (value == 'signgb') {
    document.getElementById("signdiv").innerHTML = str;
    showdiv('signdiv');
    document.signgb.signbutton.disabled = false;

    //by Can ..................................................................
    document.signgb.name.value=trim(document.signgb.name.value);
    if (document.signgb.name.value=='') {
      document.signgb.name.focus();
      return;
    }

    document.signgb.message.value=trim(document.signgb.message.value);
    if (document.signgb.message.value=='') {
      document.signgb.message.focus();
      return;
    }

    hidediv('signform');
    document.signgb.name.value='';
    document.signgb.email.value='';
    document.signgb.homepage.value='';
    document.signgb.message.value='';
    ajax('POST','as_guestbook_view.php','page','1');
    //by Can ..................................................................


    //Thanks to Hiric for the fix
    //if (str.length <= 2) {
      //Create cookie
      //var myDate = new Date();
      //myDate.setTime(myDate.getTime()+(c_minute*60*1000));
      //var expires = "; expires="+myDate.toGMTString();
      //document.cookie = "signed=yes"+expires+"; path=/";
      //hidediv('signform');
      //ajax('POST','as_guestbook_view.php','page','1');
   // }
  }
  else {
    document.getElementById("entries").innerHTML = str;
    showdiv('entries');
  }
}

//hidediv =========================================================================================
function hidediv(id) {
  //safe function to hide an element with a specified id
  if (document.getElementById) {                           //DOM3 = IE5, NS6
    document.getElementById(id).style.display = 'none';
  }
  else {
    if (document.layers) { document.id.display = 'none'; } //Netscape 4
    else { document.all.id.style.display = 'none'; }       //IE 4
  }

  if(id == 'signform') {
    showdiv('entries');
    hidediv('signdiv');
  }
}

//showdiv =========================================================================================
function showdiv(id) {
	//safe function to show an element with a specified id

  if (document.getElementById) { document.getElementById(id).style.display = 'block'; }  //DOM3 = IE5, NS6
  else {
    if (document.layers) { document.id.display = 'block'; }                              //Netscape 4
    else { document.all.id.style.display = 'block'; }                                    //IE 4
	}

  if(id == 'signform') {
    hidediv('entries');
    if (document.getElementById('guestName')) document.getElementById('guestName').focus();
  }
}

//smiley ==========================================================================================
function smiley(s) {
  document.signgb.message.value = document.signgb.message.value + s;
  document.signgb.message.focus();
}

function newwindow(source,name,width,height) {
  window.open(source,name,'width='+width+',height='+height+',resizable=no');
}




