function addslashes(str) {
  if (str) {
    return str.replace('/(["\'\])/g', "\\$1").replace('/\0/g', "\\0");
  }
}

function print_r(el) {  
  var s = '';
  for (var prop in el) {
    if (typeof el[prop] != 'object' && typeof el[prop] != 'function') {
      s += prop + ': ' + el[prop] + '\n';
    }
  }
  alert(s);
}

function setCookie(sName, sValue){
  document.cookie = sName + '=' + escape(sValue) + '; expires=Fri, 31 Dec 2030 23:59:59 GMT; path=/';
}

function getCookie(sName) {
  var aCookie = document.cookie.split('; '), i = aCookie.length, aCrumb;
  while (i--) {
    aCrumb = aCookie[i].split('=');
    if (sName == aCrumb[0]) {
      return typeof aCrumb[1] != 'undefined' ? unescape(aCrumb[1]) : null;
    }
  }
  return null;
}

function eregReplace(search, replace, subject) {
  return subject.replace(new RegExp(search,'g'), replace);
}

function check(form, element) { 
  var el = form.elements[element], checked=false, i;
  if (el) {
    if (i = el.length) { 
      while (i--) if (el[i].checked) { checked=true; break; } 
    } else checked = el.checked; 
    if (!checked) return false; 
    return checked;
  }
}

function $(n) {
  var d = window.document;
	if (d.getElementById) return d.getElementById(n);
  else if (d.all) return d.all[n];
}

function select_goto(obj, base_url) {
  var selected = obj.options[obj.selectedIndex].value, url = '';
  url = (selected == 'ignore') ? base_url : base_url + '?type=' + selected;
  document.location.href = BASE_HREF + url;
}

function limitChars(obj) {
  obj.value = obj.value.replace(/[^-a-z0-9_]/ig,'');
  obj.value = obj.value.toLowerCase();
}

function arg(index) {
  var url = String(document.location).split("//");
  var pad = url[1].split("?");
  var arg = pad[0].split("/");

  return arg[index];
}
