ge=function(a){return document.getElementById(a)}
gt=function(e,t){return e.getElementsByTagName(t)}
// get elements by tag name AND id regular expression (elem, tagName, id_regularExpress)
gti=function(e,t,i){var a=gt(e,t);var b=[];for(var j=0;j<a.length;j++){if(a[j].id.match(i))b[b.length]=a[j];}return b;}
// get elements by tag name AND class name (elem, tagName, className)
gtc=function(e,t,c){var a=gt(e,t);var b=[];for(var j=0;j<a.length;j++){if(a[j].className==c||__arrayIndexOf(a[j].className.split(' '), c) > -1)b[b.length]=a[j];}return b;}
ce=function(a){return document.createElement(a)}
// show element (id, type['block'(default)|'inline'])
se=function(a, type){if(ge(a))ge(a).style.display=(type==null)?'block':type;}
// hide element (id)
he=function(a){if(ge(a))ge(a).style.display='none';}
// switch element display (id)
swe=function(a, type){var b=ge(a);if(b){b.style.display=(b.style.display==''||b.style.display=='none')?((type==null)?'block':type):'none';}}
// html to element (html)
h2e = function(h) {var par=ce('div');par.innerHTML=h;return par.childNodes[0];}

// used for function gtc()
// CANNOT USE 'Array.prototype.indexOf=function()...' or /_js/dnd/*.js (dnd=drag-and-drop) will crash on IE
__arrayIndexOf = function(array, member) {
for(var i=0;i<array.length;i++){if(array[i]==member){return i;}}
return -1;
}
