if(!Array.prototype.indexOf) {
  Array.prototype.indexOf = function(needle) {
    for(var i = 0; i < this.length; i++) {
      if(this[i] === needle) return i;
    }
    return -1;
  };
}
Array.prototype.contains = function(obj) {
  return this.indexOf(obj) > -1;
};
Array.prototype.containsKey = function(key) {
  return key in this;
};
String.prototype.trim = function (victim) {
  if(victim == null) victim = ' \n\r\t\f\x0b\xa0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000';
  var str = this;
	for (var i = 0; i < str.length; i++) {
		if (victim.indexOf(str.charAt(i)) === -1) {
			str = str.substring(i);
			break;
		}
	}
	for (i = str.length - 1; i >= 0; i--) {
		if (victim.indexOf(str.charAt(i)) === -1) {
			str = str.substring(0, i + 1);
			break;
		}
	}
	return victim.indexOf(str.charAt(0)) === -1 ? str : '';
}
Array.prototype.removeKey = function(key) {
  var tmpArray = new Array();
  for(x in this)
  {
    if(x != key) { tmpArray[x] = this[x]; }
  }
  return tmpArray;
};

function doSearch() {
  if(!$('query')) return;
  document.location = "http://jfsoftware.com/search/" + $('query').value;
}

