/**- Moomilk -
* -----------------------------------------
* Moomilk is a javascript part of Lily Framework.
* 
* Moomilk is powerd by Mootools Framework (http://mootools.net/).
* Mootools is a separated project, used here in unmodified form, only extended.
* 
* Moomilk is an integral part of Lily Framework, under The MIT License - read license.txt file.
* 
* Author Mitis, mitis@wiksa.pl. http://mitis.tej.pl/
*/
var mm_log_module='core';var default_block_zindex=1000;var default_busybox_zindex=2200;var default_tooltip_zindex=2500;var default_floatingmsg_zindex=1500;var default_simpledialog_zindex=1100;var default_customdialog_zindex=2500;var default_windows_zindex=1100;var default_block_background='#000';var default_element_fade_duration=250;var default_element_slide_duration=250;var default_element_flash_duration=250;var mui_defaultDialogBody='<h2 class="mui_dialogtitle"></h2><div class="body"></div><div class="buttons"></div>';function $MAX(){var rez=null;for(var i=0;i<arguments.length;i++){if(arguments[i]>rez)rez=arguments[i];}return rez;}function $MIN(){var rez=0xFFFFFFFF;for(var i=0;i<arguments.length;i++){if(arguments[i]<rez)rez=arguments[i];}return rez;}function $include(){for(var i=0;i<arguments.length;i++){var script=new Element('script',{type:'text/javascript',src:arguments[i]});script.inject(document.head);}}function $include_css(){for(var i=0;i<arguments.length;i++){var link=new Element('link',{rel:'stylesheet',href:arguments[i],type:'text/css',media:'screen'});link.inject(document.head);}}function $is_def(v){return(v!=undefined&&v!=false&&v!=null);}function $lily_url(){var els=$$('link');var path='';els.each(function(link){var src=link.get('href');if(src.indexOf('css/framework.css')>-1){src=src.replace('css/framework.css','');path=src;}});if(path=='')mm_log('Cannot detect path, css/framework.css not found in links (tag link)','w');return path;}function $lily_include_css(css_file){var path=$lily_url();$include_css(path+'css/'+css_file);}function $lily_dirname(file){var r=file.match(/^(.+)\/(.+)$/i);if(!r)return'';return r[1];}function $lily_basename(file){var r=file.match(/^(.+)\/(.+)$/i);if(!r)return file;return r[2];}function $percent(current,total){var r=current*100/total;return r.toInt();}function make_thumb_path(file,thumb){if(!$is_def(thumb))thumb='t';var path=$lily_dirname(file);file=$lily_basename(file);return path+'/'+thumb+'/'+file;}function mm_assert(cond,msg,module){if(!$is_def(cond)||cond==null||cond==false)mm_log('Assertion failed: '+msg,'warning',module);}function mm_log(s,type,module){try{if(!$is_def(console))return;}catch(e){return;};var d;if($type(s)=='object'&&$is_def(s.message)){d=s.name+': '+s.message+' in ['+s.lineNumber+']:'+s.fileName;}else d='';if(!$is_def(type))type='text';if(!$is_def(module))module=mm_log_module;if(module!='')module='[module: '+module+'] ';switch(type){case'i':case'info':case'information':if(d!='')console.info(d);console.info(module,s);break;case'w':case'warn':case'warning':if(d!='')console.warn(d);console.warn(module,s);break;case'e':case'err':case'error':if(d!='')console.error(d);console.error(module,s);break;default:if(d!='')console.log(d);console.log(module,s);break;}}function microtime(){}function mui_createID(id){if(id==null||id==false){var r=(Math.random()*999999)+(Math.random()*999999);return $time()+'_'+r.round();}else{return id;}}function mui_msgToHTML(msg){if($type(msg)=='array'){r='';for(i=0;i<msg.length;i++){r+='<p>'+msg[i]+'</p>';}return r;}return msg;}function mui_fitImage(width,height,dw,dh,allowup){var sw=width/dw;var sh=height/dh;if(allowup==false||allowup==null){if(sw<1)sw=1;if(sh<1)sh=1;}if(sw>=sh){width=width/sw;height=height/sw;}else{width=width/sh;height=height/sh;}width=width.toInt();height=height.toInt();return{x:width,y:height};}function mui_ME(el){switch($type(el)){case'string':return $(el);break;case'element':return $(el);break;default:return el;break;}}function getCookie(c_name){if(document.cookie.length>0){c_start=document.cookie.indexOf(c_name+"=");if(c_start!=-1){c_start=c_start+c_name.length+1;c_end=document.cookie.indexOf(";",c_start);if(c_end==-1)c_end=document.cookie.length;return unescape(document.cookie.substring(c_start,c_end));}}return"";}function setCookie(c_name,value,expiredays,domain,path){if(!$is_def(path))path='/';var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);var s=c_name+"="+escape(value);if(expiredays!=null)s+=";expires="+exdate.toGMTString();document.cookie=s;}var mm_log_module='';var mm_log_module='extend';String.implement({trim:function(){var s=this.replace(/^[\x01-\x20]*/,'');return s.replace(/[\x01-\x20]*$/,'');},toHTML:function(){var str=['&','<','>','"',"'"];var html=['&amp;','&lt;','&gt;','&quot;','&#39;'];var s=this.replace(new RegExp(str[0],'g'),html[0]);for(var i=1;i<str.length;i++){s=s.replace(new RegExp(str[i],'g'),html[i]);}return s;},toStr:function(){var str=['&','<','>','"',"'"];var html=['&amp;','&lt;','&gt;','&quot;','&#39;'];var s=this.replace(new RegExp(html[0],'g'),str[0]);for(var i=1;i<str.length;i++){s=s.replace(new RegExp(html[i],'g'),str[i]);}return s;}});Window.implement({popup:function(link,w,h,name){if(w==false||w==null)w=0.5;if(h==false||h==null)h=0.5;if(w<=1)w=(screen.width*w).toInt();if(h<=1)h=(screen.height*h).toInt();l=(screen.width-w)/2;t=(screen.height-h)/2;if(name==null)name="info";var w=window.open(link,name,"toolbar=0,scrollbars=1,resizable=1,location=0,menubar=0,directories=0,status=0,width="+w+",height="+h+",left="+l+",top="+t);if(w.left){w.left=l;w.top=t;}w.focus();return false;},getGPS:function(){var c=this.getCoordinates();c.x=c.left;c.y=c.top;return $merge(c,{scrollSize:this.getScrollSize(),size:this.getSize(),scroll:this.getScroll()});}});Element.implement({visible:function(){var s=this.getStyle('display');return s!='none';},show:function(){var s='';if(!$is_def(this.showhide_display))s=this.getStyle('display');if(s=='none')s='block';if($is_def(this.showhide_display))s=this.showhide_display;this.setStyles({'display':s});return this;},hide:function(){if(!$is_def(this.showhide_display)){var s=this.getStyle('display');if(s=='none')s='block';this.showhide_display=s;}this.setStyle('display','none');return this;},fadeOut:function(time,kill){if(!$is_def(time))time=default_element_fade_duration;if(!$is_def(kill))kill=false;if(this.getStyle('display')=='none')return;if(!$is_def(this.fxout)){var fx=new Fx.Tween(this,{property:'opacity',duration:time}).addEvent('onComplete',function(){this.inst.set('styles',{'opacity':1});if(kill)this.inst.empty().destroy();else this.inst.hide();});this.fxout=fx;fx.inst=this;}this.fxout.options.duration=time;this.fxout.start(0);},fadeIn:function(time){if(!$is_def(time))time=default_element_fade_duration;if(!$is_def(this.fxin)){var fx=new Fx.Tween(this,{property:'opacity',duration:time});this.fxin=fx;fx.inst=this;}this.fxin.options.duration=time;this.set('styles',{'opacity':0,'display':'block'}).fxin.start(0,1);},slideIn:function(time){if(!$is_def(time))time=default_element_slide_duration;if(this.getStyle('display')=='none')return;if(!$is_def(this.fxslide_height))this.fxslide_height=this.getSize().y;if(!$is_def(this.fxslidein)){var fx=new Fx.Tween(this,{transition:'quint:out',property:'height',duration:time}).addEvent('onComplete',function(){this.inst.set('styles',{'height':0});this.inst.hide();});this.fxslidein=fx;fx.inst=this;}if($is_def(this.fxslideout))this.fxslideout.cancel();this.fxslidein.options.duration=time;this.fxslidein.start(0);},slideOut:function(time){if(!$is_def(time))time=default_element_slide_duration;if(!$is_def(this.fxslideout)){var fx=new Fx.Tween(this,{transition:'bounce:out',property:'height',duration:time});this.fxslideout=fx;fx.inst=this;}this.fxslideout.options.duration=time;if($is_def(this.fxslidein))this.fxslidein.cancel();this.set('styles',{'display':'block'}).fxslideout.start(0,this.fxslide_height);},flash:function(backcolor,time){if(!$is_def(backcolor))backcolor='#cc0000';if(!$is_def(time))time=default_element_flash_duration;var el=this;var b=this.getStyle('background-color');while(b=='transparent'){el=$(el.getParent());if(el==null){b='#fff';break;}b=el.getStyle('background-color');}if(!$is_def(this.fxflash)){this.fxflash=new Fx.Tween(this,{duration:time,'property':'background-color'});}else this.fxflash.options.duration=time;this.fxflash.start(b,backcolor).chain(function(){this.start(backcolor,b);});},center:function(){this.setStyles({left:mui_centerX(this),top:mui_centerY(this)});return this;},getGPS:function(){var c=this.getCoordinates();c.x=c.left;c.y=c.top;c=$merge(c,{scrollSize:this.getScrollSize(),size:this.getSize(),scroll:this.getScroll()});c.scrollSize.x=$MAX(c.scrollSize.x,c.width);c.scrollSize.y=$MAX(c.scrollSize.y,c.height);return c;},insertOption:function(name,value,select,where){if(!$is_def(where))where='bottom';if(!$is_def(select))select=false;var o=new Element('option',{value:value}).set('text',name).inject(this,where);if(Browser.Engine.trident4){var _this=this;(function(){if(select)_this.selectSelect(value);}).delay(50);}else{if(select)this.selectSelect(value);}return this;},deleteOption:function(value){var els=this.getElements('option');for(var i=0;i<els.length;i++){if(els[i].value==value)els[i].dispose();}return this;},deleteOptionByText:function(text){var ch=this.getElements('option');for(var i=0;i<ch.length;i++){if(ch[i].text==text)this.deleteOption(ch[i].value);}return this;},selectSelect:function(value){var b;for(var i=0;i<this.options.length;i++){if($type(value)=='array'){b=(value.indexOf(this.options[i].value));}else b=(value==this.options[i].value);this.options[i].selected=b;}return this;},selectGetText:function(){var ch=this.getElements('option');for(var i=0;i<ch.length;i++){if(ch[i].value==this.value)return ch[i].text;}return null;},enter:function(target){this.addEvent('keyup',function(event){if(event.code==13){if($type(target)=='function'){target();}else target.fireEvent('click',event);}});},getLeft:function(){return this.getPosition().x;},getTop:function(){return this.getPosition().y;}});Date.implement({ymd:function(){var d=new Date();var y=d.getFullYear();var m=d.getMonth()+1;var d=d.getDate();if(m<10)m='0'+m;if(d<10)d='0'+d;return y+'-'+m+'-'+d;},his:function(){var d=new Date();var h=d.getHours();var m=d.getMinutes();var s=d.getSeconds();if(h<10)h='0'+h;if(m<10)m='0'+m;if(s<10)s='0'+s;return h+':'+m+':'+s;},ymdhis:function(){var d=new Date();return d.ymd()+' '+d.his();},microtime:function(){var d=new Date();return d.getTime()/1000;}});Number.implement({toPrice:function(unit,digit){if(unit==null)unit='EUR';if(digit==null)digit='.';var price=String(this.round(2));var pi=price.indexOf('.');if(pi>-1&&pi==price.length-2)price+='0';if(pi==-1)price+='.00';return price.replace('.',digit)+' '+unit;}});var mm_log_module='';var mm_log_module='html';function xhtml_closeDialog(id){$(id).fadeOut();}window.onbeforeunload=function(){var x=false;$each(xform_changed,function(d){if(d)x=true;});if(x)return moo_lang.t('xform.unsavedchanges');};var xform_tabs={};var xform_changed={};function xform_trackChange(dummy,fid){xform_changed[fid]=true;}function xform_checkField(id,fid,level){if($type(id)=='event'){id=fid;fid=level;level='field';}if(!$is_def(level))level='field';var f=$(id);eval('var form = xform_'+fid+'_checks');var res=true;for(var i=0;i<form.length;i++){var check=form[i];if(check.name!=id)continue;if(check.level!=level)continue;switch(check.type){case'empty':if(check.field_type=='checkbox'){res=f.checked;}else{if(f.value.trim()=='')res=false;}break;case'length':var min,max;if(check.min==null)min=f.value.length;else min=check.min;if(check.max==null)max=f.value.length;else max=check.max;if((f.value.length<min)||(f.value.length>max))res=false;break;case'floatrange':var v=f.value.toFloat();if((v<check.min)||(v>check.max))res=false;break;case'intrange':var v=f.value.toInt();if((v<check.min)||(v>check.max))res=false;break;case'regex':r=new RegExp(check.regjs);res=r.test(f.value);break;case'custom':eval('var res='+check.func+'(\''+id+'\',\''+fid+'\');');break;}if(!res)break;}var i=$('xform_info_'+id);if(res){i.removeClass('field_error').fadeOut();f.removeClass('error');return true;}f.addClass('error');if(check.level=='field')i.set('text',check.msg).show().addClass('field_error');return false;}function xform_reset(fid){eval('var form = xform_'+fid+'_data');for(var id in form){f=$(id);if(f!=null)f.removeClass('error');switch(form[id].type){case'text':case'textarea':f.value=form[id].value;break;case'select':mlf_selectSelect(f,form[id].value);break;case'checkbox':f.checked=(form[id].value==1);break;}$('xform_info_'+id).hide();}xform_changed[fid]=false;}function xform_checkForm(fid){eval('var form = xform_'+fid+'_checks');eval('var data = xform_'+fid+'_data');var fc=0;var tab_set=false;for(var i=0;i<form.length;i++){if(form[i].level=='field')if(!xform_checkField(form[i].name,fid,'field')){if(!tab_set&&(data[form[i].name].tab!='')){xform_tabs[fid].showTab(data[form[i].name].tab);tab_set=true;}fc++;}}if(fc>0){var s=moo_lang.t('xform.invalidfill');dialogError(s.replace('%s',fc));return false;}for(var i=0;i<form.length;i++){if(form[i].level=='submit')if(!xform_checkField(form[i].name,fid,'submit')){if(data[form[i].name].tab!=''){xform_tabs[fid].showTab(data[form[i].name].tab);}dialogError(form[i].msg);return false;}}return true;}function xform_submit(fid){if(!xform_checkForm(fid))return false;xform_changed[fid]=false;$(fid).submit();return true;}function xform_submitAction(fid,action,checkform){if(checkform==undefined)checkform=true;if(checkform&&!xform_checkForm(fid))return false;$(fid).xform_action.value=action;xform_changed[fid]=false;$(fid).submit();}function xform_submitActionAjax(fid,action){if(!xform_checkForm(fid))return false;$(fid).xform_action.value=action;$(fid).send();}function xform_submitAjax(fid){if(!xform_submit(fid,true))return;$(fid).send();}function xform_initForm(fid,usetabs,trace_changes,use_groups){xform_changed[fid]=false;eval('var form = xform_'+fid+'_checks');for(var i=0;i<form.length;i++){if(form[i].level=='field'){$(form[i].name).addEvent('blur',xform_checkField.bindWithEvent(xform_checkField,[form[i].name,fid]));}}if(!$is_def(trace_changes))trace_changes=true;if(trace_changes){eval('var data = xform_'+fid+'_data');$each(data,function(d,name){$(name).addEvent('change',xform_trackChange.bindWithEvent(xform_trackChange,[fid]));});}if(usetabs)xform_initTabs(fid);if(!$is_def(use_groups))use_grups=false;if(use_groups){var els=$(fid).getElements('div.xformgroup_content');for(var i=0;i<els.length;i++){var id=els[i].get('id');id=id.substr(12+fid.length);eval('var enabled = document.'+fid+'.'+id+'.value');if(enabled==0){var o=$('xformgroup.'+fid+'.'+id);o.fxslide_height=o.getSize().y;$('xformgroup.'+fid+'.'+id).hide();}}}}function xform_initTabs(fid){var t=new mui_tabControl('xftab_content_'+fid,'.xformtab','h2');xform_tabs[fid]=t;t.parent_form=fid;t.addEvent('showtab',function(){$(fid).xform_visible_tab.value=this.visible_tab;});eval('var vtab = xform_'+fid+'_visible_tab');if(vtab!='')t.showTab(vtab);else $(fid).xform_visible_tab.value=t.tabs[0].id;}function xform_toggleGroup(fid,id){eval('var enabled = document.'+fid+'.'+id+'.value');if(enabled==1){eval('document.'+fid+'.'+id+'.value=0');$('xformgroup.'+fid+'.'+id).slideIn();}else{eval('document.'+fid+'.'+id+'.value=1');$('xformgroup.'+fid+'.'+id).slideOut();}}function xform_check_nip(id,fid){var el=$(id).value;if(el=='')return true;var rez=el.search(/\d{2,3}-\d{2,3}-\d{2,3}-\d{2,3}/)==0;if(!rez)return rez;el=el.replace(/-/g,'');if(el.length!=10)return false;var w=Array(6,5,7,2,3,4,5,6,7);var ch=0;for(var i=0;i<9;i++)ch+=w[i]*el.substr(i,1).toInt();ch=ch%11;return(ch==el.substr(9,1).toInt());}function html_inputSelect(values,name,selected){var res='<select name="'+name+'" id="'+name+'">';var c;for(i in values){if(i==selected)c=' selected="selected"';else c='';res+='<option value="'+i+'"'+c+'>'+values[i]+'</option>';}return res+'</select>';}function mlf_radio(form,name){var els=$(form).getElements('input[name='+name+']');for(var i=0;i<els.length;i++){if(els[i].checked){return els[i].value;}}return null;}function mlf_createSelect(name,parent){s=new Element('select',{name:name,id:name});s.injectInside(parent);return s;}function mlf_insertOption(value,name,select){o=new Element('option',{value:value}).set('text',name).injectInside(select);return o;}function mlf_deleteOption(value,select){var els=$(select).getElements('option');for(var i=0;i<els.length;i++){if(els[i].value==value)els[i].dispose();}}function mlf_getSelectText(select){ch=select.getElements('option');res=null;ch.each(function(c){if(c.value==select.value){res=c.text;return;}});return res;}function mlf_selectSelect(select,val){var b;for(var i=0;i<select.options.length;i++){if($type(val)=='array'){b=(val.indexOf(select.options[i].value));}else b=(val==select.options[i].value);select.options[i].selected=b;}}function mlf_checkField(form,name,type){var el=$(form).getElements('input[name='+name+']')[0].value.trim();switch(type){case'name':return(el.indexOf(' ')>-1&&el.length>5);break;case'street':return(el.search('[a-zA-Z?궿??????ʦ???ѣ?]+.* \\d{1}')==0);break;case'email':return(el.search('[\\w?궿??????ʦ???ѣ?\\.]+@\\w+.\\w{2,}')==0);break;case'zip':return(el.search('\\d{2}-\\d{3}')==0);break;case'nip':var rez=el.search(/\d{2,3}-\d{2,3}-\d{2,3}-\d{2,3}/)==0;if(!rez)return rez;el=el.replace(/-/g,'');if(el.length!=10)return false;var w=Array(6,5,7,2,3,4,5,6,7);var ch=0;for(var i=0;i<9;i++)ch+=w[i]*el.substr(i,1).toInt();ch=ch%11;return(ch==el.substr(9,1).toInt());break;case'city':return(el.length>3);break;case'company':return(el.length>2);break;}throw('unknown type in mlf_checkField ('+type+') !');}function mlf_checkLen(form,name,min,max){for(var i=0;i<form.elements.length;i++){if(form.elements[i].name==name){var el=form.elements[i].value;return(el.length>=min&&el.length<=max);}}return null;}var mm_log_module='';var mm_log_module='classes';var inputTip=new Class({initialize:function(input,tip_class){input=$(input);this.tip_class=tip_class;this.input=input;input.addEvent('focus',this.tipOff.bindWithEvent(this));input.addEvent('blur',this.tipOn.bindWithEvent(this));this.tipOn();},tipOn:function(){if(this.input.value=='')this.input.addClass(this.tip_class);},tipOff:function(){this.input.removeClass(this.tip_class);}});var objList=new Class({initialize:function(){this.list=new Array();this.length=0;},add:function(obj){this.list[this.list.length]=obj;this.length+=1;},update:function(idx,obj){this.list[idx]=obj;},getByIdx:function(idx){for(var i=0;i<this.list.length;i++){if(this.list[i].idx==idx)return this.list[i];}return false;},getByTrueIdx:function(idx){return this.list[idx];},getById:function(id){for(var i=0;i<this.list.length;i++){if(this.list[i].id==id)return this.list[i];}},deleteByTrueIndex:function(idx){this.list.splice(idx,1);this.length-=1;},clear:function(){this.list=new Array();this.length=0;},each:function(fn){for(var i=0;i<this.list.length;i++){fn.call(this.list[i],this.list[i],i);}}});var mm_log_module='';var mm_log_module='action_table';var xsite_action_tables={};var ActionTable=new Class({Implements:Options,options:{multiselect:true},initialize:function(name,options){this.table_name=name;this.selected=new Array();this.id_map=new Hash();xsite_action_tables[name]=this;this.table=$(name);var rows=this.table.getElements('tr');this.row_count=0;for(var i=0;i<rows.length;i++){if(rows[i].hasClass('tr_header'))continue;var sel=rows[i].getElement('td.selector');if(sel){sel.atable=this;sel.row=rows[i];sel.addEvent('click',this.selClick).setStyle('cursor','pointer');}this.row_count++;}this.sel_count=0;var sel=this.table.getElements('th.selector');if(sel){this.selpopup=new mm_popupMenu([mm_menuAction(moo_lang.t('sel.all'),'selall'),mm_menuAction(moo_lang.t('sel.none'),'selnone'),mm_menuAction(moo_lang.t('sel.inverse'),'selinverse')]).addEvent('action',this.popupAction);this.selpopup.atable=this;for(var i=0;i<sel.length;i++){sel[i].addEvent('click',this.popup).set({'text':this.sel_count+' / '+this.row_count,'styles':{'cursor':'pointer'}});sel[i].atable=this;}}this.highlight();this.buildIDMap();},buildIDMap:function(){var rows=this.table.getElements('tr');var id;this.id_map.empty();var idx=0;for(var i=0;i<rows.length;i++){if(rows[i].hasClass('tr_header'))continue;var id=rows[i].get('id');if(!id)continue;id=id.substr(this.table_name.length+4);this.id_map.set(id,idx++);}},move:function(num,id){var ids=this.id_map.getKeys();var top_idx=this.id_map.getLength()-1;var idx=this.id_map.get(id);var sidx=idx;idx+=num;if(idx<0)idx=0;if(idx>top_idx)idx=top_idx;if(idx==sidx)return;var idd=ids[idx];if(num<0){$(this.table_name+'_tr_'+id).inject($(this.table_name+'_tr_'+idd),'before');}else{$(this.table_name+'_tr_'+id).inject($(this.table_name+'_tr_'+idd),'after');}this.buildIDMap();this.highlight();},highlight:function(){var rows=this.table.getElements('tr');var c=1;for(var i=0;i<rows.length;i++){if(rows[i].hasClass('tr_header'))continue;if(c%2==0){rows[i].addClass('highlight');}else rows[i].removeClass('highlight');c++;}},popup:function(){this.atable.selpopup.popup(this);},popupAction:function(){if(this.action=='selall')this.atable.selectAll.run(null,this.atable);if(this.action=='selnone')this.atable.selectNone.run(null,this.atable);if(this.action=='selinverse')this.atable.selectInverse.run(null,this.atable);},selClick:function(e){var name=this.atable.table_name;var id=this.row.getProperty('id').substr(name.length+4);this.atable.toggleSelect.run(id,this.atable);},toggleSelect:function(id){if(this.selected.indexOf(id)>-1)this.unselect(id);else this.select(id);this.selectedSummary();},select:function(id){var tr=this.table_name+'_tr_'+id;var td=this.table.getElement('#'+tr+' td.selector');td.addClass('selected');this.selected.push(id+'');this.sel_count=this.selected.length;},unselect:function(id){var tr=this.table_name+'_tr_'+id;var td=this.table.getElement('#'+tr+' td.selector');td.removeClass('selected');this.selected.erase(id);this.sel_count=this.selected.length;},selectAll:function(){var rows=this.table.getElements('tr');for(var i=0;i<rows.length;i++){if(rows[i].hasClass('tr_header'))continue;var id=rows[i].getProperty('id').substr(this.table_name.length+4);if(this.selected.indexOf(id)>-1)continue;this.select(id);}this.selectedSummary();},selectNone:function(){var tmp=new Array();for(var i=0;i<this.selected.length;i++)tmp.push(this.selected[i]);for(var i=0;i<tmp.length;i++){this.unselect(tmp[i]);}this.selectedSummary();},selectInverse:function(){var rows=this.table.getElements('tr');for(var i=0;i<rows.length;i++){if(rows[i].hasClass('tr_header'))continue;var id=rows[i].getProperty('id').substr(this.table_name.length+4);this.toggleSelect(id);}this.selectedSummary();},selectedSummary:function(){var sel=this.table.getElements('th.selector');if(sel){for(var i=0;i<sel.length;i++){sel[i].set('text',this.sel_count+' / '+this.row_count);}}},deleteRow:function(id){id=id+'';var tr=this.table.getElement('#'+this.table_name+'_tr_'+id);if(tr){if(this.selected.indexOf(id)>-1)this.unselect(id);this.row_count--;this.selectedSummary();this.highlight();tr.fadeOut(500,true);}this.highlight.delay(550,this);this.buildIDMap.delay(550,this);},deleteSelected:function(){for(var i=0;i<this.selected.length;i++){var tr=this.table.getElement('#'+this.table_name+'_tr_'+this.selected[i]);if(tr){tr.fadeOut(500,true);}}this.row_count-=this.selected.length;this.sel_count=this.selected.length;this.selected.empty();this.selectedSummary();this.highlight.delay(550,this);this.buildIDMap.delay(550,this);},markSelected:function(){for(var i=0;i<this.selected.length;i++){this.mark(this.selected[i]);}},mark:function(id){var tr=this.table.getElement('#'+this.table_name+'_tr_'+id);if(tr)tr.addClass('mark');},unmark:function(id){var tr=this.table.getElement('#'+this.table_name+'_tr_'+id);if(tr)tr.removeClass('mark');},unmarkAll:function(){var rows=this.table.getElements('tr');for(var i=0;i<rows.length;i++){rows[i].removeClass('mark');}}});var mm_log_module='';var mm_log_module='language';var moo_language=new Class({initialize:function(){this.langdata=new Hash();},makeLangID:function(s){s=s.trim().toLowerCase().replace(/^[\d]+/,'');s=s.replace(/[^\w\d\x20]+/g,'');s=s.replace(/\x20{2,}/g,' ');return s.trim();},getEmo:function(s){var emos=['!!!','!','!?','?','...','.'];for(var i=0;i<emos.length;i++){if(s.substr(s.length-emos[i].length-1)==' '+emos[i]){return' '+emos[i];}else if(s.substr(s.length-emos[i].length)==emos[i]){return emos[i];}}return'';},add:function(strings){if($type(strings)=='object'){var ld={};$each(strings,function(v,k){k=this.makeLangID(k);ld[k]=v;},this);this.langdata.extend(ld);}},t:function(s){var sid=this.makeLangID(s);var emo=this.getEmo(s);if(this.langdata.has(sid)){return this.langdata.get(sid)+emo;}else return s;},alias:function(trans,alias){trans=this.makeLangID(trans);if(this.langdata.has(trans))this.add({alias:this.langdata.get(trans)});}});var moo_lang=new moo_language();var mm_log_module='';var mm_log_module='actions';var moo_actionsAjax=new Class({Implements:[Options,Events],options:{sWait:moo_lang.t('Please wait ...'),sConfirm:moo_lang.t('Are You sure ?'),autobusy:false,confirm:false,progress_tick:1500,action_name:'action'},initialize:function(php,options){this.setOptions(options);this.ajax=new Request({url:php});this.ajax.addEvent('onSuccess',this.onSuccess.bindWithEvent(this));this.ajax.addEvent('onFailure',this.onError.bindWithEvent(this));this.ajax_progress=new Request({url:php});this.ajax_progress.addEvent('onSuccess',this.onProgressAction.bindWithEvent(this));this.progress_running=false;this.action_options=new Hash();return this;},setActionOptions:function(action,options){if((!$is_def(action))||(!$is_def(options)))return this;if(!this.action_options.has(action))this.action_options.set(action,new Hash());if($type(options)=='object'){this.action_options.get(action).extend(options);}else if($type(options)=='string'){this.action_options.get(action).set(options,true);}else if($type(options)=='array'){for(var i=0;i<options.length;i++){this.setActionOptions(action,options[i]);}}return this;},getActionOption:function(action,option){if(!this.action_options.has(action)){if(option=='confirm')return this.options.confirm;if(option=='autobusy')return this.options.autobusy;return false;}if(!this.action_options.get(action).has(option))return false;return this.action_options.get(action).get(option);},tick_progress:function(action){(function(action){this.ajax_progress.send('mma_progress_update='+action);}).delay(50,this,action);},beginProgress:function(action){this.progress_running=true;this.progress_timer=this.tick_progress.periodical(this.options.progress_tick,this,action);this.fireEvent('beginProgress');},endProgress:function(){$clear(this.progress_timer);this.progress_running=false;this.fireEvent('endProgress');},onProgressAction:function(){var r=this.ajax_progress.response.text;r=r.match(/^<ra_c>([^<]*)<\/ra_c><ra_a>([^<]*)<\/ra_a><ra_msg>([^<]*)<\/ra_msg><ra_js>([^<]*)<\/ra_js><ra_html>([^<]*)<\/ra_html><ra_data>([^<]*)<\/ra_data>$/);if(r==null){this.endProgress();}else{var java=this.protocol_escape(r[4]);eval(java);if(this.getActionOption(this.action,'autobusy')){if(this.getActionOption(this.action,'monitor_progress')){this.busy.progress(progress_percent);}}this.progress_info={'status':progress_status,'percent':progress_percent};this.fireEvent('progress');}},doSend:function(action,data){if($is_def(data)){data='&'+data;}else var data='';if(this.getActionOption(action,'autobusy')){if(!$is_def(this.busy)){if(this.getActionOption(action,'monitor_progress')){this.busy=new mui_busyProgress();}else{this.busy=new mui_busyBox();}}var s=this.getActionOption(action,'sWait');if(!s)s=this.options.sWait;this.busy.showModal(s);}this.fireEvent('begin');var _this=this;(function(){_this.ajax.send(_this.options.action_name+'='+action+data);}).delay(50);if(this.getActionOption(action,'monitor_progress')){this.beginProgress(action);}return this;},send:function(action,data){this.code=0;this.msg='';this.java='';this.html='';this.data='';this.action=action;this.action_next='';if(this.getActionOption(action,'confirm')){var s=this.getActionOption(action,'sConfirm');if(!s)s=this.options.sConfirm;dialogAsk(s,this.doSend.bind(this,[action,data]));}else{this.doSend(action,data);}return this;},protocol_escape:function(s){var html=['@lt@','@gt@'];var str=['<','>'];s=s.replace(new RegExp(html[0],'g'),str[0]);return s.replace(new RegExp(html[1],'g'),str[1]);},onSuccess:function(){if(this.progress_running){this.endProgress();}if(this.busy){this.busy.hide();}var r=this.ajax.response.text;this.raw_msg=r;r=r.match(/^<ra_c>([^<]*)<\/ra_c><ra_a>([^<]*)<\/ra_a><ra_msg>([^<]*)<\/ra_msg><ra_js>([^<]*)<\/ra_js><ra_html>([^<]*)<\/ra_html><ra_data>([^<]*)<\/ra_data>$/);if(r==null){this.code=-1;this.msg=moo_lang.t('Server returned invalid data !');this.html=this.raw_msg;}else{this.code=r[1];this.action_next=r[2];this.msg=this.protocol_escape(r[3]);this.java=this.protocol_escape(r[4]);this.html=this.protocol_escape(r[5]);this.data=r[6];}this.fireEvent('end');this.fireEvent('action');},onError:function(){if(this.progress_running){this.endProgress();}if(this.busy){this.busy.hide();}this.raw_msg=null;this.code=-2;this.msg=moo_lang.t('Ajax.Action failed')+' ('+this.action+') !';this.fireEvent('end');this.fireEvent('action');}});var mm_log_module='';var mm_log_module='power-table';var PowerTable=new Class({Implements:[Options,Events],options:{multiselect:true,items_per_page:50},filter_prompts:{number:'<div class="powertable-filter-window"><p>Wpisz wartość kolumny np. <strong>&quot;50&quot;</strong>,<br />\  możesz użyć zakresów zamkniętych np. <strong>&quot;10-20&quot;</strong> (od 10 do 20),<br />\  lub otwartych np. <strong>&quot;&lt;50&quot;</strong> (poniżej 50), <strong>&quot;&gt;49&quot;</strong> (powyżej 49 tj. więcej lub równe 50).</p>\  <p><span class="caption"></span><input class="input" type="text" value="" /></p>\  <p class="buttons"><input class="button-ok" type="button" value="Akceptuj" /> <input class="button-clear" type="button" value="Wyczyść" /> <input class="button-cancel" type="button" value="Anuluj" /></p></div>',string:'<div class="powertable-filter-window"><p>Wpisz wartość kolumny np. <strong>&quot;Poznań&quot;</strong> (wszystko zawierające Poznań),<br />\  możesz użyć zakresów np. <strong>&quot;Pozna*&quot;</strong> (wszystko zaczynające się na Pozna)<br />\  <strong>&quot;*ski&quot;</strong> (wszystko kończące się na ski), <strong>&quot;=Poznań&quot;</strong> (dokładnie Poznań).</p>\  <p><span class="caption"></span><input type="text" class="input" value="" /></p>\  <p class="buttons"><input class="button-ok" type="button" value="Akceptuj" /> <input class="button-clear" type="button" value="Wyczyść" /> <input class="button-cancel" type="button" value="Anuluj" /></p></div>',date:'<div class="powertable-filter-window"><p>Wpisz wartość kolumny (RRRR-MM-DD HH:MM:SS) np. <strong>&quot;2032-07-01&quot;</strong>,<br />\  możesz użyć zakresów zamkniętych (rozdziel podwójnym --) np. <br /><strong>&quot;2032-07-01--2032-07-30&quot;</strong> (od 1 do 30 lipca 2032 roku)<br />\  zakresy otwarte np. <strong>&quot;&gt;2032-07-01</strong> (starsze od 2032-07-01), <strong>&quot;&lt;2032-07-01</strong> (młodsze od 2032-07-01)<br /></p>\  <p><span class="caption"></span><input type="text" class="input" value="" /></p>\  <p class="buttons"><input class="button-ok" type="button" value="Akceptuj" /> <input class="button-clear" type="button" value="Wyczyść" /> <input class="button-cancel" type="button" value="Anuluj" /></p></div>',logic:'<div class="powertable-filter-window"><p>Wybierz wartość filtra:<br /></p>\     <p><span class="caption"></span><select class="input"><option value="">Obojętnie</option><option value="1">TAK</option><option value="0">NIE</option></select></p>\  <p class="buttons"><input class="button-ok" type="button" value="Akceptuj" /> <input class="button-clear" type="button" value="Wyczyść" /> <input class="button-cancel" type="button" value="Anuluj" /></p></div>',options:'<div class="powertable-filter-window"><p>Wybierz wartość filtra:<br /></p>\     <p><span class="caption"></span><select class="input"></select></p>\  <p class="buttons"><input class="button-ok" type="button" value="Akceptuj" /> <input class="button-clear" type="button" value="Wyczyść" /> <input class="button-cancel" type="button" value="Anuluj" /></p></div>'},filter_html:{string:'<p class="caption">%%caption%%</p>\   <p class="input"><input type="text" size="25" /><span class="powertable-filter-clear"></span></p>',date:'<p class="caption">%%caption%%</p>\   <p class="input"><input type="text" size="25" /><span class="powertable-filter-clear"></span></p>',number:'<p class="caption">%%caption%%</p>\   <p class="input"><input type="text" size="25" /><span class="powertable-filter-clear"></span></p>',logic:'<p class="caption">%%caption%%</p>\   <p class="input"><select><option value="">Obojętnie</option><option value="1">TAK</option><option value="0">NIE</option></select><span class="powertable-filter-clear"></span></p>',options:'<p class="caption">%%caption%%</p>\   <p class="input"><select></select><span class="powertable-filter-clear"></span></p>'},more_filters_window_body:'<table class="clean" celspacing="0"><tr>\  <td class="adv_container"><h2>Zaawansowane</h2></td>\  <td class="basic_container"><h2>Podstawowe</h2></td>\  </tr><tr>\  <td class="adv_buttons"></td>\  <td class="basic_buttons"></td>\  </tr></table>',filter_windows:{number:null,string:null,logic:null,options:null},default_col_info:{'caption':'?','sortable':false,'tip':'','db':'','db_sort':null,'filter':false,'filter_name':'auto','filter_type':'number','filter_value':null,'selection':false},default_advanced_filter:{'caption':'??','db':'','type':'','value':null,'logic_type':'bool'},initialize:function(container,name,php_ajax,options){this.setOptions(options);mm_log('Initialize ...','i','PowerTable');this.el_container=$(container);mm_assert($type(this.el_container)=='element','Container must be DOM element (Container missing?).','PowerTable::Constructor');try{this.use_selection=false;this.selected=new Array();this.selection_page=new Array();this.filter_window_window=null;this.table_name=name;this.cols=null;this.search=null;this.tooltips=new mui_tips();this.fxscroll=new Fx.Scroll(window);this.actions=new moo_actionsAjax(php_ajax).addEvent('action',this.onActions.bindWithEvent(this));this.actions.addEvent('begin',this.onActionsBegin.bindWithEvent(this));this.actions.addEvent('end',this.onActionsEnd.bindWithEvent(this));this.setStringData('Wczytywanie ...');this.ajax_init();}catch(e){mm_log(e,'err','PowerTable::constructor');}},onAjaxInit:function(){try{mm_log('onAjaxInit, evaluating java ...','i','PowerTable');eval(this.actions.java);this.el_container.empty();this.sorting=info.sorting;this.cols=$H(info.cols);this.cols.each(function(v,i){v=$merge(this.default_col_info,v);if(v.filter_name=='auto')v.filter_name='f'+i;this.cols.set(i,v);}.bind(this));this.adv_filters=$H(info.adv_filters);this.adv_filters.each(function(v,i){v=$merge(this.default_advanced_filter,v);this.adv_filters.set(i,v);}.bind(this));if($is_def(info.paging)){var page=info.paging.page;this.options.items_per_page=info.paging.ipp;}else var page=0;this.items_info={'page':page,'items':0,'first':0,'total':0};if($is_def(info.search)){this.search={'tip':info.search.tip,'db':info.search.db,'value':info.search.value};}mm_log('Building xhtml: Main Table ...','i','PowerTable');this.el_table=new Element('table',{'id':name,'class':'powertable','cellspacing':0}).inject(this.el_container);this.el_thead=new Element('thead').inject(this.el_table);this.el_tfoot=new Element('tfoot').inject(this.el_table);this.el_tbody=new Element('tbody').inject(this.el_table);mm_log('Building xhtml: Toolbox ...','i','PowerTable');this.buildToolbox();mm_log('Building xhtml: Status bar ...','i','PowerTable');this.buildStatusBar();mm_log('Building xhtml: Header ...','i','PowerTable');this.buildHeader();mm_log('Building xhtml: More Filters Window ...','i','PowerTable');this.buildMoreFiltersWindow();this.wmorefilters.hide();this.updateUI();mm_log('Building xhtml: Selection Popup ...','i','PowerTable');this.buildSelectionPopup();mm_log('Done initialization.','i','PowerTable');mm_log('Getting initial data ...','i','PowerTable');this.setStringData('Wczytywanie ...');this.getData();}catch(e){mm_log(e,'err','PowerTable::OnAjaxInit');}return this;},updateUI:function(){this.updateToolbox();this.updateStatusBar();this.updateHeader();this.updatePanels();},buildSelectionPopup:function(){this.selpopup=new mm_popupMenu([mm_menuAction(moo_lang.t('sel.all.this_page'),'page_selall'),mm_menuAction(moo_lang.t('sel.none.this_page'),'page_selnone'),mm_menuAction(moo_lang.t('sel.inverse.this_page'),'page_selinverse'),mm_menuSeparator(),mm_menuAction(moo_lang.t('sel.all'),'selall'),mm_menuAction(moo_lang.t('sel.none'),'selnone'),mm_menuAction(moo_lang.t('sel.inverse'),'selinverse')]).addEvent('action',this.selpopupAction.bindWithEvent(this));},_buildFilter:function(caption,id,type,ftype,body){var f=new Element('div',{'class':'powertable-filter'}).inject(body);var html=this.filter_html[type];mm_assert($is_def(html),'No html for filter type: '+type+' (id: '+id+' ftype: '+ftype+' !','PowerTable::_buildFilter');html=html.replace('%%caption%%',caption);f.set('html',html);var input=f.getElement('input');if(!input)input=f.getElement('select');f.getElement('.powertable-filter-clear').addEvent('click',this.clickFilterClear.bindWithEvent(this,[ftype,id]));if(ftype=='basic')this.cols[id].input=input;else this.adv_filters[id].input=input;if(type!='options')return;var s='<option value="">--Obojętnie--</option>';if(ftype=='basic'){$each(this.cols[id].filter_options,function(v,i){s+='<option value="'+i+'">'+v+'</option>';}.bind(this));}else{$each(this.adv_filters[id].options,function(v,i){s+='<option value="'+i+'">'+v+'</option>';}.bind(this));}input.set('html',s);},buildMoreFiltersWindow:function(){var body=new Element('div',{'class':'powertable-filters'}).set('html',this.more_filters_window_body);var adv_cont=body.getElement('.adv_container');mm_assert(adv_cont,'.adv_container must be set.');var basic_cont=body.getElement('.basic_container');mm_assert(basic_cont,'.basic_container must be set.');var adv_buttons=body.getElement('.adv_buttons');mm_assert(adv_cont,'.adv_buttons must be set.');var basic_buttons=body.getElement('.basic_buttons');mm_assert(basic_cont,'.basic_buttons must be set.');this.cols.each(function(col,id){if(!col.filter)return;this._buildFilter(col.caption,id,col.filter_type,'basic',basic_cont);}.bind(this));new Element('p',{'class':'right'}).adopt(new Element('input',{'type':'button','value':'Filtruj'}).addEvent('click',this.clickPanelFilter.bindWithEvent(this)),new Element('input',{'type':'button','value':'Wyczyść'}).addEvent('click',this.clickPanelClear.bindWithEvent(this,'basic'))).inject(basic_buttons);this.adv_filters.each(function(filter,id){this._buildFilter(filter.caption,id,filter.type,'adv',adv_cont);}.bind(this));new Element('p',{'class':'right'}).adopt(new Element('input',{'type':'button','value':'Filtruj'}).addEvent('click',this.clickPanelFilter.bindWithEvent(this)),new Element('input',{'type':'button','value':'Wyczyść'}).addEvent('click',this.clickPanelClear.bindWithEvent(this,'adv'))).inject(adv_buttons);this.wmorefilters=new mui_window(body,{title:'Więcej filtrów ...'});},updatePanels:function(){this.cols.each(function(col,id){if(!col.filter)return;if(col.filter_value==null)col.input.value='';else col.input.value=col.filter_value;}.bind(this));this.adv_filters.each(function(f,id){if(f.value==null)f.input.value='';else f.input.value=f.value;}.bind(this));return this;},buildHeader:function(){this.el_tr_header=new Element('tr',{'class':'powertable-tr-header'});this.cols.each(function(v,i){var th=new Element('th',{id:this.table_name+'_th_'+i});var tip_body='<p class="bold">'+v.caption+'</p>';if(v.tip!='')tip_body+='<p>'+v.tip+'</p>';var span=new Element('span').inject(th).set('text',v.caption);if(v.sortable){th.addClass('sortable');tip_body+='<span class="powertable-tip">Kliknij lewym aby posortować ...</span><br />';th.addEvent('click',this.clickSort.bindWithEvent(this,i));}if(v.filter){th.addEvent('contextmenu',this.clickFilter.bindWithEvent(this,i));tip_body+='<span class="powertable-tip">Kliknij prawym aby filtrować ...</span><br />';}if(v.selection){this.selection_use=true;th.addClass('selection').addEvent('click',this.selpopupClick.bindWithEvent(this,i));tip_body+='<span class="powertable-tip">Kliknij lewym po menu zaznaczania...</span>';}this.el_tr_header.grab(th);if(v.selection||v.sortable||v.filter||v.tip!='')this.tooltips.addTip(th,tip_body);},this);this.el_thead.grab(this.el_tr_header);return this;},updateHeader:function(){this.cols.each(function(v,i){var el=$(this.table_name+'_th_'+i).getElement('span');el.removeClass('sortdesc').removeClass('sortasc').removeClass('filter').set('html',v.caption);if(i==this.sorting.col)el.addClass('sort'+this.sorting.order);if(v.filter){if(v.filter_value!=null){var value=v.filter_value;if(v.filter_type=='options')value=v.filter_options[value];el.set('html',v.caption+' ('+value+')').addClass('filter');}}}.bind(this));return this;},updateSelection:function(){this.selection_page.empty();var els=this.el_tbody.getElements('.powertable-checkbox');els.each(function(el){var tr=el.getParent('tr');var id=tr.get('id').replace(this.table_name+'_tr_','');if(this.selected.contains(id)){el.addClass('checkbox-on');this.selection_page.push(id);}else{el.removeClass('checkbox-on');}}.bind(this));this.cols.each(function(v,i){var el=$(this.table_name+'_th_'+i).getElement('span');if(v.selection){var caption=this.selection_page.length+' z '+this.items_info.items;caption+=' ('+this.selected.length+' z '+this.items_info.total+')';el.set('html',caption);}}.bind(this));return this;},buildToolbox:function(){var tr=new Element('tr',{'class':'powertable-tr-header'});this.el_top_toolbox=new Element('th',{'class':'powertable-toolbox','colspan':this.cols.getLength()}).inject(tr);tr.inject($(this.el_thead,'top'));this.el_top_toolbox_options=new Element('div',{'class':'powertable-toolbox-left'}).inject(this.el_top_toolbox);this.el_top_toolbox_more=new Element('a',{href:'#'}).set('text','Więcej filtrów ...').inject(this.el_top_toolbox_options).addEvent('click',this.clickAdvanced.bindWithEvent(this));this.tooltips.addTip(this.el_top_toolbox_more,'<p>Kliknij aby pokazać panel z dodatkowymi filtrami...</p>');if(this.search!=null){this.el_top_toolbox_search=new Element('div',{'class':'powertable-toolbox-left'}).inject(this.el_top_toolbox);this.el_top_toolbox_search_input=new Element('input',{'class':'powertable-search'}).inject(this.el_top_toolbox_search);this.el_top_toolbox_search_a=new Element('a',{href:'#','class':'powertable-serach'}).set('text','Szukaj').inject(this.el_top_toolbox_search).addEvent('click',this.clickSearch.bindWithEvent(this));if($is_def(this.search.tip)&&this.search.tip!='')this.tooltips.addTip(this.el_top_toolbox_search_a,'<p>'+this.search.tip+'</p>');this.el_top_toolbox_search_input.enter(this.el_top_toolbox_search_a);}this.el_top_toolbox_nav=new Element('div',{'class':'powertable-toolbox-right'}).inject(this.el_top_toolbox);this.el_top_toolbox_first=new Element('a',{href:'#'}).set('text','Pierwsza').inject(this.el_top_toolbox_nav).addEvent('click',this.navClick.bindWithEvent(this,'first'));this.el_top_toolbox_prev=new Element('a',{href:'#'}).set('text','Poprzednia').inject(this.el_top_toolbox_nav).addEvent('click',this.navClick.bindWithEvent(this,'prev'));this.el_top_toolbox_stat=new Element('span').set('text','x-y z X').inject(this.el_top_toolbox_nav);this.el_top_toolbox_next=new Element('a',{href:'#'}).set('text','Następna').inject(this.el_top_toolbox_nav).addEvent('click',this.navClick.bindWithEvent(this,'next'));this.el_top_toolbox_last=new Element('a',{href:'#'}).set('text','Ostatnia').inject(this.el_top_toolbox_nav).addEvent('click',this.navClick.bindWithEvent(this,'last'));this.el_top_toolbox_spinner=new Element('div',{'class':'powertable-spinner-off'}).inject(this.el_top_toolbox);return this;},updateToolbox:function(){this.el_top_toolbox_first.hide();this.el_top_toolbox_prev.hide();this.el_top_toolbox_stat.hide();this.el_top_toolbox_next.hide();this.el_top_toolbox_last.hide();if(this.search!=null){if(this.search.value!=null){this.el_top_toolbox_search_input.value=this.search.value;this.el_top_toolbox_search_input.addClass('active');this.el_top_toolbox_search.addClass('pt-active');}else{this.el_top_toolbox_search_input.removeClass('active');this.el_top_toolbox_search.removeClass('pt-active');}}var active=false;this.adv_filters.each(function(filter,id){if(filter.value!=null){active=true;return;}}.bind(this));if(active){this.el_top_toolbox_more.addClass('pt-active');}else{this.el_top_toolbox_more.removeClass('pt-active');}if(this.items_info.items==0)return;var _first=this.items_info.first+1;var _to=this.items_info.first+this.items_info.items;this.el_top_toolbox_stat.show().set('text',_first+'-'+_to+' z '+this.items_info.total);if(this.items_info.first>0)this.el_top_toolbox_prev.show();if(_to<this.items_info.total)this.el_top_toolbox_next.show();if(_to+this.options.items_per_page<this.items_info.total)this.el_top_toolbox_last.show();if(this.items_info.first>this.options.items_per_page)this.el_top_toolbox_first.show();return this;},updateToolboxTip:function(){var mtip='';this.cols.each(function(col,id){if(!col.filter)return;if(col.filter_value==null)return;mtip+='<p>'+col.caption+': ';switch(col.filter_type){case'options':mtip+=col.filter_options[col.filter_value];break;default:mtip+=col.filter_value;break;}mtip+='</p>';}.bind(this));this.adv_filters.each(function(filter,id){if(filter.value==null)return;mtip+='<p>'+filter.caption+': ';switch(filter.type){case'options':mtip+=filter.options[col.value];break;default:mtip+=filter.value;break;}mtip+='</p>';}.bind(this));if(mtip==''){mtip='<p>Brak ustawionych filtrów.</p>';}else{mtip='<p class="pt_active"><strong>Obecnie ustawione filtry:</strong></p>'+mtip;}var e=$(this.table_name+'_morefilters_tip');if(!e)return;e.set('html','<p>Kliknij aby pokazać panel z dodatkowymi filtrami...</p>'+mtip);},buildStatusBar:function(){var tr=new Element('tr',{'class':'powertable-tr-header'});this.el_statusbar=new Element('th',{'class':'powertable-statusbar','colspan':this.cols.getLength()}).inject(tr);this.el_tfoot.grab(tr);this.el_statusbar_go_top_left=new Element('div',{'class':'powertable-toolbox-left'}).inject(this.el_statusbar);this.el_statusbar_go_top_a_left=new Element('a',{href:'#'}).set('text','Przewiń do góry...').inject(this.el_statusbar_go_top_left).addEvent('click',this.clickScrollTop.bindWithEvent(this));this.tooltips.addTip(this.el_statusbar_go_top_a_left,'<p>Przejdź do góry tabeli ...</p>');this.el_statusbar_text=new Element('div',{'class':'powertable-toolbox-left'}).inject(this.el_statusbar).set('html','<span style="color:#999;cursor:default;">PowerTable</span>');this.el_statusbar_go_top_right=new Element('div',{'class':'powertable-toolbox-right'}).inject(this.el_statusbar);this.el_statusbar_go_top_a_right=new Element('a',{href:'#'}).set('text','Przewiń do góry...').inject(this.el_statusbar_go_top_right).addEvent('click',this.clickScrollTop.bindWithEvent(this));this.tooltips.addTip(this.el_statusbar_go_top_a_right,'<p>Przejdź do góry tabeli ...</p>');return this;},updateStatusBar:function(){},buildFilterWindow:function(type){var w=new mui_window(this.filter_prompts[type],{title:'Filtruj kolumnę'});w.el_input=w.el_window.getElement('.input');w.el_caption=w.el_window.getElement('.caption');w.el_window.getElement('.button-ok').addEvent('click',this.clickWindowOK.bindWithEvent(this));w.el_window.getElement('.button-clear').addEvent('click',this.clickWindowClear.bindWithEvent(this));w.el_window.getElement('.button-cancel').addEvent('click',function(){this.hide();}.bindWithEvent(w));this.filter_windows[type]=w;},prompt_filter:function(id){var type=this.cols[id].filter_type;if(this.filter_windows[type]==null){this.buildFilterWindow(type);}var w=this.filter_windows[type];w.el_caption.set('text',this.cols[id].caption+': ');if(this.cols[id].filter_type=='options'){var s='<option value="">--Obojętnie--</option>';$each(this.cols[id].filter_options,function(v,i){s+='<option value="'+i+'">'+v+'</option>';}.bind(this));w.el_input.set('html',s);}w.el_input.value=this.cols[id].filter_value;w.showModal(false,$(this.table_name+'_th_'+id));w.el_input.focus();this.filter_window_col=id;this.filter_window_window=w;},setTableContent:function(html){this.el_tbody.empty();this.el_tbody.set('html',html);if(this.selection_use){var els=this.el_tbody.getElements('.powertable-checkbox');els.each(function(el){var tr=el.getParent('tr');var tr_id=this.table_name+'_tr_';var id=tr.get('id').replace(tr_id,'');el.set('id',this.table_name+'_sel_'+id);el.addEvent('click',this.selCheckboxClick.bindWithEvent(this,id));}.bind(this));}return this;},setStringData:function(s){if(this.cols==null){this.el_container.set('html','<p>'+s+'</p>');return this;}this.items_info.items=0;this.setTableContent('<tr><td colspan="'+this.cols.getLength()+'">'+s+'</td></tr>');return this;},grayOut:function(){var els=this.el_tbody.getElements('tr');els.each(function(tr){tr.addClass('pt-grayout');}.bind(this));},scrollTo:function(where){if(where=='top'){this.fxscroll.toElement(this.el_container);}return this;},setFilterValue:function(col,value){this.cols[col].filter_value=value;this.items_info.page=0;},setAdvFilterValue:function(id,value){this.adv_filters[id].value=value;this.items_info.page=0;},selectItem:function(id){if(!this.selected.contains(id))this.selected.push(id);},unselectItem:function(id){if(this.selected.contains(id))this.selected.erase(id);},selectToggleItem:function(id){if(this.selected.contains(id))this.unselectItem(id);else this.selectItem(id);},selectAllPage:function(){var els=this.el_tbody.getElements('.powertable-checkbox');els.each(function(el){var tr=el.getParent('tr');var id=tr.get('id').replace(this.table_name+'_tr_','');this.selectItem(id);}.bind(this));this.updateSelection();},selectNonePage:function(){var els=this.el_tbody.getElements('.powertable-checkbox');els.each(function(el){var tr=el.getParent('tr');var id=tr.get('id').replace(this.table_name+'_tr_','');this.unselectItem(id);}.bind(this));this.updateSelection();},selectInversePage:function(){var els=this.el_tbody.getElements('.powertable-checkbox');els.each(function(el){var tr=el.getParent('tr');var id=tr.get('id').replace(this.table_name+'_tr_','');this.selectToggleItem(id);}.bind(this));this.updateSelection();},selectAll:function(){this.selection_action='selectall';this.getIDList();},selectNone:function(){this.selected.empty();this.updateSelection();},selectInverse:function(){this.selection_action='selectinverse';this.getIDList();},markSelected:function(){mm_log('Warning: markSelected not implemented.','warn');},unmarkAll:function(){mm_log('Warning: markSelected not implemented.','warn');},mark:function(){mm_log('Warning: markSelected not implemented.','warn');},selpopupClick:function(event,id){var el=$(this.table_name+'_th_'+id);this.selpopup.popup(el);},selCheckboxClick:function(event,id){this.selectToggleItem(id);this.updateSelection();},selpopupAction:function(event){switch(this.selpopup.action){case'page_selall':this.selectAllPage();break;case'page_selnone':this.selectNonePage();break;case'page_selinverse':this.selectInversePage();break;case'selall':this.selectAll();break;case'selnone':this.selectNone();break;case'selinverse':this.selectInverse();break;}},clickScrollTop:function(event){event.stop();this.scrollTo('top');},clickWindowOK:function(event){id=this.filter_window_col;var type=this.cols[id].filter_type;var w=this.filter_windows[type];this.cols[id].filter_value=(w.el_input.value=='')?null:w.el_input.value;w.setStatus('',true);this.items_info.page=0;this.getData();},clickWindowClear:function(event){id=this.filter_window_col;var type=this.cols[id].filter_type;var w=this.filter_windows[type];this.cols[id].filter_value=null;w.setStatus('',true);this.items_info.page=0;this.getData();},navClick:function(event,where){event.stop();switch(where){case'first':this.items_info.page=0;break;case'prev':this.items_info.page--;break;case'next':this.items_info.page++;break;case'last':var pc=1+Math.floor(this.items_info.total/this.options.items_per_page);if(this.items_info.total%this.options.items_per_page==0)pc--;this.items_info.page=pc-1;break;}this.getData();},clickSearch:function(event){event.stop();var v=this.el_top_toolbox_search_input.value.trim();if(v==''){if(this.search.value==null){dialogWarning('Wpisz szukaną frazę !');return;}v=null;}this.search.value=v;this.items_info.page=0;this.getData();},clickFilter:function(event,id){event.stop();this.prompt_filter(id);},clickFilterClear:function(event,type,id){if(type=='basic'){this.cols[id].input.value='';}else{this.adv_filters[id].input.value='';}},clickPanelFilter:function(){this.cols.each(function(col,id){if(!col.filter)return;if(col.input.value=='')col.filter_value=null;else col.filter_value=col.input.value;}.bind(this));this.adv_filters.each(function(filter,id){if(filter.input.value=='')filter.value=null;else filter.value=filter.input.value;}.bind(this));this.items_info.page=0;this.wmorefilters.hide();this.getData();},clickPanelClear:function(event,type){if(type=='basic'){this.cols.each(function(col,id){if(!col.filter)return;this.cols[id].filter_value=null;}.bind(this));}else{this.adv_filters.each(function(filter,id){this.adv_filters[id].value=null;}.bind(this));}this.items_info.page=0;this.wmorefilters.hide();this.getData();},clickAdvanced:function(event){event.stop();this.wmorefilters.show(false,this.el_top_toolbox_more);},clickSort:function(event,id){if(this.sorting.col==id){this.sorting.order=(this.sorting.order=='asc')?'desc':'asc';}else{this.sorting.col=id;this.sorting.order='asc';}this.getData();},buildQuery:function(){var data='sort='+this.sorting.col+'&order='+this.sorting.order;data+='&page='+this.items_info.page+'&ipp='+this.options.items_per_page;if(this.search!=null&&this.search.value!=null){data+='&search='+encodeURIComponent(this.search.value);}this.cols.each(function(v,i){if(!v.filter)return;if(v.filter_value!=null){data+='&'+v.filter_name+'='+encodeURIComponent(v.filter_value);}}.bind(this));this.adv_filters.each(function(f,id){if(f.value!=null){data+='&'+id+'='+encodeURIComponent(f.value);}}.bind(this));return data;},getData:function(){var data=this.buildQuery();this.actions.send(this.table_name+'.get',data);return this;},refresh:function(){return this.getData();},getIDList:function(action){var data=this.buildQuery();this.actions.send(this.table_name+'.get.idlist',data);},ajax_init:function(){mm_log('ajax_init, sending action '+this.table_name+'.get.info ...','i','PowerTable');this.actions.send(this.table_name+'.get.info');},onActionSelect:function(){try{eval(this.actions.java);if(this.selection_action=='selectall'){this.selected.empty();this.selected.combine(idlist);}else{for(var i=0;i<idlist.length;i++){if(this.selected.contains(idlist[i]))this.selected.erase(idlist[i]);else this.selected.push(idlist[i]);}}this.updateSelection();}catch(e){this.setStringData('Evaluation error ('+e.name+'), message: '+e.message);return;}},onActions:function(){if(this.filter_window_window!=null){this.filter_window_window.setStatus();this.filter_window_window.hide();}if(this.actions.code!=0){this.onActionsError();return;}if(this.actions.action==this.table_name+'.get.idlist'){this.onActionSelect();return;}if(this.actions.action==this.table_name+'.get.info'){this.onAjaxInit();return;}try{eval(this.actions.java);this.items_info.items=response.items;this.items_info.total=response.total;this.items_info.first=this.items_info.page*this.options.items_per_page;if(this.items_info.items==0){this.setStringData('Brak wyników do wyświetlenia.');}else{this.setTableContent(this.actions.html);this.tooltips.tipAdvanced(this.el_tbody.getElements('.tip_adv_s'),this.el_tbody.getElements('.tip_adv_d'));}this.updateUI();}catch(e){this.setStringData('Evaluation error ('+e.name+'), message: '+e.message);return;}},onActionsBegin:function(){if(this.cols==null)return;this.el_top_toolbox_spinner.removeClass('powertable-spinner-off').addClass('powertable-spinner-on');this.grayOut();},onActionsEnd:function(){if(this.cols==null)return;this.el_top_toolbox_spinner.removeClass('powertable-spinner-on').addClass('powertable-spinner-off');},onActionsError:function(){this.setStringData('<p class="error bold">'+this.actions.msg+'<p><br />'+this.actions.raw_msg.toHTML());}});var mm_log_module='';var mm_log_module='ui.core';function mui_centerX(obj){var w=window.getGPS();var l=(w.size.x-obj.getGPS().size.x)/2;l=l.round()+w.scroll.x;if(l<0)l=0;return l;}function mui_centerY(obj){var w=window.getGPS();var t=(w.size.y-obj.getGPS().size.y)/2;t=t.round()+w.scroll.y;if(t<0)t=0;return t;}function mui_alignXR(obj,distance){if(distance==null)distance=10;var w=window.getGPS();var l=(w.size.x-obj.getGPS().size.x)-distance;return l.round()+w.scroll.x;}function mui_alignXL(obj,distance){if(distance==null)distance=10;var w=window.getGPS();return w.scroll.x+distance;}function mui_alignYB(obj,distance){if(distance==null)distance=10;var w=window.getGPS();var t=(w.size.y-obj.getGPS().size.y-distance);return t.round()+w.scroll.y;}function mui_alignYT(obj,distance){if(distance==null)distance=10;var w=window.getGPS();return w.scroll.y+distance;}var mui_shadow=new Class({initialize:function(el){}});var mui_progressBar=new Class({Implements:[Options],options:{max:100,progress:0,width:350,height:20,height_face:16,inflate_h:1,inflate_w:1},initialize:function(parent,options){this.setOptions(options);parent=mui_ME(parent);this.bar=new Element('div',{'styles':{width:this.options.width,height:this.options.height},'class':'progressbar'});this.face=new Element('div',{'styles':{width:1,height:this.options.height_face,'margin-top':this.options.inflate_h,'margin-left':this.options.inflate_w,'display':'none'}});this.face.set('tween',{link:'cancel','duration':'short'});this.bar.grab(this.face);parent.grab(this.bar);this.progress(this.options.progress);return this;},hide:function(){this.bar.hide();return this;},show:function(){this.bar.show();this.progress(0);return this;},progress:function(p,cap){if(p==0){this.face.set('styles',{display:'none','width':1});this.options.progress=p;return;}var max_w=this.options.width-(2*this.options.inflate_w);var w=(max_w*p)/this.options.max;this.face.set('styles',{display:'block'});this.face.tween('width',w);return this;}});var mui_blockUI=new Class({Implements:[Options],options:{color:default_block_background,opacity:'0.35',"z-index":default_block_zindex},initialize:function(element,options){if(!$is_def(element))element=window;else element=$(element);this.setOptions(options);this.el_parent=element;this.blocked=false;var id=mui_createID(null);this.el_block=new Element('div',{'styles':{position:'absolute','background-color':this.options.color,'z-index':this.options['z-index']},'id':id});if($type(this.el_parent)=='window'){this.el_block.inject(document.body);}else{this.el_parent.grab(this.el_block);}},block:function(spinner){if($is_def(spinner))mm_log('Parameter spinner is depraceted.','w','mui_blockUI::block');var pos=this.el_parent.getPosition();var size=this.el_parent.getSize();if($type(this.el_parent)=='window'){size=this.el_parent.getScrollSize();this.el_block.setStyles({left:0,top:0,right:'auto',bottom:'auto',width:size.x,height:size.y,'display':'block',opacity:this.options.opacity});}else{this.el_block.setStyles({left:0,top:0,right:0,bottom:0,width:size.x,height:size.y,'display':'block',opacity:this.options.opacity});}this.blocked=true;},unblock:function(){this.el_block.hide();this.blocked=false;}});var mui_busyBox=new Class({initialize:function(){var div=new Element('div').addClass('busy_box').set('styles',{'z-index':default_busybox_zindex,'position':'absolute'}).inject(document.body).hide();this.div=div;this.block=new mui_blockUI(false,{'z-index':default_busybox_zindex-1});return this;},setMsg:function(msg){if($is_def(msg))this.div.set('html','<p>'+msg+'</p>');return this;},show:function(msg){this.setMsg(msg);this.div.show().center();return this;},showModal:function(msg){this.block.block();this.show(msg);return this;},hide:function(){this.block.unblock();this.div.hide();return this;}});var mui_busyProgress=new Class({Extends:mui_busyBox,initialize:function(){this.parent();var p=new Element('p');this.div.grab(p);var pb=new mui_progressBar(this.div);this.pb=pb;this.p=p;return this;},setMsg:function(msg){if($is_def(msg))this.p.set('text',msg);},progress:function(p){this.pb.progress(p);}});var mm_log_module='';var mm_log_module='ui.milkmenu';function mm_menuItem(text,link,type,adv){if(!$is_def(type))type='link';var obj={text:text,type:type,link:link};if(adv!=null){if($type(adv)!='object')throw('da_menuItem adv (4th parameter) must be an object !');$extend(obj,adv);}return obj;}function mm_menuSeparator(){return mm_menuItem('','','separator');}function mm_menuTitle(s){return mm_menuItem(s,'','title');}function mm_menuScript(text,script){return mm_menuItem(text,script,'script');}function mm_menuAction(s,action,confirm,sconfirm){if($is_def(confirm)){if(!$is_def(sconfirm))sconfirm=moo_lang.t('Are you sure ?');}else{confirm=false;sconfirm='';}return mm_menuItem(s,'','action',{action:action,confirm:confirm,sconfirm:sconfirm});}var milkmenu_hot_mode=false;var milkmenu_visible_menu=null;var milkmenu_popup_visible=null;var milkmenu_stop_document=false;document.addEvent('click',function(e){if(milkmenu_stop_document){milkmenu_stop_document=false;e.stop();return;}milkmenu_hot_mode=false;if(milkmenu_visible_menu!=null){milkmenu_visible_menu.hideMenu();milkmenu_visible_menu=null;}if(milkmenu_popup_visible!=null){milkmenu_popup_visible.hideMenu();milkmenu_popup_visible=null;}});function mm_buildMenu(el,menus){var ul=new Element('ul');el=mui_ME(el);for(var i=0;i<menus.length;i++){var li=new Element('li').inject(ul);menus[i].render(li,el);}ul.inject(el);}var mm_Menu=new Class({initialize:function(name,items){if($type(name)!='string')throw('name of menu item must be a string !');if(name=='')throw('Name cannot be empty !');this.name=name;this.id=mui_createID();this.elements=new Array();if(items!=null)for(var i=0;i<items.length;i++){this.addItem(items[i]);}},addItem:function(item){if($type(item)!='object')throw('mm_Menu.item (addItem) must be an object !');this.elements.push(item);return this;},render:function(el,mainmenu){var div=new Element('div').setProperties({id:'mmenu_'+this.id,'class':'mm_menu'}).setStyles({position:'absolute','z-index':500,display:'none'});var html='<ul>';for(var i=0;i<this.elements.length;i++){var e=this.elements[i];switch(e.type){case'link':html+='<li><a href="'+e.link+'">'+e.text+'</a></li>';break;case'popup':html+='<li><a href="#" onclick="window.popup(\''+e.link+'\','+e.width+','+e.height+'); return false;">'+e.text+'</a></li>';break;case'script':html+='<li><a href="#" onclick="'+e.link+' return false;">'+e.text+'</a></li>';break;case'title':html+='<li class="title">'+e.text+'</li>';break;case'separator':html+='<li class="separator"></li>';break;case'disabled':html+='<li class="disabled">'+e.text+'</li>';break;default:throw('unknown menu item type: '+e.type+', for item: '+e.text+' !');break;}}html+='</ul>';div.set('html',html);var a=new Element('a').setProperties({href:'#',id:'mmenua_'+this.id}).set('text',this.name).inject(el);div.inject(mainmenu);this.menu=div;this.a=a;this.mainmenu=mainmenu;this.el=el;a.addEvent('click',this.showMenu.bindWithEvent(this));a.addEvent('mouseenter',this.hotMenu.bindWithEvent(this));a.addEvent('mouseleave',this.leaveMenu.bindWithEvent(this));},hotMenu:function(e){if(milkmenu_hot_mode){this.showMenu(e);}else{this.el.addClass('hover');}},leaveMenu:function(e){this.el.removeClass('hover');},showMenu:function(e){if($is_def(e)){e.stop();if(e.type=='click'){milkmenu_hot_mode=true;}}if(milkmenu_visible_menu!=null){milkmenu_visible_menu.hideMenu();milkmenu_visible_menu=null;}var s=this.mainmenu.getGPS();this.menu.show().setStyles({left:this.el.getPosition().x,top:s.bottom});this.el.addClass('active');milkmenu_visible_menu=this;},hideMenu:function(e){if($is_def(e))e.stop();this.el.removeClass('active');this.menu.hide();}});var mm_popupMenu=new Class({Implements:[Options,Events],options:{'z-index':500,offset_x:10,offset_y:10,'css_class':'mm_popup'},initialize:function(items){this.id=mui_createID();this.elements=new Array();if(items!=null)for(var i=0;i<items.length;i++){this.addItem(items[i]);}this.render();return this;},addItem:function(item){if($type(item)!='object')throw('mui_popupMenu (addItem) item must be an object !');this.elements.push(item);return this;},render:function(){var div=new Element('div').setProperties({id:'mmenu_'+this.id,'class':this.options.css_class}).setStyles({position:'absolute','z-index':500,display:'none'});var html='<ul>';var actions=new Array();for(var i=0;i<this.elements.length;i++){var e=this.elements[i];switch(e.type){case'link':html+='<li><a href="'+e.link+'">'+e.text+'</a></li>';break;case'popup':html+='<li><a href="#" onclick="window.popup(\''+e.link+'\','+e.width+','+e.height+'); return false;">'+e.text+'</a></li>';break;case'title':html+='<li class="title">'+e.text+'</li>';break;case'separator':html+='<li class="separator"></li>';break;case'disabled':html+='<li class="disabled">'+e.text+'</li>';break;case'action':actions.push(e);html+='<li><a href="#" class="popaction">'+e.text+'</a></li>';break;default:throw('unknown menu item type: '+e.type+', for item: '+e.text+' !');break;}}html+='</ul>';div.set('html',html);div.inject(document.body);var a=div.getElements('a.popaction');if(a)for(var i=0;i<a.length;i++){a[i].store('popup',this);a[i].store('action',actions[i]);a[i].addEvent('click',this.actionClick);}this.menu=div;},doActionClick:function(action){this.action=action.action;this.fireEvent('action');this.hideMenu();},actionClick:function(e){e.stop();var a=this.retrieve('action');var p=this.retrieve('popup');if(a.confirm){dialogAsk(a.sconfirm,function(){p.doActionClick(a);});return;}p.doActionClick(a);},popupXY:function(mx,my,data){this.menu.show();var x=mx+this.options.offset_x;var y=my+this.options.offset_y;var d=this.menu.getGPS();var w=window.getGPS();if(x+d.width>w.width+w.scroll.x)x=mx-d.width;if(y+d.height>w.height+w.scroll.y)y=my-d.height;if(x<10)x=10;if(y<10)y=10;this.menu.show().set('styles',{left:x,top:y});milkmenu_stop_document=true;milkmenu_popup_visible=this;this.data=data;},popup:function(el,data){if(!el.getGPS)el=$(el);var p=el.getGPS();this.popupXY(p.x,p.y,data);},hideMenu:function(){this.menu.hide();}});var mm_log_module='';var mm_log_module='ui.dialogs';var mui_customDialog=new Class({Implements:[Options,Events],options:{'z-index':default_customdialog_zindex,'css_class':'mui_dialog',title:moo_lang.t('MooMilk User Interface'),type:'',body:'<div class="dialog-title"><span class="text"></span></div><div class="dialog-body"></div><div class="dialog-buttons"></div>'},initialize:function(buttons,options){this.id=mui_createID(null);this.setOptions(options);this.buttons=$H(buttons);this.el_dialog=new Element('div',{id:this.id,'class':this.options.css_class,styles:{display:'none',position:'absolute','z-index':this.options['z-index']}}).inject(document.body);if(this.options.type!='')this.el_dialog.addClass('md_'+this.options.type);this.el_dialog.set('html',this.options.body);this.el_title=this.el_dialog.getElement('.dialog-title').set('text',this.options.title);this.el_body=this.el_dialog.getElement('.dialog-body');this.el_buttons=this.el_dialog.getElement('.dialog-buttons');this.el_dialog.makeDraggable({handle:this.el_title});this.buttons.each(function(caption,id){var a=new Element('a',{href:'#'+id,'class':'mui_button_'+id}).set('text',caption).addEvent('click',this.clickHandler.bindWithEvent(this,id)).inject(this.el_buttons);}.bind(this));this.block=new mui_blockUI(null,{'z-index':this.options['z-index']-1});;return this;},doShow:function(){this.el_dialog.show().center();this.fireEvent('show');},doHide:function(){this.dlg.hide();this.fireEvent('hide');},show:function(msg){this.el_body.set('html',mui_msgToHTML(msg));this.doShow();return this;},showModal:function(msg){this.block.block();this.show(msg);return this;},hide:function(){this.block.unblock();this.doHide();return this;},clickHandler:function(e,id){e.stop();var event=id.substr(0,1).toUpperCase()+id.substr(1).toLowerCase();this.hide();this.fireEvent('on'+event,event);}});var mui_customDialogFX=new Class({Extends:mui_customDialog,initialize:function(buttons,options){this.parent(buttons,options);var _this=this;this.fx_show=new Fx.Tween(this.el_dialog,{property:'opacity',duration:250,fps:25}).addEvent('onComplete',function(){_this.fireEvent('show');});this.fx_hide=new Fx.Tween(this.el_dialog,{property:'opacity',duration:250,fps:25}).addEvent('onComplete',function(){_this.el_dialog.hide();_this.fireEvent('hide');});},doShow:function(){if(this.fx_show!=null){this.el_dialog.show().setStyle('opacity',0.005).center();this.fx_show.start(1);}else{this.el_dialog.setStyle('opacity',1).show().center();this.fireEvent('onShow');}},doHide:function(){if(this.fx_hide!=null){this.fx_hide.start(0);}else{this.el_dialog.hide();this.fireEvent('onHide');}}});var mmd_info;var mmd_info_fok=null;var mmd_err;var mmd_err_fok=null;var mmd_succ;var mmd_succ_fok=null;var mmd_warn;var mmd_warn_fok=null;var mmd_ask;var mmd_ask_fok=null;var mmd_ask_fcancel=null;function dialogInfo(msg,fok){if(!$is_def(mmd_info)){mmd_info=new mui_customDialogFX({ok:'OK'},{type:'info',title:moo_lang.t('Information')});}if(mmd_info_fok!=null){mmd_info.removeEvent('onOk',mmd_info_fok);mmd_info_fok=null;}if($is_def(fok)){mmd_info.addEvent('onOk',fok);mmd_info_fok=fok;}mmd_info.showModal(msg);}function dialogError(msg,fok){if(!$is_def(mmd_err)){mmd_err=new mui_customDialogFX({ok:'OK'},{type:'error',title:moo_lang.t('Error')});}if(mmd_err_fok!=null){mmd_err.removeEvent('onOk',mmd_err_fok);mmd_err_fok=null;}if($is_def(fok)){mmd_err.addEvent('onOk',fok);mmd_err_fok=fok;}mmd_err.showModal(msg);}function dialogSuccess(msg,fok){if(!$is_def(mmd_succ)){mmd_succ=new mui_customDialogFX({ok:'OK'},{type:'success',title:moo_lang.t('Confirmation')});}if(mmd_succ_fok!=null){mmd_succ.removeEvent('onOk',mmd_succ_fok);mmd_succ_fok=null;}if($is_def(fok)){mmd_succ.addEvent('onOk',fok);mmd_succ_fok=fok;}mmd_succ.showModal(msg);}function dialogWarning(msg,fok){if(!$is_def(mmd_warn)){mmd_warn=new mui_customDialogFX({ok:'OK'},{type:'warning',title:moo_lang.t('Warning')});}if(mmd_warn_fok!=null){mmd_warn.removeEvent('onOk',mmd_warn_fok);mmd_warn_fok=null;}if($is_def(fok)){mmd_warn.addEvent('onOk',fok);mmd_warn_fok=fok;}mmd_warn.showModal(msg);}function dialogAsk(msg,fok,fcancel){if(!$is_def(mmd_ask)){mmd_ask=new mui_customDialogFX({ok:'OK',cancel:moo_lang.t('Cancel')},{type:'',title:moo_lang.t('Question')});}if(mmd_ask_fok!=null){mmd_ask.removeEvent('onOk',mmd_ask_fok);mmd_ask_fok=null;}if($is_def(fok)){mmd_ask.addEvent('onOk',fok);mmd_ask_fok=fok;}if(mmd_ask_fcancel!=null){mmd_ask.removeEvent('onCancel',mmd_ask_fcancel);mmd_ask_fcancel=null;}if($is_def(fcancel)){mmd_ask.addEvent('onCancel',fcancel);mmd_ask_fcancel=fcancel;}mmd_ask.showModal(msg);}var mm_log_module='';var mm_log_module='ui.tooltips';var mui_tips=new Class({Implements:[Options,Events],options:{'z-index':default_tooltip_zindex,'css_class':'mui_tooltip',opacity:0.96,offset_x:-10,offset_y:25},initialize:function(options){this.setOptions(options);this.id=mui_createID();this.handles=new Array();this.bodies=new Array();this.div=new Element('div',{id:this.id,'class':this.options.css_class,'styles':{'z-index':this.options['z-index'],'position':'absolute','display':'none'}}).injectInside(document.body);return this;},clear:function(){for(var i=0;i<this.handles.length;i++){this.handles[i].removeEvents('mouseenter');this.handles[i].removeEvents('mousemove');this.handles[i].removeEvents('mouseleave');}delete this.handles;delete this.bodies;this.handles=new Array();this.bodies=new Array();},addTip:function(handler,body){if($type(handler)=='string')handler=$(handler);this.handles.push(handler);if($type(body)=='element')body.hide();this.bodies.push(body);handler.tip_idx=this.handles.length-1;handler.moo_tip=this;handler.addEvent('mouseenter',this.showTip);handler.addEvent('mousemove',this.eventMoveTip);handler.addEvent('mouseleave',this.closeTip);},showTip:function(e){var b=this.moo_tip.bodies[this.tip_idx];if($type(b)=='element'){this.moo_tip.div.empty();b.inject(this.moo_tip.div).show();}else this.moo_tip.div.set('html',b);this.moo_tip.div.show().setStyle('opacity',this.moo_tip.options.opacity);this.moo_tip.moveTip.run(e,this.moo_tip);},eventMoveTip:function(e){this.moo_tip.moveTip.run(e,this.moo_tip);},moveTip:function(e){var w=window.getGPS();if(!$is_def(e)){mx=this.last_mx;my=this.last_my;}else{var mx=e.event.clientX+w.scroll.x;var my=e.event.clientY+w.scroll.y;}var x=mx+this.options.offset_x;var y=my+this.options.offset_y;var d=this.div.getGPS();if(x+d.width>w.width+w.scroll.x)x=mx-d.width-this.options.offset_x;if(y+d.height>w.height+w.scroll.y)y=my-d.height-this.options.offset_y;if(x<10)x=10;if(y<10)y=10;this.div.set('styles',{left:x,top:y});this.last_mx=mx;this.last_my=my;},closeTip:function(){var b=this.moo_tip.bodies[this.tip_idx];if($type(b)=='element')b.inject(document.body).hide();this.moo_tip.div.hide();},tipImages:function(parent){if(!$is_def(parent))parent=$(document.body);if($type(parent)=='string')parent=$(parent);var els=parent.getElements('img');if(els==false)return;for(var i=0;i<els.length;i++){var t=els[i].get('title');if(!t||(t==''))continue;els[i].removeProperty('title');this.addTip(els[i],t);}return this;},tipLinks:function(parent){if(!$is_def(parent))parent=$(document.body);if($type(parent)=='string')parent=$(parent);var els=parent.getElements('a');if(els==false)return;for(var i=0;i<els.length;i++){var t=els[i].get('title');if(!t||(t==''))continue;els[i].removeProperty('title');this.addTip(els[i],t);}return this;},tipAdvanced:function(handlers,tips){if($type(handlers)=='string'){var h=$(document.body).getElements(handlers);var t=$(document.body).getElements(tips);}else{var h=handlers;var t=tips;}for(var i=0;i<h.length;i++){this.addTip(h[i],t[i]);}}});var mui_actionTips=new Class({Extends:mui_tips,options:{use_cache:true},initialize:function(php,id,options){this.parent(id,options);this.actions=new moo_actionsAjax(php,{action_name:'tip_action'});this.actions.ajax.options.autoCancel=true;this.actions.addEvent('action',this.onAction.bindWithEvent(this));this.cache=new Array();},onAction:function(){this.div.removeClass('moo_spinner_large');if(this.actions.code!=0){var s=this.actions.msg;if(this.actions.code==-1)s=this.raw_msg;this.div.set('html',s);return;}if(this.options.use_cache)this.cache[this.tip_idx]=this.actions.html;this.div.set('html',this.actions.html);this.moveTip();},addTip:function(handler,data){if($type(handler)=='string')handler=$(handler);this.handles.push(handler);this.bodies.push(data);this.cache.push(null);handler.tip_idx=this.handles.length-1;handler.moo_tip=this;handler.addEvent('mouseenter',this.showTip);handler.addEvent('mousemove',this.eventMoveTip);handler.addEvent('mouseleave',this.closeTip);},showTip:function(e){var b=this.moo_tip.bodies[this.tip_idx];this.moo_tip.tip_idx=this.tip_idx;if(this.moo_tip.cache[this.tip_idx]!=null){this.moo_tip.div.set('html',this.moo_tip.cache[this.tip_idx]).show();}else{this.moo_tip.div.set('html','&nbsp;').show().addClass('moo_spinner_large').setStyle('opacity',this.moo_tip.options.opacity);this.moo_tip.actions.send('tip.get',b);}this.moo_tip.moveTip.run(e,this.moo_tip);},closeTip:function(e){this.moo_tip.actions.ajax.cancel();this.moo_tip.div.hide();},tipImages:function(parent,property){if(!$is_def(parent))parent=$(document.body);if($type(parent)=='string')parent=$(parent);if(!$is_def(property))property='src';var els=parent.getElements('img.tip');if(els==false)return;for(var i=0;i<els.length;i++){var t=els[i].get(property);if(t=='')continue;els[i].removeProperty('title');this.addTip(els[i],property+'='+t);}return this;}});var mm_log_module='';var mm_log_module='ui.floatingmsg';var mui_floatingMessages=new Class({Implements:Options,options:{'css_class':'mui_floating_message',duration:7000,fade_duration:2000},initialize:function(options){this.setOptions(options);var _this=this;window.addEvent('scroll',function(){_this.order();});},add:function(html,type,duration){if(duration==null||duration==false)duration=this.options.duration;if(type==null||type==false)type='';if(type!='')type='mfm_'+type;var div=new Element('div',{'class':this.options.css_class,'styles':{'position':'absolute','z-index':default_floatingmsg_zindex}}).inject(document.body);if(type!='')div.addClass(type);div.set('html',html);var left=mui_alignXR(div,20);var x=mui_centerX(div);div.tween('left',[x,left]);this.order();(function(){this.del(div);}).delay(duration,this);},del:function(div,inst){var _this=this;var _div=div;var fx=new Fx.Tween(_div,{'property':'opacity',duration:this.options.fade_duration,transition:Fx.Transitions.Quad.easeIn}).addEvent('onComplete',function(){_div.destroy();_this.order();});fx.start(1,0);},order:function(){height=20;els=$$('.'+this.options.css_class);for(i=els.length-1;i>=0;i--){m=els[i];m.setStyle('top',mui_alignYT(m,height));height+=m.getGPS().size.y+5;}}});var mm_log_module='';var mm_log_module='ui.imgview';var mui_imgView=new Class({Implements:[Options,Events],options:{},initialize:function(options){this.setOptions(options);this.images_data=new Array();return this;},clear:function(){this.images_data.empty();},imageDataBySrc:function(src){for(var i=0;i<this.images_data.length;i++){if(this.images_data[i].src==src){this.images_data[i].idx=i;return this.images_data[i];}}return null;},imageData:function(idx){return this.images_data[idx];},onLoad:function(event,src){console.log('imgview: onLoad, src: '+src);var data=this.imageDataBySrc(src);data.status='loaded';data.loaded=true;data.error=false;data.oryg_width=data.el_img.width;data.oryg_height=data.el_img.height;this.images_data[data.idx]=data;this.fireEvent('load',data);},onError:function(event,src){var data=this.imageDataBySrc(src);console.log('imgview: onError, src: '+src,', data: ',data,', event: ',event);data.status='error';data.error=true;data.loaded=false;this.images_data[data.idx]=data;console.log('fire-error----->onError');this.fireEvent('error',data);},load:function(src,title){console.log('imgview: load: '+src);if(!$is_def(title))title=$lily_basename(src);var data=this.imageDataBySrc(src);if(data){var idx=data.idx;console.log('imgview: already loaded, idx: '+idx+', data: ',data);if(data.error){console.log('fire-error----->load (data.error=true)');this.fireEvent('error',data);return;}data.status='cached';this.images_data[idx]=data;this.fireEvent('load',data);return;}console.log('imgview: new load ('+this.images_data.length+')');var data={loaded:false,error:false,status:'loading',src:src,oryg_width:100,oryg_height:100,el_img:null};data.el_img=new Element('img',{src:'','title':title});this.images_data.push(data);data.el_img.set('src',src);data.el_img.addEvent('load',this.onLoad.bindWithEvent(this,src)).addEvent('error',this.onError.bindWithEvent(this,src));return this;}});var mm_log_module='';var mm_log_module='ui.tabcontrol';var mui_tabControl=new Class({Implements:[Options,Events],options:{active_class:'active',menu_class:'tabs_menu',default_tab:0},initialize:function(container,tabs,titles,options){this.tabs=new Array();this.setOptions(options);container=mui_ME(container);var etabs=container.getElements(tabs);var id,title,dtitle,tab;for(var i=0;i<etabs.length;i++){tab=etabs[i];dtitle=tab.getElement(titles);if(dtitle==null)continue;title=dtitle.get('text');dtitle.dispose();id=mui_createID(tab.getProperty('id'));this.tabs.push({id:id,obj:tab,title:title,selected:false});if(i!=this.options.default_tab)tab.hide();}var menu=new Element('div',{'class':this.options.menu_class});var menu_ul=new Element('ul');for(var i=0;i<this.tabs.length;i++){var li=new Element('li').injectInside(menu_ul);this.tabs[i].li=li;var a=new Element('a',{href:'#'}).set('text',this.tabs[i].title).inject(li);a.addEvent('click',this.tabClicked.bindWithEvent(this,this.tabs[i].id));if(i==this.options.default_tab){li.addClass(this.options.active_class);this.tabs[i].selected=true;this.visible_tab=this.tabs[i].id;this.fireEvent('showtab');}}menu_ul.injectInside(menu);menu.injectTop(container);this.menu=menu_ul;return this;},makeSpecial:function(id,_class,active_class){this.tabs[this.findTab(id)].li.addClass(_class);if(active_class!=null)this.tabs[this.findTab(id)].active_class=active_class;},doShowTab:function(idx){var tab=this.tabs[idx];var ac=this.options.active_class;if($is_def(tab.active_class))ac=tab.active_class;tab.obj.show();tab.selected=true;tab.li.addClass(ac);this.visible_tab=tab.id;this.fireEvent('showtab');return this;},doHideTab:function(idx){var tab=this.tabs[idx];var ac=this.options.active_class;if($is_def(tab.active_class))ac=tab.active_class;tab.selected=false;tab.obj.hide();tab.li.removeClass(ac);return this;},showTab:function(id){for(var i=0;i<this.tabs.length;i++){if(this.tabs[i].selected){this.doHideTab(i);}if(this.tabs[i].id==id){this.doShowTab(i);}}return this;},findTab:function(id){for(var i=0;i<this.tabs.length;i++){if(this.tabs[i].id==id){return i;}}return false;},tabClicked:function(e,id){e.stop();this.showTab(id);}});var mm_log_module='';var mm_log_module='ui.windows';var mui_window=new Class({Implements:[Options,Events],options:{'z-index':default_windows_zindex,'css_class':'mui_window',title:moo_lang.t('MooMilk User Interface'),width:'auto',height:'auto',title_bclose:true,default_visible:false,body:'<div class="window-title"><span class="text"></span></div><div class="window-body"></div><div class="window-status"><span class="status-busy"></span><span class="status-text"></span></div>'},initialize:function(htmlcontent,options){this.id=mui_createID();this.setOptions(options);var displ='none';if(this.options.default_visible)displ='block';this.el_window=new Element('div',{id:this.id,'class':this.options.css_class,styles:{display:displ,'z-index':this.options['z-index'],'position':'absolute'}}).injectInside(document.body);if(this.options.width!='auto'){var w=this.options.width;if(w<1)w=(window.getSize().x*w).toInt();if(w==0)w=500;this.el_window.set('styles',{width:w});}if(this.options.height!='auto'){var h=this.options.height;if(h<1)h=(window.getSize().y*h).toInt();if(h==0)h=400;this.el_window.set('styles',{height:h});}this.el_window.set('html',this.options.body);this.el_body=this.el_window.getElement('.window-body');if($is_def(htmlcontent)){if($type(htmlcontent)=='element'){this.el_body.grab(htmlcontent);}else if($type(htmlcontent)=='string'){this.el_body.set('html',htmlcontent);}}else{this.el_body.set('html','<p>Put your content using htmlcontent parameter.</p>');}this.el_title=this.el_window.getElement('.window-title');this.el_title.getElement('.text').set('html',this.options.title);if(this.options.title_bclose){var bclose=new Element('span',{'class':'window-title-close'}).addEvent('click',this.clickClose.bindWithEvent(this)).inject(this.el_title);}this.el_window.makeDraggable({handle:this.el_title});this.el_status=this.el_window.getElement('.window-status');this.el_status.getElement('.status-busy').hide();this.el_fx=new Element('div',{'styles':{'background':'none','border':'solid 1px #000','position':'absolute','z-index':10000}}).inject(document.body);this.fx_show=new Fx.Morph(this.el_fx,{'duration':200}).addEvent('onComplete',this.onFxShow.bindWithEvent(this));this.fx_hide=new Fx.Morph(this.el_fx,{'duration':200}).addEvent('onComplete',this.onFxHide.bindWithEvent(this));this.modal_block=new mui_blockUI();this.wblock=new mui_blockUI(this.el_body,{'z-index':this.options['z-index']+1});this.blocked=false;return this;},clickClose:function(e){if(this.blocked){dialogWarning(moo_lang.t('err.window.busy'));return;}this.hide();},calcStartupPosition:function(){var wsize=this.el_window.getSize();var wpx;var wpy;if(this.show_parent){var pp=this.show_parent.getCoordinates();wpx=pp.left;wpy=pp.top+pp.height+7;}else{wpx=mui_centerX(this.el_window);wpy=mui_centerY(this.el_window);}this.window_pos={left:wpx,top:wpy,width:wsize.x,height:wsize.y};return this;},fxShow:function(){this.el_window.setStyle('opacity',0.05);this.doShow(false);this.doHide(false);this.el_window.setStyle('opacity',1);var scroll=Window.getScroll();if(this.show_parent){var size=this.show_parent.getSize();var pos=this.show_parent.getPosition();var sleft=pos.x;var stop=pos.y;var swidth=size.x;var sheight=size.y;}else{var ws=Window.getSize();var sleft=ws.x/2-20+scroll.x;var stop=ws.y/2-20+scroll.y;var swidth=40;var sheight=40;}this.el_fx.setStyles({'left':sleft,'top':stop,'width':swidth,'height':sheight}).show();this.fx_show.start({'left':[sleft,this.window_pos.left],'top':[stop,this.window_pos.top],'width':[swidth,this.window_pos.width],'height':[sheight,this.window_pos.height]});},onFxShow:function(){this.el_fx.hide();this.doShow();},doShow:function(fire_event){if(!$is_def(fire_event))fire_event=true;this.el_window.show();this.calcStartupPosition();this.el_window.setStyles({left:this.window_pos.left,top:this.window_pos.top});if(fire_event)this.fireEvent('show');return this;},fxHide:function(){var scroll=Window.getScroll();this.calcStartupPosition();this.doHide();if(this.show_parent){var size=this.show_parent.getSize();var pos=this.show_parent.getPosition();var sleft=pos.x;var stop=pos.y;var swidth=size.x;var sheight=size.y;}else{var ws=Window.getSize();var sleft=ws.x/2-20+scroll.x;var stop=ws.y/2-20+scroll.y;var swidth=40;var sheight=40;}this.el_fx.setStyles({'left':this.window_pos.left,'top':this.window_pos.top,'width':this.window_pos.width,'height':this.window_pos.height}).show();this.fx_hide.start({'left':[this.window_pos.left,sleft],'top':[this.window_pos.top,stop],'width':[this.window_pos.width,swidth],'height':[this.window_pos.height,sheight]});return this;},onFxHide:function(){this.el_fx.hide();},doHide:function(fire_event){if(!$is_def(fire_event))fire_event=true;if(this.blocked)this.unblock();this.el_window.hide();if(fire_event)this.fireEvent('hide');return this;},show:function(html,show_parent){if(html!=null&&html!=false)this.el_body.set('html',html);this.show_parent=$(show_parent);this.fxShow();return this;},showModal:function(html,show_parent){this.modal_block.block();this.show(html,show_parent);return this;},hide:function(){if(this.modal_block.blocked)this.modal_block.unblock();if(!$is_def(this.window_pos)){this.el_window.hide();return this;}this.fxHide();return this;},setStatus:function(text,busy){if($is_def(busy))this.el_status.getElement('.status-busy').show();else this.el_status.getElement('.status-busy').hide();if(!$is_def(text))text='';this.el_status.getElement('.status-text').set('text',text);return this;},block:function(){this.wblock.block();this.blocked=true;},unblock:function(){this.wblock.unblock();this.blocked=false;}});var mm_log_module='';var mm_log_module='ui.panel';var mui_panel=new Class({Implements:[Options],options:{'open':true},initialize:function(title,body,parent,options){this.setOptions(options);this.panel_open=true;this.el_panel=new Element('div',{'class':'panel'}).inject(parent);this.el_title=new Element('div',{'class':'panel-title'}).inject(this.el_panel,'top');var title=new Element('div',{'class':'panel-title-text'}).set('text',title).inject(this.el_title);this.el_toggler=new Element('div',{'class':'panel-title-button-close'}).inject(this.el_title).addEvent('click',this.togglePanel.bindWithEvent(this));this.el_body=new Element('div',{'class':'panel-body'}).inject(this.el_panel);if($type(body)=='string'){this.el_body.set('html',body);}else this.el_body.grab(body);if(!this.options.open)this.togglePanel();},togglePanel:function(){if(this.panel_open){this.el_toggler.removeClass('panel-title-button-close').addClass('panel-title-button-open');this.panel_open=false;this.el_body.hide();}else{this.el_toggler.removeClass('panel-title-button-open').addClass('panel-title-button-close');this.panel_open=true;this.el_body.show();}}});var mm_log_module='';