a={};
mh = function(s){
	var e	= document.createElement(s);
	e.attr = function(a,v){
		this.setAttribute(a,v);
		return this;
	}
	e.append = function(){
		for (var i=0;i<arguments.length;i++) if(arguments[i] && arguments[i].nodeName)this.appendChild(arguments[i]);
		return this;
	}
	e.appendTo=function(o){
		o.appendChild(this);
		return this;
	}
	e.text=function(v){
		this.appendChild(document.createTextNode(v));
		return this;
	}
	return e;
}
a.b = function(){alert('bah!');}/*DEBUG*/
mh.el = function(html,cl,attr,el){var s=$(el); if(cl)s.addClass(cl);if(attr)s.attr(attr);if(html)s.append(html);return s;}
mh.lorem = 'lorem ipsum sit amet dolor ';
mh.ui_icon = function(cl,id){return mh.el('','ui-icon '+(cl||''),{'id':id},'<span/>');}
	mh.iconMin = function(cl,id){return mh.ui_icon('ui-icon-minusthick '+(cl||''),id);}
	mh.iconMax = function(cl,id){return mh.ui_icon('ui-icon-plusthick '+(cl||''),id);}
	mh.iconClose =mh.iconX=function(cl,id){return mh.ui_icon('ui-icon-closethick '+(cl||''),id);}
mh.eidit = '<span class="icon-edit ui-icon"></span>';
mh.inpt = function(type,name,cl,id,val,attr){var s='<input type="' + (type||'text') + '"' + (cl?' class="'+cl+'"':'') + (id?' id="'+id+'"':'')+(name?' name="'+name+'"':'')+'/>';if(val)s=$(s).attr('value',val);return $(s).attr(attr)||$(s);};
mh.lbl = function(descr,cl,id){var s='<label '+(cl?'class="'+cl+'"':'')+(id?' for="'+id+'"':'')+'>'+(descr?descr:'')+'</label>';return $(s);}
mh.a = function(html,cl,id,js){return mh.el(html,cl,{'id':id},'<a href="javascript:'+(js||'')+';"></a>');}
mh.ah=function(html,cl,id,hrf){return mh.el(html,cl,{'id':id,'href':hrf},'<a/>');}
mh.d = function(html,cl,id){return mh.el(html,cl,{'id':id},'<div/>');}
mh.s = function(html,cl,id){return mh.el(html,cl,{'id':id},'<span/>');}
mh.ul = function(html,cl,id){return mh.el(html,cl,{'id':id},'<ul/>');}
mh.li = function(html,cl,id){return mh.el(html,cl,{'id':id},'<li/>');}
mh.btn = function(html,cl,id,onClick){return mh.el(html,cl,{'id':id,'onClick':onClick},'<button/>');}
mh.FS = function(src,o){var scr = $('<script/>').attr({type:'text/javascript'});if(src)scr.attr('src',src);scr.appendTo(o?o:'body');}
mh.fs=function(src){mh('script').attr('type','text/javascript').attr('src',src).appendTo(document.body)}
mh.fcss=function(v){mh('link').attr('type','text/css').attr('rel','stylesheet').attr('href',v).appendTo(document.body)}
mh.slct=function(a,name,slctd){var s='';if(typeof(a)!='object')s=a;else for(var i in a)s+='<option value="'+i+'"'+(slctd==i?'selected="selected"':'')+'>'+a[i]+'</option>';if(name)return mh.el(s,'',{'name':name},'<select/>'); else return (s);}
mh.clearer = function (){return $("<div/>").css('clear','both');}
mh.tbl=function (o){
	var	o		=o||'<table/>',
		o		=$(o);
	for (var i=1;i<arguments.length;i++) o.append(arguments[i]);
	return o;
}
mh.tr=function tr(){
	var	tro		=$('<tr/>');
	for(var i=0;i<arguments.length;i++)tro.append(    $('<td/>').append(arguments[i]).attr('valign','top')    );
	return tro;
}
mh.trh=function trh(){
	var	tro		=$('<tr/>');
	for(var i=0;i<arguments.length;i++)tro.append(    $('<th/>').append(arguments[i])    );
	return tro;
}

