	function disableEnterKey(e){
		var key = event.keyCode;
		return (key != 13);
	} 

	function buttonClicker(id, event){
		var key = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
		if (key == 13){
			document.getElementById(id).click();
			return false;
		}
		return true;
	}

function trim11 (str) {
	str = str.replace(/^\s+/, '');
	for (var i = str.length - 1; i >= 0; i--) {
		if (/\S/.test(str.charAt(i))) {
			str = str.substring(0, i + 1);
			break;
		}
	}
	return str;
}

  function is_numeric(input){
    return !isNaN(input);
  }

  /**
   * Determine if a reference is defined
   */
  function isset(o) {return (typeof o!="undefined");}


  /**
   * Determine if an object or class string contains a given class.
   */
  function hasClass(o,name) {
    return new RegExp("(^|\\s)"+name+"(\\s|$)").test(o.className);
  }

/**
 * Add a class to an object
 */
function addClass(o,name) {
  var c = o.className || "";
  if (isset(c) && !hasClass(o,name)) {
    o.className += (c?" ":"") + name;
  }
}

/**
 * Remove a class from an object
 */
function removeClass(o,name) {
  var c = o.className || "";
  o.className = c.replace(new RegExp("(^|\\s)"+name+"(\\s|$)"),"$1");
}


/**
 * Simple helperfunction, get easily a value from an select-elemnt
 */
function getOptionValue(elementid){
	var element = document.getElementById(elementid);
	return element.options[element.selectedIndex].value;
}

/**
 * Developed by Robert Nyman, http://www.robertnyman.com
 * Code/licensing: http://code.google.com/p/getelementsbyclassname/
 */
function getElementsByClassName(className, tag, elm) {
	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	} else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	} else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};

/**
 * Returns an URL parameter, for example index.php?a=b&c=d&e=f, gup(e) will return f
 * Credits: lobo235 (http://www.netlobo.com/url_query_string_javascript.html)
 * (Get URL Parameter)
 */
function gup( name ) {
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}