function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
  endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

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) {
  var argv = SetCookie.arguments;
  var argc = SetCookie.arguments.length;
  var expires = (argc > 2) ? argv[2] : null;
  //var path = (argc > 3) ? argv[3] : null;
  var path = "/";
  var domain = (argc > 4) ? argv[4] : null;
  var secure = (argc > 5) ? argv[5] : false;
  document.cookie = name + "=" + escape (value) +
   ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
   ((path == null) ? "" : ("; path=" + path)) +
   ((domain == null) ? "" : ("; domain=" + domain)) +
   ((secure == true) ? "; secure" : "");
}

function save_page(object_id)
{
  var expdate = new Date ();
  var currentSavedPages = GetCookie("savedpages");
  var newSavedPages = currentSavedPages + "," + object_id;
  expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000 * 31));
  if (object_id != "")
  {
      SetCookie ("savedpages", newSavedPages, expdate);
  }
	document.getElementById("savePageLink").innerHTML = "<span style='color:#777'>Saved</span>";
	document.getElementById("viewSavedPagesLink").innerHTML = "<a href=/index.cfm/fuseaction/root.savedpages/index.cfm>View saved pages</a>";
	document.getElementById("viewSavedPagesLink").style.display = "block";
}

function removeSubstr (s, t)
{
	i = s.indexOf(t);
	r = "";
	if (i == -1) return s;
	r += s.substring(0,i) + removeSubstr(s.substring(i + t.length), t);
	return r;	
}

function hideid(id) {
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'none';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'none';
		}
		else { // IE 4
			document.all.id.style.display = 'none';
		}
	}
}

function remove_saved_page(object_id, id, _class)
{
  var expdate = new Date();
  var currentSavedPages = GetCookie("savedpages");
  // remove the page from the cookie
  var newSavedPages = removeSubstr (currentSavedPages, object_id);
  // clean up the cookie
  var newSavedPages = removeSubstr (newSavedPages, "null");
  var newSavedPages = removeSubstr (newSavedPages, ",,");
  expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000 * 31));
  if (object_id != "")
  {
      SetCookie ("savedpages", newSavedPages, expdate);
  }
  hideid(id);
  var numSavedPagesInClass = document.getElementById("numSavedPages_" + _class).value;
  numSavedPagesInClass = numSavedPagesInClass - 1;
  document.getElementById("numSavedPages_" + _class).value = numSavedPagesInClass;
  
  var numSavedPagesTotal = document.getElementById("numSavedPagesTotal").value;
  numSavedPagesTotal = numSavedPagesTotal -1;
  document.getElementById("numSavedPagesTotal").value = numSavedPagesTotal;
  
	if(numSavedPagesInClass <= 0)
	{
		document.getElementById("class_desc_" + _class).innerHTML = "";
	}
	
	if(numSavedPagesTotal <= 0)
	{
		document.getElementById("noSavedPages").innerHTML = "No saved pages.";
		hideid('viewSavedPagesLink');
		// Remove the cookie
		expdate.setTime (expdate.getTime() - (24 * 60 * 60 * 1000 * 31 * 2)); //subtract twice what was set above
		SetCookie("savedpages", "", expdate);
	}
	
}
