
function BasketInit() {
	setChecked(document.frmPropertyForm);
}

//-----------------------------------------------------------------
  
  var cBskt = 'IPSBskt';
  var cLstBsktKey = 'lstBsktKey';
  var lstBsktKeys = '';
  var cOldLstBsktKey = 'oldLstBsktKey';
  var cLstKeys = 'lstKeys';
  var url = '';
  var name = '';
  
//-----------------------------------------------------------------

function addToBskt(aKey) {              
  var lstBsktKeys = GetCookieKey(cBskt, cLstKeys);
  if (lstBsktKeys == null)
    lstBsktKeys = '';
  var P = lstBsktKeys.indexOf(',' + aKey);
  if (P == -1) {  //The Key is not currently in the basket
    lstBsktKeys = lstBsktKeys + ',' + aKey;
    setLstBsktKeys(lstBsktKeys);
  }  
}

//-----------------------------------------------------------------

function rmvFromBskt(aLstKey) {
  var lstBsktKeys = GetCookieKey(cBskt, cLstKeys);
  if (lstBsktKeys == null)
    lstBsktKeys = '';
  var P = lstBsktKeys.indexOf(',' + aLstKey);
  if (P >= 0) {
    var L = lstBsktKeys.substring(0, P);
    var R = lstBsktKeys.substring(P + 1, lstBsktKeys.length);
    P = R.indexOf(',');
    if (P >= 0)
      R = R.substring(P, R.length)
    else
      R = '';
    lstBsktKeys = L + R;
    setLstBsktKeys(lstBsktKeys);  
  }
}

//-----------------------------------------------------------------

function bsktClick(aCheckBox) {
  if (aCheckBox.checked) {
	addToBskt(aCheckBox.value)
  } else {
    rmvFromBskt(aCheckBox.value)
  }
}

//-----------------------------------------------------------------

function clrbskt(aCheckBox) {
  setLstBsktKeys('');
}

//-----------------------------------------------------------------

function setChecked(aform) {
	if (aform) {
	  var lstBsktKeys = GetCookieKey(cBskt, cLstKeys);  
	  if (lstBsktKeys == null)
	    lstBsktKeys = '';
	  var n
	  var m                         
	  if (document.forms.length > 0) {  
	    for (i = 0; i < aform.length; i++) {
	      if (aform.elements[i].type == 'checkbox') {
	        n = ',' + aform.elements[i].value;
	        m = lstBsktKeys.indexOf(n)
	        if (m >= 0) {
	          aform.elements[i].checked = true;
	        }  
	      }
	    }
	  }  
	}
}

//-----------------------------------------------------------------

function setLstBsktKeys(aKeys) {
  SetCookieKey(cBskt, cLstKeys, aKeys);
  var lstBsktKey = GetCookieKey(cBskt, cLstBsktKey);
  SetCookieKey(cBskt, cOldLstBsktKey, lstBsktKey);
  SetCookieKey(cBskt, cLstBsktKey, null);
}

//-----------------------------------------------------------------

function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

//-----------------------------------------------------------------

function FixCookieDate (date) {
  var base = new Date(0);
  var skew = base.getTime(); // dawn of (Unix) time - should be 0
  if (skew > 0)  // Except on the Mac - ahead of its time
    date.setTime (date.getTime() - skew);
}

//-----------------------------------------------------------------

function GetCookieKey (name, key) {
  var val = GetCookie(name + key);
  return val;
  /*
  if (val == null)
    val = '';
  var valU = val.toUpperCase();
  var keyname = key + '=';
  keyname = keyname.toUpperCase();
  var i = valU.indexOf(keyname);
  if (i >= 0) {
    val = val.substring(i + key.length + 1, val.length);
    i = val.indexOf('&');
    if (i >= 0)
      val = val.substring(0, i);
    return val;
  }
  else
    return null;
  */
}

//-----------------------------------------------------------------

function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
      return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break;
  }
  return null;
}

//-----------------------------------------------------------------

function SetCookie (name,value,expires,path,domain,secure) {
  var expDate = new Date ();
  expDate.setTime (expDate.getTime() + (1000 * 24 * 60 * 60 * 1000)); // 1000 days from now
  expires = expDate;  
  path = "/"  
  document.cookie = name + "=" + escape (value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

//-----------------------------------------------------------------

function SetCookieKey(name,key,value,expires,path,domain,secure) {
path = "/"
  if (value == null) {
    DeleteCookie(name + key,path,domain)
  }
  else
    SetCookie(name + key,value,expires,path,domain,secure);
/*
  var cookie = GetCookie(name);
  if (cookie == null)
    cookie = '';
  var val = '&' + cookie;
  var valU = val.toUpperCase();
  var keyname = '&' + key + '=';
  keyname = keyname.toUpperCase();
  var i = valU.indexOf(keyname);
  if (i >= 0) {
    var l = val.substring(0, i);
    var r = val.substring(i + keyname.length, val.length);
    i = r.indexOf('&');
    if (i >= 0)
      r = r.substring(i + 1, r.length)
    else
      r = '';
    val = l + r;
  }
  else
    val = cookie;
  if (val == null)
    val = '';
  if (val == '')
    var v = key + '=' + value
  else
    var v = val + '&' + key + '=' + value;
  var x = v.charAt(0);
  if (x == '&') {
    v = v.substring(1, v.length);
  }
  //DO NOT ESCAPE THE VALUE
  document.cookie = name + "=" + v +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
  */
}

//-----------------------------------------------------------------

function DeleteCookie (name,path,domain) {
  path = "/"
  if (GetCookie(name)) {
    document.cookie = name + "=" +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

//-----------------------------------------------------------------

function modify_boxes(){ 
	var isok = window.confirm("Are you sure you want clear all bookmarks?");
	if (isok) {
		for ( var i = 0 ; i < document.forms[0].elements.length ; i++ ){    
			document.forms[0].elements[i].checked=false;    
			rmvFromBskt(document.forms[0].elements[i].value);
		} 
	} else {
		return false;
	}
	document.location.reload();
} 

//-----------------------------------------------------------------