function $(id) {
  if ($type(id) == 'object') {
    return id;
  }
  return document.getElementById(id);
}

function $new(elem,text) {
  if (elem == 'text') {
    return document.createTextNode(text);
  }
  else {
    return document.createElement(elem.toLowerCase());
  }
}

function $type(val) {
  var type = typeof val;
  return type.toLowerCase();
}

function submitForm(id) { 
  var form = $(id);
  if (form) {
    form.submit();
  }
}

function trim(s) {
  return s.replace(/^\s+|\s+$/g,"");
}
  
function collapseAll(id){
  //get all div elements
  var allDivs = document.getElementsByTagName('div');
  var parseFirst = false;
  var newDisplayStyle = 'none';
  var textAction = '[display checked]';
  //parse all elements
  for(var i=0;i<allDivs.length;i=i+1){
    if(allDivs[i].id === id){
      if((allDivs[i].style.display==='none' || allDivs[i].style.display==='') && parseFirst===false){
        newDisplayStyle = 'block';
        textAction = '[hide checked]';
        parseFirst = true;
      }
      allDivs[i].style.display = newDisplayStyle;
    }
  }
  if(allDivs.length>0){
    document.getElementById('textAction').innerHTML = textAction;
  }
}
  
function collapse(id){
  //get element
  var element = document.getElementById(id);
  var parseFirst = false;
  var newDisplayStyle = 'none';
  //set display
  if(element.style.display==='none' || element.style.display===''){
    newDisplayStyle = 'block';
    parseFirst = true;
  }
  element.style.display = newDisplayStyle;
}

function confirmDelete(id, text, link){
  if (confirm(text)){	
    document.location.href= link + id;
  }
}