function $(id) {
  return document.getElementById(id);
}

function divShow(id) {
    $(id).style.display='';
}

function divHide(id) {
    $(id).style.display='none';
}

function divToggle(id) {
    if ($(id).style.display=='none') {
	divShow(id);
    } else {
	divHide(id);
    }
}

function inarray(n,h) {
    var i = -1;
    for (k in h) {
	i++;
	if (h[k] == n) return i;
    }
    return -1;
}

function updateText(id,text) {
    $(id).innerHTML=text;
}

function appendText(id,text) {
    $(id).innerHTML+=text;
}

function stringsHaveSameLetters(s1,s2) {
  return s1.toUpperCase().split("").sort().join('') == s2.toUpperCase().split("").sort().join('');
}

function alphanum(text) {
  for(var j=0; j<text.length; j++) {
    var character = text.charAt(j);
    var charcode = character.charCodeAt(0);
    if((charcode > 47 && charcode<59) || (charcode > 64 && charcode<91) || (charcode > 96 && charcode<123)) {
    } else {
      return false;
    }
  }
  return true;
}

Array.prototype.shuffle = function() {
    for (var i = 0; i < this.length; i++) {
	var r = parseInt(Math.random() * this.length);
	var obj = this[r];
	this[r] = this[i];
	this[i] = obj;
    }
}

function comparei(s1,s2) {
    s1+="";
    s2+="";
    return s1.toLowerCase() == s2.toLowerCase();
}
