Current File : /home/k/a/r/karenpetzb/www/items/category/elrte.tar
js/elrte.min.js000060400000474023150714137430007426 0ustar00function eli18n(a){this.textdomain=function(b){return this.messages[b]?this._domain=b:this._domain};a&&a.messages&&this.load(a.messages);a&&a.textdomain&&this.textdomain(a.textdomain)}eli18n.prototype=new function(){this.messages={};this._domain="";this.load=function(c){if(typeof(c)=="object"){for(var f in c){var b=c[f];if(typeof(b)=="object"){if(!this.messages[f]){this.messages[f]={}}for(var a in b){if(typeof(b[a])=="string"){this.messages[f][a]=b[a]}}}}}return this};this.translate=function(b,a){var a=a&&this.messages[a]?a:this._domain;
return this.messages[a]&&this.messages[a][b]?this.messages[a][b]:b};this.format=function(f,b,c){f=this.translate(f,c);if(typeof(b)=="object"){for(var a in b){f=f.replace("%"+a,this.translate(b[a],c))}}return f}};function elDialogForm(c){var a=this;var b={"class":"el-dialogform",submit:function(f,g){g.close()},form:{action:window.location.href,method:"post"},ajaxForm:null,validate:null,spinner:"Loading",tabs:{active:0,selected:0},tabPrefix:"el-df-tab-",dialog:{title:"dialog",autoOpen:false,modal:true,resizable:false,closeOnEscape:true,buttons:{Cancel:function(){a.close()
},Ok:function(){a.form.trigger("submit")}}}};this.opts=jQuery.extend(true,{},b,c);this.opts.dialog.close=function(){a.close()};if(this.opts.rtl){this.opts["class"]+=" el-dialogform-rtl"}if(c&&c.dialog&&c.dialog.buttons&&typeof(c.dialog.buttons)=="object"){this.opts.dialog.buttons=c.dialog.buttons}this.ul=null;this.tabs={};this._table=null;this.dialog=jQuery("<div />").addClass(this.opts["class"]).dialog(this.opts.dialog);this.message=jQuery('<div class="el-dialogform-message rounded-5" />').hide().appendTo(this.dialog);
this.error=jQuery('<div class="el-dialogform-error rounded-5" />').hide().appendTo(this.dialog);this.spinner=jQuery('<div class="spinner" />').hide().appendTo(this.dialog);this.content=jQuery('<div class="el-dialogform-content" />').appendTo(this.dialog);this.form=jQuery("<form />").attr(this.opts.form).appendTo(this.content);if(this.opts.submit){this.form.bind("submit",function(f){a.opts.submit(f,a)})}if(this.opts.ajaxForm&&jQuery.fn.ajaxForm){this.form.ajaxForm(this.opts.ajaxForm)}if(this.opts.validate){this.form.validate(this.opts.validate)
}this.option=function(f,g){return this.dialog.dialog("option",f,g)};this.showError=function(f,g){this.hideMessage();this.hideSpinner();this.error.html(f).show();g&&this.content.hide();return this};this.hideError=function(){this.error.text("").hide();this.content.show();return this};this.showSpinner=function(f){this.error.hide();this.message.hide();this.content.hide();this.spinner.text(f||this.opts.spinner).show();this.option("buttons",{});return this};this.hideSpinner=function(){this.content.show();
this.spinner.hide();return this};this.showMessage=function(f,g){this.hideError();this.hideSpinner();this.message.html(f||"").show();g&&this.content.hide();return this};this.hideMessage=function(){this.message.hide();this.content.show();return this};this.tab=function(g,f){g=this.opts.tabPrefix+g;if(!this.ul){this.ul=jQuery("<ul />").prependTo(this.form)}jQuery("<li />").append(jQuery("<a />").attr("href","#"+g).html(f)).appendTo(this.ul);this.tabs[g]={tab:jQuery("<div />").attr("id",g).addClass("tab").appendTo(this.form),table:null};
return this};this.table=function(f){f=f&&f.indexOf(this.opts.tabPrefix)==-1?this.opts.tabPrefix+f:f;if(f&&this.tabs&&this.tabs[f]){this.tabs[f].table=jQuery("<table />").appendTo(this.tabs[f].tab)}else{this._table=jQuery("<table />").appendTo(this.form)}return this};this.append=function(j,k,g){k=k?"el-df-tab-"+k:"";if(!j){return this}if(k&&this.tabs[k]){if(g){!this.tabs[k].table&&this.table(k);var h=jQuery("<tr />").appendTo(this.tabs[k].table);if(!jQuery.isArray(j)){h.append(jQuery("<td />").append(j))
}else{for(var f=0;f<j.length;f++){h.append(jQuery("<td />").append(j[f]))}}}else{if(!jQuery.isArray(j)){this.tabs[k].tab.append(j)}else{for(var f=0;f<j.length;f++){this.tabs[k].tab.append(j[f])}}}}else{if(!g){if(!jQuery.isArray(j)){this.form.append(j)}else{for(var f=0;f<j.length;f++){this.form.append(j[f])}}}else{if(!this._table){this.table()}var h=jQuery("<tr />").appendTo(this._table);if(!jQuery.isArray(j)){h.append(jQuery("<td />").append(j))}else{for(var f=0;f<j.length;f++){h.append(jQuery("<td />").append(j[f]))
}}}}return this};this.separator=function(f){f="el-df-tab-"+f;if(this.tabs&&this.tabs[f]){this.tabs[f].tab.append(jQuery("<div />").addClass("separator"));this.tabs[f].table&&this.table(f)}else{this.form.append(jQuery("<div />").addClass("separator"))}return this};this.open=function(){var f=this;this.ul&&this.form.tabs(this.opts.tabs);setTimeout(function(){f.dialog.find(":text").keydown(function(g){if(g.keyCode==13){g.preventDefault();f.form.submit()}}).filter(":first")[0].focus()},200);this.dialog.dialog("open");
return this};this.close=function(){if(typeof(this.opts.close)=="function"){this.opts.close()}this.dialog.dialog("destroy")}}(function(a){a.fn.elColorPicker=function(h){var b=this;var f=a.extend({},a.fn.elColorPicker.defaults,h);this.hidden=a('<input type="hidden" />').attr("name",f.name).val(f.color||"").appendTo(this);this.palette=null;this.preview=null;this.input=null;function c(j){b.val(j);f.change&&f.change(b.val());b.palette.slideUp()}function g(){b.palette=a("<div />").addClass(f.paletteClass+" rounded-3");
for(var j=0;j<f.colors.length;j++){a("<div />").addClass("color").css("background-color",f.colors[j]).attr({title:f.colors[j],unselectable:"on"}).appendTo(b.palette).mouseenter(function(){var k=a(this).attr("title");b.input.val(k);b.preview.css("background-color",k)}).click(function(k){k.stopPropagation();c(a(this).attr("title"))})}b.input=a('<input type="text" />').addClass("rounded-3").attr("size",8).click(function(k){k.stopPropagation();a(this).focus()}).keydown(function(p){if(p.ctrlKey||p.metaKey){return true
}var o=p.keyCode;if(o==27){return b.mouseleave()}if(o!=8&&o!=13&&o!=46&&o!=37&&o!=39&&(o<48||o>57)&&(o<65||o>70)){return false}var q=a(this).val();if(q.length==7||q.length==0){if(o==13){p.stopPropagation();p.preventDefault();c(q);b.palette.slideUp()}if(p.keyCode!=8&&p.keyCode!=46&&o!=37&&o!=39){return false}}}).keyup(function(k){var o=a(this).val();o.length==7&&/^#[0-9abcdef]{6}$/i.test(o)&&b.val(o)});b.preview=a("<div />").addClass("preview rounded-3").click(function(k){k.stopPropagation();c(b.input.val())
});b.palette.append(a("<div />").addClass("clearfix")).append(a("<div />").addClass("panel").append(b.input).append(b.preview));if(f.palettePosition=="outer"){b.palette.hide().appendTo(b.parents("body").eq(0)).mouseleave(function(){if(!b.palette.is(":animated")){a(this).slideUp();b.val(b.val())}});b.mouseleave(function(k){if(k.relatedTarget!=b.palette.get(0)){if(!b.palette.is(":animated")){b.palette.slideUp();b.val(b.val())}}})}else{b.append(b.palette.hide()).mouseleave(function(k){b.palette.slideUp();
b.val(b.val())})}b.val(b.val())}this.empty().addClass(f["class"]+" rounded-3").css({position:"relative","background-color":f.color||""}).click(function(p){if(!b.hasClass("disabled")){!b.palette&&g();if(f.palettePosition=="outer"&&b.palette.css("display")=="none"){var q=a(this).offset();var k=b.palette.width();var j=b.parents("body").width()-q.left>=k?q.left:q.left+a(this).outerWidth()-k;b.palette.css({left:j+"px",top:q.top+a(this).height()+1+"px"})}b.palette.slideToggle()}});this.val=function(j){if(!j&&j!==""){return this.hidden.val()
}else{this.hidden.val(j);if(f.update){f.update(this.hidden.val())}else{this.css("background-color",j)}if(b.palette){b.preview.css("background-color",j);b.input.val(j)}}return this};return this};a.fn.elColorPicker.defaults={"class":"el-colorpicker",paletteClass:"el-palette",palettePosition:"inner",name:"color",color:"",update:null,change:function(b){},colors:["#ffffff","#cccccc","#999999","#666666","#333333","#000000","#ffcccc","#cc9999","#996666","#663333","#330000","#ff9999","#cc6666","#cc3333","#993333","#660000","#ff6666","#ff3333","#ff0000","#cc0000","#990000","#ff9966","#ff6633","#ff3300","#cc3300","#993300","#ffcc99","#cc9966","#cc6633","#996633","#663300","#ff9933","#ff6600","#ff9900","#cc6600","#cc9933","#ffcc66","#ffcc33","#ffcc00","#cc9900","#996600","#ffffcc","#cccc99","#999966","#666633","#333300","#ffff99","#cccc66","#cccc33","#999933","#666600","#ffff66","#ffff33","#ffff00","#cccc00","#999900","#ccff66","#ccff33","#ccff00","#99cc00","#669900","#ccff99","#99cc66","#99cc33","#669933","#336600","#99ff33","#99ff00","#66ff00","#66cc00","#66cc33","#99ff66","#66ff33","#33ff00","#33cc00","#339900","#ccffcc","#99cc99","#669966","#336633","#003300","#99ff99","#66cc66","#33cc33","#339933","#006600","#66ff66","#33ff33","#00ff00","#00cc00","#009900","#66ff99","#33ff66","#00ff33","#00cc33","#009933","#99ffcc","#66cc99","#33cc66","#339966","#006633","#33ff99","#00ff66","#00ff99","#00cc66","#33cc99","#66ffcc","#33ffcc","#00ffcc","#00cc99","#009966","#ccffff","#99cccc","#669999","#336666","#003333","#99ffff","#66cccc","#33cccc","#339999","#006666","#66cccc","#33ffff","#00ffff","#00cccc","#009999","#66ccff","#33ccff","#00ccff","#0099cc","#006699","#99ccff","#6699cc","#3399cc","#336699","#003366","#3399ff","#0099ff","#0066ff","#066ccc","#3366cc","#6699ff","#3366ff","#0033ff","#0033cc","#003399","#ccccff","#9999cc","#666699","#333366","#000033","#9999ff","#6666cc","#3333cc","#333399","#000066","#6666ff","#3333ff","#0000ff","#0000cc","#009999","#9966ff","#6633ff","#3300ff","#3300cc","#330099","#cc99ff","#9966cc","#6633cc","#663399","#330066","#9933ff","#6600ff","#9900ff","#6600cc","#9933cc","#cc66ff","#cc33ff","#cc00ff","#9900cc","#660099","#ffccff","#cc99cc","#996699","#663366","#330033","#ff99ff","#cc66cc","#cc33cc","#993399","#660066","#ff66ff","#ff33ff","#ff00ff","#cc00cc","#990099","#ff66cc","#ff33cc","#ff00cc","#cc0099","#990066","#ff99cc","#cc6699","#cc3399","#993366","#660033","#ff3399","#ff0099","#ff0066","#cc0066","#cc3366","#ff6699","#ff3366","#ff0033","#cc0033","#990033"]}
})(jQuery);(function(a){a.fn.elBorderSelect=function(h){var k=this;var q=this.eq(0);var b=a.extend({},a.fn.elBorderSelect.defaults,h);var f=a('<input type="text" />').attr({name:b.name+"[width]",size:3}).css("text-align","right").change(function(){k.change()});var j=a("<div />").css("position","relative").elColorPicker({"class":"el-colorpicker ui-icon ui-icon-pencil",name:b.name+"[color]",palettePosition:"outer",change:function(){k.change()}});var c=a("<div />").elSelect({tpl:'<div style="border-bottom:4px %val #000;width:100%;margin:7px 0"> </div>',tpls:{"":"%label"},maxHeight:b.styleHeight||null,select:function(){k.change()
},src:{"":"none",solid:"solid",dashed:"dashed",dotted:"dotted","double":"double",groove:"groove",ridge:"ridge",inset:"inset",outset:"outset"}});q.empty().addClass(b["class"]).attr("name",b.name||"").append(a("<table />").attr("cellspacing",0).append(a("<tr />").append(a("<td />").append(f).append(" px")).append(a("<td />").append(c)).append(a("<td />").append(j))));function g(t){function r(u){hexDigits=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];return !u?"00":hexDigits[(u-u%16)/16]+hexDigits[u%16]
}var o=(t||"").match(/\(([0-9]{1,3}),\s*([0-9]{1,3}),\s*([0-9]{1,3})\)/);return o?"#"+r(o[1])+r(o[2])+r(o[3]):""}function p(r){if(!r){return r}var o=r.match(/([0-9]+\.?[0-9]*)\s*(px|pt|em|%)/);if(o){r=o[1];unit=o[2]}if(r[0]=="."){r="0"+r}r=parseFloat(r);if(isNaN(r)){return""}var t=parseInt(a(document.body).css("font-size"))||16;switch(unit){case"em":return parseInt(r*t);case"pt":return parseInt(r*t/12);case"%":return parseInt(r*t/100)}return r}this.change=function(){b.change&&b.change(this.val())
};this.val=function(u){var t,x,z,r,o;if(!u&&u!==""){t=parseInt(f.val());t=!isNaN(t)?t+"px":"";x=c.val();z=j.val();return{width:t,style:x,color:z,css:a.trim(t+" "+x+" "+z)}}else{r="";if(u.nodeName||u.css){if(!u.css){u=a(u)}r=u.css("border");if((r=u.css("border"))){t=x=z=r}else{t=u.css("border-width");x=u.css("border-style");z=u.css("border-color")}}else{t=u.width||"";x=u.style||"";z=u.color||""}f.val(p(t));o=x?x.match(/(solid|dashed|dotted|double|groove|ridge|inset|outset)/i):"";c.val(o?o[1]:"");j.val(z.indexOf("#")===0?z:g(z));
return this}};this.val(b.value);return this};a.fn.elBorderSelect.defaults={name:"el-borderselect","class":"el-borderselect",value:{},change:null}})(jQuery);(function(a){a.fn.elPaddingInput=function(g){var c=this;var f=a.extend({},a.fn.elPaddingInput.defaults,{name:this.attr("name")},g);this.regexps={main:new RegExp(f.type=="padding"?'paddings*:s*([^;"]+)':'margins*:s*([^;"]+)',"im"),left:new RegExp(f.type=="padding"?'padding-lefts*:s*([^;"]+)':'margin-lefts*:s*([^;"]+)',"im"),top:new RegExp(f.type=="padding"?'padding-tops*:s*([^;"]+)':'margin-tops*:s*([^;"]+)',"im"),right:new RegExp(f.type=="padding"?'padding-rights*:s*([^;"]+)':'margin-rights*:s*([^;"]+)',"im"),bottom:new RegExp(f.type=="padding"?'padding-bottoms*:s*([^;"]+)':'margin-bottoms*:s*([^;"]+)',"im")};
a.each(["left","top","right","bottom"],function(){c[this]=a('<input type="text" />').attr("size",3).css("text-align","right").css("border-"+this,"2px solid red").bind("change",function(){a(this).val(b(a(this).val()));h()}).attr("name",f.name+"["+this+"]")});a.each(["uleft","utop","uright","ubottom"],function(){c[this]=a("<select />").append('<option value="px">px</option>').append('<option value="em">em</option>').append('<option value="pt">pt</option>').bind("change",function(){h()}).attr("name",f.name+"["+this+"]");
if(f.percents){c[this].append('<option value="%">%</option>')}});this.empty().addClass(f["class"]).append(this.left).append(this.uleft).append(" x ").append(this.top).append(this.utop).append(" x ").append(this.right).append(this.uright).append(" x ").append(this.bottom).append(this.ubottom);this.val=function(z){if(!z&&z!==""){var q=b(this.left.val());var A=b(this.top.val());var j=b(this.right.val());var x=b(this.bottom.val());var w={left:q=="auto"||q==0?q:(q!==""?q+this.uleft.val():""),top:A=="auto"||A==0?A:(A!==""?A+this.utop.val():""),right:j=="auto"||j==0?j:(j!==""?j+this.uright.val():""),bottom:x=="auto"||x==0?x:(x!==""?x+this.ubottom.val():""),css:""};
if(w.left!==""&&w.right!==""&&w.top!==""&&w.bottom!==""){if(w.left==w.right&&w.top==w.bottom){w.css=w.top+" "+w.left}else{w.css=w.top+" "+w.right+" "+w.bottom+" "+w.left}}return w}else{if(z.nodeName||z.css){if(!z.css){z=a(z)}var o={left:"",top:"",right:"",bottom:""};var k=(z.attr("style")||"").toLowerCase();if(k){k=a.trim(k);var p=k.match(this.regexps.main);if(p){var u=a.trim(p[1]).replace(/\s+/g," ").split(" ",4);o.top=u[0];o.right=u[1]&&u[1]!==""?u[1]:o.top;o.bottom=u[2]&&u[2]!==""?u[2]:o.top;o.left=u[3]&&u[3]!==""?u[3]:o.right
}else{a.each(["left","top","right","bottom"],function(){var r=this.toString();p=k.match(c.regexps[r]);if(p){o[r]=p[1]}})}}var z=o}a.each(["left","top","right","bottom"],function(){var t=this.toString();c[t].val("");c["u"+t].val();if(typeof(z[t])!="undefined"&&z[t]!==null){z[t]=z[t].toString();var v=b(z[t]);c[t].val(v);var r=z[t].match(/(px|em|pt|%)/i);c["u"+t].val(r?r[1]:"px")}});return this}};function b(j){j=a.trim(j.toString());if(j[0]=="."){j="0"+j}n=parseFloat(j);return !isNaN(n)?n:(j=="auto"?j:"")
}function h(){f.change&&f.change(c)}this.val(f.value);return this};a.fn.elPaddingInput.defaults={name:"el-paddinginput","class":"el-paddinginput",type:"padding",value:{},percents:true,change:null}})(jQuery);(function(a){a.fn.elSelect=function(c){var q=this;var u=this.eq(0);var b=a.extend({},a.fn.elSelect.defaults,c);var g=a('<input type="hidden" />').attr("name",b.name);var p=a("<label />").attr({unselectable:"on"}).addClass("rounded-left-3");var h=null;var k=null;if(u.get(0).nodeName=="SELECT"){b.src={};
u.children("option").each(function(){b.src[a(this).val()]=a(this).text()});b.value=u.val();b.name=u.attr("name");u.replaceWith((u=a("<div />")))}if(!b.value||!b.src[b.val]){b.value=null;var f=0;for(var r in b.src){if(f++==0){b.value=r}}}this.val=function(o){if(!o&&o!==""){return g.val()}else{if(b.src[o]){g.val(o);j(o);if(h){h.children().each(function(){if(a(this).attr("name")==o){a(this).addClass("active")}else{a(this).removeClass("active")}})}}return this}};function j(o){var w=b.labelTpl||b.tpls[o]||b.tpl;
p.html(w.replace(/%val/g,o).replace(/%label/,b.src[o])).children().attr({unselectable:"on"})}u.empty().addClass(b["class"]+" rounded-3").attr({unselectable:"on"}).append(g).append(p).hover(function(){a(this).addClass("hover")},function(){a(this).removeClass("hover")}).click(function(o){!h&&t();h.slideToggle();if(a.browser.msie&&!k){h.children().each(function(){k=Math.max(k,a(this).width())});if(k>h.width()){h.width(k+40)}}});this.val(b.value);function t(){h=a("<div />").addClass(b.listClass+" rounded-3").hide().appendTo(u.mouseleave(function(v){h.slideUp()
}));for(var x in b.src){var z=b.tpls[x]||b.tpl;a("<div />").attr("name",x).append(a(z.replace(/%val/g,x).replace(/%label/g,b.src[x])).attr({unselectable:"on"})).appendTo(h).hover(function(){a(this).addClass("hover")},function(){a(this).removeClass("hover")}).click(function(B){B.stopPropagation();B.preventDefault();var w=a(this).attr("name");q.val(w);b.select(w);h.slideUp()})}var o=u.outerWidth();if(h.width()<o){h.width(o)}var A=h.height();if(b.maxHeight>0&&A>b.maxHeight){h.height(b.maxHeight)}q.val(g.val())
}return this};a.fn.elSelect.defaults={name:"el-select","class":"el-select",listClass:"list",labelTpl:null,tpl:"<%val>%label</%val>",tpls:{},value:null,src:{},select:function(b){window.console&&window.console.log&&window.console.log("selected: "+b)},maxHeight:410}})(jQuery);(function(a){elRTE=function(o,j){if(!o||!o.nodeName){return alert('elRTE: argument "target" is not DOM Element')}var c=this,f;this.version="1.3";this.build="2011-06-23";this.options=a.extend(true,{},this.options,j);this.browser=a.browser;
this.target=a(o);this.lang=(""+this.options.lang);this._i18n=new eli18n({textdomain:"rte",messages:{rte:this.i18Messages[this.lang]||{}}});this.rtl=!!(/^(ar|fa|he)$/.test(this.lang)&&this.i18Messages[this.lang]);if(this.rtl){this.options.cssClass+=" el-rte-rtl"}this.toolbar=a('<div class="toolbar"/>');this.iframe=document.createElement("iframe");this.iframe.setAttribute("frameborder",0);this.workzone=a('<div class="workzone"/>').append(this.iframe).append(this.source);this.statusbar=a('<div class="statusbar"/>');
this.tabsbar=a('<div class="tabsbar"/>');this.editor=a('<div class="'+this.options.cssClass+'" />').append(this.toolbar).append(this.workzone).append(this.statusbar).append(this.tabsbar);this.doc=null;this.$doc=null;this.window=null;this.utils=new this.utils(this);this.dom=new this.dom(this);this.filter=new this.filter(this);this.updateHeight=function(){c.workzone.add(c.iframe).add(c.source).height(c.workzone.height())};this.resizable=function(q){var p=this;if(this.options.resizable&&a.fn.resizable){if(q){this.editor.resizable({handles:"se",alsoResize:this.workzone,minWidth:300,minHeight:200}).bind("resize",p.updateHeight)
}else{this.editor.resizable("destroy").unbind("resize",p.updateHeight)}}};this.editor.insertAfter(o);var h="";if(o.nodeName=="TEXTAREA"){this.source=this.target;this.source.insertAfter(this.iframe).hide();h=this.target.val()}else{this.source=a("<textarea />").insertAfter(this.iframe).hide();h=this.target.hide().html()}this.source.attr("name",this.target.attr("name")||this.target.attr("id"));h=a.trim(h);if(!h){h=" "}if(this.options.allowSource){this.tabsbar.append('<div class="tab editor rounded-bottom-7 active">'+c.i18n("Editor")+'</div><div class="tab source rounded-bottom-7">'+c.i18n("Source")+'</div><div class="clearfix" style="clear:both"/>').children(".tab").click(function(p){if(!a(this).hasClass("active")){c.tabsbar.children(".tab").toggleClass("active");
c.workzone.children().toggle();if(a(this).hasClass("editor")){c.updateEditor();c.window.focus();c.ui.update(true)}else{c.updateSource();c.source.focus();if(a.browser.msie){}else{c.source[0].setSelectionRange(0,0)}c.ui.disable();c.statusbar.empty()}}})}this.window=this.iframe.contentWindow;this.doc=this.iframe.contentWindow.document;this.$doc=a(this.doc);f='<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';a.each(c.options.cssfiles,function(){f+='<link rel="stylesheet" type="text/css" href="'+this+'" />'
});this.doc.open();var g=this.filter.wysiwyg(h),b=this.rtl?' class="el-rte-rtl"':"";this.doc.write(c.options.doctype+f+"</head><body"+b+">"+(g)+"</body></html>");this.doc.close();if(a.browser.msie){this.doc.body.contentEditable=true}else{try{this.doc.designMode="on"}catch(k){}this.doc.execCommand("styleWithCSS",false,this.options.styleWithCSS)}if(this.options.height>0){this.workzone.height(this.options.height)}if(this.options.width>0){this.editor.width(this.options.width)}this.updateHeight();this.resizable(true);
this.window.focus();this.history=new this.history(this);this.selection=new this.selection(this);this.ui=new this.ui(this);this.target.parents("form").bind("submit.elfinder",function(p){c.source.parents("form").find('[name="el-select"]').remove();c.beforeSave()});this.source.bind("keydown",function(t){if(t.keyCode==9){t.preventDefault();if(a.browser.msie){var p=document.selection.createRange();p.text="\t"+p.text;this.focus()}else{var q=this.value.substr(0,this.selectionStart),u=this.value.substr(this.selectionEnd);
this.value=q+"\t"+u;this.setSelectionRange(q.length+1,q.length+1)}}});a(this.doc.body).bind("dragend",function(p){setTimeout(function(){try{c.window.focus();var r=c.selection.getBookmark();c.selection.moveToBookmark(r);c.ui.update()}catch(q){}},200)});this.typing=false;this.lastKey=null;this.$doc.bind("mouseup",function(){c.typing=false;c.lastKey=null;c.ui.update()}).bind("keyup",function(p){if((p.keyCode>=8&&p.keyCode<=13)||(p.keyCode>=32&&p.keyCode<=40)||p.keyCode==46||(p.keyCode>=96&&p.keyCode<=111)){c.ui.update()
}}).bind("keydown",function(p){if((p.metaKey||p.ctrlKey)&&p.keyCode==65){c.ui.update()}else{if(p.keyCode==13){var q=c.selection.getNode();if(c.dom.selfOrParent(q,/^PRE$/)){c.selection.insertNode(c.doc.createTextNode("\r\n"));return false}else{if(a.browser.safari&&p.shiftKey){c.selection.insertNode(c.doc.createElement("br"));return false}}}}if((p.keyCode>=48&&p.keyCode<=57)||p.keyCode==61||p.keyCode==109||(p.keyCode>=65&&p.keyCode<=90)||p.keyCode==188||p.keyCode==190||p.keyCode==191||(p.keyCode>=219&&p.keyCode<=222)){if(!c.typing){c.history.add(true)
}c.typing=true;c.lastKey=null}else{if(p.keyCode==8||p.keyCode==46||p.keyCode==32||p.keyCode==13){if(p.keyCode!=c.lastKey){c.history.add(true)}c.lastKey=p.keyCode;c.typing=false}}if(p.keyCode==32&&a.browser.opera){c.selection.insertNode(c.doc.createTextNode(" "));return false}}).bind("paste",function(q){if(!c.options.allowPaste){q.stopPropagation();q.preventDefault()}else{var t=a(c.dom.create("div"))[0],p=c.doc.createTextNode("_");c.history.add(true);c.typing=true;c.lastKey=null;t.appendChild(p);c.selection.deleteContents().insertNode(t);
c.selection.select(p);setTimeout(function(){if(t.parentNode){a(t).html(c.filter.proccess("paste",a(t).html()));p=t.lastChild;c.dom.unwrap(t);if(p){c.selection.select(p);c.selection.collapse(false)}}else{t.parentNode&&t.parentNode.removeChild(t);c.val(c.filter.proccess("paste",c.filter.wysiwyg2wysiwyg(a(c.doc.body).html())));c.selection.select(c.doc.body.firstChild);c.selection.collapse(true)}a(c.doc.body).mouseup()},15)}});if(a.browser.msie){this.$doc.bind("keyup",function(p){if(p.keyCode==86&&(p.metaKey||p.ctrlKey)){c.history.add(true);
c.typing=true;c.lastKey=null;c.selection.saveIERange();c.val(c.filter.proccess("paste",c.filter.wysiwyg2wysiwyg(a(c.doc.body).html())));c.selection.restoreIERange();a(c.doc.body).mouseup();this.ui.update()}})}if(a.browser.safari){this.$doc.bind("click",function(p){a(c.doc.body).find(".elrte-webkit-hl").removeClass("elrte-webkit-hl");if(p.target.nodeName=="IMG"){a(p.target).addClass("elrte-webkit-hl")}}).bind("keyup",function(p){a(c.doc.body).find(".elrte-webkit-hl").removeClass("elrte-webkit-hl")
})}this.window.focus();this.destroy=function(){this.updateSource();this.target.is("textarea")?this.target.val(a.trim(this.source.val())):this.target.html(a.trim(this.source.val()));this.editor.remove();this.target.show().parents("form").unbind("submit.elfinder")}};elRTE.prototype.i18n=function(b){return this._i18n.translate(b)};elRTE.prototype.open=function(){this.editor.show()};elRTE.prototype.close=function(){this.editor.hide()};elRTE.prototype.updateEditor=function(){this.val(this.source.val())
};elRTE.prototype.updateSource=function(){this.source.val(this.filter.source(a(this.doc.body).html()))};elRTE.prototype.val=function(b){if(typeof(b)=="string"){b=""+b;if(this.source.is(":visible")){this.source.val(this.filter.source2source(b))}else{if(a.browser.msie){this.doc.body.innerHTML="<br />"+this.filter.wysiwyg(b);this.doc.body.removeChild(this.doc.body.firstChild)}else{this.doc.body.innerHTML=this.filter.wysiwyg(b)}}}else{if(this.source.is(":visible")){return this.filter.source2source(this.source.val()).trim()
}else{return this.filter.source(a(this.doc.body).html()).trim()}}};elRTE.prototype.beforeSave=function(){this.source.val(a.trim(this.val())||"")};elRTE.prototype.save=function(){this.beforeSave();this.editor.parents("form").submit()};elRTE.prototype.log=function(b){if(window.console&&window.console.log){window.console.log(b)}};elRTE.prototype.i18Messages={};a.fn.elrte=function(g,b){var f=typeof(g)=="string"?g:"",c;this.each(function(){if(!this.elrte){this.elrte=new elRTE(this,typeof(g)=="object"?g:{})
}switch(f){case"open":case"show":this.elrte.open();break;case"close":case"hide":this.elrte.close();break;case"updateSource":this.elrte.updateSource();break;case"destroy":this.elrte.destroy()}});if(f=="val"){if(!this.length){return""}else{if(this.length==1){return b?this[0].elrte.val(b):this[0].elrte.val()}else{c={};this.each(function(){c[this.elrte.source.attr("name")]=this.elrte.val()});return c}}}return this}})(jQuery);(function(a){elRTE.prototype.dom=function(c){this.rte=c;var b=this;this.regExp={textNodes:/^(A|ABBR|ACRONYM|ADDRESS|B|BDO|BIG|BLOCKQUOTE|CAPTION|CENTER|CITE|CODE|DD|DEL|DFN|DIV|DT|EM|FIELDSET|FONT|H[1-6]|I|INS|KBD|LABEL|LEGEND|LI|MARQUEE|NOBR|NOEMBED|P|PRE|Q|SAMP|SMALL|SPAN|STRIKE|STRONG|SUB|SUP|TD|TH|TT|VAR)$/,textContainsNodes:/^(A|ABBR|ACRONYM|ADDRESS|B|BDO|BIG|BLOCKQUOTE|CAPTION|CENTER|CITE|CODE|DD|DEL|DFN|DIV|DL|DT|EM|FIELDSET|FONT|H[1-6]|I|INS|KBD|LABEL|LEGEND|LI|MARQUEE|NOBR|NOEMBED|OL|P|PRE|Q|SAMP|SMALL|SPAN|STRIKE|STRONG|SUB|SUP|TABLE|THEAD|TBODY|TFOOT|TD|TH|TR|TT|UL|VAR)$/,block:/^(APPLET|BLOCKQUOTE|BR|CAPTION|CENTER|COL|COLGROUP|DD|DIV|DL|DT|H[1-6]|EMBED|FIELDSET|LI|MARQUEE|NOBR|OBJECT|OL|P|PRE|TABLE|THEAD|TBODY|TFOOT|TD|TH|TR|UL)$/,selectionBlock:/^(APPLET|BLOCKQUOTE|BR|CAPTION|CENTER|COL|COLGROUP|DD|DIV|DL|DT|H[1-6]|EMBED|FIELDSET|LI|MARQUEE|NOBR|OBJECT|OL|P|PRE|TD|TH|TR|UL)$/,header:/^H[1-6]$/,formElement:/^(FORM|INPUT|HIDDEN|TEXTAREA|SELECT|BUTTON)$/};
this.root=function(){return this.rte.body};this.create=function(f){return this.rte.doc.createElement(f)};this.createBookmark=function(){var f=this.rte.doc.createElement("span");f.id="elrte-bm-"+Math.random().toString().substr(2);a(f).addClass("elrtebm elrte-protected");return f};this.indexOf=function(g){var f=0;g=a(g);while((g=g.prev())&&g.length){f++}return f};this.attr=function(h,f){var g="";if(h.nodeType==1){g=a(h).attr(f);if(g&&f!="src"&&f!="href"&&f!="title"&&f!="alt"){g=g.toString().toLowerCase()
}}return g||""};this.findCommonAncestor=function(j,h){if(!j||!h){return this.rte.log("dom.findCommonAncestor invalid arguments")}if(j==h){return j}else{if(j.nodeName=="BODY"||h.nodeName=="BODY"){return this.rte.doc.body}}var o=a(j).parents(),k=a(h).parents(),f=k.length-1,p=k[f];for(var g=o.length-1;g>=0;g--,f--){if(o[g]==k[f]){p=o[g]}else{break}}return p};this.isEmpty=function(f){if(f.nodeType==1){return this.regExp.textNodes.test(f.nodeName)?a.trim(a(f).text()).length==0:false}else{if(f.nodeType==3){return/^(TABLE|THEAD|TFOOT|TBODY|TR|UL|OL|DL)$/.test(f.parentNode.nodeName)||f.nodeValue==""||(a.trim(f.nodeValue).length==0&&!(f.nextSibling&&f.previousSibling&&f.nextSibling.nodeType==1&&f.previousSibling.nodeType==1&&!this.regExp.block.test(f.nextSibling.nodeName)&&!this.regExp.block.test(f.previousSibling.nodeName)))
}}return true};this.next=function(f){while(f.nextSibling&&(f=f.nextSibling)){if(f.nodeType==1||(f.nodeType==3&&!this.isEmpty(f))){return f}}return null};this.prev=function(f){while(f.previousSibling&&(f=f.previousSibling)){if(f.nodeType==1||(f.nodeType==3&&!this.isEmpty(f))){return f}}return null};this.isPrev=function(g,f){while((g=this.prev(g))){if(g==f){return true}}return false};this.nextAll=function(g){var f=[];while((g=this.next(g))){f.push(g)}return f};this.prevAll=function(g){var f=[];while((g=this.prev(g))){f.push(g)
}return f};this.toLineEnd=function(g){var f=[];while((g=this.next(g))&&g.nodeName!="BR"&&g.nodeName!="HR"&&this.isInline(g)){f.push(g)}return f};this.toLineStart=function(g){var f=[];while((g=this.prev(g))&&g.nodeName!="BR"&&g.nodeName!="HR"&&this.isInline(g)){f.unshift(g)}return f};this.isFirstNotEmpty=function(f){while((f=this.prev(f))){if(f.nodeType==1||(f.nodeType==3&&a.trim(f.nodeValue)!="")){return false}}return true};this.isLastNotEmpty=function(f){while((f=this.next(f))){if(!this.isEmpty(f)){return false
}}return true};this.isOnlyNotEmpty=function(f){return this.isFirstNotEmpty(f)&&this.isLastNotEmpty(f)};this.findLastNotEmpty=function(f){this.rte.log("findLastNotEmpty Who is here 0_o");if(f.nodeType==1&&(l=f.lastChild)){if(!this.isEmpty(l)){return l}while(l.previousSibling&&(l=l.previousSibling)){if(!this.isEmpty(l)){return l}}}return false};this.isInline=function(j){if(j.nodeType==3){return true}else{if(j.nodeType==1){j=a(j);var h=j.css("display");var g=j.css("float");return h=="inline"||h=="inline-block"||g=="left"||g=="right"
}}return true};this.is=function(h,g){if(h&&h.nodeName){if(typeof(g)=="string"){g=this.regExp[g]||/.?/}if(g instanceof RegExp&&h.nodeName){return g.test(h.nodeName)}else{if(typeof(g)=="function"){return g(h)}}}return false};this.filter=function(j,h){var f=[],g;if(!j.push){return this.is(j,h)?j:null}for(g=0;g<j.length;g++){if(this.is(j[g],h)){f.push(j[g])}}return f};this.parents=function(h,g){var f=[];while(h&&(h=h.parentNode)&&h.nodeName!="BODY"&&h.nodeName!="HTML"){if(this.is(h,g)){f.push(h)}}return f
};this.parent=function(h,g){return this.parents(h,g)[0]||null};this.selfOrParent=function(h,g,f){return this.is(h,g)?h:this.parent(h,f||g)};this.selfOrParentLink=function(f){f=this.selfOrParent(f,/^A$/);return f&&f.href?f:null};this.selfOrParentAnchor=function(f){f=this.selfOrParent(f,/^A$/);return f&&!f.href&&f.name?f:null};this.childLinks=function(g){var f=[];a("a[href]",g).each(function(){f.push(this)});return f};this.selectionHas=function(h){var j=this.rte.selection.cloneContents(),g;if(j&&j.childNodes&&j.childNodes.length){for(g=0;
g<j.childNodes.length;g++){if(typeof(h)=="function"){if(h(j.childNodes[g])){return true}}else{if(j instanceof RegExp){if(h.test(j.childNodes[g].nodeName)){return true}}}}}return false};this.wrap=function(g,f){g=a.isArray(g)?g:[g];f=f.nodeName?f:this.create(f);if(g[0]&&g[0].nodeType&&g[0].parentNode){f=g[0].parentNode.insertBefore(f,g[0]);a(g).each(function(){if(this!=f){f.appendChild(this)}})}return f};this.unwrap=function(f){if(f&&f.parentNode){while(f.firstChild){f.parentNode.insertBefore(f.firstChild,f)
}f.parentNode.removeChild(f)}};this.wrapContents=function(h,f){f=f.nodeName?f:this.create(f);for(var g=0;g<h.childNodes.length;g++){f.appendChild(h.childNodes[g])}h.appendChild(f);return f};this.cleanNode=function(f){if(f.nodeType!=1){return}if(/^(P|LI)$/.test(f.nodeName)&&(l=this.findLastNotEmpty(f))&&l.nodeName=="BR"){a(l).remove()}$n=a(f);$n.children().each(function(){this.cleanNode(this)});if(f.nodeName!="BODY"&&!/^(TABLE|TR|TD)$/.test(f)&&this.isEmpty(f)){return $n.remove()}if($n.attr("style")===""){$n.removeAttr("style")
}if(this.rte.browser.safari&&$n.hasClass("Apple-span")){$n.removeClass("Apple-span")}if(f.nodeName=="SPAN"&&!$n.attr("style")&&!$n.attr("class")&&!$n.attr("id")){$n.replaceWith($n.html())}};this.cleanChildNodes=function(g){var f=this.cleanNode;a(g).children().each(function(){f(this)})};this.tableMatrix=function(j){var h=[];if(j&&j.nodeName=="TABLE"){var g=0;function f(o){for(var k=0;k<=g;k++){if(!h[o][k]){return k}}}a(j).find("tr").each(function(k){if(!a.isArray(h[k])){h[k]=[]}a(this).children("td,th").each(function(){var p=parseInt(a(this).attr("colspan")||1);
var t=parseInt(a(this).attr("rowspan")||1);var r=f(k);for(var v=0;v<t;v++){for(var o=0;o<p;o++){var q=k+v;if(!a.isArray(h[q])){h[q]=[]}var u=o==0&&v==0?this:(v==0?o:"-");h[q][r+o]=u}}g=Math.max(g,h[k].length)})})}return h};this.indexesOfCell=function(j,h){for(var f=0;f<h.length;f++){for(var g=0;g<h[f].length;g++){if(h[f][g]==j){return[f,g]}}}};this.fixTable=function(q){if(q&&q.nodeName=="TABLE"){var h=a(q);var p=this.tableMatrix(q);var f=0;a.each(p,function(){f=Math.max(f,this.length)});if(f==0){return h.remove()
}for(var k=0;k<p.length;k++){var g=p[k].length;if(g==0){h.find("tr").eq(k).remove()}else{if(g<f){var j=f-g;var o=h.find("tr").eq(k);for(i=0;i<j;i++){o.append("<td>&nbsp;</td>")}}}}}};this.tableColumn=function(h,g,o){h=this.selfOrParent(h,/^TD|TH$/);var j=this.selfOrParent(h,/^TABLE$/);ret=[];info={offset:[],delta:[]};if(h&&j){o&&this.fixTable(j);var u=this.tableMatrix(j);var v=false;var t;for(var f=0;f<u.length;f++){for(var q=0;q<u[f].length;q++){if(u[f][q]==h){t=q;v=true;break}}if(v){break}}if(t>=0){for(var f=0;
f<u.length;f++){var k=u[f][t]||null;if(k){if(k.nodeName){ret.push(k);if(g){info.delta.push(0);info.offset.push(t)}}else{var p=parseInt(k);if(!isNaN(p)&&u[f][t-p]&&u[f][t-p].nodeName){ret.push(u[f][t-p]);if(g){info.delta.push(p);info.offset.push(t)}}}}}}}return !g?ret:{column:ret,info:info}}}})(jQuery);(function(a){elRTE.prototype.filter=function(c){var b=this,f=a("<span/>").addClass("elrtetesturl").appendTo(document.body)[0];this.url=(typeof(f.currentStyle)!="undefined"?f.currentStyle.backgroundImage:document.defaultView.getComputedStyle(f,null)["backgroundImage"]).replace(/^url\((['"]?)([\s\S]+\/)[\s\S]+\1\)$/i,"$2");
a(f).remove();this.rte=c;this.xhtml=/xhtml/i.test(c.options.doctype);this.boolAttrs=c.utils.makeObject("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected".split(","));this.tagRegExp=/<(\/?)([\w:]+)((?:\s+[a-z\-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*\/?>/g;this.openTagRegExp=/<([\w:]+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*\/?>/g;this.attrRegExp=/(\w+)(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^\s]+))?/g;this.scriptRegExp=/<script([^>]*)>([\s\S]*?)<\/script>/gi;
this.styleRegExp=/(<style([^>]*)>[\s\S]*?<\/style>)/gi;this.linkRegExp=/(<link([^>]+)>)/gi;this.cdataRegExp=/<!\[CDATA\[([\s\S]+)\]\]>/g;this.objRegExp=/<object([^>]*)>([\s\S]*?)<\/object>/gi;this.embRegExp=/<(embed)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*>/gi;this.paramRegExp=/<(param)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*>/gi;this.iframeRegExp=/<iframe([^>]*)>([\s\S]*?)<\/iframe>/gi;this.yMapsRegExp=/<div\s+([^>]*id\s*=\s*('|")?YMapsID[^>]*)>/gi;this.gMapsRegExp=/<iframe\s+([^>]*src\s*=\s*"http:\/\/maps\.google\.\w+[^>]*)>([\s\S]*?)<\/iframe>/gi;
this.videoHostRegExp=/^(http:\/\/[\w\.]*)?(youtube|vimeo|rutube).*/i;this.serviceClassRegExp=/<(\w+)([^>]*class\s*=\s*"[^>]*elrte-[^>]*)>\s*(<\/\1>)?/gi;this.pagebreakRegExp=/<(\w+)([^>]*style\s*=\s*"[^>]*page-break[^>]*)>\s*(<\/\1>)?/gi;this.pbRegExp=new RegExp("<!-- pagebreak -->","gi");this.allowTags=c.options.allowTags.length?c.utils.makeObject(c.options.allowTags):null;this.denyTags=c.options.denyTags.length?c.utils.makeObject(c.options.denyTags):null;this.denyAttr=c.options.denyAttr?c.utils.makeObject(c.options.denyAttr):null;
this.pasteDenyAttr=c.options.pasteDenyAttr?c.utils.makeObject(c.options.pasteDenyAttr):null;this.fontSize=["medium","xx-small","small","medium","large","x-large","xx-large"];this.fontFamily={"sans-serif":/^(arial|tahoma|verdana)$/i,serif:/^(times|times new roman)$/i,monospace:/^courier$/i};this.scripts={};this._chains={};a.each(this.chains,function(g){b._chains[g]=[];a.each(this,function(h,j){typeof(b.rules[j])=="function"&&b._chains[g].push(b.rules[j])})});this.proccess=function(h,g){g=a.trim(g).replace(/^\s*(&nbsp;)+/gi,"").replace(/(&nbsp;|<br[^>]*>)+\s*$/gi,"");
a.each(this._chains[h]||[],function(){g=this.call(b,g)});g=g.replace(/\t/g,"  ").replace(/\r/g,"").replace(/\s*\n\s*\n+/g,"\n")+"  ";return a.trim(g)?g:" "};this.wysiwyg=function(g){return this.proccess("wysiwyg",g)};this.source=function(g){return this.proccess("source",g)};this.source2source=function(g){return this.proccess("source2source",g)};this.wysiwyg2wysiwyg=function(g){return this.proccess("wysiwyg2wysiwyg",g)};this.parseAttrs=function(p){var j={},h=this.boolAttrs,g=p.match(this.attrRegExp),o,q,k;
g&&a.each(g,function(r,t){o=t.split("=");q=a.trim(o[0]).toLowerCase();if(o.length>2){o.shift();k=o.join("=")}else{k=h[q]||o[1]||""}j[q]=a.trim(k).replace(/^('|")(.*)(\1)$/,"$2")});j.style=this.rte.utils.parseStyle(j.style);j["class"]=this.rte.utils.parseClass(j["class"]||"");return j};this.serializeAttrs=function(g,k){var j=[],h=this;a.each(g,function(p,o){if(p=="style"){o=h.rte.utils.serializeStyle(o,k)}else{if(p=="class"){o=h.rte.utils.serializeClass(o)}}o&&j.push(p+'="'+o+'"')});return j.join(" ")
};this.cleanAttrs=function(g,j){var h=this,o=this.replaceAttrs;a.each(g["class"],function(p){/^(Apple-style-span|mso\w+)$/i.test(p)&&delete g["class"][p]});function k(p){return p+(/\d$/.test(p)?"px":"")}a.each(g,function(q,p){o[q]&&o[q].call(h,g,j);if(q=="style"){a.each(p,function(t,r){switch(t){case"mso-padding-alt":case"mso-padding-top-alt":case"mso-padding-right-alt":case"mso-padding-bottom-alt":case"mso-padding-left-alt":case"mso-margin-alt":case"mso-margin-top-alt":case"mso-margin-right-alt":case"mso-margin-bottom-alt":case"mso-margin-left-alt":case"mso-table-layout-alt":case"mso-height":case"mso-width":case"mso-vertical-align-alt":g.style[t.replace(/^mso-|-alt$/g,"")]=k(r);
delete g.style[t];break;case"horiz-align":g.style["text-align"]=r;delete g.style[t];break;case"vert-align":g.style["vertical-align"]=r;delete g.style[t];break;case"font-color":case"mso-foreground":g.style.color=r;delete g.style[t];break;case"mso-background":case"mso-highlight":g.style.background=r;delete g.style[t];break;case"mso-default-height":g.style["min-height"]=k(r);delete g.style[t];break;case"mso-default-width":g.style["min-width"]=k(r);delete g.style[t];break;case"mso-padding-between-alt":g.style["border-collapse"]="separate";
g.style["border-spacing"]=k(r);delete g.style[t];break;case"text-line-through":if(r.match(/(single|double)/i)){g.style["text-decoration"]="line-through"}delete g.style[t];break;case"mso-zero-height":if(r=="yes"){g.style.display="none"}delete g.style[t];break;case"font-weight":if(r==700){g.style["font-weight"]="bold"}break;default:if(t.match(/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/)){delete g.style[t]
}}})}});return g}};elRTE.prototype.filter.prototype.replaceTags={b:{tag:"strong"},big:{tag:"span",style:{"font-size":"large"}},center:{tag:"div",style:{"text-align":"center"}},i:{tag:"em"},font:{tag:"span"},nobr:{tag:"span",style:{"white-space":"nowrap"}},menu:{tag:"ul"},plaintext:{tag:"pre"},s:{tag:"strike"},small:{tag:"span",style:{"font-size":"small"}},u:{tag:"span",style:{"text-decoration":"underline"}},xmp:{tag:"pre"}};elRTE.prototype.filter.prototype.replaceAttrs={align:function(b,c){switch(c){case"img":b.style[b.align.match(/(left|right)/)?"float":"vertical-align"]=b.align;
break;case"table":if(b.align=="center"){b.style["margin-left"]=b.style["margin-right"]="auto"}else{b.style["float"]=b.align}break;default:b.style["text-align"]=b.align}delete b.align},border:function(b){!b.style["border-width"]&&(b.style["border-width"]=(parseInt(b.border)||1)+"px");!b.style["border-style"]&&(b.style["border-style"]="solid");delete b.border},bordercolor:function(b){!b.style["border-color"]&&(b.style["border-color"]=b.bordercolor);delete b.bordercolor},background:function(b){!b.style["background-image"]&&(b.style["background-image"]="url("+b.background+")");
delete b.background},bgcolor:function(b){!b.style["background-color"]&&(b.style["background-color"]=b.bgcolor);delete b.bgcolor},clear:function(b){b.style.clear=b.clear=="all"?"both":b.clear;delete b.clear},color:function(b){!b.style.color&&(b.style.color=b.color);delete b.color},face:function(b){var c=b.face.toLowerCase();a.each(this.fontFamily,function(g,f){if(c.match(f)){b.style["font-family"]=c+","+g}});delete b.face},hspace:function(b,f){if(f=="img"){var c=parseInt(b.hspace)||0;!b.style["margin-left"]&&(b.style["margin-left"]=c+"px");
!b.style["margin-right"]&&(b.style["margin-right"]=c+"px");delete b.hspace}},size:function(b,c){if(c!="input"){b.style["font-size"]=this.fontSize[parseInt(b.size)||0]||"medium";delete b.size}},valign:function(b){if(!b.style["vertical-align"]){b.style["vertical-align"]=b.valign}delete b.valign},vspace:function(b,f){if(f=="img"){var c=parseInt(b.vspace)||0;!b.style["margin-top"]&&(b.style["margin-top"]=c+"px");!b.style["margin-bottom"]&&(b.style["margin-bottom"]=c+"px");delete b.hspace}}};elRTE.prototype.filter.prototype.rules={allowedTags:function(c){var b=this.allowTags;
return b?c.replace(this.tagRegExp,function(f,h,g){return b[g.toLowerCase()]?f:""}):c},deniedTags:function(b){var c=this.denyTags;return c?b.replace(this.tagRegExp,function(f,h,g){return c[g.toLowerCase()]?"":f}):b},clean:function(g){var c=this,b=this.replaceTags,h=this.replaceAttrs,f=this.denyAttr,j;g=g.replace(/<!DOCTYPE([\s\S]*)>/gi,"").replace(/<p [^>]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi,"<p><strong>$1</strong></p>").replace(/<span\s+style\s*=\s*"\s*mso-spacerun\s*:\s*yes\s*;?\s*"\s*>([\s&nbsp;]*)<\/span>/gi,"$1").replace(/(<p[^>]*>\s*<\/p>|<p[^>]*\/>)/gi,"<br>").replace(/(<\/p>)(?:\s*<br\s*\/?>\s*|\s*&nbsp;\s*)+\s*(<p[^>]*>)/gi,function(o,k,p){return k+"\n"+p
}).replace(this.tagRegExp,function(o,q,p,k){p=p.toLowerCase();if(q){return"</"+(b[p]?b[p].tag:p)+">"}k=c.cleanAttrs(c.parseAttrs(k||""),p);if(b[p]){b[p].style&&a.extend(k.style,b[p].style);p=b[p].tag}f&&a.each(k,function(r){if(f[r]){delete k[r]}});k=c.serializeAttrs(k);return"<"+p+(k?" ":"")+k+">"});j=a("<div>"+g+"</div>");j.find("span:not([id]):not([class])").each(function(){var k=a(this);if(!k.attr("style")){a.trim(k.html()).length?c.rte.dom.unwrap(this):k.remove()}}).end().find("span span:only-child").each(function(){var o=a(this),u=o.parent().eq(0),r=o.attr("id"),k=u.attr("id"),w,q,v;
if(c.rte.dom.isOnlyNotEmpty(this)&&(!r||!k)){v=a.trim(u.attr("class")+" "+o.attr("class"));v&&u.attr("class",v);q=c.rte.utils.serializeStyle(a.extend(c.rte.utils.parseStyle(a(this).attr("style")||""),c.rte.utils.parseStyle(a(u).attr("style")||"")));q&&u.attr("style",q);w=r||k;w&&u.attr("id",w);this.firstChild?a(this.firstChild).unwrap():o.remove()}}).end().find("a[name]").each(function(){a(this).addClass("elrte-protected elrte-anchor")});return j.html()},cleanPaste:function(c){var b=this,f=this.pasteDenyAttr;
c=c.replace(this.scriptRegExp,"").replace(this.styleRegExp,"").replace(this.linkRegExp,"").replace(this.cdataRegExp,"").replace(/\<\!--[\s\S]*?--\>/g,"");if(this.rte.options.pasteOnlyText){c=c.replace(this.tagRegExp,function(g,j,h){return/br/i.test(h)||(j&&/h[1-6]|p|ol|ul|li|div|blockquote|tr/i)?"<br>":""}).replace(/(&nbsp;|<br[^>]*>)+\s*$/gi,"")}else{if(f){c=c.replace(this.openTagRegExp,function(h,j,g){g=b.parseAttrs(g);a.each(g,function(k){if(f[k]){delete g[k]}});g=b.serializeAttrs(g,true);return"<"+j+(g?" ":"")+g+">"
})}}return c},replace:function(o){var q=this,b=this.rte.options.replace||[],g;if(b.length){a.each(b,function(r,t){if(typeof(t)=="function"){o=t.call(q,o)}})}function k(x,D){var E=r(),B=E&&q.videoHostRegExp.test(E)?E.replace(q.videoHostRegExp,"$2"):D.replace(/^\w+\/(.+)/,"$1"),C=parseInt((x.obj?x.obj.width||x.obj.style.width:0)||(x.embed?x.embed.width||x.embed.style.width:0))||150,A=parseInt((x.obj?x.obj.height||x.obj.style.height:0)||(x.embed?x.embed.height||x.embed.style.height:0))||100,v="media"+Math.random().toString().substring(2),u="",z;
function r(){if(x.embed&&x.embed.src){return x.embed.src}if(x.params&&x.params.length){z=x.params.length;while(z--){if(x.params[z].name=="src"||x.params[z].name=="movie"){return x.params[z].value}}}}if(x.obj&&x.obj.style&&x.obj.style["float"]){u=' style="float:'+x.obj.style["float"]+'"'}q.scripts[v]=x;return'<img src="'+q.url+'pixel.gif" class="elrte-media elrte-media-'+B+' elrte-protected" title="'+(E?q.rte.utils.encode(E):"")+'" rel="'+v+'" width="'+C+'" height="'+A+'"'+u+">"}o=o.replace(this.styleRegExp,"<!-- ELRTE_COMMENT$1 -->").replace(this.linkRegExp,"<!-- ELRTE_COMMENT$1-->").replace(this.cdataRegExp,"<!--[CDATA[$1]]-->").replace(this.scriptRegExp,function(u,r,v){var w;
if(q.denyTags.script){return""}w="script"+Math.random().toString().substring(2);r=q.parseAttrs(r);!r.type&&(r.type="text/javascript");q.scripts[w]="<script "+q.serializeAttrs(r)+">"+v+"<\/script>";return"<!-- ELRTE_SCRIPT:"+(w)+" -->"}).replace(this.yMapsRegExp,function(u,r){r=q.parseAttrs(r);r["class"]["elrte-yandex-maps"]="elrte-yandex-maps";r["class"]["elrte-protected"]="elrte-protected";return"<div "+q.serializeAttrs(r)+">"}).replace(this.gMapsRegExp,function(v,u){var z="gmaps"+Math.random().toString().substring(2),r,x;
u=q.parseAttrs(u);r=parseInt(u.width||u.style.width||100);x=parseInt(u.height||u.style.height||100);q.scripts[z]=v;return'<img src="'+q.url+'pixel.gif" class="elrte-google-maps elrte-protected" id="'+z+'" style="width:'+r+"px;height:"+x+'px">'}).replace(this.objRegExp,function(w,u,z){var r=z.match(q.embRegExp),x={obj:q.parseAttrs(u),embed:r&&r.length?q.parseAttrs(r[0].substring(7)):null,params:[]},v=q.rte.utils.mediaInfo(x.embed?x.embed.type||"":"",x.obj.classid||"");if(v){if((r=z.match(q.paramRegExp))){a.each(r,function(t,A){x.params.push(q.parseAttrs(A.substring(6)))
})}!x.obj.classid&&(x.obj.classid=v.classid[0]);!x.obj.codebase&&(x.obj.codebase=v.codebase);x.embed&&!x.embed.type&&(x.embed.type=v.type);x.obj.width=="1"&&delete x.obj.width;x.obj.height=="1"&&delete x.obj.height;if(x.embed){x.embed.width=="1"&&delete x.embed.width;x.embed.height=="1"&&delete x.embed.height}return k(x,v.type)}return w}).replace(this.embRegExp,function(v,w,r){var r=q.parseAttrs(r),u=q.rte.utils.mediaInfo(r.type||"");r.width=="1"&&delete r.width;r.height=="1"&&delete r.height;return u?k({embed:r},u.type):v
}).replace(this.iframeRegExp,function(x,u){var u=q.parseAttrs(u);var r=u.style.width||(parseInt(u.width)>1?parseInt(u.width)+"px":"100px");var z=u.style.height||(parseInt(u.height)>1?parseInt(u.height)+"px":"100px");var A="iframe"+Math.random().toString().substring(2);q.scripts[A]=x;var v='<img id="'+A+'" src="'+q.url+'pixel.gif" class="elrte-protected elrte-iframe" style="width:'+r+"; height:"+z+'">';return v}).replace(this.vimeoRegExp,function(u,v,r){r=q.parseAttrs(r);delete r.frameborder;r.width=="1"&&delete r.width;
r.height=="1"&&delete r.height;r.type="application/x-shockwave-flash";return k({embed:r},"application/x-shockwave-flash")}).replace(/<\/(embed|param)>/gi,"").replace(this.pbRegExp,function(){return'<img src="'+q.url+'pixel.gif" class="elrte-protected elrte-pagebreak">'});g=a("<div>"+o+"</div>");if(!this.rte.options.allowTextNodes){var h=this.rte.dom,c=[],p=[];if(a.browser.msie){for(var j=0;j<g[0].childNodes.length;j++){c.push(g[0].childNodes[j])}}else{c=Array.prototype.slice.call(g[0].childNodes)
}function f(){if(p.length&&h.filter(p,"notEmpty").length){h.wrap(p,document.createElement("p"))}p=[]}a.each(c,function(r,t){if(h.is(t,"block")){f()}else{if(p.length&&t.previousSibling!=p[p.length-1]){f()}p.push(t)}});f()}return g.html()},restore:function(c){var b=this,f=this.rte.options.restore||[];if(f.length){a.each(f,function(g,h){if(typeof(h)=="function"){c=h.call(b,c)}})}c=c.replace(/\<\!--\[CDATA\[([\s\S]*?)\]\]--\>/gi,"<![CDATA[$1]]>").replace(/\<\!--\s*ELRTE_SCRIPT\:\s*(script\d+)\s*--\>/gi,function(g,h){if(b.scripts[h]){g=b.scripts[h];
delete b.scripts[h]}return g||""}).replace(/\<\!-- ELRTE_COMMENT([\s\S]*?) --\>/gi,"$1").replace(this.serviceClassRegExp,function(k,r,g,p){var g=b.parseAttrs(g),h,q="";if(g["class"]["elrte-google-maps"]){var k="";if(b.scripts[g.id]){k=b.scripts[g.id];delete b.scripts[g.id]}return k}else{if(g["class"]["elrte-iframe"]){return b.scripts[g.id]||""}else{if(g["class"]["elrtebm"]){return""}else{if(g["class"]["elrte-media"]){h=b.scripts[g.rel]||{};h.params&&a.each(h.params,function(j,o){q+="<param "+b.serializeAttrs(o)+">\n"
});h.embed&&(q+="<embed "+b.serializeAttrs(h.embed)+">");h.obj&&(q="<object "+b.serializeAttrs(h.obj)+">\n"+q+"\n</object>\n");return q||k}else{if(g["class"]["elrte-pagebreak"]){return"<!-- pagebreak -->"}}}}}a.each(g["class"],function(j){if(/^elrte-\w+/i.test(j)){delete (g["class"][j])}});return"<"+r+" "+b.serializeAttrs(g)+">"+(p||"")});return c},compactStyles:function(c){var b=this;return c.replace(this.tagRegExp,function(g,j,h,f){f=!j&&f?b.serializeAttrs(b.parseAttrs(f),true):"";return"<"+j+h.toLowerCase()+(f?" ":"")+f+">"
})},xhtmlTags:function(b){return this.xhtml?b.replace(/<(img|hr|br|embed|param|link|area)([^>]*\/*)>/gi,"<$1$2 />"):b}};elRTE.prototype.filter.prototype.chains={wysiwyg:["replace","clean","allowedTags","deniedTags","compactStyles"],source:["clean","allowedTags","restore","compactStyles","xhtmlTags"],paste:["clean","allowedTags","cleanPaste","replace","deniedTags","compactStyles"],wysiwyg2wysiwyg:["clean","allowedTags","restore","replace","deniedTags","compactStyles"],source2source:["clean","allowedTags","replace","deniedTags","restore","compactStyles","xhtmlTags"]}
})(jQuery);(function(a){elRTE.prototype.history=function(b){this.rte=b;this._prev=[];this._next=[];this.add=function(){if(this.rte.options.historyLength>0&&this._prev.length>=this.rte.options.historyLength){this._prev.slice(this.rte.options.historyLength)}var c=this.rte.selection.getBookmark();this._prev.push([a(this.rte.doc.body).html(),c]);this.rte.selection.moveToBookmark(c);this._next=[]};this.back=function(){if(this._prev.length){var c=this.rte.selection.getBookmark(),f=this._prev.pop();this._next.push([a(this.rte.doc.body).html(),c]);
a(this.rte.doc.body).html(f[0]);this.rte.selection.moveToBookmark(f[1])}};this.fwd=function(){if(this._next.length){var c=this.rte.selection.getBookmark(),f=this._next.pop();this._prev.push([a(this.rte.doc.body).html(),c]);a(this.rte.doc.body).html(f[0]);this.rte.selection.moveToBookmark(f[1])}};this.canBack=function(){return this._prev.length};this.canFwd=function(){return this._next.length}}})(jQuery);(function(a){elRTE.prototype.options={doctype:'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">',cssClass:"el-rte",cssfiles:[],height:null,resizable:true,lang:"en",toolbar:"normal",absoluteURLs:true,allowSource:true,stripWhiteSpace:true,styleWithCSS:false,fmAllow:true,fmOpen:null,allowTags:[],denyTags:["applet","base","basefont","bgsound","blink","body","col","colgroup","isindex","frameset","html","head","meta","marquee","noframes","noembed","o:p","title","xml"],denyAttr:[],pasteDenyAttr:["id","name","class","style","language","onclick","ondblclick","onhover","onkeup","onkeydown","onkeypress"],allowTextNodes:true,allowBrowsersSpecStyles:false,allowPaste:true,pasteOnlyText:false,replace:[],restore:[],pagebreak:'<div style="page-break-after: always;"></div>',buttons:{save:"Save",copy:"Copy",cut:"Cut",css:"Css style and class",paste:"Paste",pastetext:"Paste only text",pasteformattext:"Paste formatted text",removeformat:"Clean format",undo:"Undo last action",redo:"Redo previous action",bold:"Bold",italic:"Italic",underline:"Underline",strikethrough:"Strikethrough",superscript:"Superscript",subscript:"Subscript",justifyleft:"Align left",justifyright:"Ailgn right",justifycenter:"Align center",justifyfull:"Align full",indent:"Indent",outdent:"Outdent",rtl:"Right to left",ltr:"Left to right",forecolor:"Font color",hilitecolor:"Background color",formatblock:"Format",fontsize:"Font size",fontname:"Font",insertorderedlist:"Ordered list",insertunorderedlist:"Unordered list",horizontalrule:"Horizontal rule",blockquote:"Blockquote",div:"Block element (DIV)",link:"Link",unlink:"Delete link",anchor:"Bookmark",image:"Image",pagebreak:"Page break",smiley:"Smiley",flash:"Flash",table:"Table",tablerm:"Delete table",tableprops:"Table properties",tbcellprops:"Table cell properties",tbrowbefore:"Insert row before",tbrowafter:"Insert row after",tbrowrm:"Delete row",tbcolbefore:"Insert column before",tbcolafter:"Insert column after",tbcolrm:"Delete column",tbcellsmerge:"Merge table cells",tbcellsplit:"Split table cell",docstructure:"Toggle display document structure",elfinder:"Open file manager",fullscreen:"Toggle full screen mode",nbsp:"Non breakable space",stopfloat:"Stop element floating",about:"About this software"},panels:{eol:[],save:["save"],copypaste:["copy","cut","paste","pastetext","pasteformattext","removeformat","docstructure"],undoredo:["undo","redo"],style:["bold","italic","underline","strikethrough","subscript","superscript"],colors:["forecolor","hilitecolor"],alignment:["justifyleft","justifycenter","justifyright","justifyfull"],indent:["outdent","indent"],format:["formatblock","fontsize","fontname"],lists:["insertorderedlist","insertunorderedlist"],elements:["horizontalrule","blockquote","div","stopfloat","css","nbsp","smiley","pagebreak"],direction:["ltr","rtl"],links:["link","unlink","anchor"],images:["image"],media:["image","flash"],tables:["table","tableprops","tablerm","tbrowbefore","tbrowafter","tbrowrm","tbcolbefore","tbcolafter","tbcolrm","tbcellprops","tbcellsmerge","tbcellsplit"],elfinder:["elfinder"],fullscreen:["fullscreen","about"]},toolbars:{tiny:["style"],compact:["save","undoredo","style","alignment","lists","links","fullscreen"],normal:["save","copypaste","undoredo","style","alignment","colors","indent","lists","links","elements","images","fullscreen"],complete:["save","copypaste","undoredo","style","alignment","colors","format","indent","lists","links","elements","media","fullscreen"],maxi:["save","copypaste","undoredo","elfinder","style","alignment","direction","colors","format","indent","lists","links","elements","media","tables","fullscreen"],eldorado:["save","copypaste","elfinder","undoredo","style","alignment","colors","format","indent","lists","links","elements","media","tables","fullscreen"]},panelNames:{save:"Save",copypaste:"Copy/Pase",undoredo:"Undo/Redo",style:"Text styles",colors:"Colors",alignment:"Alignment",indent:"Indent/Outdent",format:"Text format",lists:"Lists",elements:"Misc elements",direction:"Script direction",links:"Links",images:"Images",media:"Media",tables:"Tables",elfinder:"File manager (elFinder)"}}
})(jQuery);(function(a){elRTE.prototype.selection=function(g){this.rte=g;var c=this;this.w3cRange=null;var o,b,j,k;a(this.rte.doc).keyup(function(p){if(p.ctrlKey||p.metaKey||(p.keyCode>=8&&p.keyCode<=13)||(p.keyCode>=32&&p.keyCode<=40)||p.keyCode==46||(p.keyCode>=96&&p.keyCode<=111)){c.cleanCache()}}).mousedown(function(p){if(p.target.nodeName=="HTML"){o=c.rte.doc.body}else{o=p.target}b=j=null}).mouseup(function(p){if(p.target.nodeName=="HTML"){b=c.rte.doc.body}else{b=p.target}b=p.target;j=null}).click();
function h(){return c.rte.window.getSelection?c.rte.window.getSelection():c.rte.window.document.selection}function f(t,r,q){while(t.nodeName!="BODY"&&t.parentNode&&t.parentNode.nodeName!="BODY"&&(r?t!==r&&t.parentNode!=r:1)&&((q=="left"&&c.rte.dom.isFirstNotEmpty(t))||(q=="right"&&c.rte.dom.isLastNotEmpty(t))||(c.rte.dom.isFirstNotEmpty(t)&&c.rte.dom.isLastNotEmpty(t)))){t=t.parentNode}return t}this.collapsed=function(){return this.getRangeAt().isCollapsed()};this.collapse=function(p){var q=h(),t=this.getRangeAt();
t.collapse(p?true:false);if(!a.browser.msie){q.removeAllRanges();q.addRange(t)}return this};this.getRangeAt=function(t){if(this.rte.browser.msie){if(!this.w3cRange){this.w3cRange=new this.rte.w3cRange(this.rte)}t&&this.w3cRange.update();return this.w3cRange}var p=h();var q=p.rangeCount>0?p.getRangeAt(0):this.rte.doc.createRange();q.getStart=function(){return this.startContainer.nodeType==1?this.startContainer.childNodes[Math.min(this.startOffset,this.startContainer.childNodes.length-1)]:this.startContainer
};q.getEnd=function(){return this.endContainer.nodeType==1?this.endContainer.childNodes[Math.min(this.startOffset==this.endOffset?this.endOffset:this.endOffset-1,this.endContainer.childNodes.length-1)]:this.endContainer};q.isCollapsed=function(){return this.collapsed};return q};this.saveIERange=function(){if(a.browser.msie){k=this.getRangeAt().getBookmark()}};this.restoreIERange=function(){a.browser.msie&&k&&this.getRangeAt().moveToBookmark(k)};this.cloneContents=function(){var v=this.rte.dom.create("div"),q,u,p;
if(a.browser.msie){try{q=this.rte.window.document.selection.createRange()}catch(t){q=this.rte.doc.body.createTextRange()}a(v).html(q.htmlText)}else{u=this.getRangeAt().cloneContents();for(p=0;p<u.childNodes.length;p++){v.appendChild(u.childNodes[p].cloneNode(true))}}return v};this.select=function(t,w){w=w||t;if(this.rte.browser.msie){var u=this.rte.doc.body.createTextRange(),q=u.duplicate(),p=u.duplicate();q.moveToElementText(t);p.moveToElementText(w);u.setEndPoint("StartToStart",q);u.setEndPoint("EndToEnd",p);
u.select()}else{var v=h(),u=this.getRangeAt();u.setStartBefore(t);u.setEndAfter(w);v.removeAllRanges();v.addRange(u)}return this.cleanCache()};this.selectContents=function(u){var q=this.getRangeAt();if(u&&u.nodeType==1){if(this.rte.browser.msie){q.range();q.r.moveToElementText(u.parentNode);q.r.select()}else{try{q.selectNodeContents(u)}catch(t){return this.rte.log("unable select node contents "+u)}var p=h();p.removeAllRanges();p.addRange(q)}}return this};this.deleteContents=function(){if(!a.browser.msie){this.getRangeAt().deleteContents()
}return this};this.insertNode=function(v,u){if(u&&!this.collapsed()){this.collapse()}if(this.rte.browser.msie){var p=v.nodeType==3?v.nodeValue:a(this.rte.dom.create("span")).append(a(v)).html();var t=this.getRangeAt();t.insertNode(p)}else{var t=this.getRangeAt();t.insertNode(v);t.setStartAfter(v);t.setEndAfter(v);var q=h();q.removeAllRanges();q.addRange(t)}return this.cleanCache()};this.insertHtml=function(p,q){if(q&&!this.collapsed()){this.collapse()}if(this.rte.browser.msie){this.getRangeAt().range().pasteHTML(p)
}else{var r=a(this.rte.dom.create("span")).html(p||"").get(0);this.insertNode(r);a(r).replaceWith(a(r).html())}return this.cleanCache()};this.insertText=function(q,p){var r=this.rte.doc.createTextNode(q);return this.insertHtml(r.nodeValue)};this.getBookmark=function(){this.rte.window.focus();var p,v,t,z,w,A=this.rte.dom.createBookmark(),x=this.rte.dom.createBookmark();if(a.browser.msie){try{p=this.rte.window.document.selection.createRange()}catch(x){p=this.rte.doc.body.createTextRange()}if(p.item){var u=p.item(0);
p=this.rte.doc.body.createTextRange();p.moveToElementText(u)}v=p.duplicate();t=p.duplicate();z=this.rte.dom.create("span");w=this.rte.dom.create("span");z.appendChild(A);w.appendChild(x);v.collapse(true);v.pasteHTML(z.innerHTML);t.collapse(false);t.pasteHTML(w.innerHTML)}else{var q=h();var p=q.rangeCount>0?q.getRangeAt(0):this.rte.doc.createRange();v=p.cloneRange();t=p.cloneRange();t.collapse(false);t.insertNode(x);v.collapse(true);v.insertNode(A);this.select(A,x)}return[A.id,x.id]};this.moveToBookmark=function(p){this.rte.window.focus();
if(p&&p.length==2){var q=this.rte.doc.getElementById(p[0]),v=this.rte.doc.getElementById(p[1]),u,t;if(q&&v){this.select(q,v);if(this.rte.dom.next(q)==v){this.collapse(true)}if(!a.browser.msie){u=h();t=u.rangeCount>0?u.getRangeAt(0):this.rte.doc.createRange();u.removeAllRanges();u.addRange(t)}q.parentNode.removeChild(q);v.parentNode.removeChild(v)}}return this};this.removeBookmark=function(p){this.rte.window.focus();if(p.length==2){var q=this.rte.doc.getElementById(p[0]),r=this.rte.doc.getElementById(p[1]);
if(q&&r){q.parentNode.removeChild(q);r.parentNode.removeChild(r)}}};this.cleanCache=function(){o=b=j=null;return this};this.getStart=function(){if(!o){var p=this.getRangeAt();o=p.getStart()}return o};this.getEnd=function(){if(!b){var p=this.getRangeAt();b=p.getEnd()}return b};this.getNode=function(){if(!j){j=this.rte.dom.findCommonAncestor(this.getStart(),this.getEnd())}return j};this.selected=function(r){var p={collapsed:false,blocks:false,filter:false,wrap:"text",tag:"span"};p=a.extend({},p,r);
if(p.blocks){var v=this.getNode(),u=null;if(u=this.rte.dom.selfOrParent(v,"selectionBlock")){return[u]}}var t=this.selectedRaw(p.collapsed,p.blocks);var A=[];var w=[];var B=null;function q(){function D(){for(var F=0;F<w.length;F++){if(w[F].nodeType==1&&(c.rte.dom.selfOrParent(w[F],/^P$/)||a(w[F]).find("p").length>0)){return false}}return true}if(w.length>0){var C=p.tag=="p"&&!D()?"div":p.tag;var E=c.rte.dom.wrap(w,C);A[B]=E;B=null;w=[]}}function z(E){if(E.nodeType==1){if(/^(THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(E.nodeName)){a(E).find("td,th").each(function(){var F=p.tag=="p"&&a(this).find("p").length>0?"div":p.tag;
var G=c.rte.dom.wrapContents(this,F);return A.push(G)})}else{if(/^(CAPTION|TD|TH|LI|DT|DD)$/.test(E.nodeName)){var C=p.tag=="p"&&a(E).find("p").length>0?"div":p.tag;var E=c.rte.dom.wrapContents(E,C);return A.push(E)}}}var D=w.length>0?w[w.length-1]:null;if(D&&D!=c.rte.dom.prev(E)){q()}w.push(E);if(B===null){B=A.length;A.push("dummy")}}if(t.nodes.length>0){for(var x=0;x<t.nodes.length;x++){var v=t.nodes[x];if(v.nodeType==3&&(x==0||x==t.nodes.length-1)&&a.trim(v.nodeValue).length>0){if(x==0&&t.so>0){v=v.splitText(t.so)
}if(x==t.nodes.length-1&&t.eo>0){v.splitText(x==0&&t.so>0?t.eo-t.so:t.eo)}}switch(p.wrap){case"text":if((v.nodeType==1&&v.nodeName=="BR")||(v.nodeType==3&&a.trim(v.nodeValue).length>0)){z(v)}else{if(v.nodeType==1){A.push(v)}}break;case"inline":if(this.rte.dom.isInline(v)){z(v)}else{if(v.nodeType==1){A.push(v)}}break;case"all":if(v.nodeType==1||!this.rte.dom.isEmpty(v)){z(v)}break;default:if(v.nodeType==1||!this.rte.dom.isEmpty(v)){A.push(v)}}}q()}if(A.length){this.rte.window.focus();this.select(A[0],A[A.length-1])
}return p.filter?this.rte.dom.filter(A,p.filter):A};this.dump=function(p,t,w,v,q){var u=this.getRangeAt();this.rte.log("commonAncestorContainer");this.rte.log(p||u.commonAncestorContainer);this.rte.log("startContainer");this.rte.log(t||u.startContainer);this.rte.log("startOffset: "+(v>=0?v:u.startOffset));this.rte.log("endContainer");this.rte.log(w||u.endContainer);this.rte.log("endOffset: "+(q>=0?q:u.endOffset))};this.selectedRaw=function(z,p){var F={so:null,eo:null,nodes:[]};var q=this.getRangeAt(true);
var w=q.commonAncestorContainer;var H,E;var D=false;var B=false;function C(J,r,I){if(J.nodeType==3){I=I>=0?I:J.nodeValue.length;return(r==0&&I==J.nodeValue.length)||a.trim(J.nodeValue).length==a.trim(J.nodeValue.substring(r,I)).length}return true}function x(J,r,I){if(J.nodeType==1){return c.rte.dom.isEmpty(J)}else{if(J.nodeType==3){return a.trim(J.nodeValue.substring(r||0,I>=0?I:J.nodeValue.length)).length==0}}return true}if(q.startContainer.nodeType==1){if(q.startOffset<q.startContainer.childNodes.length){H=q.startContainer.childNodes[q.startOffset];
F.so=H.nodeType==1?null:0}else{H=q.startContainer.childNodes[q.startOffset-1];F.so=H.nodeType==1?null:H.nodeValue.length}}else{H=q.startContainer;F.so=q.startOffset}if(q.collapsed){if(z){if(p){H=f(H);if(!this.rte.dom.isEmpty(H)||(H=this.rte.dom.next(H))){F.nodes=[H]}if(this.rte.dom.isInline(H)){F.nodes=this.rte.dom.toLineStart(H).concat(F.nodes,this.rte.dom.toLineEnd(H))}if(F.nodes.length>0){F.so=F.nodes[0].nodeType==1?null:0;F.eo=F.nodes[F.nodes.length-1].nodeType==1?null:F.nodes[F.nodes.length-1].nodeValue.length
}}else{if(!this.rte.dom.isEmpty(H)){F.nodes=[H]}}}return F}if(q.endContainer.nodeType==1){E=q.endContainer.childNodes[q.endOffset-1];F.eo=E.nodeType==1?null:E.nodeValue.length}else{E=q.endContainer;F.eo=q.endOffset}if(H.nodeType==1||p||C(H,F.so,H.nodeValue.length)){H=f(H,w,"left");D=true;F.so=H.nodeType==1?null:0}if(E.nodeType==1||p||C(E,0,F.eo)){E=f(E,w,"right");B=true;F.eo=E.nodeType==1?null:E.nodeValue.length}if(p){if(H.nodeType!=1&&H.parentNode!=w&&H.parentNode.nodeName!="BODY"){H=H.parentNode;
F.so=null}if(E.nodeType!=1&&E.parentNode!=w&&E.parentNode.nodeName!="BODY"){E=E.parentNode;F.eo=null}}if(H.parentNode==E.parentNode&&H.parentNode.nodeName!="BODY"&&(D&&this.rte.dom.isFirstNotEmpty(H))&&(B&&this.rte.dom.isLastNotEmpty(E))){H=E=H.parentNode;F.so=H.nodeType==1?null:0;F.eo=E.nodeType==1?null:E.nodeValue.length}if(H==E){if(!this.rte.dom.isEmpty(H)){F.nodes.push(H)}return F}var t=H;while(t.nodeName!="BODY"&&t.parentNode!==w&&t.parentNode.nodeName!="BODY"){t=t.parentNode}var G=E;while(G.nodeName!="BODY"&&G.parentNode!==w&&G.parentNode.nodeName!="BODY"){G=G.parentNode
}if(!x(H,F.so,H.nodeType==3?H.nodeValue.length:null)){F.nodes.push(H)}var v=H;while(v!==t){var u=v;while((u=this.rte.dom.next(u))){F.nodes.push(u)}v=v.parentNode}v=t;while((v=this.rte.dom.next(v))&&v!=G){F.nodes.push(v)}var A=[];v=E;while(v!==G){var u=v;while((u=this.rte.dom.prev(u))){A.push(u)}v=v.parentNode}if(A.length){F.nodes=F.nodes.concat(A.reverse())}if(!x(E,0,E.nodeType==3?F.eo:null)){F.nodes.push(E)}if(p){if(this.rte.dom.isInline(H)){F.nodes=this.rte.dom.toLineStart(H).concat(F.nodes);F.so=F.nodes[0].nodeType==1?null:0
}if(this.rte.dom.isInline(E)){F.nodes=F.nodes.concat(this.rte.dom.toLineEnd(E));F.eo=F.nodes[F.nodes.length-1].nodeType==1?null:F.nodes[F.nodes.length-1].nodeValue.length}}return F}}})(jQuery);(function(a){elRTE.prototype.ui=function(f){this.rte=f;this._buttons=[];var v=this,o=this.rte.options.toolbars[f.options.toolbar&&f.options.toolbars[f.options.toolbar]?f.options.toolbar:"normal"],r=o.length,g,k,j,h,t,u,q;for(q in this.buttons){if(this.buttons.hasOwnProperty(q)&&q!="button"){this.buttons[q].prototype=this.buttons.button.prototype
}}while(r--){first=(r==0?true:false);if(o[r-1]=="eol"){first=true}k=o[r];if(k=="eol"){a(this.rte.doc.createElement("br")).prependTo(this.rte.toolbar);continue}g=a('<ul class="panel-'+k+(first?" first":"")+'" />').prependTo(this.rte.toolbar);g.bind("mousedown",function(b){b.preventDefault()});j=this.rte.options.panels[k].length;while(j--){h=this.rte.options.panels[k][j];t=this.buttons[h]||this.buttons.button;this._buttons.push((u=new t(this.rte,h)));g.prepend(u.domElem)}}this.update();this.disable=function(){a.each(v._buttons,function(){!this.active&&this.domElem.addClass("disabled")
})}};elRTE.prototype.ui.prototype.update=function(h){h&&this.rte.selection.cleanCache();var f=this.rte.selection.getNode(),c=this.rte.dom.parents(f,"*"),j=this.rte.rtl,q=j?" &laquo; ":" &raquo; ",o="",b,g;function k(r){var p=r.nodeName.toLowerCase();r=a(r);if(p=="img"){if(r.hasClass("elrte-media")){p="media"}else{if(r.hasClass("elrte-google-maps")){p="google map"}else{if(r.hasClass("elrte-yandex-maps")){p="yandex map"}else{if(r.hasClass("elrte-pagebreak")){p="pagebreak"}}}}}return p}if(f&&f.nodeType==1&&f.nodeName!="BODY"){c.unshift(f)
}if(!j){c=c.reverse()}for(g=0;g<c.length;g++){o+=(g>0?q:"")+k(c[g])}this.rte.statusbar.html(o);a.each(this._buttons,function(){this.update()});this.rte.window.focus()};elRTE.prototype.ui.prototype.buttons={button:function(f,c){var b=this;this.rte=f;this.active=false;this.name=c;this.val=null;this.domElem=a('<li style="-moz-user-select:-moz-none" class="'+c+' rounded-3" name="'+c+'" title="'+this.rte.i18n(this.rte.options.buttons[c]||c)+'" unselectable="on" />').hover(function(){a(this).addClass("hover")
},function(){a(this).removeClass("hover")}).click(function(g){g.stopPropagation();g.preventDefault();if(!a(this).hasClass("disabled")){b.command()}b.rte.window.focus()})}};elRTE.prototype.ui.prototype.buttons.button.prototype.command=function(){this.rte.history.add();try{this.rte.doc.execCommand(this.name,false,this.val)}catch(b){return this.rte.log("commands failed: "+this.name)}this.rte.ui.update(true)};elRTE.prototype.ui.prototype.buttons.button.prototype.update=function(){try{if(!this.rte.doc.queryCommandEnabled(this.name)){return this.domElem.addClass("disabled")
}else{this.domElem.removeClass("disabled")}}catch(b){return}try{if(this.rte.doc.queryCommandState(this.name)){this.domElem.addClass("active")}else{this.domElem.removeClass("active")}}catch(b){}}})(jQuery);(function(a){elRTE.prototype.utils=function(c){this.rte=c;this.url=null;this.reg=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/;this.baseURL="";this.path="";
this.entities={"&":"&amp;",'"':"&quot;","<":"&lt;",">":"&gt;"};this.entitiesRegExp=/[<>&\"]/g;this.media=[{type:"application/x-shockwave-flash",classid:["clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"],codebase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"},{type:"application/x-director",classid:["clsid:166b1bca-3f9c-11cf-8075-444553540000"],codebase:"http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0"},{type:"application/x-mplayer2",classid:["clsid:6bf52a52-394a-11d3-b153-00c04f79faa6","clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95","clsid:05589fa1-c356-11ce-bf01-00aa0055595a"],codebase:"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"},{type:"video/quicktime",classid:["clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b"],codebase:"http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0"},{type:"audio/x-pn-realaudio-plugin",classid:["clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa"],codebase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"}];
this.rgbRegExp=/\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*/i;this.colorsRegExp=/aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|rgb\s*\([^\)]+\)/i;this.colors={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",orange:"#ffa500",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#fffffff",yellow:"#ffff00"};
var b=this;this.rgb2hex=function(f){return this.color2Hex(""+f)};this.toPixels=function(g){var f=g.match(/([0-9]+\.?[0-9]*)\s*(px|pt|em|%)/);if(f){g=f[1];unit=f[2]}if(g[0]=="."){g="0"+g}g=parseFloat(g);if(isNaN(g)){return""}var h=parseInt(a(document.body).css("font-size"))||16;switch(unit){case"em":return parseInt(g*h);case"pt":return parseInt(g*h/12);case"%":return parseInt(g*h/100)}return g};this.absoluteURL=function(g){!this.url&&this._url();g=a.trim(g);if(!g){return""}if(g[0]=="#"){return g}var f=this.parseURL(g);
if(!f.host&&!f.path&&!f.anchor){return""}if(!this.rte.options.absoluteURLs){return g}if(f.protocol){return g}if(f.host&&(f.host.indexOf(".")!=-1||f.host=="localhost")){return this.url.protocol+"://"+g}if(g[0]=="/"){g=this.baseURL+g}else{if(g.indexOf("./")==0){g=g.substring(2)}g=this.baseURL+this.path+g}return g};this.parseURL=function(h){var g=h.match(this.reg);var f={};a.each(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(j){f[this]=g[j]
});if(!f.host.match(/[a-z0-9]/i)){f.host=""}return f};this.trimEventCallback=function(f){f=f?f.toString():"";return a.trim(f.replace(/\r*\n/mg,"").replace(/^function\s*on[a-z]+\s*\(\s*event\s*\)\s*\{(.+)\}$/igm,"$1"))};this._url=function(){this.url=this.parseURL(window.location.href);this.baseURL=this.url.protocol+"://"+(this.url.userInfo?parts.userInfo+"@":"")+this.url.host+(this.url.port?":"+this.url.port:"");this.path=!this.url.file?this.url.path:this.url.path.substring(0,this.url.path.length-this.url.file.length)
};this.makeObject=function(g){var f={};a.each(g,function(h,j){f[j]=j});return f};this.encode=function(f){var g=this.entities;return(""+f).replace(this.entitiesRegExp,function(h){return g[h]})};this.decode=function(f){return a("<div/>").html(f||"").text()};this.parseStyle=function(k){var h={},f=this.rte.options.allowBrowsersSpecStyles,j,q,g,o;if(typeof(k)=="string"&&k.length){a.each(k.replace(/&quot;/gi,"'").split(";"),function(p,r){if((o=r.indexOf(":"))!==-1){q=a.trim(r.substr(0,o));g=a.trim(r.substr(o+1));
if(q=="color"||q=="background-color"){g=g.toLowerCase()}if(q&&g&&(f||q.substring(0,1)!="-")){h[q]=g}}})}return h};this.compactStyle=function(g){var f=this;if(g.border=="medium none"){delete g.border}a.each(g,function(j,h){if(/color$/i.test(j)){g[j]=f.color2Hex(h)}else{if(/^(border|background)$/i.test(j)){g[j]=h.replace(f.colorsRegExp,function(k){return f.color2Hex(k)})}}});if(g["border-width"]){g.border=g["border-width"]+" "+(g["border-style"]||"solid")+" "+(g["border-color"]||"#000");delete g["border-width"];
delete g["border-style"];delete g["border-color"]}if(g["background-image"]){g.background=(g["background-color"]+" ")||""+g["background-image"]+" "+g["background-position"]||"0 0 "+g["background-repeat"]||"repeat";delete g["background-image"];delete ["background-image"];delete ["background-position"];delete ["background-repeat"]}if(g["margin-top"]&&g["margin-right"]&&g["margin-bottom"]&&g["margin-left"]){g.margin=g["margin-top"]+" "+g["margin-right"]+" "+g["margin-bottom"]+" "+g["margin-left"];delete g["margin-top"];
delete g["margin-right"];delete g["margin-bottom"];delete g["margin-left"]}if(g["padding-top"]&&g["padding-right"]&&g["padding-bottom"]&&g["padding-left"]){g.padding=g["padding-top"]+" "+g["padding-right"]+" "+g["padding-bottom"]+" "+g["padding-left"];delete g["padding-top"];delete g["padding-right"];delete g["padding-bottom"];delete g["padding-left"]}if(g["list-style-type"]||g["list-style-position"]||g["list-style-image"]){g["list-style"]=a.trim(g["list-style-type"]||" "+g["list-style-position"]||""+g["list-style-image"]||"");
delete g["list-style-type"];delete g["list-style-position"];delete g["list-style-image"]}return g};this.serializeStyle=function(g,h){var f=[];a.each(h?this.compactStyle(g):g,function(k,j){j&&f.push(k+":"+j)});return f.join(";")};this.parseClass=function(f){f=a.trim(f);return f.length?this.makeObject(f.split(/\s+/)):{};return f.length?f.split(/\s+/):[]};this.serializeClass=function(h){var g=[];var f=this.rte;a.each(h,function(j){g.push(j)});return g.join(" ")};this.mediaInfo=function(g,h){var f=this.media.length;
while(f--){if(g===this.media[f].type||(h&&a.inArray(h,this.media[f].classid)!=-1)){return this.media[f]}}};this.color2Hex=function(h){var f;h=h||"";if(h.indexOf("#")===0){return h}function g(j){j=parseInt(j).toString(16);return j.length>1?j:"0"+j}if(this.colors[h]){return this.colors[h]}if((f=h.match(this.rgbRegExp))){return"#"+g(f[1])+g(f[2])+g(f[3])}return""}}})(jQuery);(function(a){elRTE.prototype.w3cRange=function(c){var b=this;this.rte=c;this.r=null;this.collapsed=true;this.startContainer=null;
this.endContainer=null;this.startOffset=0;this.endOffset=0;this.commonAncestorContainer=null;this.range=function(){try{this.r=this.rte.window.document.selection.createRange()}catch(f){this.r=this.rte.doc.body.createTextRange()}return this.r};this.insertNode=function(f){this.range();b.r.collapse(false);var g=b.r.duplicate();g.pasteHTML(f)};this.getBookmark=function(){this.range();if(this.r.item){var f=this.r.item(0);this.r=this.rte.doc.body.createTextRange();this.r.moveToElementText(f)}return this.r.getBookmark()
};this.moveToBookmark=function(f){this.rte.window.focus();this.range().moveToBookmark(f);this.r.select()};this.update=function(){function h(x){var k="\uFEFF";var o=offset=0;var t=b.r.duplicate();t.collapse(x);var u=t.parentElement();if(!u||u.nodeName=="HTML"){return{parent:b.rte.doc.body,ndx:o,offset:offset}}t.pasteHTML(k);childs=u.childNodes;for(var q=0;q<childs.length;q++){var w=childs[q];if(q>0&&(w.nodeType!==3||childs[q-1].nodeType!==3)){o++}if(w.nodeType!==3){offset=0}else{var v=w.nodeValue.indexOf(k);
if(v!==-1){offset+=v;break}offset+=w.nodeValue.length}}t.moveStart("character",-1);t.text="";return{parent:u,ndx:Math.min(o,u.childNodes.length-1),offset:offset}}this.range();this.startContainer=this.endContainer=null;if(this.r.item){this.collapsed=false;var g=this.r.item(0);this.setStart(g.parentNode,this.rte.dom.indexOf(g));this.setEnd(g.parentNode,this.startOffset+1)}else{this.collapsed=this.r.boundingWidth==0;var j=h(true);var f=h(false);j.parent.normalize();f.parent.normalize();j.ndx=Math.min(j.ndx,j.parent.childNodes.length-1);
f.ndx=Math.min(f.ndx,f.parent.childNodes.length-1);if(j.parent.childNodes[j.ndx].nodeType&&j.parent.childNodes[j.ndx].nodeType==1){this.setStart(j.parent,j.ndx)}else{this.setStart(j.parent.childNodes[j.ndx],j.offset)}if(f.parent.childNodes[f.ndx].nodeType&&f.parent.childNodes[f.ndx].nodeType==1){this.setEnd(f.parent,f.ndx)}else{this.setEnd(f.parent.childNodes[f.ndx],f.offset)}this.select()}return this};this.isCollapsed=function(){this.range();this.collapsed=this.r.item?false:this.r.boundingWidth==0;
return this.collapsed};this.collapse=function(f){this.range();if(this.r.item){var g=this.r.item(0);this.r=this.rte.doc.body.createTextRange();this.r.moveToElementText(g)}this.r.collapse(f);this.r.select();this.collapsed=true};this.getStart=function(){this.range();if(this.r.item){return this.r.item(0)}var g=this.r.duplicate();g.collapse(true);var f=g.parentElement();return f&&f.nodeName=="BODY"?f.firstChild:f};this.getEnd=function(){this.range();if(this.r.item){return this.r.item(0)}var f=this.r.duplicate();
f.collapse(false);var g=f.parentElement();return g&&g.nodeName=="BODY"?g.lastChild:g};this.setStart=function(f,g){this.startContainer=f;this.startOffset=g;if(this.endContainer){this.commonAncestorContainer=this.rte.dom.findCommonAncestor(this.startContainer,this.endContainer)}};this.setEnd=function(f,g){this.endContainer=f;this.endOffset=g;if(this.startContainer){this.commonAncestorContainer=this.rte.dom.findCommonAncestor(this.startContainer,this.endContainer)}};this.setStartBefore=function(f){if(f.parentNode){this.setStart(f.parentNode,this.rte.dom.indexOf(f))
}};this.setStartAfter=function(f){if(f.parentNode){this.setStart(f.parentNode,this.rte.dom.indexOf(f)+1)}};this.setEndBefore=function(f){if(f.parentNode){this.setEnd(f.parentNode,this.rte.dom.indexOf(f))}};this.setEndAfter=function(f){if(f.parentNode){this.setEnd(f.parentNode,this.rte.dom.indexOf(f)+1)}};this.select=function(){function o(B,z){if(B.nodeType!=3){return -1}var A="\uFEFF";var x=B.nodeValue;var v=b.rte.doc.body.createTextRange();B.nodeValue=x.substring(0,z)+A+x.substring(z);v.moveToElementText(B.parentNode);
v.findText(A);var w=Math.abs(v.moveStart("character",-1048575));B.nodeValue=x;return w}this.r=this.rte.doc.body.createTextRange();var k=this.startOffset;var g=this.endOffset;var u=this.startContainer.nodeType==1?this.startContainer.childNodes[Math.min(k,this.startContainer.childNodes.length-1)]:this.startContainer;var q=this.endContainer.nodeType==1?this.endContainer.childNodes[Math.min(k==g?g:g-1,this.endContainer.childNodes.length-1)]:this.endContainer;if(this.collapsed){if(u.nodeType==3){var h=o(u,k);
this.r.move("character",h)}else{this.r.moveToElementText(u);this.r.collapse(true)}}else{var f=this.rte.doc.body.createTextRange();var j=o(u,k);var t=o(q,g);if(u.nodeType==3){this.r.move("character",j)}else{this.r.moveToElementText(u)}if(q.nodeType==3){f.move("character",t)}else{f.moveToElementText(q)}this.r.setEndPoint("EndToEnd",f)}try{this.r.select()}catch(q){}if(f){f=null}};this.dump=function(){this.rte.log("collapsed: "+this.collapsed);this.rte.log("startContainer: "+(this.startContainer?this.startContainer.nodeName:"non"));
this.rte.log("startOffset: "+this.startOffset);this.rte.log("endContainer: "+(this.endContainer?this.endContainer.nodeName:"none"));this.rte.log("endOffset: "+this.endOffset)}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.about=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.active=true;this.command=function(){var g,h,f;g={rtl:c.rtl,submit:function(j,k){k.close()},dialog:{width:560,title:this.rte.i18n("About this software"),buttons:{Ok:function(){a(this).dialog("destroy")
}}}};f='<div class="elrte-logo"></div><h3>'+this.rte.i18n("About elRTE")+'</h3><br clear="all"/><div class="elrte-ver">'+this.rte.i18n("Version")+": "+this.rte.version+" ("+this.rte.build+')</div><div class="elrte-ver">jQuery: '+a("<div/>").jquery+'</div><div class="elrte-ver">jQueryUI: '+a.ui.version+'</div><div class="elrte-ver">'+this.rte.i18n("Licence")+": BSD Licence</div><p>"+this.rte.i18n("elRTE is an open-source JavaScript based WYSIWYG HTML-editor.")+"<br/>"+this.rte.i18n("Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.")+"<br/>"+this.rte.i18n("You can use it in any commercial or non-commercial projects.")+"</p><h4>"+this.rte.i18n("Authors")+'</h4><table class="elrte-authors"><tr><td>Dmitry (dio) Levashov &lt;dio@std42.ru&gt;</td><td>'+this.rte.i18n("Chief developer")+"</td></tr><tr><td>Troex Nevelin &lt;troex@fury.scancode.ru&gt;</td><td>"+this.rte.i18n("Developer, tech support")+"</td></tr><tr><td>Valentin Razumnyh &lt;content@std42.ru&gt;</td><td>"+this.rte.i18n("Interface designer")+"</td></tr><tr><td>Tawfek Daghistani &lt;tawfekov@gmail.com&gt;</td><td>"+this.rte.i18n("RTL support")+"</td></tr>"+(this.rte.options.lang!="en"?"<tr><td>"+this.rte.i18n("_translator")+"</td><td>"+this.rte.i18n("_translation")+"</td></tr>":"")+'</table><div class="elrte-copy">Copyright &copy; 2009-2011, <a href="http://www.std42.ru">Studio 42</a></div><div class="elrte-copy">'+this.rte.i18n("For more information about this software visit the")+' <a href="http://elrte.org">'+this.rte.i18n("elRTE website")+'.</a></div><div class="elrte-copy">Twitter: <a href="http://twitter.com/elrte_elfinder">elrte_elfinder</a></div>';
h=new elDialogForm(g);h.append(f);h.open()};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.anchor=function(f,c){this.constructor.prototype.constructor.call(this,f,c);this.input=a('<input type="text" />').attr("name","anchor").attr("size","16");var b=this;this.command=function(){var g={rtl:this.rte.rtl,submit:function(j,k){j.stopPropagation();j.preventDefault();k.close();b.set()},dialog:{title:this.rte.i18n("Bookmark")}};this.anchor=this.rte.dom.selfOrParentAnchor(this.rte.selection.getEnd())||f.dom.create("a");
!this.rte.selection.collapsed()&&this.rte.selection.collapse(false);this.input.val(a(this.anchor).addClass("elrte-anchor").attr("name"));this.rte.selection.saveIERange();var h=new elDialogForm(g);h.append([this.rte.i18n("Bookmark name"),this.input],null,true).open();setTimeout(function(){b.input.focus()},20)};this.update=function(){var g=this.rte.selection.getNode();if(this.rte.dom.selfOrParentLink(g)){this.domElem.addClass("disabled")}else{if(this.rte.dom.selfOrParentAnchor(g)){this.domElem.removeClass("disabled").addClass("active")
}else{this.domElem.removeClass("disabled").removeClass("active")}}};this.set=function(){var g=a.trim(this.input.val());if(g){this.rte.history.add();if(!this.anchor.parentNode){this.rte.selection.insertHtml('<a name="'+g+'" title="'+this.rte.i18n("Bookmark")+": "+g+'" class="elrte-anchor"></a>')}else{this.anchor.name=g;this.anchor.title=this.rte.i18n("Bookmark")+": "+g}}else{if(this.anchor.parentNode){this.rte.history.add();this.anchor.parentNode.removeChild(this.anchor)}}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.blockquote=function(c,b){this.constructor.prototype.constructor.call(this,c,b);
this.command=function(){var g,f;this.rte.history.add();if(this.rte.selection.collapsed()&&(g=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^BLOCKQUOTE$/))){a(g).replaceWith(a(g).html())}else{f=this.rte.selection.selected({wrap:"all",tag:"blockquote"});f.length&&this.rte.selection.select(f[0],f[f.length-1])}this.rte.ui.update(true)};this.update=function(){if(this.rte.selection.collapsed()){if(this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^BLOCKQUOTE$/)){this.domElem.removeClass("disabled").addClass("active")
}else{this.domElem.addClass("disabled").removeClass("active")}}else{this.domElem.removeClass("disabled active")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.copy=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.command=function(){if(this.rte.browser.mozilla){try{this.rte.doc.execCommand(this.name,false,null)}catch(h){var f=" Ctl + C";if(this.name=="cut"){f=" Ctl + X"}else{if(this.name=="paste"){f=" Ctl + V"}}var g={dialog:{title:this.rte.i18n("Warning"),buttons:{Ok:function(){a(this).dialog("close")
}}}};var j=new elDialogForm(g);j.append(this.rte.i18n("This operation is disabled in your browser on security reason. Use shortcut instead.")+": "+f).open()}}else{this.constructor.prototype.command.call(this)}}};elRTE.prototype.ui.prototype.buttons.cut=elRTE.prototype.ui.prototype.buttons.copy;elRTE.prototype.ui.prototype.buttons.paste=elRTE.prototype.ui.prototype.buttons.copy})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.css=function(f,c){var b=this;this.constructor.prototype.constructor.call(this,f,c);
this.cssStyle=a('<input type="text" size="42" name="style" />');this.cssClass=a('<input type="text" size="42" name="class" />');this.elementID=a('<input type="text" size="42" name="id" />');this.command=function(){var j=this.node(),g;this.rte.selection.saveIERange();if(j){var g={submit:function(k,o){k.stopPropagation();k.preventDefault();o.close();b.set()},dialog:{title:this.rte.i18n("Style"),width:450,resizable:true,modal:true}};this.cssStyle.val(a(j).attr("style"));this.cssClass.val(a(j).attr("class"));
this.elementID.val(a(j).attr("id"));var h=new elDialogForm(g);h.append([this.rte.i18n("Css style"),this.cssStyle],null,true);h.append([this.rte.i18n("Css class"),this.cssClass],null,true);h.append([this.rte.i18n("ID"),this.elementID],null,true);h.open();setTimeout(function(){b.cssStyle.focus()},20)}};this.set=function(){var g=this.node();this.rte.selection.restoreIERange();if(g){a(g).attr("style",this.cssStyle.val());a(g).attr("class",this.cssClass.val());a(g).attr("id",this.elementID.val());this.rte.ui.update()
}};this.node=function(){var g=this.rte.selection.getNode();if(g.nodeType==3){g=g.parentNode}return g.nodeType==1&&g.nodeName!="BODY"?g:null};this.update=function(){this.domElem.toggleClass("disabled",this.node()?false:true)}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.rtl=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.command=function(){var h=this.rte.selection.getNode(),g=this;if(a(h).attr("dir")=="rtl"||a(h).parents('[dir="rtl"]').length||a(h).find('[dir="rtl"]').length){a(h).removeAttr("dir");
a(h).parents('[dir="rtl"]').removeAttr("dir");a(h).find('[dir="rtl"]').removeAttr("dir")}else{if(this.rte.dom.is(h,"textNodes")&&this.rte.dom.is(h,"block")){a(h).attr("dir","rtl")}else{a.each(this.rte.dom.parents(h,"textNodes"),function(j,k){if(g.rte.dom.is(k,"block")){a(k).attr("dir","rtl");return false}})}}this.rte.ui.update()};this.update=function(){var g=this.rte.selection.getNode();this.domElem.removeClass("disabled");if(a(g).attr("dir")=="rtl"||a(g).parents('[dir="rtl"]').length||a(g).find('[dir="rtl"]').length){this.domElem.addClass("active")
}else{this.domElem.removeClass("active")}}};elRTE.prototype.ui.prototype.buttons.ltr=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.command=function(){var h=this.rte.selection.getNode(),g=this;if(a(h).attr("dir")=="ltr"||a(h).parents('[dir="ltr"]').length||a(h).find('[dir="ltr"]').length){a(h).removeAttr("dir");a(h).parents('[dir="ltr"]').removeAttr("dir");a(h).find('[dir="ltr"]').removeAttr("dir")}else{if(this.rte.dom.is(h,"textNodes")&&this.rte.dom.is(h,"block")){a(h).attr("dir","ltr")
}else{a.each(this.rte.dom.parents(h,"textNodes"),function(j,k){if(g.rte.dom.is(k,"block")){a(k).attr("dir","ltr");return false}})}}this.rte.ui.update()};this.update=function(){var g=this.rte.selection.getNode();this.domElem.removeClass("disabled");if(a(g).attr("dir")=="ltr"||a(g).parents('[dir="ltr"]').length||a(g).find('[dir="ltr"]').length){this.domElem.addClass("active")}else{this.domElem.removeClass("active")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.div=function(c,b){this.constructor.prototype.constructor.call(this,c,b);
this.command=function(){var g,f;this.rte.history.add();if(this.rte.selection.collapsed()){g=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^DIV$/);if(g){a(g).replaceWith(a(g).html())}}else{f=this.rte.selection.selected({wrap:"all",tag:"div"});f.length&&this.rte.selection.select(f[0],f[f.length-1])}this.rte.ui.update(true)};this.update=function(){if(this.rte.selection.collapsed()){if(this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^DIV$/)){this.domElem.removeClass("disabled").addClass("active")
}else{this.domElem.addClass("disabled active")}}else{this.domElem.removeClass("disabled active")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.docstructure=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.command=function(){this.domElem.toggleClass("active");a(this.rte.doc.body).toggleClass("el-rte-structure")};this.command();this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.elfinder=function(f,c){this.constructor.prototype.constructor.call(this,f,c);
var b=this,f=this.rte;this.command=function(){if(b.rte.options.fmAllow&&typeof(b.rte.options.fmOpen)=="function"){b.rte.options.fmOpen(function(h){var g=decodeURIComponent(h.split("/").pop().replace(/\+/g," "));if(f.selection.collapsed()){f.selection.insertHtml('<a href="'+h+'" >'+g+"</a>")}else{f.doc.execCommand("createLink",false,h)}})}};this.update=function(){if(b.rte.options.fmAllow&&typeof(b.rte.options.fmOpen)=="function"){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")
}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.flash=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.swf=null;this.placeholder=null;this.src={url:a('<input type="text" name="url" />').css("width","99%"),type:a('<select name="type"/>').append('<option value="application/x-shockwave-flash">Flash</option>').append('<option value="video/quicktime">Quicktime movie</option>').append('<option value="application/x-mplayer2">Windows media</option>'),width:a('<input type="text" />').attr("size",5).css("text-align","right"),height:a('<input type="text" />').attr("size",5).css("text-align","right"),wmode:a("<select />").append(a("<option />").val("").text(this.rte.i18n("Not set","dialogs"))).append(a("<option />").val("transparent").text(this.rte.i18n("Transparent"))),align:a("<select />").append(a("<option />").val("").text(this.rte.i18n("Not set","dialogs"))).append(a("<option />").val("left").text(this.rte.i18n("Left"))).append(a("<option />").val("right").text(this.rte.i18n("Right"))).append(a("<option />").val("top").text(this.rte.i18n("Top"))).append(a("<option />").val("text-top").text(this.rte.i18n("Text top"))).append(a("<option />").val("middle").text(this.rte.i18n("middle"))).append(a("<option />").val("baseline").text(this.rte.i18n("Baseline"))).append(a("<option />").val("bottom").text(this.rte.i18n("Bottom"))).append(a("<option />").val("text-bottom").text(this.rte.i18n("Text bottom"))),margin:a("<div />")};
this.command=function(){var r=this.rte.selection.getEnd(),j,k="",B="",t="",v,z,x,A,q,C;this.rte.selection.saveIERange();this.src.margin.elPaddingInput({type:"margin"});this.placeholder=null;this.swf=null;if(a(r).hasClass("elrte-media")&&(A=a(r).attr("rel"))&&this.rte.filter.scripts[A]){this.placeholder=a(r);q=this.rte.filter.scripts[A];k="";if(q.embed&&q.embed.src){k=q.embed.src}if(q.params&&q.params.length){l=q.params.length;while(l--){if(q.params[l].name=="src"||q.params[l].name=="movie"){k=q.params[l].value
}}}if(q.embed){B=q.embed.width||parseInt(q.embed.style.width)||"";t=q.embed.height||parseInt(q.embed.style.height)||"";C=q.embed.wmode||""}else{if(q.obj){B=q.obj.width||parseInt(q.obj.style.width)||"";t=q.obj.height||parseInt(q.obj.style.height)||"";C=q.obj.wmode||""}}if(q.obj){v=q.obj.style["float"]||"";z=q.obj.style["vertical-align"]||""}else{if(q.embed){v=q.embed.style["float"]||"";z=q.embed.style["vertical-align"]||""}}this.src.margin.val(r);this.src.type.val(q.embed?q.embed.type:"")}if(a(r).hasClass("elrte-swf-placeholder")){this.placeholder=a(r);
k=a(r).attr("rel");B=parseInt(a(r).css("width"))||"";t=parseInt(a(r).css("height"))||"";v=a(r).css("float");z=a(r).css("vertical-align");this.src.margin.val(r);this.src.wmode.val(a(r).attr("wmode"))}this.src.url.val(k);this.src.width.val(B);this.src.height.val(t);this.src.align.val(v||z);this.src.wmode.val(C);var j={rtl:this.rte.rtl,submit:function(h,o){h.stopPropagation();h.preventDefault();b.set();o.close()},dialog:{width:580,position:"top",title:this.rte.i18n("Flash")}};var x=new elDialogForm(j);
if(this.rte.options.fmAllow&&this.rte.options.fmOpen){var g=a("<span />").append(this.src.url.css("width","85%")).append(a("<span />").addClass("ui-state-default ui-corner-all").css({"float":"right","margin-right":"3px"}).attr("title",b.rte.i18n("Open file manger")).append(a("<span />").addClass("ui-icon ui-icon-folder-open")).click(function(){b.rte.options.fmOpen(function(h){b.src.url.val(h).change()})}).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")
}))}else{var g=this.src.url}x.append([this.rte.i18n("URL"),g],null,true);x.append([this.rte.i18n("Type"),this.src.type],null,true);x.append([this.rte.i18n("Size"),a("<span />").append(this.src.width).append(" x ").append(this.src.height).append(" px")],null,true);x.append([this.rte.i18n("Wmode"),this.src.wmode],null,true);x.append([this.rte.i18n("Alignment"),this.src.align],null,true);x.append([this.rte.i18n("Margins"),this.src.margin],null,true);x.open();var u=a("<fieldset />").append(a("<legend />").text(this.rte.i18n("Preview")));
x.append(u,"main");var p=document.createElement("iframe");a(p).attr("src","#").addClass("el-rte-preview").appendTo(u);html=this.rte.options.doctype+'<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body style="padding:0;margin:0;font-size:9px"> Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin</body></html>';
p.contentWindow.document.open();p.contentWindow.document.write(html);p.contentWindow.document.close();this.frame=p.contentWindow.document;this.preview=a(p.contentWindow.document.body);this.src.type.change(function(){b.src.url.change()});this.src.width.change(function(){if(b.swf){var h=parseInt(a(this).val())||"";a(this).val(h);b.swf.css("width",h);b.swf.children("embed").css("width",h)}else{a(this).val("")}});this.src.height.change(function(){if(b.swf){var o=parseInt(a(this).val())||"";a(this).val(o);
b.swf.css("height",o);b.swf.children("embed").css("height",o)}else{a(this).val("")}});this.src.wmode.change(function(){if(b.swf){var h=a(this).val();if(h){b.swf.attr("wmode",h);b.swf.children("embed").attr("wmode",h)}else{b.swf.removeAttr("wmode");b.swf.children("embed").removeAttr("wmode")}}});this.src.align.change(function(){var h=a(this).val(),o=h=="left"||h=="right";if(b.swf){b.swf.css({"float":o?h:"","vertical-align":o?"":h})}else{a(this).val("")}});this.src.margin.change(function(){if(b.swf){var h=b.src.margin.val();
if(h.css){b.swf.css("margin",h.css)}else{b.swf.css("margin-top",h.top);b.swf.css("margin-right",h.right);b.swf.css("margin-bottom",h.bottom);b.swf.css("margin-left",h.left)}}});this.src.url.change(function(){var h=b.rte.utils.absoluteURL(a(this).val()),o,w;if(h){o=b.rte.utils.mediaInfo(b.src.type.val());if(!o){o=b.rte.util.mediaInfo("application/x-shockwave-flash")}w='<object classid="'+o.classid+'" codebase="'+o.codebase+'"><param name="src" value="'+h+'" /><embed quality="high" src="'+h+'" type="'+o.type+'"></object>';
b.preview.children("object").remove().end().prepend(w);b.swf=b.preview.children("object").eq(0)}else{if(b.swf){b.swf.remove();b.swf=null}}b.src.width.trigger("change");b.src.height.trigger("change");b.src.align.trigger("change")}).trigger("change")};this.set=function(){b.swf=null;var g=this.rte.utils.absoluteURL(this.src.url.val()),B=parseInt(this.src.width.val())||"",t=parseInt(this.src.height.val())||"",C=this.src.wmode.val(),z=this.src.align.val(),v=z=="left"||z=="right"?z:"",A=this.placeholder?this.placeholder.attr("rel"):"",p,k,x,q=this.src.margin.val(),r;
if(!g){if(this.placeholder){this.placeholder.remove();delete this.rte.filter.scripts[A]}}else{i=b.rte.utils.mediaInfo(b.src.type.val());if(!i){i=b.rte.util.mediaInfo("application/x-shockwave-flash")}x=this.rte.filter.videoHostRegExp.test(g)?g.replace(this.rte.filter.videoHostRegExp,"$2"):i.type.replace(/^\w+\/(.+)/,"$1");p={obj:{classid:i.classid[0],codebase:i.codebase,style:{}},params:[{name:"src",value:g}],embed:{src:g,type:i.type,quality:"high",wmode:C,style:{}}};if(B){p.obj.width=B;p.embed.width=B
}if(t){p.obj.height=t;p.embed.height=t}if(v){p.obj.style["float"]=v}else{if(z){p.obj.style["vertical-align"]=z}}if(q.css){r={margin:q.css}}else{r={"margin-top":q.top,"margin-right":q.right,"margin-bottom":q.bottom,"margin-left":q.left}}p.obj.style=a.extend({},p.obj.style,r);if(this.placeholder&&A){k=this.rte.filter.scripts[A]||{};p=a.extend(true,k,p);delete p.obj.style.width;delete p.obj.style.height;delete p.embed.style.width;delete p.embed.style.height;this.rte.filter.scripts[A]=p;this.placeholder.removeAttr("class")
}else{var j="media"+Math.random().toString().substring(2);this.rte.filter.scripts[j]=p;this.placeholder=a(this.rte.dom.create("img")).attr("rel",j).attr("src",this.rte.filter.url+"pixel.gif");var u=true}this.placeholder.attr("title",this.rte.utils.encode(g)).attr("width",B||150).attr("height",t||100).addClass("elrte-protected elrte-media elrte-media-"+x).css(p.obj.style);if(v){this.placeholder.css("float",v).css("vertical-align","")}else{if(z){this.placeholder.css("float","").css("vertical-align",z)
}else{this.placeholder.css("float","").css("vertical-align","")}}if(u){this.rte.window.focus();this.rte.selection.restoreIERange();this.rte.selection.insertNode(this.placeholder.get(0))}}};this.update=function(){this.domElem.removeClass("disabled");var g=this.rte.selection.getNode();this.domElem.toggleClass("active",g&&g.nodeName=="IMG"&&a(g).hasClass("elrte-media"))}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.fontname=function(f,c){this.constructor.prototype.constructor.call(this,f,c);
var b=this;var g={tpl:'<span style="font-family:%val">%label</span>',select:function(h){b.set(h)},src:{"":this.rte.i18n("Font"),"andale mono,sans-serif":"Andale Mono","arial,helvetica,sans-serif":"Arial","arial black,gadget,sans-serif":"Arial Black","book antiqua,palatino,sans-serif":"Book Antiqua","comic sans ms,cursive":"Comic Sans MS","courier new,courier,monospace":"Courier New","georgia,palatino,serif":"Georgia","helvetica,sans-serif":"Helvetica","impact,sans-serif":"Impact","lucida console,monaco,monospace":"Lucida console","lucida sans unicode,lucida grande,sans-serif":"Lucida grande","tahoma,sans-serif":"Tahoma","times new roman,times,serif":"Times New Roman","trebuchet ms,lucida grande,verdana,sans-serif":"Trebuchet MS","verdana,geneva,sans-serif":"Verdana"}};
this.select=this.domElem.elSelect(g);this.command=function(){};this.set=function(j){this.rte.history.add();var h=this.rte.selection.selected({filter:"textContainsNodes"});a.each(h,function(){$this=/^(THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(this.nodeName)?a(this).find("td,th"):a(this);a(this).css("font-family",j).find("[style]").css("font-family","")});this.rte.ui.update()};this.update=function(){this.domElem.removeClass("disabled");var j=this.rte.selection.getNode();if(j.nodeType!=1){j=j.parentNode
}var h=a(j).css("font-family");h=h?h.toString().toLowerCase().replace(/,\s+/g,",").replace(/'|"/g,""):"";this.select.val(g.src[h]?h:"")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.fontsize=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;var g={labelTpl:"%label",tpl:'<span style="font-size:%val;line-height:1.2em">%label</span>',select:function(h){b.set(h)},src:{"":this.rte.i18n("Font size"),"xx-small":this.rte.i18n("Small (8pt)"),"x-small":this.rte.i18n("Small (10px)"),small:this.rte.i18n("Small (12pt)"),medium:this.rte.i18n("Normal (14pt)"),large:this.rte.i18n("Large (18pt)"),"x-large":this.rte.i18n("Large (24pt)"),"xx-large":this.rte.i18n("Large (36pt)")}};
this.select=this.domElem.elSelect(g);this.command=function(){};this.set=function(j){this.rte.history.add();var h=this.rte.selection.selected({filter:"textContainsNodes"});a.each(h,function(){$this=/^(THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(this.nodeName)?a(this).find("td,th"):a(this);$this.css("font-size",j).find("[style]").css("font-size","")});this.rte.ui.update()};this.update=function(){this.domElem.removeClass("disabled");var h=this.rte.selection.getNode();this.select.val((m=this.rte.dom.attr(h,"style").match(/font-size:\s*([^;]+)/i))?m[1]:"")
}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.forecolor=function(f,c){var b=this;this.constructor.prototype.constructor.call(this,f,c);var g={"class":"",palettePosition:"outer",color:this.defaultColor,update:function(h){b.indicator.css("background-color",h)},change:function(h){b.set(h)}};this.defaultColor=this.name=="forecolor"?"#000000":"#ffffff";this.picker=this.domElem.elColorPicker(g);this.indicator=a("<div />").addClass("color-indicator").prependTo(this.domElem);this.command=function(){};
this.set=function(k){if(!this.rte.selection.collapsed()){this.rte.history.add();var h=this.rte.selection.selected({collapse:false,wrap:"text"}),j=this.name=="forecolor"?"color":"background-color";a.each(h,function(){if(/^(THEAD|TBODY|TFOOT|TR)$/.test(this.nodeName)){a(this).find("td,th").each(function(){a(this).css(j,k).find("*").css(j,"")})}else{a(this).css(j,k).find("*").css(j,"")}});this.rte.ui.update(true)}};this.update=function(){this.domElem.removeClass("disabled");var h=this.rte.selection.getNode();
this.picker.val(this.rte.utils.rgb2hex(a(h.nodeType!=1?h.parentNode:h).css(this.name=="forecolor"?"color":"background-color"))||this.defaultColor)}};elRTE.prototype.ui.prototype.buttons.hilitecolor=elRTE.prototype.ui.prototype.buttons.forecolor})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.formatblock=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var h=this.rte.browser.msie?function(j){b.val=j;b.constructor.prototype.command.call(b)}:function(j){b.ieCommand(j)};
var b=this;var g={labelTpl:"%label",tpls:{"":"%label"},select:function(j){b.formatBlock(j)},src:{span:this.rte.i18n("Format"),h1:this.rte.i18n("Heading 1"),h2:this.rte.i18n("Heading 2"),h3:this.rte.i18n("Heading 3"),h4:this.rte.i18n("Heading 4"),h5:this.rte.i18n("Heading 5"),h6:this.rte.i18n("Heading 6"),p:this.rte.i18n("Paragraph"),address:this.rte.i18n("Address"),pre:this.rte.i18n("Preformatted"),div:this.rte.i18n("Normal (DIV)")}};this.select=this.domElem.elSelect(g);this.command=function(){};
this.formatBlock=function(u){function t(z,v){function x(A){a(A).find("h1,h2,h3,h4,h5,h6,p,address,pre").each(function(){a(this).replaceWith(a(this).html())});return A}if(/^(LI|DT|DD|TD|TH|CAPTION)$/.test(z.nodeName)){!b.rte.dom.isEmpty(z)&&b.rte.dom.wrapContents(x(z),v)}else{if(/^(UL|OL|DL|TABLE)$/.test(z.nodeName)){b.rte.dom.wrap(z,v)}else{!b.rte.dom.isEmpty(z)&&a(x(z)).replaceWith(a(b.rte.dom.create(v)).html(a(z).html()))}}}this.rte.history.add();var w=u.toUpperCase(),p,o,r,q=this.rte.selection.collapsed(),k=this.rte.selection.getBookmark(),j=this.rte.selection.selected({collapsed:true,blocks:true,filter:"textContainsNodes",wrap:"inline",tag:"span"});
l=j.length,s=a(j[0]).prev(),e=a(j[j.length-1]).next();while(l--){o=j[l];r=a(o);if(w=="DIV"||w=="SPAN"){if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(o.nodeName)){r.replaceWith(a(this.rte.dom.create("div")).html(r.html()||""))}}else{if(/^(THEAD|TBODY|TFOOT|TR)$/.test(o.nodeName)){r.find("td,th").each(function(){t(this,w)})}else{if(o.nodeName!=w){t(o,w)}}}}this.rte.selection.moveToBookmark(k);this.rte.ui.update(true)};this.update=function(){this.domElem.removeClass("disabled");var j=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^(H[1-6]|P|ADDRESS|PRE)$/);
this.select.val(j?j.nodeName.toLowerCase():"span")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.fullscreen=function(g,f){var b=this;this.constructor.prototype.constructor.call(this,g,f);this.active=true;this.editor=g.editor;this.wz=g.workzone;this.height=0;this.delta=0;this._class="el-fullscreen";setTimeout(function(){b.height=b.wz.height();b.delta=b.editor.outerHeight()-b.height},50);function c(){b.wz.height(a(window).height()-b.delta);b.rte.updateHeight()}this.command=function(){var B=a(window),u=this.editor,k=u.parents().filter(function(h,p){return !/^(html|body)$/i.test(p.nodeName)&&a(p).css("position")=="relative"
}),q=this.wz,z=this._class,t=u.hasClass(z),j=this.rte,C=this.rte.selection,o=a.browser.mozilla,A,r;function x(){if(o){A=C.getBookmark()}}function v(){if(o){b.wz.children().toggle();b.rte.source.focus();b.wz.children().toggle();C.moveToBookmark(A)}}x();k.css("position",t?"relative":"static");if(t){u.removeClass(z);q.height(this.height);B.unbind("resize",c);this.domElem.removeClass("active")}else{u.addClass(z).removeAttr("style");q.height(B.height()-this.delta).css("width","100%");B.bind("resize",c);
this.domElem.addClass("active")}j.updateHeight();j.resizable(t);v()};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.horizontalrule=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.src={width:a('<input type="text" />').attr({name:"width",size:4}).css("text-align","right"),wunit:a("<select />").attr("name","wunit").append(a("<option />").val("%").text("%")).append(a("<option />").val("px").text("px")).val("%"),height:a('<input type="text" />').attr({name:"height",size:4}).css("text-align","right"),bg:a("<div />"),border:a("<div />"),"class":a('<input type="text" />').css("width","100%"),style:a('<input type="text" />').css("width","100%")};
this.command=function(){this.src.bg.elColorPicker({palettePosition:"outer","class":"el-colorpicker ui-icon ui-icon-pencil"});var k=this.rte.selection.getEnd();this.hr=k.nodeName=="HR"?a(k):a(f.doc.createElement("hr")).css({width:"100%",height:"1px"});this.src.border.elBorderSelect({styleHeight:73,value:this.hr});var g=this.hr.css("width")||this.hr.attr("width");this.src.width.val(parseInt(g)||100);this.src.wunit.val(g.indexOf("px")!=-1?"px":"%");this.src.height.val(this.rte.utils.toPixels(this.hr.css("height")||this.hr.attr("height"))||1);
this.src.bg.val(this.rte.utils.color2Hex(this.hr.css("background-color")));this.src["class"].val(this.rte.dom.attr(this.hr,"class"));this.src.style.val(this.rte.dom.attr(this.hr,"style"));var h={rtl:this.rte.rtl,submit:function(o,p){o.stopPropagation();o.preventDefault();b.set();p.close()},dialog:{title:this.rte.i18n("Horizontal rule")}};var j=new elDialogForm(h);j.append([this.rte.i18n("Width"),a("<span />").append(this.src.width).append(this.src.wunit)],null,true).append([this.rte.i18n("Height"),a("<span />").append(this.src.height).append(" px")],null,true).append([this.rte.i18n("Border"),this.src.border],null,true).append([this.rte.i18n("Background"),this.src.bg],null,true).append([this.rte.i18n("Css class"),this.src["class"]],null,true).append([this.rte.i18n("Css style"),this.src.style],null,true).open()
};this.update=function(){this.domElem.removeClass("disabled");if(this.rte.selection.getEnd().nodeName=="HR"){this.domElem.addClass("active")}else{this.domElem.removeClass("active")}};this.set=function(){this.rte.history.add();!this.hr.parentNode&&this.rte.selection.insertNode(this.hr.get(0));var h={noshade:true,style:this.src.style.val()};var g=this.src.border.val();var j={width:(parseInt(this.src.width.val())||100)+this.src.wunit.val(),height:parseInt(this.src.height.val())||1,"background-color":this.src.bg.val(),border:g.width&&g.style?g.width+" "+g.style+" "+g.color:""};
this.hr.removeAttr("class").removeAttr("style").removeAttr("width").removeAttr("height").removeAttr("align").attr(h).css(j);if(this.src["class"].val()){this.hr.attr("class",this.src["class"].val())}this.rte.ui.update()}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.image=function(b,c){this.constructor.prototype.constructor.call(this,b,c);var q=this,b=q.rte,h=0,f=0,p=0,g=null,j=function(t){a.each(q.src,function(u,v){a.each(v,function(x,w){if(x=="src"&&t){return}w.val("")})})},o=function(t){a.each(q.src,function(u,v){a.each(v,function(E,B){var C,x,D,A,z;
if(E=="width"){C=t.width()}else{if(E=="height"){C=t.height()}else{if(E=="border"){C="";z=t.css("border")||b.utils.parseStyle(t.attr("style")).border||"";if(z){x=z.match(/(\d(px|em|%))/);D=z.match(/(#[a-z0-9]+)/);C={width:x?x[1]:z,style:z,color:b.utils.color2Hex(D?D[1]:z)}}}else{if(E=="margin"){C=t}else{if(E=="align"){C=t.css("float");if(C!="left"&&C!="right"){C=t.css("vertical-align")}}else{C=t.attr(E)||""}}}}}if(u=="events"){C=b.utils.trimEventCallback(C)}B.val(C)})})},k=function(){var t=q.src.main.src.val();
j(true);if(!t){q.preview.children("img").remove();q.prevImg=null}else{if(q.prevImg){q.prevImg.removeAttr("src").removeAttr("style").removeAttr("class").removeAttr("id").removeAttr("title").removeAttr("alt").removeAttr("longdesc");a.each(q.src.events,function(v,u){q.prevImg.removeAttr(v)})}else{q.prevImg=a("<img/>").prependTo(q.preview)}q.prevImg.load(function(){q.prevImg.unbind("load");setTimeout(function(){f=q.prevImg.width();p=q.prevImg.height();h=(f/p).toFixed(2);q.src.main.width.val(f);q.src.main.height.val(p)
},100)}).attr("src",t)}},r=function(v){var t=parseInt(q.src.main.width.val())||0,u=parseInt(q.src.main.height.val())||0;if(q.prevImg){if(t&&u){if(v.target===q.src.main.width[0]){u=parseInt(t/h)}else{t=parseInt(u*h)}}else{t=f;u=p}q.src.main.height.val(u);q.src.main.width.val(t);q.prevImg.width(t).height(u);q.src.adv.style.val(q.prevImg.attr("style"))}};this.img=null;this.prevImg=null;this.preview=a('<div class="elrte-image-preview"/>').text("Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin");
this.init=function(){this.labels={main:"Properies",link:"Link",adv:"Advanced",events:"Events",id:"ID","class":"Css class",style:"Css style",longdesc:"Detail description URL",href:"URL",target:"Open in",title:"Title"};this.src={main:{src:a('<input type="text" />').css("width","100%").change(k),title:a('<input type="text" />').css("width","100%"),alt:a('<input type="text" />').css("width","100%"),width:a('<input type="text" />').attr("size",5).css("text-align","right").change(r),height:a('<input type="text" />').attr("size",5).css("text-align","right").change(r),margin:a("<div />").elPaddingInput({type:"margin",change:function(){var t=q.src.main.margin.val();
if(q.prevImg){if(t.css){q.prevImg.css("margin",t.css)}else{q.prevImg.css({"margin-left":t.left,"margin-top":t.top,"margin-right":t.right,"margin-bottom":t.bottom})}}}}),align:a("<select />").css("width","100%").append(a("<option />").val("").text(this.rte.i18n("Not set","dialogs"))).append(a("<option />").val("left").text(this.rte.i18n("Left"))).append(a("<option />").val("right").text(this.rte.i18n("Right"))).append(a("<option />").val("top").text(this.rte.i18n("Top"))).append(a("<option />").val("text-top").text(this.rte.i18n("Text top"))).append(a("<option />").val("middle").text(this.rte.i18n("middle"))).append(a("<option />").val("baseline").text(this.rte.i18n("Baseline"))).append(a("<option />").val("bottom").text(this.rte.i18n("Bottom"))).append(a("<option />").val("text-bottom").text(this.rte.i18n("Text bottom"))).change(function(){var u=a(this).val(),t={"float":"","vertical-align":""};
if(q.prevImg){if(u=="left"||u=="right"){t["float"]=u;t["vertical-align"]=""}else{if(u){t["float"]="";t["vertical-align"]=u}}q.prevImg.css(t)}}),border:a("<div />").elBorderSelect({name:"border",change:function(){var t=q.src.main.border.val();if(q.prevImg){q.prevImg.css("border",t.width?t.width+" "+t.style+" "+t.color:"")}}})},adv:{},events:{}};a.each(["id","class","style","longdesc"],function(u,t){q.src.adv[t]=a('<input type="text" style="width:100%" />')});this.src.adv["class"].change(function(){if(q.prevImg){q.prevImg.attr("class",a(this).val())
}});this.src.adv.style.change(function(){if(q.prevImg){q.prevImg.attr("style",a(this).val());o(q.prevImg)}});a.each(["onblur","onfocus","onclick","ondblclick","onmousedown","onmouseup","onmouseover","onmouseout","onmouseleave","onkeydown","onkeypress","onkeyup"],function(){q.src.events[this]=a('<input type="text"  style="width:100%"/>')})};this.command=function(){!this.src&&this.init();var t,w={rtl:b.rtl,submit:function(z,A){z.stopPropagation();z.preventDefault();q.set();u.close()},close:function(){g&&b.selection.moveToBookmark(g)
},dialog:{autoOpen:false,width:500,position:"top",title:b.i18n("Image"),resizable:true,open:function(){a.fn.resizable&&a(this).parents(".ui-dialog:first").resizable("option","alsoResize",".elrte-image-preview")}}},u=new elDialogForm(w),v=!!b.options.fmOpen,x=v?a('<div class="elrte-image-src-fm"><span class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-folder-open"/></span></div>').append(this.src.main.src.css("width","87%")):this.src.main.src;j();this.preview.children("img").remove();
this.prevImg=null;t=b.selection.getEnd();this.img=t.nodeName=="IMG"&&!a(t).is(".elrte-protected")?a(t):a("<img/>");g=b.selection.getBookmark();if(v){x.children(".ui-state-default").click(function(){b.options.fmOpen(function(z){q.src.main.src.val(z).change()})}).hover(function(){a(this).toggleClass("ui-state-hover")})}u.tab("main",this.rte.i18n("Properies")).append([this.rte.i18n("Image URL"),x],"main",true).append([this.rte.i18n("Title"),this.src.main.title],"main",true).append([this.rte.i18n("Alt text"),this.src.main.alt],"main",true).append([this.rte.i18n("Size"),a("<span />").append(this.src.main.width).append(" x ").append(this.src.main.height).append(" px")],"main",true).append([this.rte.i18n("Alignment"),this.src.main.align],"main",true).append([this.rte.i18n("Margins"),this.src.main.margin],"main",true).append([this.rte.i18n("Border"),this.src.main.border],"main",true);
u.append(a("<fieldset><legend>"+this.rte.i18n("Preview")+"</legend></fieldset>").append(this.preview),"main");a.each(this.src,function(A,z){if(A=="main"){return}u.tab(A,b.i18n(q.labels[A]));a.each(z,function(B,C){q.src[A][B].val(A=="events"?b.utils.trimEventCallback(q.img.attr(B)):q.img.attr(B)||"");u.append([b.i18n(q.labels[B]||B),q.src[A][B]],A,true)})});u.open();if(this.img.attr("src")){o(this.img);this.prevImg=this.img.clone().prependTo(this.preview);h=(this.img.width()/this.img.height()).toFixed(2);
f=parseInt(this.img.width());p=parseInt(this.img.height())}};this.set=function(){var u=this.src.main.src.val(),t;this.rte.history.add();g&&b.selection.moveToBookmark(g);if(!u){t=b.dom.selfOrParentLink(this.img[0]);t&&t.remove();return this.img.remove()}!this.img[0].parentNode&&(this.img=a(this.rte.doc.createElement("img")));this.img.attr("src",u).attr("style",this.src.adv.style.val());a.each(this.src,function(v,w){a.each(w,function(x,A){var B=A.val(),z;switch(x){case"width":q.img.css("width",B);break;
case"height":q.img.css("height",B);break;case"align":q.img.css(B=="left"||B=="right"?"float":"vertical-align",B);break;case"margin":if(B.css){q.img.css("margin",B.css)}else{q.img.css({"margin-left":B.left,"margin-top":B.top,"margin-right":B.right,"margin-bottom":B.bottom})}break;case"border":if(!B.width){B=""}else{B="border:"+B.css+";"+a.trim((q.img.attr("style")||"").replace(/border\-[^;]+;?/ig,""));x="style";q.img.attr("style",B);return}break;case"src":case"style":return;default:B?q.img.attr(x,B):q.img.removeAttr(x)
}})});!this.img[0].parentNode&&b.selection.insertNode(this.img[0]);this.rte.ui.update()};this.update=function(){this.domElem.removeClass("disabled");var u=this.rte.selection.getEnd(),t=a(u);if(u.nodeName=="IMG"&&!t.hasClass("elrte-protected")){this.domElem.addClass("active")}else{this.domElem.removeClass("active")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.indent=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.command=function(){this.rte.history.add();
var h=this.rte.selection.selected({collapsed:true,blocks:true,wrap:"inline",tag:"p"});function g(q){var o=/(IMG|HR|TABLE|EMBED|OBJECT)/.test(q.nodeName)?"margin-left":"padding-left";var p=b.rte.dom.attr(q,"style").indexOf(o)!=-1?parseInt(a(q).css(o))||0:0;a(q).css(o,p+40+"px")}for(var j=0;j<h.length;j++){if(/^(TABLE|THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(h[j].nodeName)){a(h[j]).find("td,th").each(function(){g(this)})}else{if(/^LI$/.test(h[j].nodeName)){var k=a(h[j]);a(this.rte.dom.create(h[j].parentNode.nodeName)).append(a(this.rte.dom.create("li")).html(k.html()||"")).appendTo(k.html("&nbsp;"))
}else{g(h[j])}}}this.rte.ui.update()};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.justifyleft=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.align=this.name=="justifyfull"?"justify":this.name.replace("justify","");this.command=function(){var g=this.rte.selection.selected({collapsed:true,blocks:true,tag:"div"}),f=g.length;f&&this.rte.history.add();while(f--){this.rte.dom.filter(g[f],"textNodes")&&a(g[f]).css("text-align",this.align)
}this.rte.ui.update()};this.update=function(){var f=this.rte.selection.getNode(),g=f.nodeName=="BODY"?f:this.rte.dom.selfOrParent(f,"textNodes")||(f.parentNode&&f.parentNode.nodeName=="BODY"?f.parentNode:null);if(g){this.domElem.removeClass("disabled").toggleClass("active",a(g).css("text-align")==this.align)}else{this.domElem.addClass("disabled")}}};elRTE.prototype.ui.prototype.buttons.justifycenter=elRTE.prototype.ui.prototype.buttons.justifyleft;elRTE.prototype.ui.prototype.buttons.justifyright=elRTE.prototype.ui.prototype.buttons.justifyleft;
elRTE.prototype.ui.prototype.buttons.justifyfull=elRTE.prototype.ui.prototype.buttons.justifyleft})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.link=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.img=false;this.bm;function g(){b.labels={id:"ID","class":"Css class",style:"Css style",dir:"Script direction",lang:"Language",charset:"Charset",type:"Target MIME type",rel:"Relationship page to target (rel)",rev:"Relationship target to page (rev)",tabindex:"Tab index",accesskey:"Access key"};
b.src={main:{href:a('<input type="text" />'),title:a('<input type="text" />'),anchor:a("<select />").attr("name","anchor"),target:a("<select />").append(a("<option />").text(b.rte.i18n("In this window")).val("")).append(a("<option />").text(b.rte.i18n("In new window (_blank)")).val("_blank"))},popup:{use:a('<input type="checkbox" />'),url:a('<input type="text" />').val("http://"),name:a('<input type="text" />'),width:a('<input type="text" />').attr({size:6,title:b.rte.i18n("Width")}).css("text-align","right"),height:a('<input type="text" />').attr({size:6,title:b.rte.i18n("Height")}).css("text-align","right"),left:a('<input type="text" />').attr({size:6,title:b.rte.i18n("Left")}).css("text-align","right"),top:a('<input type="text" />').attr({size:6,title:b.rte.i18n("Top")}).css("text-align","right"),location:a('<input type="checkbox" />'),menubar:a('<input type="checkbox" />'),toolbar:a('<input type="checkbox" />'),scrollbars:a('<input type="checkbox" />'),status:a('<input type="checkbox" />'),resizable:a('<input type="checkbox" />'),dependent:a('<input type="checkbox" />'),retfalse:a('<input type="checkbox" />').attr("checked",true)},adv:{id:a('<input type="text" />'),"class":a('<input type="text" />'),style:a('<input type="text" />'),dir:a("<select />").append(a("<option />").text(b.rte.i18n("Not set")).val("")).append(a("<option />").text(b.rte.i18n("Left to right")).val("ltr")).append(a("<option />").text(b.rte.i18n("Right to left")).val("rtl")),lang:a('<input type="text" />'),charset:a('<input type="text" />'),type:a('<input type="text" />'),rel:a('<input type="text" />'),rev:a('<input type="text" />'),tabindex:a('<input type="text" />'),accesskey:a('<input type="text" />')},events:{}};
a.each(["onblur","onfocus","onclick","ondblclick","onmousedown","onmouseup","onmouseover","onmouseout","onmouseleave","onkeydown","onkeypress","onkeyup"],function(){b.src.events[this]=a('<input type="text" />')});a.each(b.src,function(){for(var j in this){var h=this[j].attr("type");if(!h||(h=="text"&&!this[j].attr("size"))){this[j].css("width","100%")}}})}this.command=function(){var p=this.rte.selection.getNode(),o,u,x,h,t,j,w,k,z;!this.src&&g();this.bm=this.rte.selection.getBookmark();function q(r){return r.nodeName=="A"&&r.href
}this.link=this.rte.dom.selfOrParentLink(p);if(!this.link){o=a.browser.msie?this.rte.selection.selected():this.rte.selection.selected({wrap:false});if(o.length){for(u=0;u<o.length;u++){if(q(o[u])){this.link=o[u];break}}if(!this.link){this.link=this.rte.dom.parent(o[0],q)||this.rte.dom.parent(o[o.length-1],q)}}}this.link=this.link?a(this.link):a(this.rte.doc.createElement("a"));this.img=p.nodeName=="IMG"?p:null;this.updatePopup();this.src.main.anchor.empty();a('a[href!=""][name]',this.rte.doc).each(function(){var r=a(this).attr("name");
b.src.main.anchor.append(a("<option />").val(r).text(r))});if(this.src.main.anchor.children().length){this.src.main.anchor.prepend(a("<option />").val("").text(this.rte.i18n("Select bookmark"))).change(function(){var r=a(this).val();if(r){b.src.main.href.val("#"+r)}})}h={rtl:this.rte.rtl,submit:function(r,v){r.stopPropagation();r.preventDefault();b.set();v.close()},tabs:{show:function(v,r){if(r.index==3){b.updateOnclick()}}},close:function(){b.rte.browser.msie&&b.rte.selection.restoreIERange()},dialog:{width:"auto",width:430,title:this.rte.i18n("Link")}};
d=new elDialogForm(h);t=a("<div />").append(a("<label />").append(this.src.popup.location).append(this.rte.i18n("Location bar"))).append(a("<label />").append(this.src.popup.menubar).append(this.rte.i18n("Menu bar"))).append(a("<label />").append(this.src.popup.toolbar).append(this.rte.i18n("Toolbar"))).append(a("<label />").append(this.src.popup.scrollbars).append(this.rte.i18n("Scrollbars")));j=a("<div />").append(a("<label />").append(this.src.popup.status).append(this.rte.i18n("Status bar"))).append(a("<label />").append(this.src.popup.resizable).append(this.rte.i18n("Resizable"))).append(a("<label />").append(this.src.popup.dependent).append(this.rte.i18n("Depedent"))).append(a("<label />").append(this.src.popup.retfalse).append(this.rte.i18n("Add return false")));
d.tab("main",this.rte.i18n("Properies")).tab("popup",this.rte.i18n("Popup")).tab("adv",this.rte.i18n("Advanced")).tab("events",this.rte.i18n("Events")).append(a("<label />").append(this.src.popup.use).append(this.rte.i18n("Open link in popup window")),"popup").separator("popup").append([this.rte.i18n("URL"),this.src.popup.url],"popup",true).append([this.rte.i18n("Window name"),this.src.popup.name],"popup",true).append([this.rte.i18n("Window size"),a("<span />").append(this.src.popup.width).append(" x ").append(this.src.popup.height).append(" px")],"popup",true).append([this.rte.i18n("Window position"),a("<span />").append(this.src.popup.left).append(" x ").append(this.src.popup.top).append(" px")],"popup",true).separator("popup").append([t,j],"popup",true);
w=this.link.get(0);k=this.rte.dom.attr(w,"href");this.src.main.href.val(k).change(function(){a(this).val(b.rte.utils.absoluteURL(a(this).val()))});if(this.rte.options.fmAllow&&this.rte.options.fmOpen){var z=a("<span />").append(this.src.main.href.css("width","87%")).append(a("<span />").addClass("ui-state-default ui-corner-all").css({"float":"right","margin-right":"3px"}).attr("title",b.rte.i18n("Open file manger")).append(a("<span />").addClass("ui-icon ui-icon-folder-open")).click(function(){b.rte.options.fmOpen(function(r){b.src.main.href.val(r).change()
})}).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}));d.append([this.rte.i18n("Link URL"),z],"main",true)}else{d.append([this.rte.i18n("Link URL"),this.src.main.href],"main",true)}this.src.main.href.change();d.append([this.rte.i18n("Title"),this.src.main.title.val(this.rte.dom.attr(w,"title"))],"main",true);if(this.src.main.anchor.children().length){d.append([this.rte.i18n("Bookmark"),this.src.main.anchor.val(k)],"main",true)}if(!(this.rte.options.doctype.match(/xhtml/)&&this.rte.options.doctype.match(/strict/))){d.append([this.rte.i18n("Target"),this.src.main.target.val(this.link.attr("target")||"")],"main",true)
}for(var p in this.src.adv){this.src.adv[p].val(this.rte.dom.attr(w,p));d.append([this.rte.i18n(this.labels[p]?this.labels[p]:p),this.src.adv[p]],"adv",true)}for(var p in this.src.events){var x=this.rte.utils.trimEventCallback(this.rte.dom.attr(w,p));this.src.events[p].val(x);d.append([this.rte.i18n(this.labels[p]?this.labels[p]:p),this.src.events[p]],"events",true)}this.src.popup.use.change(function(){var r=a(this).attr("checked");a.each(b.src.popup,function(){if(a(this).attr("name")!="use"){if(r){a(this).removeAttr("disabled")
}else{a(this).attr("disabled",true)}}})});this.src.popup.use.change();d.open()};this.update=function(){var h=this.rte.selection.getNode();if(this.rte.dom.selfOrParentLink(h)){this.domElem.removeClass("disabled").addClass("active")}else{if(this.rte.dom.selectionHas(function(j){return j.nodeName=="A"&&j.href})){this.domElem.removeClass("disabled").addClass("active")}else{if(!this.rte.selection.collapsed()||h.nodeName=="IMG"){this.domElem.removeClass("disabled active")}else{this.domElem.addClass("disabled").removeClass("active")
}}}};this.updatePopup=function(){var h=""+this.link.attr("onclick");if(h.length>0&&(m=h.match(/window.open\('([^']+)',\s*'([^']*)',\s*'([^']*)'\s*.*\);\s*(return\s+false)?/))){this.src.popup.use.attr("checked","on");this.src.popup.url.val(m[1]);this.src.popup.name.val(m[2]);if(/location=yes/.test(m[3])){this.src.popup.location.attr("checked",true)}if(/menubar=yes/.test(m[3])){this.src.popup.menubar.attr("checked",true)}if(/toolbar=yes/.test(m[3])){this.src.popup.toolbar.attr("checked",true)}if(/scrollbars=yes/.test(m[3])){this.src.popup.scrollbars.attr("checked",true)
}if(/status=yes/.test(m[3])){this.src.popup.status.attr("checked",true)}if(/resizable=yes/.test(m[3])){this.src.popup.resizable.attr("checked",true)}if(/dependent=yes/.test(m[3])){this.src.popup.dependent.attr("checked",true)}if((_m=m[3].match(/width=([^,]+)/))){this.src.popup.width.val(_m[1])}if((_m=m[3].match(/height=([^,]+)/))){this.src.popup.height.val(_m[1])}if((_m=m[3].match(/left=([^,]+)/))){this.src.popup.left.val(_m[1])}if((_m=m[3].match(/top=([^,]+)/))){this.src.popup.top.val(_m[1])}if(m[4]){this.src.popup.retfalse.attr("checked",true)
}}else{a.each(this.src.popup,function(){var j=a(this);if(j.attr("type")=="text"){j.val(j.attr("name")=="url"?"http://":"")}else{if(j.attr("name")=="retfalse"){this.attr("checked",true)}else{j.removeAttr("checked")}}})}};this.updateOnclick=function(){var o=this.src.popup.url.val();if(this.src.popup.use.attr("checked")&&o){var p="";if(this.src.popup.location.attr("checked")){p+="location=yes,"}if(this.src.popup.menubar.attr("checked")){p+="menubar=yes,"}if(this.src.popup.toolbar.attr("checked")){p+="toolbar=yes,"
}if(this.src.popup.scrollbars.attr("checked")){p+="scrollbars=yes,"}if(this.src.popup.status.attr("checked")){p+="status=yes,"}if(this.src.popup.resizable.attr("checked")){p+="resizable=yes,"}if(this.src.popup.dependent.attr("checked")){p+="dependent=yes,"}if(this.src.popup.width.val()){p+="width="+this.src.popup.width.val()+","}if(this.src.popup.height.val()){p+="height="+this.src.popup.height.val()+","}if(this.src.popup.left.val()){p+="left="+this.src.popup.left.val()+","}if(this.src.popup.top.val()){p+="top="+this.src.popup.top.val()+","
}if(p.length>0){p=p.substring(0,p.length-1)}var j=this.src.popup.retfalse.attr("checked")?"return false;":"";var k="window.open('"+o+"', '"+a.trim(this.src.popup.name.val())+"', '"+p+"'); "+j;this.src.events.onclick.val(k);if(!this.src.main.href.val()){this.src.main.href.val("#")}}else{var h=this.src.events.onclick.val();h=h.replace(/window\.open\([^\)]+\)\s*;?\s*return\s*false\s*;?/i,"");this.src.events.onclick.val(h)}};this.set=function(){var j,k;this.updateOnclick();this.rte.selection.moveToBookmark(this.bm);
this.rte.history.add();j=this.rte.utils.absoluteURL(this.src.main.href.val());if(!j){var p=this.rte.selection.getBookmark();this.rte.dom.unwrap(this.link[0]);this.rte.selection.moveToBookmark(p)}else{if(this.img&&this.img.parentNode){this.link=a(this.rte.dom.create("a")).attr("href",j);this.rte.dom.wrap(this.img,this.link[0])}else{if(!this.link[0].parentNode){k="#--el-editor---"+Math.random();this.rte.doc.execCommand("createLink",false,k);this.link=a('a[href="'+k+'"]',this.rte.doc);this.link.each(function(){var r=a(this);
if(!a.trim(r.html())&&!a.trim(r.text())){r.replaceWith(r.text())}})}}this.src.main.href.val(j);for(var o in this.src){if(o!="popup"){for(var q in this.src[o]){if(q!="anchors"){var h=a.trim(this.src[o][q].val());if(h){this.link.attr(q,h)}else{this.link.removeAttr(q)}}}}}this.img&&this.rte.selection.select(this.img)}this.rte.ui.update(true)}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.nbsp=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.command=function(){this.rte.history.add();
this.rte.selection.insertHtml("&nbsp;",true);this.rte.window.focus();this.rte.ui.update()};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.outdent=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.command=function(){var g=this.find();if(g.node){this.rte.history.add();a(g.node).css(g.type,(g.val>40?g.val-40:0)+"px");this.rte.ui.update()}};this.find=function(j){function g(p){var k={type:"",val:0};
var o;if((o=b.rte.dom.attr(p,"style"))){k.type=o.indexOf("padding-left")!=-1?"padding-left":(o.indexOf("margin-left")!=-1?"margin-left":"");k.val=k.type?parseInt(a(p).css(k.type))||0:0}return k}var j=this.rte.selection.getNode();var h=g(j);if(h.val){h.node=j}else{a.each(this.rte.dom.parents(j,"*"),function(){h=g(this);if(h.val){h.node=this;return h}})}return h};this.update=function(){var g=this.find();if(g.node){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);
(function(a){elRTE.prototype.ui.prototype.buttons.pagebreak=function(c,b){this.constructor.prototype.constructor.call(this,c,b);a(this.rte.doc.body).bind("mousedown",function(f){if(a(f.target).hasClass("elrte-pagebreak")){f.preventDefault()}});this.command=function(){this.rte.selection.insertHtml('<img src="'+this.rte.filter.url+'pixel.gif" class="elrte-protected elrte-pagebreak"/>',false)};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.pasteformattext=function(f,c){this.constructor.prototype.constructor.call(this,f,c);
this.iframe=a(document.createElement("iframe")).addClass("el-rte-paste-input");this.doc=null;var b=this;this.command=function(){this.rte.selection.saveIERange();var g=this,h={submit:function(o,p){o.stopPropagation();o.preventDefault();g.paste();p.close()},dialog:{width:500,title:this.rte.i18n("Paste formatted text")}},k=new elDialogForm(h);k.append(this.iframe).open();this.doc=this.iframe.get(0).contentWindow.document;html=this.rte.options.doctype+'<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
html+="</head><body> <br /> </body></html>";this.doc.open();this.doc.write(html);this.doc.close();if(!this.rte.browser.msie){try{this.doc.designMode="on"}catch(j){}}else{this.doc.body.contentEditable=true}setTimeout(function(){g.iframe[0].contentWindow.focus()},50)};this.paste=function(){a(this.doc.body).find("[class]").removeAttr("class");var g=a.trim(a(this.doc.body).html());if(g){this.rte.history.add();this.rte.selection.restoreIERange();this.rte.selection.insertHtml(this.rte.filter.wysiwyg2wysiwyg(this.rte.filter.proccess("paste",g)));
this.rte.ui.update(true)}};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.pastetext=function(f,c){this.constructor.prototype.constructor.call(this,f,c);this.input=a("<textarea />").addClass("el-rte-paste-input");var b=this;this.command=function(){this.rte.browser.msie&&this.rte.selection.saveIERange();var g={submit:function(j,k){j.stopPropagation();j.preventDefault();b.paste();k.close()},dialog:{width:500,title:this.rte.i18n("Paste only text")}};
var h=new elDialogForm(g);h.append(this.input).open()};this.paste=function(){var g=a.trim(this.input.val());if(g){this.rte.history.add();this.rte.browser.msie&&this.rte.selection.restoreIERange();this.rte.selection.insertText(g.replace(/\r?\n/g,"<br />"),true);this.rte.ui.update(true)}this.input.val("")};this.update=function(){this.domElem.removeClass("disabled")}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.save=function(c,b){this.constructor.prototype.constructor.call(this,c,b);
this.active=true;this.command=function(){this.rte.save()};this.update=function(){}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.smiley=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.img=null;this.url=this.rte.filter.url+"smileys/";this.smileys={smile:"smile.png",happy:"happy.png",tongue:"tongue.png",surprised:"surprised.png",waii:"waii.png",wink:"wink.png",evilgrin:"evilgrin.png",grin:"grin.png",unhappy:"unhappy.png"};this.width=120;this.command=function(){var h=this,j=this.url,o,k,g;
this.rte.browser.msie&&this.rte.selection.saveIERange();k={dialog:{height:120,width:this.width,title:this.rte.i18n("Smiley"),buttons:{}}};o=new elDialogForm(k);a.each(this.smileys,function(q,p){o.append(a('<img src="'+j+p+'" title="'+q+'" id="'+q+'" class="el-rte-smiley"/>').click(function(){h.set(this.id,o)}))});o.open()};this.update=function(){this.domElem.removeClass("disabled");this.domElem.removeClass("active")};this.set=function(g,h){this.rte.browser.msie&&this.rte.selection.restoreIERange();
if(this.smileys[g]){this.img=a(this.rte.doc.createElement("img"));this.img.attr({src:this.url+this.smileys[g],title:g,alt:g});this.rte.selection.insertNode(this.img.get(0));this.rte.ui.update()}h.close()}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.stopfloat=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.find=function(){if(this.rte.selection.collapsed()){var f=this.rte.dom.selfOrParent(this.rte.selection.getEnd(),/^DIV$/);if(f&&(this.rte.dom.attr(f,"clear")||a(f).css("clear")!="none")){return f
}}};this.command=function(){var f;if((f=this.find())){var f=a(f);this.rte.history.add();if(!f.children().length&&!a.trim(f.text()).length){f.remove()}else{f.removeAttr("clear").css("clear","")}}else{this.rte.history.add();this.rte.selection.insertNode(a(this.rte.dom.create("div")).css("clear","both").get(0),true)}this.rte.ui.update(true)};this.update=function(){this.domElem.removeClass("disabled");if(this.find()){this.domElem.addClass("active")}else{this.domElem.removeClass("active")}}}})(jQuery);
(function(a){elRTE.prototype.ui.prototype.buttons.table=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.src=null;this.labels=null;function g(){b.labels={main:"Properies",adv:"Advanced",events:"Events",id:"ID","class":"Css class",style:"Css style",dir:"Script direction",summary:"Summary",lang:"Language",href:"URL"};b.src={main:{caption:a('<input type="text" />'),rows:a('<input type="text" />').attr("size",5).val(2),cols:a('<input type="text" />').attr("size",5).val(2),width:a('<input type="text" />').attr("size",5),wunit:a("<select />").append(a("<option />").val("%").text("%")).append(a("<option />").val("px").text("px")),height:a('<input type="text" />').attr("size",5),hunit:a("<select />").append(a("<option />").val("%").text("%")).append(a("<option />").val("px").text("px")),align:a("<select />").append(a("<option />").val("").text(b.rte.i18n("Not set"))).append(a("<option />").val("left").text(b.rte.i18n("Left"))).append(a("<option />").val("center").text(b.rte.i18n("Center"))).append(a("<option />").val("right").text(b.rte.i18n("Right"))),spacing:a('<input type="text" />').attr("size",5),padding:a('<input type="text" />').attr("size",5),border:a("<div />"),rules:a("<select />").append(a("<option />").val("none").text(b.rte.i18n("No"))).append(a("<option />").val("all").text(b.rte.i18n("Cells"))).append(a("<option />").val("groups").text(b.rte.i18n("Groups"))).append(a("<option />").val("rows").text(b.rte.i18n("Rows"))).append(a("<option />").val("cols").text(b.rte.i18n("Columns"))),margin:a("<div />"),bg:a("<div />"),bgimg:a('<input type="text" />').css("width","90%")},adv:{id:a('<input type="text" />'),summary:a('<input type="text" />'),"class":a('<input type="text" />'),style:a('<input type="text" />'),dir:a("<select />").append(a("<option />").text(b.rte.i18n("Not set")).val("")).append(a("<option />").text(b.rte.i18n("Left to right")).val("ltr")).append(a("<option />").text(b.rte.i18n("Right to left")).val("rtl")),lang:a('<input type="text" />')},events:{}};
a.each(b.src,function(){for(var j in this){this[j].attr("name",j);var h=this[j].get(0).nodeName;if(h=="INPUT"&&j!="bgimg"){this[j].css(this[j].attr("size")?{"text-align":"right"}:{width:"100%"})}else{if(h=="SELECT"&&j!="wunit"&&j!="hunit"){this[j].css("width","100%")}}}});a.each(["onblur","onfocus","onclick","ondblclick","onmousedown","onmouseup","onmouseover","onmouseout","onmouseleave","onkeydown","onkeypress","onkeyup"],function(){b.src.events[this]=a('<input type="text" />').css("width","100%")
});b.src.main.align.change(function(){var j=a(this).val();if(j=="center"){b.src.main.margin.val({left:"auto",right:"auto"})}else{var h=b.src.main.margin.val();if(h.left=="auto"&&h.right=="auto"){b.src.main.margin.val({left:"",right:""})}}});b.src.main.bgimg.change(function(){var h=a(this);h.val(b.rte.utils.absoluteURL(h.val()))})}this.command=function(){var r=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^TABLE$/);if(this.name=="table"){this.table=a(this.rte.doc.createElement("table"))}else{this.table=r?a(r):a(this.rte.doc.createElement("table"))
}!this.src&&g();this.src.main.border.elBorderSelect({styleHeight:117});this.src.main.bg.elColorPicker({palettePosition:"outer","class":"el-colorpicker ui-icon ui-icon-pencil"});this.src.main.margin.elPaddingInput({type:"margin",value:this.table});if(this.table.parents().length){this.src.main.rows.val("").attr("disabled",true);this.src.main.cols.val("").attr("disabled",true)}else{this.src.main.rows.val(2).removeAttr("disabled");this.src.main.cols.val(2).removeAttr("disabled")}var D=this.table.css("width")||this.table.attr("width");
this.src.main.width.val(parseInt(D)||"");this.src.main.wunit.val(D.indexOf("px")!=-1?"px":"%");var z=this.table.css("height")||this.table.attr("height");this.src.main.height.val(parseInt(z)||"");this.src.main.hunit.val(z&&z.indexOf("px")!=-1?"px":"%");var B=this.table.css("float");this.src.main.align.val("");if(B=="left"||B=="right"){this.src.main.align.val(B)}else{var t=this.table.css("margin-left");var p=this.table.css("margin-right");if(t=="auto"&&p=="auto"){this.src.main.align.val("center")}}this.src.main.border.val(this.table);
this.src.main.rules.val(this.rte.dom.attr(this.table.get(0),"rules"));this.src.main.bg.val(this.table.css("background-color"));var j=(this.table.css("background-image")||"").replace(/url\(([^\)]+)\)/i,"$1");this.src.main.bgimg.val(j!="none"?j:"");var k={rtl:this.rte.rtl,submit:function(h,v){h.stopPropagation();h.preventDefault();b.set();v.close()},dialog:{width:530,title:this.rte.i18n("Table")}};var C=new elDialogForm(k);for(var q in this.src){C.tab(q,this.rte.i18n(this.labels[q]));if(q=="main"){var A=a("<table />").append(a("<tr />").append("<td>"+this.rte.i18n("Rows")+"</td>").append(a("<td />").append(this.src.main.rows))).append(a("<tr />").append("<td>"+this.rte.i18n("Columns")+"</td>").append(a("<td />").append(this.src.main.cols)));
var x=a("<table />").append(a("<tr />").append("<td>"+this.rte.i18n("Width")+"</td>").append(a("<td />").append(this.src.main.width).append(this.src.main.wunit))).append(a("<tr />").append("<td>"+this.rte.i18n("Height")+"</td>").append(a("<td />").append(this.src.main.height).append(this.src.main.hunit)));var u=a("<table />").append(a("<tr />").append("<td>"+this.rte.i18n("Spacing")+"</td>").append(a("<td />").append(this.src.main.spacing.val(this.table.attr("cellspacing")||"")))).append(a("<tr />").append("<td>"+this.rte.i18n("Padding")+"</td>").append(a("<td />").append(this.src.main.padding.val(this.table.attr("cellpadding")||""))));
C.append([this.rte.i18n("Caption"),this.src.main.caption.val(this.table.find("caption").eq(0).text()||"")],"main",true).separator("main").append([A,x,u],"main",true).separator("main").append([this.rte.i18n("Border"),this.src.main.border],"main",true).append([this.rte.i18n("Inner borders"),this.src.main.rules],"main",true).append([this.rte.i18n("Alignment"),this.src.main.align],"main",true).append([this.rte.i18n("Margins"),this.src.main.margin],"main",true).append([this.rte.i18n("Background"),a("<span />").append(a("<span />").css({"float":"left","margin-right":"3px"}).append(this.src.main.bg)).append(this.src.main.bgimg)],"main",true)
}else{for(var o in this.src[q]){var E=this.rte.dom.attr(this.table,o);if(q=="events"){E=this.rte.utils.trimEventCallback(E)}C.append([this.rte.i18n(this.labels[o]?this.labels[o]:o),this.src[q][o].val(E)],q,true)}}}C.open()};this.set=function(){if(!this.table.parents().length){var k=parseInt(this.src.main.rows.val())||0;var B=parseInt(this.src.main.cols.val())||0;if(k<=0||B<=0){return}this.rte.history.add();var D=a(this.rte.doc.createElement("tbody")).appendTo(this.table);for(var u=0;u<k;u++){var C="<tr>";
for(var t=0;t<B;t++){C+="<td>&nbsp;</td>"}D.append(C+"</tr>")}}else{this.table.removeAttr("width").removeAttr("height").removeAttr("border").removeAttr("align").removeAttr("bordercolor").removeAttr("bgcolor").removeAttr("cellspacing").removeAttr("cellpadding").removeAttr("frame").removeAttr("rules").removeAttr("style")}var I=a.trim(this.src.main.caption.val());if(I){if(!this.table.children("caption").length){this.table.prepend("<caption />")}this.table.children("caption").text(I)}else{this.table.children("caption").remove()
}for(var p in this.src){if(p!="main"){for(var o in this.src[p]){var G=a.trim(this.src[p][o].val());if(G){this.table.attr(o,G)}else{this.table.removeAttr(o)}}}}var A,E,H;if((A=parseInt(this.src.main.spacing.val()))&&A>=0){this.table.attr("cellspacing",A)}if((E=parseInt(this.src.main.padding.val()))&&E>=0){this.table.attr("cellpadding",E)}if((H=this.src.main.rules.val())){this.table.attr("rules",H)}var F=parseInt(this.src.main.width.val())||"",x=parseInt(this.src.main.height.val())||"",u=a.trim(this.src.main.bgimg.val()),D=this.src.main.border.val(),q=this.src.main.margin.val(),z=this.src.main.align.val();
this.table.css({width:F?F+this.src.main.wunit.val():"",height:x?x+this.src.main.hunit.val():"",border:a.trim(D.width+" "+D.style+" "+D.color),"background-color":this.src.main.bg.val(),"background-image":u?"url("+u+")":""});if(q.css){this.table.css("margin",q.css)}else{this.table.css({"margin-top":q.top,"margin-right":q.right,"margin-bottom":q.bottom,"margin-left":q.left})}if((z=="left"||z=="right")&&this.table.css("margin-left")!="auto"&&this.table.css("margin-right")!="auto"){this.table.css("float",z)
}if(!this.table.attr("style")){this.table.removeAttr("style")}if(!this.table.parents().length){this.rte.selection.insertNode(this.table.get(0),true)}this.rte.ui.update()};this.update=function(){this.domElem.removeClass("disabled");if(this.name=="tableprops"&&!this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^TABLE$/)){this.domElem.addClass("disabled").removeClass("active")}}};elRTE.prototype.ui.prototype.buttons.tableprops=elRTE.prototype.ui.prototype.buttons.table})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.tablerm=function(c,b){this.constructor.prototype.constructor.call(this,c,b);
this.command=function(){var f=this.rte.dom.parent(this.rte.selection.getNode(),/^TABLE$/);if(f){this.rte.history.add();a(f).remove()}this.rte.ui.update(true)};this.update=function(){if(this.rte.dom.parent(this.rte.selection.getNode(),/^TABLE$/)){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.tbcellprops=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.src=null;this.labels=null;
function g(){b.labels={main:"Properies",adv:"Advanced",events:"Events",id:"ID","class":"Css class",style:"Css style",dir:"Script direction",lang:"Language"};b.src={main:{type:a("<select />").css("width","100%").append(a("<option />").val("td").text(b.rte.i18n("Data"))).append(a("<option />").val("th").text(b.rte.i18n("Header"))),width:a('<input type="text" />').attr("size",4),wunit:a("<select />").append(a("<option />").val("%").text("%")).append(a("<option />").val("px").text("px")),height:a('<input type="text" />').attr("size",4),hunit:a("<select />").append(a("<option />").val("%").text("%")).append(a("<option />").val("px").text("px")),align:a("<select />").css("width","100%").append(a("<option />").val("").text(b.rte.i18n("Not set"))).append(a("<option />").val("left").text(b.rte.i18n("Left"))).append(a("<option />").val("center").text(b.rte.i18n("Center"))).append(a("<option />").val("right").text(b.rte.i18n("Right"))).append(a("<option />").val("justify").text(b.rte.i18n("Justify"))),border:a("<div />"),padding:a("<div />"),bg:a("<div />"),bgimg:a('<input type="text" />').css("width","90%"),apply:a("<select />").css("width","100%").append(a("<option />").val("").text(b.rte.i18n("Current cell"))).append(a("<option />").val("row").text(b.rte.i18n("All cells in row"))).append(a("<option />").val("column").text(b.rte.i18n("All cells in column"))).append(a("<option />").val("table").text(b.rte.i18n("All cells in table")))},adv:{id:a('<input type="text" />'),"class":a('<input type="text" />'),style:a('<input type="text" />'),dir:a("<select />").css("width","100%").append(a("<option />").text(b.rte.i18n("Not set")).val("")).append(a("<option />").text(b.rte.i18n("Left to right")).val("ltr")).append(a("<option />").text(b.rte.i18n("Right to left")).val("rtl")),lang:a('<input type="text" />')},events:{}};
a.each(b.src,function(){for(var h in this){this[h].attr("name",h);if(this[h].attr("type")=="text"&&!this[h].attr("size")&&h!="bgimg"){this[h].css("width","100%")}}});a.each(["onblur","onfocus","onclick","ondblclick","onmousedown","onmouseup","onmouseover","onmouseout","onmouseleave","onkeydown","onkeypress","onkeyup"],function(){b.src.events[this]=a('<input type="text" />').css("width","100%")})}this.command=function(){!this.src&&g();this.cell=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^(TD|TH)$/);
if(!this.cell){return}this.src.main.type.val(this.cell.nodeName.toLowerCase());this.cell=a(this.cell);this.src.main.border.elBorderSelect({styleHeight:117,value:this.cell});this.src.main.bg.elColorPicker({palettePosition:"outer","class":"el-colorpicker ui-icon ui-icon-pencil"});this.src.main.padding.elPaddingInput({value:this.cell});var j=this.cell.css("width")||this.cell.attr("width");this.src.main.width.val(parseInt(j)||"");this.src.main.wunit.val(j.indexOf("px")!=-1?"px":"%");var q=this.cell.css("height")||this.cell.attr("height");
this.src.main.height.val(parseInt(q)||"");this.src.main.hunit.val(q.indexOf("px")!=-1?"px":"%");this.src.main.align.val(this.cell.attr("align")||this.cell.css("text-align"));this.src.main.bg.val(this.cell.css("background-color"));var t=this.cell.css("background-image");this.src.main.bgimg.val(t&&t!="none"?t.replace(/url\(([^\)]+)\)/i,"$1"):"");this.src.main.apply.val("");var r={rtl:this.rte.rtl,submit:function(h,v){h.stopPropagation();h.preventDefault();b.set();v.close()},dialog:{width:520,title:this.rte.i18n("Table cell properties")}};
var u=new elDialogForm(r);for(var p in this.src){u.tab(p,this.rte.i18n(this.labels[p]));if(p=="main"){u.append([this.rte.i18n("Width"),a("<span />").append(this.src.main.width).append(this.src.main.wunit)],"main",true).append([this.rte.i18n("Height"),a("<span />").append(this.src.main.height).append(this.src.main.hunit)],"main",true).append([this.rte.i18n("Table cell type"),this.src.main.type],"main",true).append([this.rte.i18n("Border"),this.src.main.border],"main",true).append([this.rte.i18n("Alignment"),this.src.main.align],"main",true).append([this.rte.i18n("Paddings"),this.src.main.padding],"main",true).append([this.rte.i18n("Background"),a("<span />").append(a("<span />").css({"float":"left","margin-right":"3px"}).append(this.src.main.bg)).append(this.src.main.bgimg)],"main",true).append([this.rte.i18n("Apply to"),this.src.main.apply],"main",true)
}else{for(var o in this.src[p]){var k=this.cell.attr(o)||"";if(p=="events"){k=this.rte.utils.trimEventCallback(k)}u.append([this.rte.i18n(this.labels[o]?this.labels[o]:o),this.src[p][o].val(k)],p,true)}}}u.open()};this.set=function(){var x=this.cell,B=this.src.main.apply.val();switch(this.src.main.apply.val()){case"row":x=this.cell.parent("tr").children("td,th");break;case"column":x=a(this.rte.dom.tableColumn(this.cell.get(0)));break;case"table":x=this.cell.parents("table").find("td,th");break}for(var o in this.src){if(o!="main"){for(var k in this.src[o]){var C=a.trim(this.src[o][k].val());
if(C){x.attr(k,C)}else{x.removeAttr(k)}}}}x.removeAttr("width").removeAttr("height").removeAttr("border").removeAttr("align").removeAttr("bordercolor").removeAttr("bgcolor");var D=this.src.main.type.val();var A=parseInt(this.src.main.width.val())||"";var r=parseInt(this.src.main.height.val())||"";var q=a.trim(this.src.main.bgimg.val());var z=this.src.main.border.val();var u={width:A?A+this.src.main.wunit.val():"",height:r?r+this.src.main.hunit.val():"","background-color":this.src.main.bg.val(),"background-image":q?"url("+q+")":"",border:a.trim(z.width+" "+z.style+" "+z.color),"text-align":this.src.main.align.val()||""};
var j=this.src.main.padding.val();if(j.css){u.padding=j.css}else{u["padding-top"]=j.top;u["padding-right"]=j.right;u["padding-bottom"]=j.bottom;u["padding-left"]=j.left}x=x.get();a.each(x,function(){var w=this.nodeName.toLowerCase();var F=a(this);if(w!=D){var h={};for(var t in b.src.adv){var p=F.attr(t);if(p){h[t]=p.toString()}}for(var t in b.src.events){var p=F.attr(t);if(p){h[t]=p.toString()}}var G=F.attr("colspan")||1;var E=F.attr("rowspan")||1;if(G>1){h.colspan=G}if(E>1){h.rowspan=E}F.replaceWith(a("<"+D+" />").html(F.html()).attr(h).css(u))
}else{F.css(u)}});this.rte.ui.update()};this.update=function(){if(this.rte.dom.parent(this.rte.selection.getNode(),/^TABLE$/)){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.tbcellsmerge=function(g,f){this.constructor.prototype.constructor.call(this,g,f);var c=this;function b(){var j=c.rte.dom.selfOrParent(c.rte.selection.getStart(),/^(TD|TH)$/);var h=c.rte.dom.selfOrParent(c.rte.selection.getEnd(),/^(TD|TH)$/);
if(j&&h&&j!=h&&a(j).parents("table").get(0)==a(h).parents("table").get(0)){return[j,h]}return null}this.command=function(){var z=b();if(z){var x=this.rte.dom.indexOf(a(z[0]).parent("tr").get(0));var r=this.rte.dom.indexOf(a(z[1]).parent("tr").get(0));var q=Math.min(x,r);var u=Math.max(x,r)-q+1;var j=this.rte.dom.tableColumn(z[0],true,true);var h=this.rte.dom.tableColumn(z[1],true);var B=a.inArray(z[0],j.column);var w=a.inArray(z[1],h.column);var p=j.info.offset[B]<h.info.offset[w]?j:h;var v=j.info.offset[B]>=h.info.offset[w]?j:h;
var k=0;var t=null;var o="";this.rte.history.add();var A=a(a(z[0]).parents("table").eq(0).find("tr").get().slice(q,q+u)).each(function(E){var D=o.length;var C=false;a(this).children("td,th").each(function(){var K=a(this);var I=a.inArray(this,p.column);var H=a.inArray(this,v.column);if(I!=-1||H!=-1){C=I!=-1&&H==-1;var G=parseInt(K.attr("colspan")||1);if(E==0){k+=G}if(I!=-1&&E>0){var L=p.info.delta[I];if(L>0){if(K.css("text-align")=="left"){var F=K.clone(true);K.html("&nbsp;")}else{var F=K.clone().html("&nbsp;")
}F.removeAttr("colspan").removeAttr("id").insertBefore(this);if(L>1){F.attr("colspan",L)}}}if(H!=-1){var L=v.info.delta[H];if(G-L>1){var J=G-L-1;if(K.css("text-align")=="right"){var F=K.clone(true);K.html("&nbsp;")}else{var F=K.clone().html("&nbsp;")}F.removeAttr("colspan").removeAttr("id").insertAfter(this);if(J>1){F.attr("colspan",J)}}}if(!t){t=K}else{o+=K.html();K.remove()}}else{if(C){if(E==0){k+=parseInt(K.attr("colspan")||1)}o+=K.html();K.remove()}}});o+=D!=o.length?"<br />":""});t.removeAttr("colspan").removeAttr("rowspan").html(t.html()+o);
if(k>1){t.attr("colspan",k)}if(u>1){t.attr("rowspan",u)}this.rte.dom.fixTable(a(z[0]).parents("table").get(0))}};this.update=function(){if(b()){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.tbcellsplit=function(c,b){this.constructor.prototype.constructor.call(this,c,b);this.command=function(){var j=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^(TD|TH)$/);if(j){this.rte.history.add();var k=parseInt(this.rte.dom.attr(j,"colspan"));
var o=parseInt(this.rte.dom.attr(j,"rowspan"));if(k>1||o>1){var u=k-1;var v=o-1;var q=this.rte.dom.parent(j,/^TABLE$/);var p=this.rte.dom.tableMatrix(q);if(u){for(var t=0;t<u;t++){a(this.rte.dom.create(j.nodeName)).html("&nbsp;").insertAfter(j)}}if(v){var x=this.rte.dom.indexesOfCell(j,p);var h=x[0];var g=x[1];for(var f=h+1;f<h+v+1;f++){var w;if(!p[f][g].nodeName){if(p[f][g-1].nodeName){w=p[f][g-1]}else{for(var t=g-1;t>=0;t--){if(p[f][t].nodeName){w=p[f][t];break}}}if(w){for(var t=0;t<=u;t++){a(this.rte.dom.create(w.nodeName)).html("&nbsp;").insertAfter(w)
}}}}}a(j).removeAttr("colspan").removeAttr("rowspan");this.rte.dom.fixTable(q)}}this.rte.ui.update(true)};this.update=function(){var f=this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^(TD|TH)$/);if(f&&(parseInt(this.rte.dom.attr(f,"colspan"))>1||parseInt(this.rte.dom.attr(f,"rowspan"))>1)){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.tbcolbefore=function(f,c){this.constructor.prototype.constructor.call(this,f,c);
var b=this;this.command=function(){var g=this;var h=this.rte.dom.tableColumn(this.rte.selection.getNode(),false,true);if(h.length){this.rte.history.add();a.each(h,function(){var k=a(this);var j=parseInt(k.attr("colspan")||1);if(j>1){k.attr("colspan",j+1)}else{var o=a(g.rte.dom.create(this.nodeName)).html("&nbsp;");if(g.name=="tbcolbefore"){o.insertBefore(this)}else{o.insertAfter(this)}}});this.rte.ui.update()}};this.update=function(){if(this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^(TD|TH)$/)){this.domElem.removeClass("disabled")
}else{this.domElem.addClass("disabled")}}};elRTE.prototype.ui.prototype.buttons.tbcolafter=elRTE.prototype.ui.prototype.buttons.tbcolbefore})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.tbcolrm=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.command=function(){var p=this.rte.selection.getNode();var o=this.rte.dom.selfOrParent(p,/^(TD|TH)$/);var k=a(o).prev("td,th").get(0);var j=a(o).next("td,th").get(0);var g=this.rte.dom.parent(p,/^TABLE$/);var h=this.rte.dom.tableColumn(p,false,true);
if(h.length){this.rte.history.add();a.each(h,function(){var r=a(this);var q=parseInt(r.attr("colspan")||1);if(q>1){r.attr("colspan",q-1)}else{r.remove()}});this.rte.dom.fixTable(g);if(k||j){this.rte.selection.selectContents(k?k:j).collapse(true)}this.rte.ui.update(true)}};this.update=function(){if(this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^(TD|TH)$/)){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);elRTE.prototype.ui.prototype.buttons.tbrowbefore=function(b,a){this.constructor.prototype.constructor.call(this,b,a);
this.command=function(){var h=this.rte.selection.getNode();var t=this.rte.dom.selfOrParent(h,/^(TD|TH)$/);var f=this.rte.dom.selfOrParent(t,/^TR$/);var w=this.rte.dom.tableMatrix(this.rte.dom.selfOrParent(t,/^TABLE$/));if(t&&f&&w){this.rte.history.add();var u=this.name=="tbrowbefore";var q=$(f).prevAll("tr").length;var j=0;var p=[];function k(c,r){while(r>0){r--;if(w[r]&&w[r][c]&&w[r][c].nodeName){return w[r][c]}}}for(var o=0;o<w[q].length;o++){if(w[q][o]&&w[q][o].nodeName){var v=$(w[q][o]);var g=parseInt(v.attr("colspan")||1);
if(parseInt(v.attr("rowspan")||1)>1){if(u){j+=g}else{p.push(v)}}else{j+=g}}else{if(w[q][o]=="-"){v=k(o,q);v&&p.push($(v))}}}var x=$(this.rte.dom.create("tr"));for(var o=0;o<j;o++){x.append("<td>&nbsp;</td>")}if(u){x.insertBefore(f)}else{x.insertAfter(f)}$.each(p,function(){$(this).attr("rowspan",parseInt($(this).attr("rowspan")||1)+1)});this.rte.ui.update()}};this.update=function(){if(this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^TR$/)){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")
}}};elRTE.prototype.ui.prototype.buttons.tbrowafter=elRTE.prototype.ui.prototype.buttons.tbrowbefore;(function(a){elRTE.prototype.ui.prototype.buttons.tbrowrm=function(f,c){this.constructor.prototype.constructor.call(this,f,c);var b=this;this.command=function(){var h=this.rte.selection.getNode(),x=this.rte.dom.selfOrParent(h,/^(TD|TH)$/),g=this.rte.dom.selfOrParent(x,/^TR$/),q=this.rte.dom.selfOrParent(x,/^TABLE$/),A=this.rte.dom.tableMatrix(q);if(x&&g&&A.length){this.rte.history.add();if(A.length==1){a(q).remove();
return this.rte.ui.update()}var u=[];var v=a(g).prevAll("tr").length;function p(r,C){while(C>0){C--;if(A[C]&&A[C][r]&&A[C][r].nodeName){return A[C][r]}}}function B(C,r){y=v+1;var E=null;if(A[y]){for(var D=0;D<r;D++){if(A[y][D]&&A[y][D].nodeName){E=A[y][D]}}C=C.remove();if(E){C.insertAfter(E)}else{C.prependTo(a(g).next("tr").eq(0))}}}function o(C){for(var r=0;r<C.length;r++){if(C[r]==x){return r<C.length-1?C[r+1]:C[r-1]}}}for(var t=0;t<A[v].length;t++){var z=null;var j=false;if(A[v][t]&&A[v][t].nodeName){z=A[v][t];
j=true}else{if(A[v][t]=="-"&&(z=p(t,v))){j=false}}if(z){z=a(z);var k=parseInt(z.attr("rowspan")||1);if(k>1){z.attr("rowspan",k-1);j&&B(z,t,v)}}}var w=o(this.rte.dom.tableColumn(x));if(w){this.rte.selection.selectContents(w).collapse(true)}a(g).remove()}this.rte.ui.update()};this.update=function(){if(this.rte.dom.selfOrParent(this.rte.selection.getNode(),/^TR$/)){this.domElem.removeClass("disabled")}else{this.domElem.addClass("disabled")}}}})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.undo=function(c,b){this.constructor.prototype.constructor.call(this,c,b);
this.command=function(){if(this.name=="undo"&&this.rte.history.canBack()){this.rte.history.back();this.rte.ui.update()}else{if(this.name=="redo"&&this.rte.history.canFwd()){this.rte.history.fwd();this.rte.ui.update()}}};this.update=function(){this.domElem.toggleClass("disabled",this.name=="undo"?!this.rte.history.canBack():!this.rte.history.canFwd())}};elRTE.prototype.ui.prototype.buttons.redo=elRTE.prototype.ui.prototype.buttons.undo})(jQuery);(function(a){elRTE.prototype.ui.prototype.buttons.unlink=function(c,b){this.constructor.prototype.constructor.call(this,c,b);
this.command=function(){var k=this.rte.selection.getNode(),f=this.rte.dom.selfOrParentLink(k);function j(o){return o.nodeName=="A"&&o.href}if(!f){var h=a.browser.msie?this.rte.selection.selected():this.rte.selection.selected({wrap:false});if(h.length){for(var g=0;g<h.length;g++){if(j(h[g])){f=h[g];break}}if(!f){f=this.rte.dom.parent(h[0],j)||this.rte.dom.parent(h[h.length-1],j)}}}if(f){this.rte.history.add();this.rte.selection.select(f);this.rte.doc.execCommand("unlink",false,null);this.rte.ui.update(true)
}};this.update=function(){var f=this.rte.selection.getNode();if(this.rte.dom.selfOrParentLink(f)){this.domElem.removeClass("disabled").addClass("active")}else{if(this.rte.dom.selectionHas(function(g){return g.nodeName=="A"&&g.href})){this.domElem.removeClass("disabled").addClass("active")}else{this.domElem.addClass("disabled").removeClass("active")}}}}})(jQuery);js/jquery-ui-1.8.13.custom.min.js000060400000627464150714137430012315 0ustar00/*!
 * jQuery UI 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI
 */
(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.13",
keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus();
b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,
"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",
function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth,
outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a,"tabindex"),d=isNaN(b);
return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e=
0;e<b.length;e++)a.options[b[e][0]]&&b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&c.ui.isOverAxis(b,e,i)}})}})(jQuery);
;/*!
 * jQuery UI Widget 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Widget
 */
(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)b(d).triggerHandler("remove");k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){b(this).triggerHandler("remove")});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=function(h){return!!b.data(h,
a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):d;if(e&&d.charAt(0)==="_")return h;
e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=b.extend(true,{},this.options,
this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},
widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",c);return this},
enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
;/*!
 * jQuery UI Mouse 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Mouse
 *
 * Depends:
 *	jquery.ui.widget.js
 */
(function(b){var d=false;b(document).mousedown(function(){d=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(c){return a._mouseDown(c)}).bind("click."+this.widgetName,function(c){if(true===b.data(c.target,a.widgetName+".preventClickEvent")){b.removeData(c.target,a.widgetName+".preventClickEvent");c.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+
this.widgetName)},_mouseDown:function(a){if(!d){this._mouseStarted&&this._mouseUp(a);this._mouseDownEvent=a;var c=this,f=a.which==1,g=typeof this.options.cancel=="string"?b(a.target).parents().add(a.target).filter(this.options.cancel).length:false;if(!f||g||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=
this._mouseStart(a)!==false;if(!this._mouseStarted){a.preventDefault();return true}}true===b.data(a.target,this.widgetName+".preventClickEvent")&&b.removeData(a.target,this.widgetName+".preventClickEvent");this._mouseMoveDelegate=function(e){return c._mouseMove(e)};this._mouseUpDelegate=function(e){return c._mouseUp(e)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return d=true}},_mouseMove:function(a){if(b.browser.msie&&
!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=
false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
;/*
 * jQuery UI Position 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Position
 */
(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY,
left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+=
k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-=
m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left=
d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+=
a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b),
g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery);
;/*
 * jQuery UI Draggable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Draggables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;d(b.iframeFix===true?"iframe":b.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")});return true},_mouseStart:function(a){var b=this.options;this.helper=
this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});
this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);return true},_mouseDrag:function(a,b){this.position=this._generatePosition(a);
this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=
d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",
a)!==false&&this._clear();return false},_mouseUp:function(a){this.options.iframeFix===true&&d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});return d.ui.mouse.prototype._mouseUp.call(this,a)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==
a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone().removeAttr("id"):this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a=
{left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&
d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=
this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions=
{width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[(a.containment=="document"?0:d(window).scrollLeft())-this.offset.relative.left-this.offset.parent.left,(a.containment=="document"?0:d(window).scrollTop())-this.offset.relative.top-this.offset.parent.top,(a.containment=="document"?0:d(window).scrollLeft())+
d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){a=d(a.containment);var b=a[0];if(b){a.offset();var c=d(b).css("overflow")!="hidden";this.containment=[(parseInt(d(b).css("borderLeftWidth"),
10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-
this.margins.top-this.margins.bottom];this.relative_container=a}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&
d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],
this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,h=a.pageY;if(this.originalPosition){var g;if(this.containment){if(this.relative_container){g=this.relative_container.offset();g=[this.containment[0]+g.left,this.containment[1]+g.top,this.containment[2]+g.left,this.containment[3]+g.top]}else g=this.containment;if(a.pageX-this.offset.click.left<g[0])e=g[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<g[1])h=g[1]+this.offset.click.top;
if(a.pageX-this.offset.click.left>g[2])e=g[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>g[3])h=g[3]+this.offset.click.top}if(b.grid){h=this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1];h=g?!(h-this.offset.click.top<g[1]||h-this.offset.click.top>g[3])?h:!(h-this.offset.click.top<g[1])?h-b.grid[1]:h+b.grid[1]:h;e=this.originalPageX+Math.round((e-this.originalPageX)/b.grid[0])*b.grid[0];e=g?!(e-this.offset.click.left<g[0]||e-this.offset.click.left>g[2])?e:!(e-this.offset.click.left<
g[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");
this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.13"});
d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var h=d.data(this,"sortable");if(h&&!h.options.disabled){c.sortables.push({instance:h,shouldRevert:h.options.revert});h.refreshPositions();h._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=
0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=
c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",true);this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,
true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=
0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=
a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");
if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!="x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=
f=b.scrollParent[0].scrollTop-c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-b.overflowOffset.left<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);
else if(d(window).height()-(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,
a)}});d.ui.plugin.add("draggable","snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),f=c.options,e=f.snapTolerance,h=b.offset.left,g=h+c.helperProportions.width,n=b.offset.top,
o=n+c.helperProportions.height,i=c.snapElements.length-1;i>=0;i--){var j=c.snapElements[i].left,l=j+c.snapElements[i].width,k=c.snapElements[i].top,m=k+c.snapElements[i].height;if(j-e<h&&h<l+e&&k-e<n&&n<m+e||j-e<h&&h<l+e&&k-e<o&&o<m+e||j-e<g&&g<l+e&&k-e<n&&n<m+e||j-e<g&&g<l+e&&k-e<o&&o<m+e){if(f.snapMode!="inner"){var p=Math.abs(k-o)<=e,q=Math.abs(m-n)<=e,r=Math.abs(j-g)<=e,s=Math.abs(l-h)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k-c.helperProportions.height,left:0}).top-c.margins.top;
if(q)b.position.top=c._convertPositionTo("relative",{top:m,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l}).left-c.margins.left}var t=p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(k-n)<=e;q=Math.abs(m-o)<=e;r=Math.abs(j-h)<=e;s=Math.abs(l-g)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k,left:0}).top-c.margins.top;if(q)b.position.top=
c._convertPositionTo("relative",{top:m-c.helperProportions.height,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[i].snapping&&(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=p||q||r||s||t}else{c.snapElements[i].snapping&&
c.options.snap.release&&c.options.snap.release.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});
d.ui.plugin.add("draggable","zIndex",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
;/*
 * jQuery UI Droppable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Droppables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 *	jquery.ui.mouse.js
 *	jquery.ui.draggable.js
 */
(function(d){d.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:false,addClasses:true,greedy:false,hoverClass:false,scope:"default",tolerance:"intersect"},_create:function(){var a=this.options,b=a.accept;this.isover=0;this.isout=1;this.accept=d.isFunction(b)?b:function(c){return c.is(b)};this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight};d.ui.ddmanager.droppables[a.scope]=d.ui.ddmanager.droppables[a.scope]||[];d.ui.ddmanager.droppables[a.scope].push(this);
a.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){for(var a=d.ui.ddmanager.droppables[this.options.scope],b=0;b<a.length;b++)a[b]==this&&a.splice(b,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(a,b){if(a=="accept")this.accept=d.isFunction(b)?b:function(c){return c.is(b)};d.Widget.prototype._setOption.apply(this,arguments)},_activate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&
this.element.addClass(this.options.activeClass);b&&this._trigger("activate",a,this.ui(b))},_deactivate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);b&&this._trigger("deactivate",a,this.ui(b))},_over:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
this._trigger("over",a,this.ui(b))}},_out:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",a,this.ui(b))}},_drop:function(a,b){var c=b||d.ui.ddmanager.current;if(!c||(c.currentItem||c.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var g=
d.data(this,"droppable");if(g.options.greedy&&!g.options.disabled&&g.options.scope==c.options.scope&&g.accept.call(g.element[0],c.currentItem||c.element)&&d.ui.intersect(c,d.extend(g,{offset:g.element.offset()}),g.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],c.currentItem||c.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
a,this.ui(c));return this.element}return false},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}});d.extend(d.ui.droppable,{version:"1.8.13"});d.ui.intersect=function(a,b,c){if(!b.offset)return false;var e=(a.positionAbs||a.position.absolute).left,g=e+a.helperProportions.width,f=(a.positionAbs||a.position.absolute).top,h=f+a.helperProportions.height,i=b.offset.left,k=i+b.proportions.width,j=b.offset.top,l=j+b.proportions.height;
switch(c){case "fit":return i<=e&&g<=k&&j<=f&&h<=l;case "intersect":return i<e+a.helperProportions.width/2&&g-a.helperProportions.width/2<k&&j<f+a.helperProportions.height/2&&h-a.helperProportions.height/2<l;case "pointer":return d.ui.isOver((a.positionAbs||a.position.absolute).top+(a.clickOffset||a.offset.click).top,(a.positionAbs||a.position.absolute).left+(a.clickOffset||a.offset.click).left,j,i,b.proportions.height,b.proportions.width);case "touch":return(f>=j&&f<=l||h>=j&&h<=l||f<j&&h>l)&&(e>=
i&&e<=k||g>=i&&g<=k||e<i&&g>k);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f<c.length;f++)if(!(c[f].options.disabled||a&&!c[f].accept.call(c[f].element[0],a.currentItem||a.element))){for(var h=0;h<g.length;h++)if(g[h]==c[f].element[0]){c[f].proportions.height=0;continue a}c[f].visible=c[f].element.css("display")!=
"none";if(c[f].visible){e=="mousedown"&&c[f]._activate.call(c[f],b);c[f].offset=c[f].element.offset();c[f].proportions={width:c[f].element[0].offsetWidth,height:c[f].element[0].offsetHeight}}}},drop:function(a,b){var c=false;d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&d.ui.intersect(a,this,this.options.tolerance))c=c||this._drop.call(this,b);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],a.currentItem||
a.element)){this.isout=1;this.isover=0;this._deactivate.call(this,b)}}});return c},drag:function(a,b){a.options.refreshPositions&&d.ui.ddmanager.prepareOffsets(a,b);d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var c=d.ui.intersect(a,this,this.options.tolerance);if(c=!c&&this.isover==1?"isout":c&&this.isover==0?"isover":null){var e;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");if(g.length){e=
d.data(g[0],"droppable");e.greedyChild=c=="isover"?1:0}}if(e&&c=="isover"){e.isover=0;e.isout=1;e._out.call(e,b)}this[c]=1;this[c=="isout"?"isover":"isout"]=0;this[c=="isover"?"_over":"_out"].call(this,b);if(e&&c=="isout"){e.isout=0;e.isover=1;e._over.call(e,b)}}}})}}})(jQuery);
;/*
 * jQuery UI Resizable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Resizables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(e){e.widget("ui.resizable",e.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var b=this,a=this.options;this.element.addClass("ui-resizable");e.extend(this,{_aspectRatio:!!a.aspectRatio,aspectRatio:a.aspectRatio,originalElement:this.element,
_proportionallyResizeElements:[],_helper:a.helper||a.ghost||a.animate?a.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&e.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(e('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d<c.length;d++){var f=e.trim(c[d]),g=e('<div class="ui-resizable-handle '+("ui-resizable-"+f)+'"></div>');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor==
String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),k=0;k=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,k);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection();
this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){if(!a.disabled){e(this).removeClass("ui-resizable-autohide");b._handles.show()}},function(){if(!a.disabled)if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();
var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a=
false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});
this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff=
{width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis];
if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},_mouseStop:function(b){this.resizing=
false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,{top:g,left:d}));c.helper.height(c.size.height);
c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateCache:function(b){this.offset=this.helper.offset();if(l(b.left))this.position.left=b.left;if(l(b.top))this.position.top=b.top;if(l(b.height))this.size.height=b.height;if(l(b.width))this.size.width=b.width},_updateRatio:function(b){var a=this.position,c=this.size,
d=this.axis;if(b.height)b.width=c.height*this.aspectRatio;else if(b.width)b.height=c.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=null}if(d=="nw"){b.top=a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this.options,c=this.axis,d=l(b.width)&&a.maxWidth&&a.maxWidth<b.width,f=l(b.height)&&a.maxHeight&&a.maxHeight<b.height,g=l(b.width)&&a.minWidth&&a.minWidth>b.width,h=l(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=
a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,k=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&k)b.left=i-a.minWidth;if(d&&k)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=
this.helper||this.element,a=0;a<this._proportionallyResizeElements.length;a++){var c=this._proportionallyResizeElements[a];if(!this.borderDif){var d=[c.css("borderTopWidth"),c.css("borderRightWidth"),c.css("borderBottomWidth"),c.css("borderLeftWidth")],f=[c.css("paddingTop"),c.css("paddingRight"),c.css("paddingBottom"),c.css("paddingLeft")];this.borderDif=e.map(d,function(g,h){g=parseInt(g,10)||0;h=parseInt(f[h],10)||0;return g+h})}e.browser.msie&&(e(b).is(":hidden")||e(b).parents(":hidden").length)||
c.css({height:b.height()-this.borderDif[0]-this.borderDif[2]||0,width:b.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var b=this.options;this.elementOffset=this.element.offset();if(this._helper){this.helper=this.helper||e('<div style="overflow:hidden;"></div>');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-
c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,
arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,
element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,{version:"1.8.13"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};
if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var k=e(this),q=e(this).data("resizable-alsoresize"),
p={},r=j&&j.length?j:k.parents(a.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(k.css("position"))){c._revertToRelativePosition=true;k.css({position:"absolute",top:"auto",left:"auto"})}k.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,
c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),
g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),
10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,
top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;
g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:
0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));
if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&
!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost==
"string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;
var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,
10)||0},l=function(b){return!isNaN(parseInt(b,10))}})(jQuery);
;/*
 * jQuery UI Selectable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Selectables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(e){e.widget("ui.selectable",e.ui.mouse,{options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=false;var f;this.refresh=function(){f=e(c.options.filter,c.element[0]);f.each(function(){var d=e(this),b=d.offset();e.data(this,"selectable-item",{element:this,$element:d,left:b.left,top:b.top,right:b.left+d.outerWidth(),bottom:b.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"),
selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=f.addClass("ui-selectee");this._mouseInit();this.helper=e("<div class='ui-selectable-helper'></div>")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var f=this;this.opos=[c.pageX,
c.pageY];if(!this.options.disabled){var d=this.options;this.selectees=e(d.filter,this.element[0]);this._trigger("start",c);e(d.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});d.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var b=e.data(this,"selectable-item");b.startselected=true;if(!c.metaKey){b.$element.removeClass("ui-selected");b.selected=false;b.$element.addClass("ui-unselecting");b.unselecting=true;f._trigger("unselecting",
c,{unselecting:b.element})}});e(c.target).parents().andSelf().each(function(){var b=e.data(this,"selectable-item");if(b){var g=!c.metaKey||!b.$element.hasClass("ui-selected");b.$element.removeClass(g?"ui-unselecting":"ui-selected").addClass(g?"ui-selecting":"ui-unselecting");b.unselecting=!g;b.selecting=g;(b.selected=g)?f._trigger("selecting",c,{selecting:b.element}):f._trigger("unselecting",c,{unselecting:b.element});return false}})}},_mouseDrag:function(c){var f=this;this.dragged=true;if(!this.options.disabled){var d=
this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.right<b||a.top>i||a.bottom<g);else if(d.tolerance=="fit")k=a.left>b&&a.right<h&&a.top>g&&a.bottom<i;if(k){if(a.selected){a.$element.removeClass("ui-selected");a.selected=false}if(a.unselecting){a.$element.removeClass("ui-unselecting");
a.unselecting=false}if(!a.selecting){a.$element.addClass("ui-selecting");a.selecting=true;f._trigger("selecting",c,{selecting:a.element})}}else{if(a.selecting)if(c.metaKey&&a.startselected){a.$element.removeClass("ui-selecting");a.selecting=false;a.$element.addClass("ui-selected");a.selected=true}else{a.$element.removeClass("ui-selecting");a.selecting=false;if(a.startselected){a.$element.addClass("ui-unselecting");a.unselecting=true}f._trigger("unselecting",c,{unselecting:a.element})}if(a.selected)if(!c.metaKey&&
!a.startselected){a.$element.removeClass("ui-selected");a.selected=false;a.$element.addClass("ui-unselecting");a.unselecting=true;f._trigger("unselecting",c,{unselecting:a.element})}}}});return false}},_mouseStop:function(c){var f=this;this.dragged=false;e(".ui-unselecting",this.element[0]).each(function(){var d=e.data(this,"selectable-item");d.$element.removeClass("ui-unselecting");d.unselecting=false;d.startselected=false;f._trigger("unselected",c,{unselected:d.element})});e(".ui-selecting",this.element[0]).each(function(){var d=
e.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected");d.selecting=false;d.selected=true;d.startselected=true;f._trigger("selected",c,{selected:d.element})});this._trigger("stop",c);this.helper.remove();return false}});e.extend(e.ui.selectable,{version:"1.8.13"})})(jQuery);
;/*
 * jQuery UI Sortable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Sortables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable");
this.refresh();this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a===
"disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&&
!b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,
left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};
this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!=
document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a);
return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY<b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop+b.scrollSpeed;else if(a.pageY-this.overflowOffset.top<
b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop-b.scrollSpeed;if(this.overflowOffset.left+this.scrollParent[0].offsetWidth-a.pageX<b.scrollSensitivity)this.scrollParent[0].scrollLeft=c=this.scrollParent[0].scrollLeft+b.scrollSpeed;else if(a.pageX-this.overflowOffset.left<b.scrollSensitivity)this.scrollParent[0].scrollLeft=c=this.scrollParent[0].scrollLeft-b.scrollSpeed}else{if(a.pageY-d(document).scrollTop()<b.scrollSensitivity)c=d(document).scrollTop(d(document).scrollTop()-
b.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<b.scrollSensitivity)c=d(document).scrollTop(d(document).scrollTop()+b.scrollSpeed);if(a.pageX-d(document).scrollLeft()<b.scrollSensitivity)c=d(document).scrollLeft(d(document).scrollLeft()-b.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<b.scrollSensitivity)c=d(document).scrollLeft(d(document).scrollLeft()+b.scrollSpeed)}c!==false&&d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,
a)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(b=this.items.length-1;b>=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0],
e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset();
c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp({target:null});this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):
this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}if(this.placeholder){this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null,
dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):d(this.domPosition.parent).prepend(this.currentItem)}return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")},
toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+j<k&&b+l>g&&b+l<h;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||
this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?j:g<b+this.helperProportions.width/2&&c-this.helperProportions.width/2<h&&i<e+this.helperProportions.height/2&&f-this.helperProportions.height/2<k},_intersectsWithPointer:function(a){var b=d.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,a.top,a.height);a=d.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,a.left,a.width);b=b&&a;a=this._getDragVerticalDirection();
var c=this._getDragHorizontalDirection();if(!b)return false;return this.floating?c&&c=="right"||a=="down"?2:1:a&&(a=="down"?2:1)},_intersectsWithSides:function(a){var b=d.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,a.top+a.height/2,a.height);a=d.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,a.left+a.width/2,a.width);var c=this._getDragVerticalDirection(),e=this._getDragHorizontalDirection();return this.floating&&e?e=="right"&&a||e=="left"&&!a:c&&(c=="down"&&b||c=="up"&&!b)},
_getDragVerticalDirection:function(){var a=this.positionAbs.top-this.lastPositionAbs.top;return a!=0&&(a>0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith();
if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),
this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=this.currentItem.find(":data(sortable-item)"),b=0;b<this.items.length;b++)for(var c=0;c<a.length;c++)a[c]==this.items[b].item[0]&&this.items.splice(b,1)},_refreshItems:function(a){this.items=[];this.containers=[this];var b=this.items,c=[[d.isFunction(this.options.items)?this.options.items.call(this.element[0],a,{item:this.currentItem}):d(this.options.items,this.element),
this]],e=this._connectWith();if(e)for(var f=e.length-1;f>=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h<g;h++){i=d(e[h]);i.data("sortable-item",a);b.push({item:i,instance:a,width:0,height:0,left:0,top:0})}}},refreshPositions:function(a){if(this.offsetParent&&
this.helper)this.offset.parent=this._getParentOffset();for(var b=this.items.length-1;b>=0;b--){var c=this.items[b];if(!(c.instance!=this.currentContainer&&this.currentContainer&&c.item[0]!=this.currentItem[0])){var e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b=
this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f=
d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||
0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out",
a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h-
f)<b){b=Math.abs(h-f);e=this.items[g]}}if(e||this.options.dropOnEmpty){this.currentContainer=this.containers[c];e?this._rearrange(a,e,null,true):this._rearrange(a,null,this.containers[c].element,true);this._trigger("change",a,this._uiHash());this.containers[c]._trigger("change",a,this._uiHash(this));this.options.placeholder.update(this.currentContainer,this.placeholder);this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}}},_createHelper:function(a){var b=
this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a,this.currentItem])):b.helper=="clone"?this.currentItem.clone():this.currentItem;a.parents("body").length||d(b.appendTo!="parent"?b.appendTo:this.currentItem[0].parentNode)[0].appendChild(a[0]);if(a[0]==this.currentItem[0])this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")};if(a[0].style.width==
""||b.forceHelperSize)a.width(this.currentItem.width());if(a[0].style.height==""||b.forceHelperSize)a.height(this.currentItem.height());return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=
this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a=
{top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.currentItem.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),
10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,d(a.containment=="document"?
document:window).width()-this.helperProportions.width-this.margins.left,(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)){var b=d(a.containment)[0];a=d(a.containment).offset();var c=d(b).css("overflow")!="hidden";this.containment=[a.left+(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0)-this.margins.left,a.top+(parseInt(d(b).css("borderTopWidth"),
10)||0)+(parseInt(d(b).css("paddingTop"),10)||0)-this.margins.top,a.left+(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,a.top+(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(a,b){if(!b)b=
this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&
this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(c[0].tagName);if(this.cssPosition=="relative"&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0]))this.offset.relative=this._getRelativeOffset();
var f=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])f=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-
this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;f=this.originalPageX+Math.round((f-this.originalPageX)/b.grid[0])*b.grid[0];f=this.containment?!(f-this.offset.click.left<this.containment[0]||f-this.offset.click.left>this.containment[2])?f:!(f-this.offset.click.left<this.containment[0])?f-b.grid[0]:f+b.grid[0]:f}}return{top:g-
this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())}},_rearrange:function(a,b,c,e){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],
this.direction=="down"?b.item[0]:b.item[0].nextSibling);this.counter=this.counter?++this.counter:1;var f=this,g=this.counter;window.setTimeout(function(){g==f.counter&&f.refreshPositions(!e)},0)},_clear:function(a,b){this.reverting=false;var c=[];!this._noFinalSort&&this.currentItem[0].parentNode&&this.placeholder.before(this.currentItem);this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var e in this._storedCSS)if(this._storedCSS[e]=="auto"||this._storedCSS[e]=="static")this._storedCSS[e]=
"";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!b&&c.push(function(f){this._trigger("receive",f,this._uiHash(this.fromOutside))});if((this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!b)c.push(function(f){this._trigger("update",f,this._uiHash())});if(!d.ui.contains(this.element[0],this.currentItem[0])){b||c.push(function(f){this._trigger("remove",
f,this._uiHash())});for(e=this.containers.length-1;e>=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this,
this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop",
a,this._uiHash());for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}return false}b||this._trigger("beforeStop",a,this._uiHash());this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.helper[0]!=this.currentItem[0]&&this.helper.remove();this.helper=null;if(!b){for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}this.fromOutside=false;return true},_trigger:function(){d.Widget.prototype._trigger.apply(this,arguments)===false&&this.cancel()},
_uiHash:function(a){var b=a||this;return{helper:b.helper,placeholder:b.placeholder||d([]),position:b.position,originalPosition:b.originalPosition,offset:b.positionAbs,item:b.currentItem,sender:a?a.element:null}}});d.extend(d.ui.sortable,{version:"1.8.13"})})(jQuery);
;/*
 * jQuery UI Accordion 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Accordion
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 */
(function(c){c.widget("ui.accordion",{options:{active:0,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var a=this,b=a.options;a.running=0;a.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix");
a.headers=a.element.find(b.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){b.disabled||c(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){b.disabled||c(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){b.disabled||c(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){b.disabled||c(this).removeClass("ui-state-focus")});a.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
if(b.navigation){var d=a.element.find("a").filter(b.navigationFilter).eq(0);if(d.length){var h=d.closest(".ui-accordion-header");a.active=h.length?h:d.closest(".ui-accordion-content").prev()}}a.active=a._findActive(a.active||b.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");a.active.next().addClass("ui-accordion-content-active");a._createIcons();a.resize();a.element.attr("role","tablist");a.headers.attr("role","tab").bind("keydown.accordion",
function(f){return a._keydown(f)}).next().attr("role","tabpanel");a.headers.not(a.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide();a.active.length?a.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):a.headers.eq(0).attr("tabIndex",0);c.browser.safari||a.headers.find("a").attr("tabIndex",-1);b.event&&a.headers.bind(b.event.split(" ").join(".accordion ")+".accordion",function(f){a._clickHandler.call(a,f,this);f.preventDefault()})},_createIcons:function(){var a=
this.options;if(a.icons){c("<span></span>").addClass("ui-icon "+a.icons.header).prependTo(this.headers);this.active.children(".ui-icon").toggleClass(a.icons.header).toggleClass(a.icons.headerSelected);this.element.addClass("ui-accordion-icons")}},_destroyIcons:function(){this.headers.children(".ui-icon").remove();this.element.removeClass("ui-accordion-icons")},destroy:function(){var a=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex");
this.headers.find("a").removeAttr("tabIndex");this._destroyIcons();var b=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");if(a.autoHeight||a.fillHeight)b.css("height","");return c.Widget.prototype.destroy.call(this)},_setOption:function(a,b){c.Widget.prototype._setOption.apply(this,arguments);a=="active"&&this.activate(b);if(a=="icons"){this._destroyIcons();
b&&this._createIcons()}if(a=="disabled")this.headers.add(this.headers.next())[b?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(a){if(!(this.options.disabled||a.altKey||a.ctrlKey)){var b=c.ui.keyCode,d=this.headers.length,h=this.headers.index(a.target),f=false;switch(a.keyCode){case b.RIGHT:case b.DOWN:f=this.headers[(h+1)%d];break;case b.LEFT:case b.UP:f=this.headers[(h-1+d)%d];break;case b.SPACE:case b.ENTER:this._clickHandler({target:a.target},a.target);
a.preventDefault()}if(f){c(a.target).attr("tabIndex",-1);c(f).attr("tabIndex",0);f.focus();return false}return true}},resize:function(){var a=this.options,b;if(a.fillSpace){if(c.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}b=this.element.parent().height();c.browser.msie&&this.element.parent().css("overflow",d);this.headers.each(function(){b-=c(this).outerHeight(true)});this.headers.next().each(function(){c(this).height(Math.max(0,b-c(this).innerHeight()+
c(this).height()))}).css("overflow","auto")}else if(a.autoHeight){b=0;this.headers.next().each(function(){b=Math.max(b,c(this).height("").height())}).height(b)}return this},activate:function(a){this.options.active=a;a=this._findActive(a)[0];this._clickHandler({target:a},a);return this},_findActive:function(a){return a?typeof a==="number"?this.headers.filter(":eq("+a+")"):this.headers.not(this.headers.not(a)):a===false?c([]):this.headers.filter(":eq(0)")},_clickHandler:function(a,b){var d=this.options;
if(!d.disabled)if(a.target){a=c(a.currentTarget||b);b=a[0]===this.active[0];d.active=d.collapsible&&b?false:this.headers.index(a);if(!(this.running||!d.collapsible&&b)){var h=this.active;j=a.next();g=this.active.next();e={options:d,newHeader:b&&d.collapsible?c([]):a,oldHeader:this.active,newContent:b&&d.collapsible?c([]):j,oldContent:g};var f=this.headers.index(this.active[0])>this.headers.index(a[0]);this.active=b?c([]):a;this._toggle(j,g,e,b,f);h.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);
if(!b){a.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);a.next().addClass("ui-accordion-content-active")}}}else if(d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var g=this.active.next(),
e={options:d,newHeader:c([]),oldHeader:d.active,newContent:c([]),oldContent:g},j=this.active=c([]);this._toggle(j,g,e)}},_toggle:function(a,b,d,h,f){var g=this,e=g.options;g.toShow=a;g.toHide=b;g.data=d;var j=function(){if(g)return g._completed.apply(g,arguments)};g._trigger("changestart",null,g.data);g.running=b.size()===0?a.size():b.size();if(e.animated){d={};d=e.collapsible&&h?{toShow:c([]),toHide:b,complete:j,down:f,autoHeight:e.autoHeight||e.fillSpace}:{toShow:a,toHide:b,complete:j,down:f,autoHeight:e.autoHeight||
e.fillSpace};if(!e.proxied)e.proxied=e.animated;if(!e.proxiedDuration)e.proxiedDuration=e.duration;e.animated=c.isFunction(e.proxied)?e.proxied(d):e.proxied;e.duration=c.isFunction(e.proxiedDuration)?e.proxiedDuration(d):e.proxiedDuration;h=c.ui.accordion.animations;var i=e.duration,k=e.animated;if(k&&!h[k]&&!c.easing[k])k="slide";h[k]||(h[k]=function(l){this.slide(l,{easing:k,duration:i||700})});h[k](d)}else{if(e.collapsible&&h)a.toggle();else{b.hide();a.show()}j(true)}b.prev().attr({"aria-expanded":"false",
"aria-selected":"false",tabIndex:-1}).blur();a.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;if(!this.running){this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""});this.toHide.removeClass("ui-accordion-content-active");if(this.toHide.length)this.toHide.parent()[0].className=this.toHide.parent()[0].className;this._trigger("change",null,this.data)}}});c.extend(c.ui.accordion,{version:"1.8.13",
animations:{slide:function(a,b){a=c.extend({easing:"swing",duration:300},a,b);if(a.toHide.size())if(a.toShow.size()){var d=a.toShow.css("overflow"),h=0,f={},g={},e;b=a.toShow;e=b[0].style.width;b.width(parseInt(b.parent().width(),10)-parseInt(b.css("paddingLeft"),10)-parseInt(b.css("paddingRight"),10)-(parseInt(b.css("borderLeftWidth"),10)||0)-(parseInt(b.css("borderRightWidth"),10)||0));c.each(["height","paddingTop","paddingBottom"],function(j,i){g[i]="hide";j=(""+c.css(a.toShow[0],i)).match(/^([\d+-.]+)(.*)$/);
f[i]={value:j[1],unit:j[2]||"px"}});a.toShow.css({height:0,overflow:"hidden"}).show();a.toHide.filter(":hidden").each(a.complete).end().filter(":visible").animate(g,{step:function(j,i){if(i.prop=="height")h=i.end-i.start===0?0:(i.now-i.start)/(i.end-i.start);a.toShow[0].style[i.prop]=h*f[i.prop].value+f[i.prop].unit},duration:a.duration,easing:a.easing,complete:function(){a.autoHeight||a.toShow.css("height","");a.toShow.css({width:e,overflow:d});a.complete()}})}else a.toHide.animate({height:"hide",
paddingTop:"hide",paddingBottom:"hide"},a);else a.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},a)},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1E3:200})}}})})(jQuery);
;/*
 * jQuery UI Autocomplete 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Autocomplete
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 *	jquery.ui.position.js
 */
(function(d){var e=0;d.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:false,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var a=this,b=this.element[0].ownerDocument,g;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!(a.options.disabled||a.element.attr("readonly"))){g=
false;var f=d.ui.keyCode;switch(c.keyCode){case f.PAGE_UP:a._move("previousPage",c);break;case f.PAGE_DOWN:a._move("nextPage",c);break;case f.UP:a._move("previous",c);c.preventDefault();break;case f.DOWN:a._move("next",c);c.preventDefault();break;case f.ENTER:case f.NUMPAD_ENTER:if(a.menu.active){g=true;c.preventDefault()}case f.TAB:if(!a.menu.active)return;a.menu.select(c);break;case f.ESCAPE:a.element.val(a.term);a.close(c);break;default:clearTimeout(a.searching);a.searching=setTimeout(function(){if(a.term!=
a.element.val()){a.selectedItem=null;a.search(null,c)}},a.options.delay);break}}}).bind("keypress.autocomplete",function(c){if(g){g=false;c.preventDefault()}}).bind("focus.autocomplete",function(){if(!a.options.disabled){a.selectedItem=null;a.previous=a.element.val()}}).bind("blur.autocomplete",function(c){if(!a.options.disabled){clearTimeout(a.searching);a.closing=setTimeout(function(){a.close(c);a._change(c)},150)}});this._initSource();this.response=function(){return a._response.apply(a,arguments)};
this.menu=d("<ul></ul>").addClass("ui-autocomplete").appendTo(d(this.options.appendTo||"body",b)[0]).mousedown(function(c){var f=a.menu.element[0];d(c.target).closest(".ui-menu-item").length||setTimeout(function(){d(document).one("mousedown",function(h){h.target!==a.element[0]&&h.target!==f&&!d.ui.contains(f,h.target)&&a.close()})},1);setTimeout(function(){clearTimeout(a.closing)},13)}).menu({focus:function(c,f){f=f.item.data("item.autocomplete");false!==a._trigger("focus",c,{item:f})&&/^key/.test(c.originalEvent.type)&&
a.element.val(f.value)},selected:function(c,f){var h=f.item.data("item.autocomplete"),i=a.previous;if(a.element[0]!==b.activeElement){a.element.focus();a.previous=i;setTimeout(function(){a.previous=i;a.selectedItem=h},1)}false!==a._trigger("select",c,{item:h})&&a.element.val(h.value);a.term=a.element.val();a.close(c);a.selectedItem=h},blur:function(){a.menu.element.is(":visible")&&a.element.val()!==a.term&&a.element.val(a.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu");
d.fn.bgiframe&&this.menu.element.bgiframe()},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup");this.menu.element.remove();d.Widget.prototype.destroy.call(this)},_setOption:function(a,b){d.Widget.prototype._setOption.apply(this,arguments);a==="source"&&this._initSource();if(a==="appendTo")this.menu.element.appendTo(d(b||"body",this.element[0].ownerDocument)[0]);a==="disabled"&&
b&&this.xhr&&this.xhr.abort()},_initSource:function(){var a=this,b,g;if(d.isArray(this.options.source)){b=this.options.source;this.source=function(c,f){f(d.ui.autocomplete.filter(b,c.term))}}else if(typeof this.options.source==="string"){g=this.options.source;this.source=function(c,f){a.xhr&&a.xhr.abort();a.xhr=d.ajax({url:g,data:c,dataType:"json",autocompleteRequest:++e,success:function(h){this.autocompleteRequest===e&&f(h)},error:function(){this.autocompleteRequest===e&&f([])}})}}else this.source=
this.options.source},search:function(a,b){a=a!=null?a:this.element.val();this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==false)return this._search(a)},_search:function(a){this.pending++;this.element.addClass("ui-autocomplete-loading");this.source({term:a},this.response)},_response:function(a){if(!this.options.disabled&&a&&a.length){a=this._normalize(a);this._suggest(a);this._trigger("open")}else this.close();
this.pending--;this.pending||this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing);if(this.menu.element.is(":visible")){this.menu.element.hide();this.menu.deactivate();this._trigger("close",a)}},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(a){if(a.length&&a[0].label&&a[0].value)return a;return d.map(a,function(b){if(typeof b==="string")return{label:b,value:b};return d.extend({label:b.label||
b.value,value:b.value||b.label},b)})},_suggest:function(a){var b=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(b,a);this.menu.deactivate();this.menu.refresh();b.show();this._resizeMenu();b.position(d.extend({of:this.element},this.options.position));this.options.autoFocus&&this.menu.next(new d.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth(),this.element.outerWidth()))},_renderMenu:function(a,b){var g=this;
d.each(b,function(c,f){g._renderItem(a,f)})},_renderItem:function(a,b){return d("<li></li>").data("item.autocomplete",b).append(d("<a></a>").text(b.label)).appendTo(a)},_move:function(a,b){if(this.menu.element.is(":visible"))if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term);this.menu.deactivate()}else this.menu[a](b);else this.search(null,b)},widget:function(){return this.menu.element}});d.extend(d.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,
"\\$&")},filter:function(a,b){var g=new RegExp(d.ui.autocomplete.escapeRegex(b),"i");return d.grep(a,function(c){return g.test(c.label||c.value||c)})}})})(jQuery);
(function(d){d.widget("ui.menu",{_create:function(){var e=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(a){if(d(a.target).closest(".ui-menu-item a").length){a.preventDefault();e.select(a)}});this.refresh()},refresh:function(){var e=this;this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem").children("a").addClass("ui-corner-all").attr("tabindex",
-1).mouseenter(function(a){e.activate(a,d(this).parent())}).mouseleave(function(){e.deactivate()})},activate:function(e,a){this.deactivate();if(this.hasScroll()){var b=a.offset().top-this.element.offset().top,g=this.element.scrollTop(),c=this.element.height();if(b<0)this.element.scrollTop(g+b);else b>=c&&this.element.scrollTop(g+b-c+a.height())}this.active=a.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end();this._trigger("focus",e,{item:a})},deactivate:function(){if(this.active){this.active.children("a").removeClass("ui-state-hover").removeAttr("id");
this._trigger("blur");this.active=null}},next:function(e){this.move("next",".ui-menu-item:first",e)},previous:function(e){this.move("prev",".ui-menu-item:last",e)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(e,a,b){if(this.active){e=this.active[e+"All"](".ui-menu-item").eq(0);e.length?this.activate(b,e):this.activate(b,this.element.children(a))}else this.activate(b,
this.element.children(a))},nextPage:function(e){if(this.hasScroll())if(!this.active||this.last())this.activate(e,this.element.children(".ui-menu-item:first"));else{var a=this.active.offset().top,b=this.element.height(),g=this.element.children(".ui-menu-item").filter(function(){var c=d(this).offset().top-a-b+d(this).height();return c<10&&c>-10});g.length||(g=this.element.children(".ui-menu-item:last"));this.activate(e,g)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active||
this.last()?":first":":last"))},previousPage:function(e){if(this.hasScroll())if(!this.active||this.first())this.activate(e,this.element.children(".ui-menu-item:last"));else{var a=this.active.offset().top,b=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var g=d(this).offset().top-a+b-d(this).height();return g<10&&g>-10});result.length||(result=this.element.children(".ui-menu-item:first"));this.activate(e,result)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active||
this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[d.fn.prop?"prop":"attr"]("scrollHeight")},select:function(e){this._trigger("selected",e,{item:this.active})}})})(jQuery);
;/*
 * jQuery UI Button 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Button
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 */
(function(a){var g,i=function(b){a(":ui-button",b.target.form).each(function(){var c=a(this).data("button");setTimeout(function(){c.refresh()},1)})},h=function(b){var c=b.name,d=b.form,f=a([]);if(c)f=d?a(d).find("[name='"+c+"']"):a("[name='"+c+"']",b.ownerDocument).filter(function(){return!this.form});return f};a.widget("ui.button",{options:{disabled:null,text:true,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",
i);if(typeof this.options.disabled!=="boolean")this.options.disabled=this.element.attr("disabled");this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var b=this,c=this.options,d=this.type==="checkbox"||this.type==="radio",f="ui-state-hover"+(!d?" ui-state-active":"");if(c.label===null)c.label=this.buttonElement.html();if(this.element.is(":disabled"))c.disabled=true;this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role","button").bind("mouseenter.button",
function(){if(!c.disabled){a(this).addClass("ui-state-hover");this===g&&a(this).addClass("ui-state-active")}}).bind("mouseleave.button",function(){c.disabled||a(this).removeClass(f)}).bind("focus.button",function(){a(this).addClass("ui-state-focus")}).bind("blur.button",function(){a(this).removeClass("ui-state-focus")}).bind("click.button",function(e){c.disabled&&e.stopImmediatePropagation()});d&&this.element.bind("change.button",function(){b.refresh()});if(this.type==="checkbox")this.buttonElement.bind("click.button",
function(){if(c.disabled)return false;a(this).toggleClass("ui-state-active");b.buttonElement.attr("aria-pressed",b.element[0].checked)});else if(this.type==="radio")this.buttonElement.bind("click.button",function(){if(c.disabled)return false;a(this).addClass("ui-state-active");b.buttonElement.attr("aria-pressed",true);var e=b.element[0];h(e).not(e).map(function(){return a(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed",false)});else{this.buttonElement.bind("mousedown.button",
function(){if(c.disabled)return false;a(this).addClass("ui-state-active");g=this;a(document).one("mouseup",function(){g=null})}).bind("mouseup.button",function(){if(c.disabled)return false;a(this).removeClass("ui-state-active")}).bind("keydown.button",function(e){if(c.disabled)return false;if(e.keyCode==a.ui.keyCode.SPACE||e.keyCode==a.ui.keyCode.ENTER)a(this).addClass("ui-state-active")}).bind("keyup.button",function(){a(this).removeClass("ui-state-active")});this.buttonElement.is("a")&&this.buttonElement.keyup(function(e){e.keyCode===
a.ui.keyCode.SPACE&&a(this).click()})}this._setOption("disabled",c.disabled)},_determineButtonType:function(){this.type=this.element.is(":checkbox")?"checkbox":this.element.is(":radio")?"radio":this.element.is("input")?"input":"button";if(this.type==="checkbox"||this.type==="radio"){var b=this.element.parents().filter(":last"),c="label[for="+this.element.attr("id")+"]";this.buttonElement=b.find(c);if(!this.buttonElement.length){b=b.length?b.siblings():this.element.siblings();this.buttonElement=b.filter(c);
if(!this.buttonElement.length)this.buttonElement=b.find(c)}this.element.addClass("ui-helper-hidden-accessible");(b=this.element.is(":checked"))&&this.buttonElement.addClass("ui-state-active");this.buttonElement.attr("aria-pressed",b)}else this.buttonElement=this.element},widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());
this.hasTitle||this.buttonElement.removeAttr("title");a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments);if(b==="disabled")c?this.element.attr("disabled",true):this.element.removeAttr("disabled");this._resetButton()},refresh:function(){var b=this.element.is(":disabled");b!==this.options.disabled&&this._setOption("disabled",b);if(this.type==="radio")h(this.element[0]).each(function(){a(this).is(":checked")?a(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
true):a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed",false)});else if(this.type==="checkbox")this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed",true):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed",false)},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var b=this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only"),
c=a("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(),d=this.options.icons,f=d.primary&&d.secondary,e=[];if(d.primary||d.secondary){if(this.options.text)e.push("ui-button-text-icon"+(f?"s":d.primary?"-primary":"-secondary"));d.primary&&b.prepend("<span class='ui-button-icon-primary ui-icon "+d.primary+"'></span>");d.secondary&&b.append("<span class='ui-button-icon-secondary ui-icon "+d.secondary+"'></span>");if(!this.options.text){e.push(f?"ui-button-icons-only":
"ui-button-icon-only");this.hasTitle||b.attr("title",c)}}else e.push("ui-button-text-only");b.addClass(e.join(" "))}}});a.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(b,c){b==="disabled"&&this.buttons.button("option",b,c);a.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass("ui-corner-left").end().filter(":last").addClass("ui-corner-right").end().end()},
destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy");a.Widget.prototype.destroy.call(this)}})})(jQuery);
;/*
 * jQuery UI Dialog 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Dialog
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 *  jquery.ui.button.js
 *	jquery.ui.draggable.js
 *	jquery.ui.mouse.js
 *	jquery.ui.position.js
 *	jquery.ui.resizable.js
 */
(function(c,l){var m={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},n={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true},o=c.attrFn||{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true,click:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,
position:{my:"center",at:"center",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||"&#160;",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+
b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),
h=c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("<span></span>").addClass("ui-dialog-title").attr("id",
e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");
a.uiDialog.remove();a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!==
b.uiDialog[0]){e=c(this).css("z-index");isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.attr("scrollTop"),scrollLeft:d.element.attr("scrollLeft")};c.ui.dialog.maxZ+=
1;d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target===
f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a,
function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;var i=c('<button type="button"></button>').click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.each(h,function(j,k){if(j!=="click")j in o?i[j](k):i.attr(j,k)});c.fn.button&&i.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",
handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition,
originalSize:f.originalSize,position:f.position,size:f.size}}a=a===l?this.options.resizable:a;var d=this,e=d.options,g=d.uiDialog.css("position");a=typeof a==="string"?a:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:a,start:function(f,h){c(this).addClass("ui-dialog-resizing");d._trigger("resizeStart",f,b(h))},resize:function(f,h){d._trigger("resize",
f,b(h))},stop:function(f,h){c(this).removeClass("ui-dialog-resizing");e.height=c(this).height();e.width=c(this).width();d._trigger("resizeStop",f,b(h));c.ui.dialog.overlay.resize()}}).css("position",g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(a){var b=[],d=[0,0],e;if(a){if(typeof a==="string"||typeof a==="object"&&"0"in a){b=a.split?a.split(" "):
[a[0],a[1]];if(b.length===1)b[1]=b[0];c.each(["left","top"],function(g,f){if(+b[g]===b[g]){d[g]=b[g];b[g]=f}});a={my:b.join(" "),at:b.join(" "),offset:d.join(" ")}}a=c.extend({},c.ui.dialog.prototype.options.position,a)}else a=c.ui.dialog.prototype.options.position;(e=this.uiDialog.is(":visible"))||this.uiDialog.show();this.uiDialog.css({top:0,left:0}).position(c.extend({of:window},a));e||this.uiDialog.hide()},_setOptions:function(a){var b=this,d={},e=false;c.each(a,function(g,f){b._setOption(g,f);
if(g in m)e=true;if(g in n)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"):
e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||"&#160;"));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a=
this.options,b,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height-
b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.13",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),
create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()<c.ui.dialog.overlay.maxZ)return false})},1);c(document).bind("keydown.dialog-overlay",function(d){if(a.options.closeOnEscape&&d.keyCode&&d.keyCode===c.ui.keyCode.ESCAPE){a.close(d);d.preventDefault()}});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var b=(this.oldInstances.pop()||c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),
height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);
b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a<b?c(window).height()+"px":a+"px"}else return c(document).height()+"px"},width:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth);b=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return a<b?c(window).width()+"px":a+"px"}else return c(document).width()+"px"},resize:function(){var a=c([]);c.each(c.ui.dialog.overlay.instances,
function(){a=a.add(this)});a.css({width:0,height:0}).css({width:c.ui.dialog.overlay.width(),height:c.ui.dialog.overlay.height()})}});c.extend(c.ui.dialog.overlay.prototype,{destroy:function(){c.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);
;/*
 * jQuery UI Slider 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Slider
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(d){d.widget("ui.slider",d.ui.mouse,{widgetEventPrefix:"slide",options:{animate:false,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null},_create:function(){var b=this,a=this.options,c=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f=a.values&&a.values.length||1,e=[];this._mouseSliding=this._keySliding=false;this._animateOff=true;this._handleIndex=null;this._detectOrientation();this._mouseInit();this.element.addClass("ui-slider ui-slider-"+
this.orientation+" ui-widget ui-widget-content ui-corner-all"+(a.disabled?" ui-slider-disabled ui-disabled":""));this.range=d([]);if(a.range){if(a.range===true){if(!a.values)a.values=[this._valueMin(),this._valueMin()];if(a.values.length&&a.values.length!==2)a.values=[a.values[0],a.values[0]]}this.range=d("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(a.range==="min"||a.range==="max"?" ui-slider-range-"+a.range:""))}for(var j=c.length;j<f;j+=1)e.push("<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>");
this.handles=c.add(d(e.join("")).appendTo(b.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(g){g.preventDefault()}).hover(function(){a.disabled||d(this).addClass("ui-state-hover")},function(){d(this).removeClass("ui-state-hover")}).focus(function(){if(a.disabled)d(this).blur();else{d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");d(this).addClass("ui-state-focus")}}).blur(function(){d(this).removeClass("ui-state-focus")});this.handles.each(function(g){d(this).data("index.ui-slider-handle",
g)});this.handles.keydown(function(g){var k=true,l=d(this).data("index.ui-slider-handle"),i,h,m;if(!b.options.disabled){switch(g.keyCode){case d.ui.keyCode.HOME:case d.ui.keyCode.END:case d.ui.keyCode.PAGE_UP:case d.ui.keyCode.PAGE_DOWN:case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:k=false;if(!b._keySliding){b._keySliding=true;d(this).addClass("ui-state-active");i=b._start(g,l);if(i===false)return}break}m=b.options.step;i=b.options.values&&b.options.values.length?
(h=b.values(l)):(h=b.value());switch(g.keyCode){case d.ui.keyCode.HOME:h=b._valueMin();break;case d.ui.keyCode.END:h=b._valueMax();break;case d.ui.keyCode.PAGE_UP:h=b._trimAlignValue(i+(b._valueMax()-b._valueMin())/5);break;case d.ui.keyCode.PAGE_DOWN:h=b._trimAlignValue(i-(b._valueMax()-b._valueMin())/5);break;case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:if(i===b._valueMax())return;h=b._trimAlignValue(i+m);break;case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:if(i===b._valueMin())return;h=b._trimAlignValue(i-
m);break}b._slide(g,l,h);return k}}).keyup(function(g){var k=d(this).data("index.ui-slider-handle");if(b._keySliding){b._keySliding=false;b._stop(g,k);b._change(g,k);d(this).removeClass("ui-state-active")}});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy();
return this},_mouseCapture:function(b){var a=this.options,c,f,e,j,g;if(a.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:b.pageX,y:b.pageY});f=this._valueMax()-this._valueMin()+1;j=this;this.handles.each(function(k){var l=Math.abs(c-j.values(k));if(f>l){f=l;e=d(this);g=k}});if(a.range===true&&this.values(1)===a.min){g+=1;e=d(this.handles[g])}if(this._start(b,g)===false)return false;
this._mouseSliding=true;j._handleIndex=g;e.addClass("ui-state-active").focus();a=e.offset();this._clickOffset=!d(b.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:b.pageX-a.left-e.width()/2,top:b.pageY-a.top-e.height()/2-(parseInt(e.css("borderTopWidth"),10)||0)-(parseInt(e.css("borderBottomWidth"),10)||0)+(parseInt(e.css("marginTop"),10)||0)};this.handles.hasClass("ui-state-hover")||this._slide(b,g,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(b){var a=
this._normValueFromMouse({x:b.pageX,y:b.pageY});this._slide(b,this._handleIndex,a);return false},_mouseStop:function(b){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(b,this._handleIndex);this._change(b,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(b){var a;if(this.orientation==="horizontal"){a=
this.elementSize.width;b=b.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{a=this.elementSize.height;b=b.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}a=b/a;if(a>1)a=1;if(a<0)a=0;if(this.orientation==="vertical")a=1-a;b=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+a*b)},_start:function(b,a){var c={handle:this.handles[a],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(a);
c.values=this.values()}return this._trigger("start",b,c)},_slide:function(b,a,c){var f;if(this.options.values&&this.options.values.length){f=this.values(a?0:1);if(this.options.values.length===2&&this.options.range===true&&(a===0&&c>f||a===1&&c<f))c=f;if(c!==this.values(a)){f=this.values();f[a]=c;b=this._trigger("slide",b,{handle:this.handles[a],value:c,values:f});this.values(a?0:1);b!==false&&this.values(a,c,true)}}else if(c!==this.value()){b=this._trigger("slide",b,{handle:this.handles[a],value:c});
b!==false&&this.value(c)}},_stop:function(b,a){var c={handle:this.handles[a],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(a);c.values=this.values()}this._trigger("stop",b,c)},_change:function(b,a){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[a],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(a);c.values=this.values()}this._trigger("change",b,c)}},value:function(b){if(arguments.length){this.options.value=
this._trimAlignValue(b);this._refreshValue();this._change(null,0)}else return this._value()},values:function(b,a){var c,f,e;if(arguments.length>1){this.options.values[b]=this._trimAlignValue(a);this._refreshValue();this._change(null,b)}else if(arguments.length)if(d.isArray(arguments[0])){c=this.options.values;f=arguments[0];for(e=0;e<c.length;e+=1){c[e]=this._trimAlignValue(f[e]);this._change(null,e)}this._refreshValue()}else return this.options.values&&this.options.values.length?this._values(b):
this.value();else return this._values()},_setOption:function(b,a){var c,f=0;if(d.isArray(this.options.values))f=this.options.values.length;d.Widget.prototype._setOption.apply(this,arguments);switch(b){case "disabled":if(a){this.handles.filter(".ui-state-focus").blur();this.handles.removeClass("ui-state-hover");this.handles.attr("disabled","disabled");this.element.addClass("ui-disabled")}else{this.handles.removeAttr("disabled");this.element.removeClass("ui-disabled")}break;case "orientation":this._detectOrientation();
this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();break;case "value":this._animateOff=true;this._refreshValue();this._change(null,0);this._animateOff=false;break;case "values":this._animateOff=true;this._refreshValue();for(c=0;c<f;c+=1)this._change(null,c);this._animateOff=false;break}},_value:function(){var b=this.options.value;return b=this._trimAlignValue(b)},_values:function(b){var a,c;if(arguments.length){a=this.options.values[b];
return a=this._trimAlignValue(a)}else{a=this.options.values.slice();for(c=0;c<a.length;c+=1)a[c]=this._trimAlignValue(a[c]);return a}},_trimAlignValue:function(b){if(b<=this._valueMin())return this._valueMin();if(b>=this._valueMax())return this._valueMax();var a=this.options.step>0?this.options.step:1,c=(b-this._valueMin())%a;alignValue=b-c;if(Math.abs(c)*2>=a)alignValue+=c>0?a:-a;return parseFloat(alignValue.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},
_refreshValue:function(){var b=this.options.range,a=this.options,c=this,f=!this._animateOff?a.animate:false,e,j={},g,k,l,i;if(this.options.values&&this.options.values.length)this.handles.each(function(h){e=(c.values(h)-c._valueMin())/(c._valueMax()-c._valueMin())*100;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";d(this).stop(1,1)[f?"animate":"css"](j,a.animate);if(c.options.range===true)if(c.orientation==="horizontal"){if(h===0)c.range.stop(1,1)[f?"animate":"css"]({left:e+"%"},a.animate);
if(h===1)c.range[f?"animate":"css"]({width:e-g+"%"},{queue:false,duration:a.animate})}else{if(h===0)c.range.stop(1,1)[f?"animate":"css"]({bottom:e+"%"},a.animate);if(h===1)c.range[f?"animate":"css"]({height:e-g+"%"},{queue:false,duration:a.animate})}g=e});else{k=this.value();l=this._valueMin();i=this._valueMax();e=i!==l?(k-l)/(i-l)*100:0;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[f?"animate":"css"](j,a.animate);if(b==="min"&&this.orientation==="horizontal")this.range.stop(1,
1)[f?"animate":"css"]({width:e+"%"},a.animate);if(b==="max"&&this.orientation==="horizontal")this.range[f?"animate":"css"]({width:100-e+"%"},{queue:false,duration:a.animate});if(b==="min"&&this.orientation==="vertical")this.range.stop(1,1)[f?"animate":"css"]({height:e+"%"},a.animate);if(b==="max"&&this.orientation==="vertical")this.range[f?"animate":"css"]({height:100-e+"%"},{queue:false,duration:a.animate})}}});d.extend(d.ui.slider,{version:"1.8.13"})})(jQuery);
;/*
 * jQuery UI Tabs 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Tabs
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 */
(function(d,p){function u(){return++v}function w(){return++x}var v=0,x=0;d.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:false,cookie:null,collapsible:false,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(true)},_setOption:function(b,e){if(b=="selected")this.options.collapsible&&
e==this.options.selected||this.select(e);else{this.options[b]=e;this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+u()},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+w());return d.cookie.apply(null,[b].concat(d.makeArray(arguments)))},_ui:function(b,e){return{tab:b,panel:e,index:this.anchors.index(b)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=
d(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(b){function e(g,f){g.css("display","");!d.support.opacity&&f.opacity&&g[0].style.removeAttribute("filter")}var a=this,c=this.options,h=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=d(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return d("a",this)[0]});this.panels=d([]);this.anchors.each(function(g,f){var i=d(f).attr("href"),l=i.split("#")[0],q;if(l&&(l===location.toString().split("#")[0]||
(q=d("base")[0])&&l===q.href)){i=f.hash;f.href=i}if(h.test(i))a.panels=a.panels.add(a.element.find(a._sanitizeSelector(i)));else if(i&&i!=="#"){d.data(f,"href.tabs",i);d.data(f,"load.tabs",i.replace(/#.*$/,""));i=a._tabId(f);f.href="#"+i;f=a.element.find("#"+i);if(!f.length){f=d(c.panelTemplate).attr("id",i).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(a.panels[g-1]||a.list);f.data("destroy.tabs",true)}a.panels=a.panels.add(f)}else c.disabled.push(g)});if(b){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all");
this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.lis.addClass("ui-state-default ui-corner-top");this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");if(c.selected===p){location.hash&&this.anchors.each(function(g,f){if(f.hash==location.hash){c.selected=g;return false}});if(typeof c.selected!=="number"&&c.cookie)c.selected=parseInt(a._cookie(),10);if(typeof c.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length)c.selected=
this.lis.index(this.lis.filter(".ui-tabs-selected"));c.selected=c.selected||(this.lis.length?0:-1)}else if(c.selected===null)c.selected=-1;c.selected=c.selected>=0&&this.anchors[c.selected]||c.selected<0?c.selected:0;c.disabled=d.unique(c.disabled.concat(d.map(this.lis.filter(".ui-state-disabled"),function(g){return a.lis.index(g)}))).sort();d.inArray(c.selected,c.disabled)!=-1&&c.disabled.splice(d.inArray(c.selected,c.disabled),1);this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active");
if(c.selected>=0&&this.anchors.length){a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(c.selected).addClass("ui-tabs-selected ui-state-active");a.element.queue("tabs",function(){a._trigger("show",null,a._ui(a.anchors[c.selected],a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash))[0]))});this.load(c.selected)}d(window).bind("unload",function(){a.lis.add(a.anchors).unbind(".tabs");a.lis=a.anchors=a.panels=null})}else c.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"));
this.element[c.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");c.cookie&&this._cookie(c.selected,c.cookie);b=0;for(var j;j=this.lis[b];b++)d(j)[d.inArray(b,c.disabled)!=-1&&!d(j).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");c.cache===false&&this.anchors.removeData("cache.tabs");this.lis.add(this.anchors).unbind(".tabs");if(c.event!=="mouseover"){var k=function(g,f){f.is(":not(.ui-state-disabled)")&&f.addClass("ui-state-"+g)},n=function(g,f){f.removeClass("ui-state-"+
g)};this.lis.bind("mouseover.tabs",function(){k("hover",d(this))});this.lis.bind("mouseout.tabs",function(){n("hover",d(this))});this.anchors.bind("focus.tabs",function(){k("focus",d(this).closest("li"))});this.anchors.bind("blur.tabs",function(){n("focus",d(this).closest("li"))})}var m,o;if(c.fx)if(d.isArray(c.fx)){m=c.fx[0];o=c.fx[1]}else m=o=c.fx;var r=o?function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.hide().removeClass("ui-tabs-hide").animate(o,o.duration||"normal",
function(){e(f,o);a._trigger("show",null,a._ui(g,f[0]))})}:function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");a._trigger("show",null,a._ui(g,f[0]))},s=m?function(g,f){f.animate(m,m.duration||"normal",function(){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");e(f,m);a.element.dequeue("tabs")})}:function(g,f){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");a.element.dequeue("tabs")};
this.anchors.bind(c.event+".tabs",function(){var g=this,f=d(g).closest("li"),i=a.panels.filter(":not(.ui-tabs-hide)"),l=a.element.find(a._sanitizeSelector(g.hash));if(f.hasClass("ui-tabs-selected")&&!c.collapsible||f.hasClass("ui-state-disabled")||f.hasClass("ui-state-processing")||a.panels.filter(":animated").length||a._trigger("select",null,a._ui(this,l[0]))===false){this.blur();return false}c.selected=a.anchors.index(this);a.abort();if(c.collapsible)if(f.hasClass("ui-tabs-selected")){c.selected=
-1;c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){s(g,i)}).dequeue("tabs");this.blur();return false}else if(!i.length){c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this));this.blur();return false}c.cookie&&a._cookie(c.selected,c.cookie);if(l.length){i.length&&a.element.queue("tabs",function(){s(g,i)});a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this))}else throw"jQuery UI Tabs: Mismatching fragment identifier.";
d.browser.msie&&this.blur()});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(b){if(typeof b=="string")b=this.anchors.index(this.anchors.filter("[href$="+b+"]"));return b},destroy:function(){var b=this.options;this.abort();this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs");this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.anchors.each(function(){var e=
d.data(this,"href.tabs");if(e)this.href=e;var a=d(this).unbind(".tabs");d.each(["href","load","cache"],function(c,h){a.removeData(h+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){d.data(this,"destroy.tabs")?d(this).remove():d(this).removeClass("ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide")});b.cookie&&this._cookie(null,b.cookie);return this},add:function(b,
e,a){if(a===p)a=this.anchors.length;var c=this,h=this.options;e=d(h.tabTemplate.replace(/#\{href\}/g,b).replace(/#\{label\}/g,e));b=!b.indexOf("#")?b.replace("#",""):this._tabId(d("a",e)[0]);e.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var j=c.element.find("#"+b);j.length||(j=d(h.panelTemplate).attr("id",b).data("destroy.tabs",true));j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(a>=this.lis.length){e.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{e.insertBefore(this.lis[a]);
j.insertBefore(this.panels[a])}h.disabled=d.map(h.disabled,function(k){return k>=a?++k:k});this._tabify();if(this.anchors.length==1){h.selected=0;e.addClass("ui-tabs-selected ui-state-active");j.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){c._trigger("show",null,c._ui(c.anchors[0],c.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[a],this.panels[a]));return this},remove:function(b){b=this._getIndex(b);var e=this.options,a=this.lis.eq(b).remove(),c=this.panels.eq(b).remove();
if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1<this.anchors.length?1:-1));e.disabled=d.map(d.grep(e.disabled,function(h){return h!=b}),function(h){return h>=b?--h:h});this._tabify();this._trigger("remove",null,this._ui(a.find("a")[0],c[0]));return this},enable:function(b){b=this._getIndex(b);var e=this.options;if(d.inArray(b,e.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled");e.disabled=d.grep(e.disabled,function(a){return a!=b});this._trigger("enable",null,
this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this},
load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c,
"cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this},
url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.13"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k<a.anchors.length?k:0)},b);j&&j.stopPropagation()});e=a._unrotate||(a._unrotate=!e?function(j){j.clientX&&
a.rotate(null)}:function(){t=c.selected;h()});if(b){this.element.bind("tabsshow",h);this.anchors.bind(c.event+".tabs",e);h()}else{clearTimeout(a.rotation);this.element.unbind("tabsshow",h);this.anchors.unbind(c.event+".tabs",e);delete this._rotate;delete this._unrotate}return this}})})(jQuery);
;/*
 * jQuery UI Datepicker 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Datepicker
 *
 * Depends:
 *	jquery.ui.core.js
 */
(function(d,B){function M(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._inDialog=this._datepickerShowing=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass=
"ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su",
"Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",
minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false};d.extend(this._defaults,this.regional[""]);this.dpDiv=N(d('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function N(a){return a.delegate("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a",
"mouseout",function(){d(this).removeClass("ui-state-hover");this.className.indexOf("ui-datepicker-prev")!=-1&&d(this).removeClass("ui-datepicker-prev-hover");this.className.indexOf("ui-datepicker-next")!=-1&&d(this).removeClass("ui-datepicker-next-hover")}).delegate("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a","mouseover",function(){if(!d.datepicker._isDisabledDatepicker(J.inline?a.parent()[0]:J.input[0])){d(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");
d(this).addClass("ui-state-hover");this.className.indexOf("ui-datepicker-prev")!=-1&&d(this).addClass("ui-datepicker-prev-hover");this.className.indexOf("ui-datepicker-next")!=-1&&d(this).addClass("ui-datepicker-next-hover")}})}function H(a,b){d.extend(a,b);for(var c in b)if(b[c]==null||b[c]==B)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.13"}});var z=(new Date).getTime(),J;d.extend(M.prototype,{markerClassName:"hasDatepicker",log:function(){this.debug&&console.log.apply("",arguments)},
_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){H(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a,
b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:N(d('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",
function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();if(c){b.append=d('<span class="'+this._appendClass+'">'+c+"</span>");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c=="focus"||c=="both")a.focus(this._showDatepicker);
if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("<img/>").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('<button type="button"></button>').addClass(this._triggerClass).html(f==""?c:d("<img/>").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker():d.datepicker._showDatepicker(a[0]);
return false})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(f){for(var h=0,i=0,g=0;g<f.length;g++)if(f[g].length>h){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=d(a);
if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),true);this._updateDatepicker(b);this._updateAlternate(b);b.dpDiv.show()}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+=1;this._dialogInput=d('<input type="text" id="'+("dp"+this.uuid)+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');
this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}H(a.settings,e||{});b=b&&b.constructor==Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/
2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a,
"datepicker");if(e=="input"){c.append.remove();c.trigger.remove();b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled=
false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().removeClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=
true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().addClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false;
for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return true;return false},_getInst:function(a){try{return d.data(a,"datepicker")}catch(b){throw"Missing instance data for this datepicker";}},_optionDatepicker:function(a,b,c){var e=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?d.extend({},d.datepicker._defaults):e?b=="all"?d.extend({},e.settings):this._get(e,b):null;var f=b||{};if(typeof b=="string"){f={};f[b]=c}if(e){this._curInst==e&&
this._hideDatepicker();var h=this._getDateDatepicker(a,true),i=this._getMinMaxDate(e,"min"),g=this._getMinMaxDate(e,"max");H(e.settings,f);if(i!==null&&f.dateFormat!==B&&f.minDate===B)e.settings.minDate=this._formatDate(e,i);if(g!==null&&f.dateFormat!==B&&f.maxDate===B)e.settings.maxDate=this._formatDate(e,g);this._attachments(d(a),e);this._autoSize(e);this._setDate(e,h);this._updateAlternate(e);this._updateDatepicker(e)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){(a=
this._getInst(a))&&this._updateDatepicker(a)},_setDateDatepicker:function(a,b){if(a=this._getInst(a)){this._setDate(a,b);this._updateDatepicker(a);this._updateAlternate(a)}},_getDateDatepicker:function(a,b){(a=this._getInst(a))&&!a.inline&&this._setDateFromField(a,b);return a?this._getDate(a):null},_doKeyDown:function(a){var b=d.datepicker._getInst(a.target),c=true,e=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=true;if(d.datepicker._datepickerShowing)switch(a.keyCode){case 9:d.datepicker._hideDatepicker();
c=false;break;case 13:c=d("td."+d.datepicker._dayOverClass+":not(."+d.datepicker._currentClass+")",b.dpDiv);c[0]?d.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,c[0]):d.datepicker._hideDatepicker();return false;case 27:d.datepicker._hideDatepicker();break;case 33:d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 34:d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,
"stepMonths"),"M");break;case 35:if(a.ctrlKey||a.metaKey)d.datepicker._clearDate(a.target);c=a.ctrlKey||a.metaKey;break;case 36:if(a.ctrlKey||a.metaKey)d.datepicker._gotoToday(a.target);c=a.ctrlKey||a.metaKey;break;case 37:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?+1:-1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 38:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,
-7,"D");c=a.ctrlKey||a.metaKey;break;case 39:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?-1:+1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,"stepMonths"),"M");break;case 40:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,+7,"D");c=a.ctrlKey||a.metaKey;break;default:c=false}else if(a.keyCode==36&&a.ctrlKey)d.datepicker._showDatepicker(this);else c=false;if(c){a.preventDefault();
a.stopPropagation()}},_doKeyPress:function(a){var b=d.datepicker._getInst(a.target);if(d.datepicker._get(b,"constrainInput")){b=d.datepicker._possibleChars(d.datepicker._get(b,"dateFormat"));var c=String.fromCharCode(a.charCode==B?a.keyCode:a.charCode);return a.ctrlKey||a.metaKey||c<" "||!b||b.indexOf(c)>-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a);
d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||a;if(a.nodeName.toLowerCase()!="input")a=d("input",a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);d.datepicker._curInst&&d.datepicker._curInst!=b&&d.datepicker._curInst.dpDiv.stop(true,true);var c=d.datepicker._get(b,"beforeShow");H(b.settings,c?c.apply(a,[a,b]):{});b.lastVal=
null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value="";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos=
null;b.dpDiv.empty();b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b);c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){var i=b.dpDiv.find("iframe.ui-datepicker-cover");if(i.length){var g=d.datepicker._getBorders(b.dpDiv);i.css({left:-g[0],
top:-g[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex(d(a).zIndex()+1);d.datepicker._datepickerShowing=true;d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}},_updateDatepicker:function(a){var b=d.datepicker._getBorders(a.dpDiv);J=a;a.dpDiv.empty().append(this._generateHTML(a));var c=a.dpDiv.find("iframe.ui-datepicker-cover");
c.length&&c.css({left:-b[0],top:-b[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()});a.dpDiv.find("."+this._dayOverClass+" a").mouseover();b=this._getNumberOfMonths(a);c=b[1];a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");c>1&&a.dpDiv.addClass("ui-datepicker-multi-"+c).css("width",17*c+"em");a.dpDiv[(b[0]!=1||b[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");
a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var e=a.yearshtml;setTimeout(function(){e===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);e=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},
_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(),h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),j=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e-
g):0);b.top-=Math.min(b.top,b.top+f>j&&j>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b=this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1||d.expr.filters.hidden(a));)a=a[b?"previousSibling":"nextSibling"];a=d(a).offset();return[a.left,a.top]},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b);this._curInst=
null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();if(a=this._get(b,"onClose"))a.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},
_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):
0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[0]);e._selectingMonthYear=
false;e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(a)},_clickMonthYear:function(a){var b=this._getInst(d(a)[0]);b.input&&b._selectingMonthYear&&setTimeout(function(){b.input.focus()},0);b._selectingMonthYear=!b._selectingMonthYear},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay=
d("a",e).html();f.selectedMonth=f.currentMonth=b;f.selectedYear=f.currentYear=c;this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){a=d(a);this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a);
else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.input.focus();this._lastInput=null}},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=
a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;e=typeof e!="string"?e:(new Date).getFullYear()%100+parseInt(e,10);for(var f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,
g=(c?c.monthNames:null)||this._defaults.monthNames,j=c=-1,l=-1,u=-1,k=false,o=function(p){(p=A+1<a.length&&a.charAt(A+1)==p)&&A++;return p},m=function(p){var C=o(p);p=new RegExp("^\\d{1,"+(p=="@"?14:p=="!"?20:p=="y"&&C?4:p=="o"?3:2)+"}");p=b.substring(s).match(p);if(!p)throw"Missing number at position "+s;s+=p[0].length;return parseInt(p[0],10)},n=function(p,C,K){p=d.map(o(p)?K:C,function(w,x){return[[x,w]]}).sort(function(w,x){return-(w[1].length-x[1].length)});var E=-1;d.each(p,function(w,x){w=
x[1];if(b.substr(s,w.length).toLowerCase()==w.toLowerCase()){E=x[0];s+=w.length;return false}});if(E!=-1)return E+1;else throw"Unknown name at position "+s;},r=function(){if(b.charAt(s)!=a.charAt(A))throw"Unexpected literal at position "+s;s++},s=0,A=0;A<a.length;A++)if(k)if(a.charAt(A)=="'"&&!o("'"))k=false;else r();else switch(a.charAt(A)){case "d":l=m("d");break;case "D":n("D",f,h);break;case "o":u=m("o");break;case "m":j=m("m");break;case "M":j=n("M",i,g);break;case "y":c=m("y");break;case "@":var v=
new Date(m("@"));c=v.getFullYear();j=v.getMonth()+1;l=v.getDate();break;case "!":v=new Date((m("!")-this._ticksTo1970)/1E4);c=v.getFullYear();j=v.getMonth()+1;l=v.getDate();break;case "'":if(o("'"))r();else k=true;break;default:r()}if(c==-1)c=(new Date).getFullYear();else if(c<100)c+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c<=e?0:-100);if(u>-1){j=1;l=u;do{e=this._getDaysInMonth(c,j-1);if(l<=e)break;j++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,j-1,l));if(v.getFullYear()!=
c||v.getMonth()+1!=j||v.getDate()!=l)throw"Invalid date";return v},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1E7,formatDate:function(a,b,c){if(!b)return"";var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,
h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames:null)||this._defaults.monthNames;var i=function(o){(o=k+1<a.length&&a.charAt(k+1)==o)&&k++;return o},g=function(o,m,n){m=""+m;if(i(o))for(;m.length<n;)m="0"+m;return m},j=function(o,m,n,r){return i(o)?r[m]:n[m]},l="",u=false;if(b)for(var k=0;k<a.length;k++)if(u)if(a.charAt(k)=="'"&&!i("'"))u=false;else l+=a.charAt(k);else switch(a.charAt(k)){case "d":l+=g("d",b.getDate(),2);break;case "D":l+=j("D",b.getDay(),e,f);break;
case "o":l+=g("o",(b.getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864E5,3);break;case "m":l+=g("m",b.getMonth()+1,2);break;case "M":l+=j("M",b.getMonth(),h,c);break;case "y":l+=i("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case "@":l+=b.getTime();break;case "!":l+=b.getTime()*1E4+this._ticksTo1970;break;case "'":if(i("'"))l+="'";else u=true;break;default:l+=a.charAt(k)}return l},_possibleChars:function(a){for(var b="",c=false,e=function(h){(h=f+1<a.length&&a.charAt(f+
1)==h)&&f++;return h},f=0;f<a.length;f++)if(c)if(a.charAt(f)=="'"&&!e("'"))c=false;else b+=a.charAt(f);else switch(a.charAt(f)){case "d":case "m":case "y":case "@":b+="0123456789";break;case "D":case "M":return null;case "'":if(e("'"))b+="'";else c=true;break;default:b+=a.charAt(f)}return b},_get:function(a,b){return a.settings[b]!==B?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),e=a.lastVal=a.input?a.input.val():null,
f,h;f=h=this._getDefaultDate(a);var i=this._getFormatConfig(a);try{f=this.parseDate(c,e,i)||h}catch(g){this.log(g);e=b?"":e}a.selectedDay=f.getDate();a.drawMonth=a.selectedMonth=f.getMonth();a.drawYear=a.selectedYear=f.getFullYear();a.currentDay=e?f.getDate():0;a.currentMonth=e?f.getMonth():0;a.currentYear=e?f.getFullYear():0;this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,
c){var e=function(h){var i=new Date;i.setDate(i.getDate()+h);return i},f=function(h){try{return d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),h,d.datepicker._getFormatConfig(a))}catch(i){}var g=(h.toLowerCase().match(/^c/)?d.datepicker._getDate(a):null)||new Date,j=g.getFullYear(),l=g.getMonth();g=g.getDate();for(var u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,k=u.exec(h);k;){switch(k[2]||"d"){case "d":case "D":g+=parseInt(k[1],10);break;case "w":case "W":g+=parseInt(k[1],10)*7;break;case "m":case "M":l+=
parseInt(k[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(j,l));break;case "y":case "Y":j+=parseInt(k[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(j,l));break}k=u.exec(h)}return new Date(j,l,g)};if(b=(b=b==null||b===""?c:typeof b=="string"?f(b):typeof b=="number"?isNaN(b)?c:e(b):new Date(b.getTime()))&&b.toString()=="Invalid Date"?c:b){b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0)}return this._daylightSavingAdjust(b)},_daylightSavingAdjust:function(a){if(!a)return null;
a.setHours(a.getHours()>12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||
a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),j=this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay?
new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),k=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=k&&n<k?k:n;this._daylightSavingAdjust(new Date(m,g,1))>n;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-j,1)),this._getFormatConfig(a));
n=this._canAdjustMonth(a,-1,m,g)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+z+".datepicker._adjustDate('#"+a.id+"', -"+j+", 'M');\" title=\""+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>":f?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>";var r=this._get(a,"nextText");r=!h?r:this.formatDate(r,this._daylightSavingAdjust(new Date(m,
g+j,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+z+".datepicker._adjustDate('#"+a.id+"', +"+j+", 'M');\" title=\""+r+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+r+"</span></a>":f?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+r+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+r+"</span></a>";j=this._get(a,"currentText");r=this._get(a,"gotoCurrent")&&
a.currentDay?u:b;j=!h?j:this.formatDate(j,r,this._getFormatConfig(a));h=!a.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+z+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>":"";e=e?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?h:"")+(this._isInRange(a,r)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+
z+".datepicker._gotoToday('#"+a.id+"');\">"+j+"</button>":"")+(c?"":h)+"</div>":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;j=this._get(a,"showWeek");r=this._get(a,"dayNames");this._get(a,"dayNamesShort");var s=this._get(a,"dayNamesMin"),A=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),C=this._get(a,"showOtherMonths"),K=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var E=this._getDefaultDate(a),w="",x=0;x<i[0];x++){for(var O=
"",G=0;G<i[1];G++){var P=this._daylightSavingAdjust(new Date(m,g,a.selectedDay)),t=" ui-corner-all",y="";if(l){y+='<div class="ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:y+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:y+=" ui-datepicker-group-middle";t="";break}y+='">'}y+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+t+'">'+(/all|left/.test(t)&&x==0?c?
f:n:"")+(/all|right/.test(t)&&x==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,k,o,x>0||G>0,A,v)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var D=j?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(t=0;t<7;t++){var q=(t+h)%7;D+="<th"+((t+h+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+r[q]+'">'+s[q]+"</span></th>"}y+=D+"</tr></thead><tbody>";D=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay,
D);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;D=l?6:Math.ceil((t+D)/7);q=this._daylightSavingAdjust(new Date(m,g,1-t));for(var Q=0;Q<D;Q++){y+="<tr>";var R=!j?"":'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(q)+"</td>";for(t=0;t<7;t++){var I=p?p.apply(a.input?a.input[0]:null,[q]):[true,""],F=q.getMonth()!=g,L=F&&!K||!I[0]||k&&q<k||o&&q>o;R+='<td class="'+((t+h+6)%7>=5?" ui-datepicker-week-end":"")+(F?" ui-datepicker-other-month":"")+(q.getTime()==P.getTime()&&g==a.selectedMonth&&
a._keyEvent||E.getTime()==q.getTime()&&E.getTime()==P.getTime()?" "+this._dayOverClass:"")+(L?" "+this._unselectableClass+" ui-state-disabled":"")+(F&&!C?"":" "+I[1]+(q.getTime()==u.getTime()?" "+this._currentClass:"")+(q.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!F||C)&&I[2]?' title="'+I[2]+'"':"")+(L?"":' onclick="DP_jQuery_'+z+".datepicker._selectDay('#"+a.id+"',"+q.getMonth()+","+q.getFullYear()+', this);return false;"')+">"+(F&&!C?"&#xa0;":L?'<span class="ui-state-default">'+q.getDate()+
"</span>":'<a class="ui-state-default'+(q.getTime()==b.getTime()?" ui-state-highlight":"")+(q.getTime()==u.getTime()?" ui-state-active":"")+(F?" ui-priority-secondary":"")+'" href="#">'+q.getDate()+"</a>")+"</td>";q.setDate(q.getDate()+1);q=this._daylightSavingAdjust(q)}y+=R+"</tr>"}g++;if(g>11){g=0;m++}y+="</tbody></table>"+(l?"</div>"+(i[0]>0&&G==i[1]-1?'<div class="ui-datepicker-row-break"></div>':""):"");O+=y}w+=O}w+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':
"");a._keyEvent=false;return w},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var j=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),k='<div class="ui-datepicker-title">',o="";if(h||!j)o+='<span class="ui-datepicker-month">'+i[b]+"</span>";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+z+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" onclick=\"DP_jQuery_"+z+".datepicker._clickMonthYear('#"+
a.id+"');\">";for(var n=0;n<12;n++)if((!i||n>=e.getMonth())&&(!m||n<=f.getMonth()))o+='<option value="'+n+'"'+(n==b?' selected="selected"':"")+">"+g[n]+"</option>";o+="</select>"}u||(k+=o+(h||!(j&&l)?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(h||!l)k+='<span class="ui-datepicker-year">'+c+"</span>";else{g=this._get(a,"yearRange").split(":");var r=(new Date).getFullYear();i=function(s){s=s.match(/c[+-].*/)?c+parseInt(s.substring(1),10):s.match(/[+-].*/)?r+parseInt(s,10):parseInt(s,10);return isNaN(s)?
r:s};b=i(g[0]);g=Math.max(b,i(g[1]||""));b=e?Math.max(b,e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+z+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" onclick=\"DP_jQuery_"+z+".datepicker._clickMonthYear('#"+a.id+"');\">";b<=g;b++)a.yearshtml+='<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";a.yearshtml+="</select>";k+=a.yearshtml;a.yearshtml=null}}k+=this._get(a,"yearSuffix");if(u)k+=
(h||!(j&&l)?"&#xa0;":"")+o;k+="</div>";return k},_adjustInstDate:function(a,b,c){var e=a.drawYear+(c=="Y"?b:0),f=a.drawMonth+(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,
"max");b=c&&b<c?c:b;return b=a&&b>a?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");if(b)b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,
b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c,e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!=
"string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));
return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=function(a){if(!this.length)return this;if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&&
arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));return this.each(function(){typeof a=="string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new M;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.13";window["DP_jQuery_"+z]=d})(jQuery);
;/*
 * jQuery UI Progressbar 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Progressbar
 *
 * Depends:
 *   jquery.ui.core.js
 *   jquery.ui.widget.js
 */
(function(b,d){b.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()});this.valueDiv=b("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element);this.oldValue=this._value();this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");
this.valueDiv.remove();b.Widget.prototype.destroy.apply(this,arguments)},value:function(a){if(a===d)return this._value();this._setOption("value",a);return this},_setOption:function(a,c){if(a==="value"){this.options.value=c;this._refreshValue();this._value()===this.options.max&&this._trigger("complete")}b.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;if(typeof a!=="number")a=0;return Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100*
this._value()/this.options.max},_refreshValue:function(){var a=this.value(),c=this._percentage();if(this.oldValue!==a){this.oldValue=a;this._trigger("change")}this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(c.toFixed(0)+"%");this.element.attr("aria-valuenow",a)}});b.extend(b.ui.progressbar,{version:"1.8.13"})})(jQuery);
;/*
 * jQuery UI Effects 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/
 */
jQuery.effects||function(f,j){function m(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1],
16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return n.transparent;return n[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return m(b)}function o(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,
a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function p(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d=
a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function l(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor",
"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=m(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var n={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,
0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,
211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},q=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b,
d){if(f.isFunction(b)){d=b;b=null}return this.queue(function(){var e=f(this),g=e.attr("style")||" ",h=p(o.call(this)),r,v=e.attr("class");f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});r=p(o.call(this));e.attr("class",v);e.animate(u(h,r),{queue:false,duration:a,easding:b,complete:function(){f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments);f.dequeue(this)}})})};
f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this,
[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.13",save:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])},restore:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))},setMode:function(c,a){if(a=="toggle")a=c.is(":hidden")?"show":"hide";return a},getBaseline:function(c,a){var b;switch(c[0]){case "top":b=
0;break;case "middle":b=0.5;break;case "bottom":b=1;break;default:b=c[0]/a.height}switch(c[1]){case "left":c=0;break;case "center":c=0.5;break;case "right":c=1;break;default:c=c[1]/a.width}return{x:c,y:b}},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent();var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0});
c.wrap(b);b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(d,e){a[e]=c.css(e);if(isNaN(parseInt(a[e],10)))a[e]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent().replaceWith(c);return c},setTransition:function(c,
a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)});return d.call(this,b)},_show:f.fn.show,show:function(c){if(l(c))return this._show.apply(this,arguments);else{var a=k.apply(this,arguments);
a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(l(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(l(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),b=[];f.each(["em","px","%",
"pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,a,b,d,e){return d*
((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b,d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,a,b,d,e){if((a/=
e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c,a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==e)return b+d;if((a/=
e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/
h);return-(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b},easeOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*a)*Math.sin((a*e-c)*2*Math.PI/g)+d+b},easeInOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e/2)==2)return b+d;g||(g=e*0.3*1.5);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);if(a<1)return-0.5*
h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)+b;return h*Math.pow(2,-10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)*0.5+d+b},easeInBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*(a/=e)*a*((g+1)*a-g)+b},easeOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*((a=a/e-1)*a*((g+1)*a+g)+1)+b},easeInOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;if((a/=e/2)<1)return d/2*a*a*(((g*=1.525)+1)*a-g)+b;return d/2*((a-=2)*a*(((g*=1.525)+1)*a+g)+2)+b},easeInBounce:function(c,a,b,d,e){return d-f.easing.easeOutBounce(c,
e-a,0,d,e)+b},easeOutBounce:function(c,a,b,d,e){return(a/=e)<1/2.75?d*7.5625*a*a+b:a<2/2.75?d*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?d*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:d*(7.5625*(a-=2.625/2.75)*a+0.984375)+b},easeInOutBounce:function(c,a,b,d,e){if(a<e/2)return f.easing.easeInBounce(c,a*2,0,d,e)*0.5+b;return f.easing.easeOutBounce(c,a*2-e,0,d,e)*0.5+d*0.5+b}})}(jQuery);
;/*
 * jQuery UI Effects Blind 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Blind
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(b){b.effects.blind=function(c){return this.queue(function(){var a=b(this),g=["position","top","bottom","left","right"],f=b.effects.setMode(a,c.options.mode||"hide"),d=c.options.direction||"vertical";b.effects.save(a,g);a.show();var e=b.effects.createWrapper(a).css({overflow:"hidden"}),h=d=="vertical"?"height":"width";d=d=="vertical"?e.height():e.width();f=="show"&&e.css(h,0);var i={};i[h]=f=="show"?d:0;e.animate(i,c.duration,c.options.easing,function(){f=="hide"&&a.hide();b.effects.restore(a,
g);b.effects.removeWrapper(a);c.callback&&c.callback.apply(a[0],arguments);a.dequeue()})})}})(jQuery);
;/*
 * jQuery UI Effects Bounce 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Bounce
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(e){e.effects.bounce=function(b){return this.queue(function(){var a=e(this),l=["position","top","bottom","left","right"],h=e.effects.setMode(a,b.options.mode||"effect"),d=b.options.direction||"up",c=b.options.distance||20,m=b.options.times||5,i=b.duration||250;/show|hide/.test(h)&&l.push("opacity");e.effects.save(a,l);a.show();e.effects.createWrapper(a);var f=d=="up"||d=="down"?"top":"left";d=d=="up"||d=="left"?"pos":"neg";c=b.options.distance||(f=="top"?a.outerHeight({margin:true})/3:a.outerWidth({margin:true})/
3);if(h=="show")a.css("opacity",0).css(f,d=="pos"?-c:c);if(h=="hide")c/=m*2;h!="hide"&&m--;if(h=="show"){var g={opacity:1};g[f]=(d=="pos"?"+=":"-=")+c;a.animate(g,i/2,b.options.easing);c/=2;m--}for(g=0;g<m;g++){var j={},k={};j[f]=(d=="pos"?"-=":"+=")+c;k[f]=(d=="pos"?"+=":"-=")+c;a.animate(j,i/2,b.options.easing).animate(k,i/2,b.options.easing);c=h=="hide"?c*2:c/2}if(h=="hide"){g={opacity:0};g[f]=(d=="pos"?"-=":"+=")+c;a.animate(g,i/2,b.options.easing,function(){a.hide();e.effects.restore(a,l);e.effects.removeWrapper(a);
b.callback&&b.callback.apply(this,arguments)})}else{j={};k={};j[f]=(d=="pos"?"-=":"+=")+c;k[f]=(d=="pos"?"+=":"-=")+c;a.animate(j,i/2,b.options.easing).animate(k,i/2,b.options.easing,function(){e.effects.restore(a,l);e.effects.removeWrapper(a);b.callback&&b.callback.apply(this,arguments)})}a.queue("fx",function(){a.dequeue()});a.dequeue()})}})(jQuery);
;/*
 * jQuery UI Effects Clip 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Clip
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(b){b.effects.clip=function(e){return this.queue(function(){var a=b(this),i=["position","top","bottom","left","right","height","width"],f=b.effects.setMode(a,e.options.mode||"hide"),c=e.options.direction||"vertical";b.effects.save(a,i);a.show();var d=b.effects.createWrapper(a).css({overflow:"hidden"});d=a[0].tagName=="IMG"?d:a;var g={size:c=="vertical"?"height":"width",position:c=="vertical"?"top":"left"};c=c=="vertical"?d.height():d.width();if(f=="show"){d.css(g.size,0);d.css(g.position,
c/2)}var h={};h[g.size]=f=="show"?c:0;h[g.position]=f=="show"?0:c/2;d.animate(h,{queue:false,duration:e.duration,easing:e.options.easing,complete:function(){f=="hide"&&a.hide();b.effects.restore(a,i);b.effects.removeWrapper(a);e.callback&&e.callback.apply(a[0],arguments);a.dequeue()}})})}})(jQuery);
;/*
 * jQuery UI Effects Drop 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Drop
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(c){c.effects.drop=function(d){return this.queue(function(){var a=c(this),h=["position","top","bottom","left","right","opacity"],e=c.effects.setMode(a,d.options.mode||"hide"),b=d.options.direction||"left";c.effects.save(a,h);a.show();c.effects.createWrapper(a);var f=b=="up"||b=="down"?"top":"left";b=b=="up"||b=="left"?"pos":"neg";var g=d.options.distance||(f=="top"?a.outerHeight({margin:true})/2:a.outerWidth({margin:true})/2);if(e=="show")a.css("opacity",0).css(f,b=="pos"?-g:g);var i={opacity:e==
"show"?1:0};i[f]=(e=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+g;a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){e=="hide"&&a.hide();c.effects.restore(a,h);c.effects.removeWrapper(a);d.callback&&d.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
;/*
 * jQuery UI Effects Explode 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Explode
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(j){j.effects.explode=function(a){return this.queue(function(){var c=a.options.pieces?Math.round(Math.sqrt(a.options.pieces)):3,d=a.options.pieces?Math.round(Math.sqrt(a.options.pieces)):3;a.options.mode=a.options.mode=="toggle"?j(this).is(":visible")?"hide":"show":a.options.mode;var b=j(this).show().css("visibility","hidden"),g=b.offset();g.top-=parseInt(b.css("marginTop"),10)||0;g.left-=parseInt(b.css("marginLeft"),10)||0;for(var h=b.outerWidth(true),i=b.outerHeight(true),e=0;e<c;e++)for(var f=
0;f<d;f++)b.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-f*(h/d),top:-e*(i/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:h/d,height:i/c,left:g.left+f*(h/d)+(a.options.mode=="show"?(f-Math.floor(d/2))*(h/d):0),top:g.top+e*(i/c)+(a.options.mode=="show"?(e-Math.floor(c/2))*(i/c):0),opacity:a.options.mode=="show"?0:1}).animate({left:g.left+f*(h/d)+(a.options.mode=="show"?0:(f-Math.floor(d/2))*(h/d)),top:g.top+
e*(i/c)+(a.options.mode=="show"?0:(e-Math.floor(c/2))*(i/c)),opacity:a.options.mode=="show"?1:0},a.duration||500);setTimeout(function(){a.options.mode=="show"?b.css({visibility:"visible"}):b.css({visibility:"visible"}).hide();a.callback&&a.callback.apply(b[0]);b.dequeue();j("div.ui-effects-explode").remove()},a.duration||500)})}})(jQuery);
;/*
 * jQuery UI Effects Fade 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Fade
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(b){b.effects.fade=function(a){return this.queue(function(){var c=b(this),d=b.effects.setMode(c,a.options.mode||"hide");c.animate({opacity:d},{queue:false,duration:a.duration,easing:a.options.easing,complete:function(){a.callback&&a.callback.apply(this,arguments);c.dequeue()}})})}})(jQuery);
;/*
 * jQuery UI Effects Fold 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Fold
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(c){c.effects.fold=function(a){return this.queue(function(){var b=c(this),j=["position","top","bottom","left","right"],d=c.effects.setMode(b,a.options.mode||"hide"),g=a.options.size||15,h=!!a.options.horizFirst,k=a.duration?a.duration/2:c.fx.speeds._default/2;c.effects.save(b,j);b.show();var e=c.effects.createWrapper(b).css({overflow:"hidden"}),f=d=="show"!=h,l=f?["width","height"]:["height","width"];f=f?[e.width(),e.height()]:[e.height(),e.width()];var i=/([0-9]+)%/.exec(g);if(i)g=parseInt(i[1],
10)/100*f[d=="hide"?0:1];if(d=="show")e.css(h?{height:0,width:g}:{height:g,width:0});h={};i={};h[l[0]]=d=="show"?f[0]:g;i[l[1]]=d=="show"?f[1]:0;e.animate(h,k,a.options.easing).animate(i,k,a.options.easing,function(){d=="hide"&&b.hide();c.effects.restore(b,j);c.effects.removeWrapper(b);a.callback&&a.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery);
;/*
 * jQuery UI Effects Highlight 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Highlight
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(b){b.effects.highlight=function(c){return this.queue(function(){var a=b(this),e=["backgroundImage","backgroundColor","opacity"],d=b.effects.setMode(a,c.options.mode||"show"),f={backgroundColor:a.css("backgroundColor")};if(d=="hide")f.opacity=0;b.effects.save(a,e);a.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:false,duration:c.duration,easing:c.options.easing,complete:function(){d=="hide"&&a.hide();b.effects.restore(a,e);d=="show"&&!b.support.opacity&&
this.style.removeAttribute("filter");c.callback&&c.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
;/*
 * jQuery UI Effects Pulsate 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Pulsate
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(d){d.effects.pulsate=function(a){return this.queue(function(){var b=d(this),c=d.effects.setMode(b,a.options.mode||"show");times=(a.options.times||5)*2-1;duration=a.duration?a.duration/2:d.fx.speeds._default/2;isVisible=b.is(":visible");animateTo=0;if(!isVisible){b.css("opacity",0).show();animateTo=1}if(c=="hide"&&isVisible||c=="show"&&!isVisible)times--;for(c=0;c<times;c++){b.animate({opacity:animateTo},duration,a.options.easing);animateTo=(animateTo+1)%2}b.animate({opacity:animateTo},duration,
a.options.easing,function(){animateTo==0&&b.hide();a.callback&&a.callback.apply(this,arguments)});b.queue("fx",function(){b.dequeue()}).dequeue()})}})(jQuery);
;/*
 * jQuery UI Effects Scale 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Scale
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(c){c.effects.puff=function(b){return this.queue(function(){var a=c(this),e=c.effects.setMode(a,b.options.mode||"hide"),g=parseInt(b.options.percent,10)||150,h=g/100,i={height:a.height(),width:a.width()};c.extend(b.options,{fade:true,mode:e,percent:e=="hide"?g:100,from:e=="hide"?i:{height:i.height*h,width:i.width*h}});a.effect("scale",b.options,b.duration,b.callback);a.dequeue()})};c.effects.scale=function(b){return this.queue(function(){var a=c(this),e=c.extend(true,{},b.options),g=c.effects.setMode(a,
b.options.mode||"effect"),h=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:g=="hide"?0:100),i=b.options.direction||"both",f=b.options.origin;if(g!="effect"){e.origin=f||["middle","center"];e.restore=true}f={height:a.height(),width:a.width()};a.from=b.options.from||(g=="show"?{height:0,width:0}:f);h={y:i!="horizontal"?h/100:1,x:i!="vertical"?h/100:1};a.to={height:f.height*h.y,width:f.width*h.x};if(b.options.fade){if(g=="show"){a.from.opacity=0;a.to.opacity=1}if(g=="hide"){a.from.opacity=
1;a.to.opacity=0}}e.from=a.from;e.to=a.to;e.mode=g;a.effect("size",e,b.duration,b.callback);a.dequeue()})};c.effects.size=function(b){return this.queue(function(){var a=c(this),e=["position","top","bottom","left","right","width","height","overflow","opacity"],g=["position","top","bottom","left","right","overflow","opacity"],h=["width","height","overflow"],i=["fontSize"],f=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],k=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],
p=c.effects.setMode(a,b.options.mode||"effect"),n=b.options.restore||false,m=b.options.scale||"both",l=b.options.origin,j={height:a.height(),width:a.width()};a.from=b.options.from||j;a.to=b.options.to||j;if(l){l=c.effects.getBaseline(l,j);a.from.top=(j.height-a.from.height)*l.y;a.from.left=(j.width-a.from.width)*l.x;a.to.top=(j.height-a.to.height)*l.y;a.to.left=(j.width-a.to.width)*l.x}var d={from:{y:a.from.height/j.height,x:a.from.width/j.width},to:{y:a.to.height/j.height,x:a.to.width/j.width}};
if(m=="box"||m=="both"){if(d.from.y!=d.to.y){e=e.concat(f);a.from=c.effects.setTransition(a,f,d.from.y,a.from);a.to=c.effects.setTransition(a,f,d.to.y,a.to)}if(d.from.x!=d.to.x){e=e.concat(k);a.from=c.effects.setTransition(a,k,d.from.x,a.from);a.to=c.effects.setTransition(a,k,d.to.x,a.to)}}if(m=="content"||m=="both")if(d.from.y!=d.to.y){e=e.concat(i);a.from=c.effects.setTransition(a,i,d.from.y,a.from);a.to=c.effects.setTransition(a,i,d.to.y,a.to)}c.effects.save(a,n?e:g);a.show();c.effects.createWrapper(a);
a.css("overflow","hidden").css(a.from);if(m=="content"||m=="both"){f=f.concat(["marginTop","marginBottom"]).concat(i);k=k.concat(["marginLeft","marginRight"]);h=e.concat(f).concat(k);a.find("*[width]").each(function(){child=c(this);n&&c.effects.save(child,h);var o={height:child.height(),width:child.width()};child.from={height:o.height*d.from.y,width:o.width*d.from.x};child.to={height:o.height*d.to.y,width:o.width*d.to.x};if(d.from.y!=d.to.y){child.from=c.effects.setTransition(child,f,d.from.y,child.from);
child.to=c.effects.setTransition(child,f,d.to.y,child.to)}if(d.from.x!=d.to.x){child.from=c.effects.setTransition(child,k,d.from.x,child.from);child.to=c.effects.setTransition(child,k,d.to.x,child.to)}child.css(child.from);child.animate(child.to,b.duration,b.options.easing,function(){n&&c.effects.restore(child,h)})})}a.animate(a.to,{queue:false,duration:b.duration,easing:b.options.easing,complete:function(){a.to.opacity===0&&a.css("opacity",a.from.opacity);p=="hide"&&a.hide();c.effects.restore(a,
n?e:g);c.effects.removeWrapper(a);b.callback&&b.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
;/*
 * jQuery UI Effects Shake 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Shake
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(d){d.effects.shake=function(a){return this.queue(function(){var b=d(this),j=["position","top","bottom","left","right"];d.effects.setMode(b,a.options.mode||"effect");var c=a.options.direction||"left",e=a.options.distance||20,l=a.options.times||3,f=a.duration||a.options.duration||140;d.effects.save(b,j);b.show();d.effects.createWrapper(b);var g=c=="up"||c=="down"?"top":"left",h=c=="up"||c=="left"?"pos":"neg";c={};var i={},k={};c[g]=(h=="pos"?"-=":"+=")+e;i[g]=(h=="pos"?"+=":"-=")+e*2;k[g]=
(h=="pos"?"-=":"+=")+e*2;b.animate(c,f,a.options.easing);for(e=1;e<l;e++)b.animate(i,f,a.options.easing).animate(k,f,a.options.easing);b.animate(i,f,a.options.easing).animate(c,f/2,a.options.easing,function(){d.effects.restore(b,j);d.effects.removeWrapper(b);a.callback&&a.callback.apply(this,arguments)});b.queue("fx",function(){b.dequeue()});b.dequeue()})}})(jQuery);
;/*
 * jQuery UI Effects Slide 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Slide
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(c){c.effects.slide=function(d){return this.queue(function(){var a=c(this),h=["position","top","bottom","left","right"],f=c.effects.setMode(a,d.options.mode||"show"),b=d.options.direction||"left";c.effects.save(a,h);a.show();c.effects.createWrapper(a).css({overflow:"hidden"});var g=b=="up"||b=="down"?"top":"left";b=b=="up"||b=="left"?"pos":"neg";var e=d.options.distance||(g=="top"?a.outerHeight({margin:true}):a.outerWidth({margin:true}));if(f=="show")a.css(g,b=="pos"?isNaN(e)?"-"+e:-e:e);
var i={};i[g]=(f=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+e;a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){f=="hide"&&a.hide();c.effects.restore(a,h);c.effects.removeWrapper(a);d.callback&&d.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
;/*
 * jQuery UI Effects Transfer 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Effects/Transfer
 *
 * Depends:
 *	jquery.effects.core.js
 */
(function(e){e.effects.transfer=function(a){return this.queue(function(){var b=e(this),c=e(a.options.to),d=c.offset();c={top:d.top,left:d.left,height:c.innerHeight(),width:c.innerWidth()};d=b.offset();var f=e('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(a.options.className).css({top:d.top,left:d.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(c,a.duration,a.options.easing,function(){f.remove();a.callback&&a.callback.apply(b[0],arguments);
b.dequeue()})})}})(jQuery);
;js/elrte.full.js000060400001004325150714137430007600 0ustar00/**
 * @class eli18n
 * Javascript applications localization 
 *
 * @param Object o - class options. Object. {textdomain : 'имя_группы_сообщений', messages : {textdomain1 : {}[, textdomain2 : {}]...}}
 *
 * Usage:
 * 
 * var msgs = { Hello : 'Превэд', 'Hello %user' : 'Превед %user' };
 * //load messages and set default textdomain
 * var translator = new eli18n( {textdomain : 'test', messages : {test : msgs}} )
 * window.console.log(translator.translate('Hello'));
 * window.console.log(translator.format('Hello %user', {user : 'David Blain'}))
 * // create new textdomain
 * translator.load({test2 : {'Goodbye' : 'Ja, deva mata!'} })
 * // and use it, without changing default one
 * window.console.log(translator.translate('Goodbye', 'test2'));
 *
 * @author:    Dmitry (dio) Levashov dio@std42.ru
 * license:   BSD license
 **/
function eli18n(o) {
	
	/**
	 * Get/set default textdomain
	 *
	 * @param String d new textdomain name
	 * @return String  default textdomain
	 **/
	this.textdomain = function(d) {
		return this.messages[d] ? this._domain = d : this._domain;
	}
	
	o && o.messages   && this.load(o.messages);
	o && o.textdomain && this.textdomain(o.textdomain);
}

eli18n.prototype = new function() {
	
	/**
	 * @var Object messages (key - messages in English or message handler, value - message in selected language)
	 **/
	this.messages = {};
	/**
	 * @var String default textdomain
	 **/
	this._domain   = '';
	
	/**
	 * Load new messages
	 *
	 * @param Object msgs - messages (key - textdomain name, value - messages Object)
	 * @return Object this
	 **/
	this.load = function(msgs) {
		if (typeof(msgs) == 'object') {
			for (var d in msgs) {
				var _msgs = msgs[d];
				if (typeof(_msgs) == 'object') {
					if (!this.messages[d]) {
						this.messages[d] = {}; 
					}
					for (var k in _msgs) {
						if (typeof(_msgs[k]) == 'string') {
							this.messages[d][k] = _msgs[k];
						}
					}
				}
			}
		}
		return this;
	}

	/**
	 * Return translated message, if message exists in required or default textdomain, otherwise returns original message
	 *
	 * @param  String msg - message
	 * @param  String d - textdomain. If empty, default textdomain will be used
	 * @return String translated message
	 **/
	this.translate = function(msg, d) {
		var d = d && this.messages[d] ? d : this._domain;
		return this.messages[d] && this.messages[d][msg] ? this.messages[d][msg] : msg;
		
	}
	
	/**
	 * Translate message and replace placeholders (%placeholder)
	 *
	 * @param  String  msg - message
	 * @param  Object  replacement for placeholders (keys - placeholders name without leading %, values - replacements)
	 * @param  String  d - textdomain. If empty, default textdomain will be used
	 * @return String  translated message
	 **/
	this.format = function(msg, data, d) {
		msg = this.translate(msg, d);
		if (typeof(data) == 'object') {
			for (var i in data) {
				msg = msg.replace('%'+i, this.translate(data[i], d));
			}
		}
		return msg;
	}
}
/**
 * @class elDialogForm
 * Wraper for jquery.ui.dialog and jquery.ui.tabs
 *  Create form in dialog. You can decorate it as you wish - with tabs or/and tables
 *
 * Usage:
 *   var d = new elDialogForm(opts)
 *   d.append(['Field name: ', $('<input type="text" name="f1" />')])
 *		.separator()
 *		.append(['Another field name: ', $('<input type="text" name="f2" />')])
 *      .open()
 * will create dialog with pair text field separated by horizontal rule
 * Calling append() with 2 additional arguments ( d.append([..], null, true)) 
 *  - will create table in dialog and put text inputs and labels in table cells
 *
 * Dialog with tabs:
 *   var d = new elDialogForm(opts)
 *   d.tab('first', 'First tab label)
 * 	  .tab('second', 'Second tab label)
 *    .append(['Field name: ', $('<input type="text" name="f1" />')], 'first', true)  - add label and input to first tab in table (table will create automagicaly)
 *    .append(['Field name 2: ', $('<input type="text" name="f2" />')], 'second', true)  - same in secon tab
 *
 * Options:
 *   class     - css class for dialog
 *   submit    - form submit event callback. Accept 2 args - event and this object
 *   ajaxForm  - arguments for ajaxForm, if needed (dont forget include jquery.form.js)
 *   tabs      - arguments for ui.tabs
 *   dialog    - arguments for ui.dialog
 *   name      - hidden text field in wich selected value will saved
 *
 * Notice!
 * When close dialog, it will destroing insead of dialog('close'). Reason - strange bug with tabs in dialog on secondary opening. 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 *
 **/

function elDialogForm(o) {
	var self = this;
	
	var defaults = {
		'class'   : 'el-dialogform',
		submit    : function(e, d) { d.close(); },
		form      : { action : window.location.href,	method : 'post'	},
		ajaxForm  : null,
		validate  : null,
		spinner   : 'Loading',
		tabs      : { active: 0, selected : 0 },
		tabPrefix : 'el-df-tab-',
		dialog    : {
			title     : 'dialog',
			autoOpen  : false,
			modal     : true,
			resizable : false,
			closeOnEscape : true,
			buttons  : {
				Cancel : function() { self.close(); },
				Ok     : function() { self.form.trigger('submit'); }
			}
		}
	};

	this.opts = jQuery.extend(true, {}, defaults, o);
	
	this.opts.dialog.close = function() { 
		self.close(); 
	}

	// this.opts.dialog.autoOpen = true;
	if (this.opts.rtl) {
		this.opts['class'] += ' el-dialogform-rtl';
	}
	
	if (o && o.dialog && o.dialog.buttons && typeof(o.dialog.buttons) == 'object') {
		this.opts.dialog.buttons = o.dialog.buttons;
	}

	this.ul     = null;
	this.tabs   = {};
	this._table = null;

	this.dialog = jQuery('<div />').addClass(this.opts['class']).dialog(this.opts.dialog);

	this.message = jQuery('<div class="el-dialogform-message rounded-5" />').hide().appendTo(this.dialog);
	this.error   = jQuery('<div class="el-dialogform-error rounded-5" />').hide().appendTo(this.dialog);
	this.spinner = jQuery('<div class="spinner" />').hide().appendTo(this.dialog);
	this.content = jQuery('<div class="el-dialogform-content" />').appendTo(this.dialog)
	this.form   = jQuery('<form />').attr(this.opts.form).appendTo(this.content);

	if (this.opts.submit) {
		this.form.bind('submit', function(e) { self.opts.submit(e, self) })
	}
	if (this.opts.ajaxForm && jQuery.fn.ajaxForm) {
		this.form.ajaxForm(this.opts.ajaxForm);
	}
	if (this.opts.validate) {
		this.form.validate(this.opts.validate);
	}
	
	this.option = function(name, value) {
		return this.dialog.dialog('option', name, value)
	}
	
	this.showError = function(msg, hideContent) {
		this.hideMessage();
		this.hideSpinner();
		this.error.html(msg).show();
		hideContent && this.content.hide();
		return this;
	}
	
	this.hideError= function() {
		this.error.text('').hide();
		this.content.show();
		return this;		
	}
	
	this.showSpinner = function(txt) {
		this.error.hide();
		this.message.hide();
		this.content.hide();
		this.spinner.text(txt||this.opts.spinner).show();
		this.option('buttons', {});
		return this;		
	}
	
	this.hideSpinner = function() {
		this.content.show();
		this.spinner.hide();
		return this;		
	}
	
	this.showMessage = function(txt, hideContent) {
		this.hideError();
		this.hideSpinner();
		this.message.html(txt||'').show();
		hideContent && this.content.hide();
		return this;
	}
	
	this.hideMessage = function() {
		this.message.hide();
		this.content.show();
		return this;		
	}
	
	/**
	 * Create new tab
	 * @param string id    - tab id
	 * @param string title - tab name
	 * @return elDialogForm	
	**/
	this.tab = function(id, title) {
		id = this.opts.tabPrefix+id;
		
		if (!this.ul) {
			this.ul = jQuery('<ul />').prependTo(this.form);
		}
		jQuery('<li />').append(jQuery('<a />').attr('href', '#'+id).html(title)).appendTo(this.ul);
		this.tabs[id] = {tab : jQuery('<div />').attr('id', id).addClass('tab').appendTo(this.form), table : null};
		return this;
	}
	
	/**
	 * Create new table
	 * @param string id  tab id, if set - table will create in tab, otherwise - in dialog
	 * @return elDialogForm	
	**/
	this.table = function(id) {
		id = id && id.indexOf(this.opts.tabPrefix) == -1 ? this.opts.tabPrefix+id : id;
		if (id && this.tabs && this.tabs[id]) {
			this.tabs[id].table = jQuery('<table />').appendTo(this.tabs[id].tab);
		} else {
			this._table = jQuery('<table />').appendTo(this.form); 
		}
		return this;
	}
	
	/**
	 * Append html, dom nodes or jQuery objects to dialog or tab
	 * @param array|object|string  data object(s) to append to dialog
	 * @param string               tid  tab id, if adding to tab
	 * @param bool                 t    if true - data will added in table (creating automagicaly)
	 * @return elDialogForm	
	**/
	this.append = function(data, tid, t) {
		tid = tid ? 'el-df-tab-'+tid : '';

		if (!data) {
			return this;
		}
		
		if (tid && this.tabs[tid]) {
			if (t) {
				!this.tabs[tid].table && this.table(tid);
				var tr = jQuery('<tr />').appendTo(this.tabs[tid].table);
				if (!jQuery.isArray(data)) {
					tr.append(jQuery('<td />').append(data));
				} else {
					for (var i=0; i < data.length; i++) {
						tr.append(jQuery('<td />').append(data[i]));
					};
				}
			} else {
				if (!jQuery.isArray(data)) {
					this.tabs[tid].tab.append(data)
				} else {
					for (var i=0; i < data.length; i++) {
						this.tabs[tid].tab.append(data[i]);
					};
				}
			}
			
		} else {
			if (!t) {
				if (!jQuery.isArray(data)) {
					this.form.append(data);
				} else {
					for (var i=0; i < data.length; i++) {
						this.form.append(data[i]);
					};
				}
			} else {
				if (!this._table) {
					this.table();
				}
				var tr = jQuery('<tr />').appendTo(this._table);
				if (!jQuery.isArray(data)) {
					tr.append(jQuery('<td />').append(data));
				} else {
					for (var i=0; i < data.length; i++) {
						tr.append(jQuery('<td />').append(data[i]));
					};
				}
			}
		}
		return this;
	}
	
	/**
	 * Append separator (div class="separator") to dialog or tab
	 * @param  string tid  tab id, if adding to tab
	 * @return elDialogForm	
	**/
	this.separator = function(tid) {
		tid = 'el-df-tab-'+tid;
		if (this.tabs && this.tabs[tid]) {
			this.tabs[tid].tab.append(jQuery('<div />').addClass('separator'));
			this.tabs[tid].table && this.table(tid);
		} else {
			this.form.append(jQuery('<div />').addClass('separator'));
		}
		return this;
	}
	
	/**
	 * Open dialog window
	 * @return elDialogForm	
	**/
	this.open = function() {
		var self = this;
		
		this.ul && this.form.tabs(this.opts.tabs);

		setTimeout(function() {
			self.dialog.find(':text')
				.keydown(function(e) {
					if (e.keyCode == 13) {
						e.preventDefault()
						self.form.submit();
					}
				})
				.filter(':first')[0].focus()
		}, 200);

		this.dialog.dialog('open');

		return this;
	}
	
	/**
	 * Close dialog window and destroy content
	 * @return void	
	**/
	this.close = function() {
		if (typeof(this.opts.close) == 'function') {
			this.opts.close();
		}
		this.dialog.dialog('destroy')//.remove();
	}
	
}

/**
 * elColorPicker. JQuery plugin
 * Create drop-down colors palette.
 *
 * Usage:
 * $(selector).elColorPicker(opts)
 *
 * set color after init:
 * var c = $(selector).elColorPicker(opts)
 * c.val('#ffff99)
 *
 * Get selected color:
 * var color = c.val();
 *
 * Notice!
 *   Palette created only after first click on element (lazzy loading)
 *
 * Options:
 *   colors - colors array (by default display 256 web safe colors)
 *   color  - current (selected) color
 *   class - css class for display "button" (element on wich plugin was called)
 *   paletteClass - css class for colors palette
 *   palettePosition - string indicate where palette will created:
 *      'inner' - palette will attach to element (acceptable in most cases)
 *      'outer' - palette will attach to document.body. 
 *                Use, when create color picker inside element with overflow == 'hidden', for example in ui.dialog
 *   update - function wich update button view on select color (by default set selected color as background)
 *   change - callback, called when color was selected (by default write color to console.log)
 *   name   - hidden text field in wich selected color value will saved
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 *
 **/
(function($) {

	$.fn.elColorPicker = function(o) {
		var self     = this;
		var opts     = $.extend({}, $.fn.elColorPicker.defaults, o);
		this.hidden  = $('<input type="hidden" />').attr('name', opts.name).val(opts.color||'').appendTo(this);
		this.palette = null;
		this.preview = null;
		this.input   = null;

		function setColor(c) {
			self.val(c);
			opts.change && opts.change(self.val());
			self.palette.slideUp();
		}

		function init() {
			self.palette  = $('<div />').addClass(opts.paletteClass+' rounded-3');
			for (var i=0; i < opts.colors.length; i++) {
				$('<div />')
					.addClass('color')
					.css('background-color', opts.colors[i])
					.attr({title : opts.colors[i], unselectable : 'on'})
					.appendTo(self.palette)
					.mouseenter(function() {
						var v = $(this).attr('title');
						self.input.val(v);
						self.preview.css('background-color', v);
					})
					.click(function(e) {
						e.stopPropagation(); 
						setColor($(this).attr('title'));
					});
			};
			self.input = $('<input type="text" />')
				.addClass('rounded-3')
				.attr('size', 8)
				.click(function(e) {
					e.stopPropagation();
					$(this).focus();
				})
				.keydown(function(e) {
					if (e.ctrlKey || e.metaKey) {
						return true;
					}
					var k = e.keyCode;
					// on esc - close palette
					if (k == 27) {
						return self.mouseleave();
					}
					// allow input only hex color value
					if (k!=8 && k != 13 && k!=46 && k!=37 && k != 39 && (k<48 || k>57) && (k<65 || k > 70)) {
						return false;
					}
					var c = $(this).val();
					if (c.length == 7 || c.length == 0) {
						if (k == 13) {
							e.stopPropagation();
							e.preventDefault();
							setColor(c);
							self.palette.slideUp();
						}
						if (e.keyCode != 8 && e.keyCode != 46 && k!=37 && k != 39) {
							return false;
						}
					}
				})
				.keyup(function(e) {
					var c = $(this).val(); 
					c.length == 7 && /^#[0-9abcdef]{6}$/i.test(c) && self.val(c);
				});
				
			self.preview = $('<div />')
				.addClass('preview rounded-3')
				.click(function(e) {
					e.stopPropagation();
					setColor(self.input.val());
				});
			
			self.palette
				.append($('<div />').addClass('clearfix'))
				.append($('<div />').addClass('panel').append(self.input).append(self.preview));
			
			if (opts.palettePosition == 'outer') {
				self.palette.hide()
					.appendTo(self.parents('body').eq(0))
					.mouseleave(function() {
						if (!self.palette.is(':animated')) {
						$(this).slideUp();
						self.val(self.val());
					}
					});
				self.mouseleave(function(e) {
					if (e.relatedTarget != self.palette.get(0)) {
						if (!self.palette.is(':animated')) {
							self.palette.slideUp();
							self.val(self.val());
						}
						
					}
				})
			} else {
				self.append(self.palette.hide())
					.mouseleave(function(e) {
						self.palette.slideUp();
						self.val(self.val());
					});
			}
			self.val(self.val());
		}
		
		this.empty().addClass(opts['class']+' rounded-3')
			.css({'position' : 'relative', 'background-color' : opts.color||''})
		.click(function(e) { 
			if (!self.hasClass('disabled')) {
				!self.palette && init();
				if (opts.palettePosition == 'outer' && self.palette.css('display') == 'none') {
					var o = $(this).offset();
					var w = self.palette.width();
					var l = self.parents('body').width() - o.left >= w ? o.left : o.left + $(this).outerWidth() - w;
					self.palette.css({left : l+'px', top : o.top+$(this).height()+1+'px'});
				}
				self.palette.slideToggle();
			}
		});
		
		this.val = function(v) {
			if (!v && v!=='') {
				return this.hidden.val();
			} else {
				this.hidden.val(v);
				if (opts.update) {
					opts.update(this.hidden.val());
				} else {
					this.css('background-color', v);
				}
				
				if (self.palette) {
					self.preview.css('background-color', v);
					self.input.val(v);
				}
			}
			return this;
		}
		
		return this;
	}

	$.fn.elColorPicker.defaults = {
		'class'         : 'el-colorpicker',
		paletteClass    : 'el-palette',
		palettePosition : 'inner',
		name            : 'color',
		color           : '',
		update          : null,
		change          : function(c) {  },
		colors          : [
			'#ffffff', '#cccccc', '#999999', '#666666', '#333333', '#000000', 
			'#ffcccc', '#cc9999', '#996666', '#663333', '#330000', 
			'#ff9999', '#cc6666', '#cc3333', '#993333', '#660000', 
			'#ff6666', '#ff3333', '#ff0000', '#cc0000', '#990000',
			'#ff9966', '#ff6633', '#ff3300', '#cc3300', '#993300',
			'#ffcc99', '#cc9966', '#cc6633', '#996633', '#663300',
			'#ff9933', '#ff6600', '#ff9900', '#cc6600', '#cc9933',
			'#ffcc66', '#ffcc33', '#ffcc00', '#cc9900', '#996600',
			'#ffffcc', '#cccc99', '#999966', '#666633', '#333300',
			'#ffff99', '#cccc66', '#cccc33', '#999933', '#666600',
			'#ffff66', '#ffff33', '#ffff00', '#cccc00', '#999900',
			'#ccff66', '#ccff33', '#ccff00', '#99cc00', '#669900',
			'#ccff99', '#99cc66', '#99cc33', '#669933', '#336600',
			'#99ff33', '#99ff00', '#66ff00', '#66cc00', '#66cc33',
			'#99ff66', '#66ff33', '#33ff00', '#33cc00', '#339900',
			'#ccffcc', '#99cc99', '#669966', '#336633', '#003300',
			'#99ff99', '#66cc66', '#33cc33', '#339933', '#006600',
			'#66ff66', '#33ff33', '#00ff00', '#00cc00', '#009900',
			'#66ff99', '#33ff66', '#00ff33', '#00cc33', '#009933',			
			'#99ffcc', '#66cc99', '#33cc66', '#339966', '#006633',						
			'#33ff99', '#00ff66', '#00ff99', '#00cc66', '#33cc99',						
			'#66ffcc', '#33ffcc', '#00ffcc', '#00cc99', '#009966',						
			'#ccffff', '#99cccc', '#669999', '#336666', '#003333',						
			'#99ffff', '#66cccc', '#33cccc', '#339999', '#006666',						
			'#66cccc', '#33ffff', '#00ffff', '#00cccc', '#009999',						
			'#66ccff', '#33ccff', '#00ccff', '#0099cc', '#006699',																		
			'#99ccff', '#6699cc', '#3399cc', '#336699', '#003366',						
			'#3399ff', '#0099ff', '#0066ff', '#066ccc', '#3366cc',																		
			'#6699ff', '#3366ff', '#0033ff', '#0033cc', '#003399',						
			'#ccccff', '#9999cc', '#666699', '#333366', '#000033',																		
			'#9999ff', '#6666cc', '#3333cc', '#333399', '#000066',																		
			'#6666ff', '#3333ff', '#0000ff', '#0000cc', '#009999',																		
			'#9966ff', '#6633ff', '#3300ff', '#3300cc', '#330099',																		
			'#cc99ff', '#9966cc', '#6633cc', '#663399', '#330066',
			'#9933ff', '#6600ff', '#9900ff', '#6600cc', '#9933cc',			
			'#cc66ff', '#cc33ff', '#cc00ff', '#9900cc', '#660099',
			'#ffccff', '#cc99cc', '#996699', '#663366', '#330033',			
			'#ff99ff', '#cc66cc', '#cc33cc', '#993399', '#660066',
			'#ff66ff', '#ff33ff', '#ff00ff', '#cc00cc', '#990099',			
			'#ff66cc', '#ff33cc', '#ff00cc', '#cc0099', '#990066',
			'#ff99cc', '#cc6699', '#cc3399', '#993366', '#660033',			
			'#ff3399', '#ff0099', '#ff0066', '#cc0066', '#cc3366',
			'#ff6699', '#ff3366', '#ff0033', '#cc0033', '#990033'		
			]
	};

})(jQuery);
/**
 * jQuery plugin. Create group of text input, elSelect and elColorPicker. 
 * Allow input border-width, border-style and border-color. Used in elRTE
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 **/
(function($) {
	
	$.fn.elBorderSelect = function(o) {
		
		var $self = this;
		var self  = this.eq(0);
		var opts  = $.extend({}, $.fn.elBorderSelect.defaults, o);
		var width = $('<input type="text" />')
			.attr({'name' : opts.name+'[width]', size : 3}).css('text-align', 'right')
			.change(function() { $self.change(); });
		
		var color = $('<div />').css('position', 'relative')
			.elColorPicker({
				'class'         : 'el-colorpicker ui-icon ui-icon-pencil',
				name            : opts.name+'[color]', 
				palettePosition : 'outer',
				change          : function() { $self.change(); }
			});
		
		
		var style = $('<div />').elSelect({
			tpl       : '<div style="border-bottom:4px %val #000;width:100%;margin:7px 0"> </div>',
			tpls      : { '' : '%label'},
			maxHeight : opts.styleHeight || null,
			select    : function() { $self.change(); },
			src       : {
				''       : 'none',
				solid    : 'solid',
				dashed   : 'dashed',
				dotted   : 'dotted',
				'double' : 'double',
				groove   : 'groove',
				ridge    : 'ridge',
				inset    : 'inset',
				outset   : 'outset'
			}
		});
		
		self.empty()
			.addClass(opts['class'])
			.attr('name', opts.name||'')
			.append(
				$('<table />').attr('cellspacing', 0).append(
					$('<tr />')
						.append($('<td />').append(width).append(' px'))
						.append($('<td />').append(style))
						.append($('<td />').append(color))
				)
			);
		
		function rgb2hex(str) {
		    function hex(x)  {
		    	hexDigits = ["0", "1", "2", "3", "4", "5", "6", "7", "8","9", "a", "b", "c", "d", "e", "f"];
		        return !x  ? "00" : hexDigits[(x - x % 16) / 16] + hexDigits[x% 16];
		    }
			var rgb = (str||'').match(/\(([0-9]{1,3}),\s*([0-9]{1,3}),\s*([0-9]{1,3})\)/); 
			return rgb ? "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]) : '';
		}
		
		function toPixels(num) {
			if (!num) {
				return num;
			}
			var m = num.match(/([0-9]+\.?[0-9]*)\s*(px|pt|em|%)/);
			if (m) {
				num  = m[1];
				unit = m[2];
			} 
			if (num[0] == '.') {
				num = '0'+num;
			}
			num = parseFloat(num);

			if (isNaN(num)) {
				return '';
			}
			var base = parseInt($(document.body).css('font-size')) || 16;
			switch (unit) {
				case 'em': return parseInt(num*base);
				case 'pt': return parseInt(num*base/12);
				case '%' : return parseInt(num*base/100);
			}
			return num;
		}
		
		this.change = function() {
			opts.change && opts.change(this.val());
		}
		
		this.val = function(v) {
			var w, s, c, b, m;
			
			if (!v && v !== '') {
				w = parseInt(width.val());
				w = !isNaN(w) ? w+'px' : '';
				s = style.val();
				c = color.val();
				return {
					width : w,
					style : s,
					color : c,
					css   : $.trim(w+' '+s+' '+c)
				}
			} else {
				b = '';
				if (v.nodeName || v.css) {
					if (!v.css) {
						v = $(v);					
					}
					b = v.css('border');
					if ((b = v.css('border'))) {
						w = s = c = b;
					} else {
						w = v.css('border-width');
						s = v.css('border-style');
						c = v.css('border-color');
					}

				} else {
					w = v.width||'';
					s = v.style||'';
					c = v.color||'';
				}

				width.val(toPixels(w));
				m = s ? s.match(/(solid|dashed|dotted|double|groove|ridge|inset|outset)/i) :'';
				style.val(m ? m[1] : '');
				color.val(c.indexOf('#') === 0 ? c : rgb2hex(c));
				return this;
			}
		}
		
		this.val(opts.value);
		return this;
	}
	
	$.fn.elBorderSelect.defaults = {
		name      : 'el-borderselect',
		'class'   : 'el-borderselect',
		value     : {},
		change    : null
	}
	
})(jQuery);
/**
 * jQuery plugin. Create group of text input fields and selects for setting padding/margin. Used in elRTE
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 **/
(function($) {
	
	$.fn.elPaddingInput = function(o) {
		var self = this;
		var opts = $.extend({}, $.fn.elPaddingInput.defaults, {name : this.attr('name')}, o);
		this.regexps = {
			main   : new RegExp(opts.type == 'padding' ? 'padding\s*:\s*([^;"]+)'        : 'margin\s*:\s*([^;"]+)',       'im'),
			left   : new RegExp(opts.type == 'padding' ? 'padding-left\s*:\s*([^;"]+)'   : 'margin-left\s*:\s*([^;"]+)',  'im'),
			top    : new RegExp(opts.type == 'padding' ? 'padding-top\s*:\s*([^;"]+)'    : 'margin-top\s*:\s*([^;"]+)',    'im'),
			right  : new RegExp(opts.type == 'padding' ? 'padding-right\s*:\s*([^;"]+)'  : 'margin-right\s*:\s*([^;"]+)',  'im'),
			bottom : new RegExp(opts.type == 'padding' ? 'padding-bottom\s*:\s*([^;"]+)' : 'margin-bottom\s*:\s*([^;"]+)', 'im')
		};
			
		$.each(['left', 'top', 'right', 'bottom'], function() {
			
			self[this] = $('<input type="text" />')
				.attr('size', 3)
				.css('text-align', 'right')
				.css('border-'+this, '2px solid red')
				.bind('change', function() { $(this).val(parseNum($(this).val())); change(); })
				.attr('name', opts.name+'['+this+']');
		});
		$.each(['uleft', 'utop', 'uright', 'ubottom'], function() {
			self[this] = $('<select />')
				.append('<option value="px">px</option>')
				.append('<option value="em">em</option>')
				.append('<option value="pt">pt</option>')
				.bind('change', function() { change(); })
				.attr('name', opts.name+'['+this+']');
			if (opts.percents) {
				self[this].append('<option value="%">%</option>');
			}
		});
		
		this.empty().addClass(opts['class'])
			.append(this.left).append(this.uleft).append(' x ')
			.append(this.top).append(this.utop).append(' x ')
			.append(this.right).append(this.uright).append(' x ')
			.append(this.bottom).append(this.ubottom);
			
		this.val = function(v) {
			if (!v && v!=='') {
				var l = parseNum(this.left.val());
				var t = parseNum(this.top.val());
				var r = parseNum(this.right.val());
				var b = parseNum(this.bottom.val());
				var ret = {
					left   : l=='auto' || l==0 ? l : (l!=='' ? l+this.uleft.val()   : ''), 
					top    : t=='auto' || t==0 ? t : (t!=='' ? t+this.utop.val()    : ''),
					right  : r=='auto' || r==0 ? r : (r!=='' ? r+this.uright.val()  : ''),
					bottom : b=='auto' || b==0 ? b : (b!=='' ? b+this.ubottom.val() : ''),
					css    : ''
				};
				if (ret.left!=='' && ret.right!=='' && ret.top!=='' && ret.bottom!=='') {
					if (ret.left == ret.right && ret.top == ret.bottom) {
						ret.css = ret.top+' '+ret.left;
					} else{
						ret.css = ret.top+' '+ret.right+' '+ret.bottom+' '+ret.left;
					}
				}
				
				return ret;
			} else {
				
				if (v.nodeName || v.css) {
					if (!v.css) {
						v = $(v);
					}
					var val   = {left : '', top : '', right: '', bottom : ''};
					var style = (v.attr('style')||'').toLowerCase();

					if (style) {
						style   = $.trim(style);
						var m = style.match(this.regexps.main);
						if (m) {
							var tmp    = $.trim(m[1]).replace(/\s+/g, ' ').split(' ', 4);
							val.top    = tmp[0];
							val.right  = tmp[1] && tmp[1]!=='' ? tmp[1] : val.top;
							val.bottom = tmp[2] && tmp[2]!=='' ? tmp[2] : val.top;
							val.left   = tmp[3] && tmp[3]!=='' ? tmp[3] : val.right;
						} else {
							$.each(['left', 'top', 'right', 'bottom'], function() {
								var name = this.toString();
								m = style.match(self.regexps[name]);
								if (m) {
									val[name] = m[1];
								}
							});
						}
					}
					var v = val;
				} 

				$.each(['left', 'top', 'right', 'bottom'], function() {
					var name = this.toString();
					self[name].val('');
					self['u'+name].val();
					if (typeof(v[name]) != 'undefined' && v[name] !== null) {
						v[name] = v[name].toString();
						var _v = parseNum(v[name]);
						self[name].val(_v);
						var m = v[name].match(/(px|em|pt|%)/i);
						self['u'+name].val(m ? m[1] : 'px');
					}
				});
				return this;
			}
		}
			
		function parseNum(num) {
			num = $.trim(num.toString());
			if (num[0] == '.') { 
				num = '0'+num;
			}
			n = parseFloat(num);
			return !isNaN(n) ? n : (num == 'auto' ? num : '');
		}
			
		function change() {
			opts.change && opts.change(self);
		}
		
		this.val(opts.value);
		
		return this;
	}
	
	$.fn.elPaddingInput.defaults = {
		name     : 'el-paddinginput',
		'class'  : 'el-paddinginput',
		type     : 'padding',
		value    : {},
		percents : true,
		change   : null
	}
	
})(jQuery);
/**
 * elSelect JQuery plugin
 * Replacement for select input
 * Allow to put any html and css decoration in drop-down list
 *
 * Usage:
 *   $(selector).elSelect(opts)
 *
 * set value after init:
 *   var c = $(selector).elSelect(opts)
 *   c.val('some value')
 *
 * Get selected value:
 *   var val = c.val();
 *
 * Notice!
 *   1. When called on multiply elements, elSelect create drop-down list only for fist element
 *   2. Elements list created only after first click on element (lazzy loading)
 *
 * Options:
 *   src       - object with pairs value:label to create drop-down list 
 *   value     - current (selected) value
 *   class     - css class for display "button" (element on wich plugin was called)
 *   listClass - css class for drop down elements list
 *   select    - callback, called when value was selected (by default write value to console.log)
 *   name      - hidden text field in wich selected value will saved
 *   maxHeight - elements list max height (if height greater - scroll will appear)
 *   tpl       - template for element in list (contains 2 vars: %var - for src key, %label - for src[val] )
 *   labelTpl  - template for label (current selected element) (contains 2 placeholders: %var - for src key, %label - for src[val] )
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 **/
(function($) {
	
	$.fn.elSelect = function(o) {
		var $self    = this;
		var self     = this.eq(0);
		var opts     = $.extend({}, $.fn.elSelect.defaults, o);
		var hidden   = $('<input type="hidden" />').attr('name', opts.name);
		var label    = $('<label />').attr({unselectable : 'on'}).addClass('rounded-left-3');
		var list     = null;
		var ieWidth  = null;

		if (self.get(0).nodeName == 'SELECT') {
			opts.src = {};
			self.children('option').each(function() {
				opts.src[$(this).val()] = $(this).text();
			});
			opts.value = self.val();
			opts.name  = self.attr('name');
			self.replaceWith((self = $('<div />')));
		}
		
		if (!opts.value || !opts.src[opts.val]) {
			opts.value = null;
			var i = 0;
			for (var v in opts.src) {
				if (i++ == 0) {
					opts.value = v;
				}
			}
		}

		this.val = function(v) {
			if (!v && v!=='') {
				return hidden.val();
			} else {
				if (opts.src[v]) {
					hidden.val(v);
					updateLabel(v);
					if (list) {
						list.children().each(function() {
							if ($(this).attr('name') == v) {
								$(this).addClass('active');
							} else {
								$(this).removeClass('active');
							}
						});
					}
				}
				return this;
			}
		}
	
		// update label content
		function updateLabel(v) {
			var tpl = opts.labelTpl || opts.tpls[v] || opts.tpl;
			label.html(tpl.replace(/%val/g, v).replace(/%label/, opts.src[v])).children().attr({unselectable : 'on'});
		}
		
		// init "select"
		self.empty()
			.addClass(opts['class']+' rounded-3')
			.attr({unselectable : 'on'})
			.append(hidden)
			.append(label)
			.hover(
				function() { $(this).addClass('hover') },
				function() { $(this).removeClass('hover') }
			)
			.click(function(e) {
				!list && init();
				list.slideToggle();
				// stupid ie inherit width from parent
				if ($.browser.msie && !ieWidth) { 
					list.children().each(function() {
						ieWidth = Math.max(ieWidth, $(this).width());
					});
					if (ieWidth > list.width()) {
						list.width(ieWidth+40);
					}
				}
			});
			
		this.val(opts.value);
	
		// create drop-down list
		function init() {
			// not ul because of ie is stupid with mouseleave in it :(
			list = $('<div />')
				.addClass(opts.listClass+' rounded-3')
				.hide()
				.appendTo(self.mouseleave(function(e) { list.slideUp(); }));

			for (var v in opts.src) {
				var tpl = opts.tpls[v] || opts.tpl; 
				$('<div />')
					.attr('name', v)
					.append( $(tpl.replace(/%val/g, v).replace(/%label/g, opts.src[v])).attr({unselectable : 'on'}) )
					.appendTo(list)
					.hover(
						function() { $(this).addClass('hover') },
						function() { $(this).removeClass('hover') }
					)
					.click(function(e) {
						e.stopPropagation();
						e.preventDefault();
						
						var v = $(this).attr('name');
						$self.val(v);
						opts.select(v);
						list.slideUp();
					});
			};
			
			var w = self.outerWidth();
			if (list.width() < w) {
				list.width(w);
			}
			
			var h = list.height();
			if (opts.maxHeight>0 && h>opts.maxHeight) {
				list.height(opts.maxHeight);
			}
			
			$self.val(hidden.val());
		}
		
		return this;
	}
	
	$.fn.elSelect.defaults = {
		name      : 'el-select',
		'class'   : 'el-select',
		listClass : 'list',
		labelTpl  : null,
		tpl       : '<%val>%label</%val>',
		tpls      : {},
		value     : null,
		src       : {},
		select    : function(v) {  window.console &&  window.console.log && window.console.log('selected: '+v); },
		maxHeight : 410
	}
	
})(jQuery);
/*
 * elRTE - WSWING editor for web
 *
 * Usage:
 * var opts = {
 *	.... // see elRTE.options.js
 * }
 * var editor = new elRTE($('#my-id').get(0), opts)
 * or
 * $('#my-id').elrte(opts)
 *
 * $('#my-id) may be textarea or any DOM Element with text
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 */
(function($) {

elRTE = function(target, opts) {
	if (!target || !target.nodeName) {
		return alert('elRTE: argument "target" is not DOM Element');
	}
	var self       = this, html;
	this.version   = '1.3';
	this.build     = '2011-06-23';
	this.options   = $.extend(true, {}, this.options, opts);
	this.browser   = $.browser;
	this.target    = $(target);
	
	this.lang      = (''+this.options.lang);
	this._i18n     = new eli18n({textdomain : 'rte', messages : { rte : this.i18Messages[this.lang] || {}} });
	this.rtl       = !!(/^(ar|fa|he)$/.test(this.lang) && this.i18Messages[this.lang]);
	
	if (this.rtl) {
		this.options.cssClass += ' el-rte-rtl';
	}
	this.toolbar   = $('<div class="toolbar"/>');
	this.iframe    = document.createElement('iframe');
	this.iframe.setAttribute('frameborder', 0); // fixes IE border

	// this.source    = $('<textarea />').hide();
	this.workzone  = $('<div class="workzone"/>').append(this.iframe).append(this.source);
	this.statusbar = $('<div class="statusbar"/>');
	this.tabsbar   = $('<div class="tabsbar"/>');
	this.editor    = $('<div class="'+this.options.cssClass+'" />').append(this.toolbar).append(this.workzone).append(this.statusbar).append(this.tabsbar);
	
	this.doc       = null;
	this.$doc      = null;
	this.window    = null;
	
	this.utils     = new this.utils(this);
	this.dom       = new this.dom(this);
	this.filter    = new this.filter(this)
	
	/**
	 * Sync iframes/textareas height with workzone height 
	 *
	 * @return void
	 */
	this.updateHeight = function() {
		self.workzone.add(self.iframe).add(self.source).height(self.workzone.height());
	}
	
	/**
	 * Turn editor resizable on/off if allowed
	 *
	 * @param  Boolean 
	 * @return void
	 **/
	this.resizable = function(r) {
		var self = this;
		if (this.options.resizable && $.fn.resizable) {
			if (r) {
				this.editor.resizable({handles : 'se', alsoResize : this.workzone, minWidth :300, minHeight : 200 }).bind('resize', self.updateHeight);
			} else {
				this.editor.resizable('destroy').unbind('resize', self.updateHeight);
			}
		}
	}
	
	/* attach editor to document */
	this.editor.insertAfter(target);
	/* init editor textarea */
	var content = '';
	if (target.nodeName == 'TEXTAREA') {
		this.source = this.target;
		this.source.insertAfter(this.iframe).hide();
		content = this.target.val();
	} else {
		this.source = $('<textarea />').insertAfter(this.iframe).hide();
		content = this.target.hide().html();
	}
	this.source.attr('name', this.target.attr('name')||this.target.attr('id'));
	content = $.trim(content);
	if (!content) {
		content = ' ';
	}

	/* add tabs */
	if (this.options.allowSource) {
		this.tabsbar.append('<div class="tab editor rounded-bottom-7 active">'+self.i18n('Editor')+'</div><div class="tab source rounded-bottom-7">'+self.i18n('Source')+'</div><div class="clearfix" style="clear:both"/>')
			.children('.tab').click(function(e) {
				if (!$(this).hasClass('active')) {
					self.tabsbar.children('.tab').toggleClass('active');
					self.workzone.children().toggle();

					if ($(this).hasClass('editor')) {
						self.updateEditor();
						self.window.focus();
						self.ui.update(true);
					} else {
						self.updateSource();
						self.source.focus();
						if ($.browser.msie) {
							// @todo
						} else {
							self.source[0].setSelectionRange(0, 0);
						}
						self.ui.disable();
						self.statusbar.empty();
						
					}
				}
				
			});
	}
	
	this.window = this.iframe.contentWindow;
	this.doc    = this.iframe.contentWindow.document;
	this.$doc   = $(this.doc);
	
	/* put content into iframe */
	html = '<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
	$.each(self.options.cssfiles, function() {
		html += '<link rel="stylesheet" type="text/css" href="'+this+'" />';
	});
	this.doc.open();
	var s = this.filter.wysiwyg(content),
		cl = this.rtl ? ' class="el-rte-rtl"' : '';
	this.doc.write(self.options.doctype+html+'</head><body'+cl+'>'+(s)+'</body></html>');
	this.doc.close();
	
	/* make iframe editable */
	if ($.browser.msie) {
		this.doc.body.contentEditable = true;
	} else {
		try { this.doc.designMode = "on"; } 
		catch(e) { }
		this.doc.execCommand('styleWithCSS', false, this.options.styleWithCSS);
	}
	
	if (this.options.height>0) {
		this.workzone.height(this.options.height);
	}
	if (this.options.width>0) {
		this.editor.width(this.options.width);
	}
	
	this.updateHeight();
	this.resizable(true);
	this.window.focus();
	
	this.history = new this.history(this);
	
	/* init selection object */
	this.selection = new this.selection(this);
	/* init buttons */
	this.ui = new this.ui(this);
	
	
	/* bind updateSource to parent form submit */
	this.target.parents('form').bind('submit.elfinder', function(e) {
		self.source.parents('form').find('[name="el-select"]').remove()
		self.beforeSave();
	});
	
	// on tab press - insert \t and prevent move focus
	this.source.bind('keydown', function(e) {
		if (e.keyCode == 9) {
			e.preventDefault();
				
			if ($.browser.msie) {
				var r = document.selection.createRange();
				r.text = "\t"+r.text;
				this.focus();
			} else {
				var before = this.value.substr(0, this.selectionStart),
					after = this.value.substr(this.selectionEnd);
				this.value = before+"\t"+after;
				this.setSelectionRange(before.length+1, before.length+1);
			}
		}
	});
	
	$(this.doc.body).bind('dragend', function(e) {
		setTimeout(function() {
			try {
				self.window.focus();
				var bm = self.selection.getBookmark();
				self.selection.moveToBookmark(bm);
				self.ui.update();
			} catch(e) { }
			
			
		}, 200);
		
	});
	
	this.typing = false;
	this.lastKey = null;
	/* update buttons on click and keyup */
	this.$doc.bind('mouseup', function() {
		self.typing = false;
		self.lastKey = null;
		self.ui.update();
	})
	.bind('keyup', function(e) {
		if ((e.keyCode >= 8 && e.keyCode <= 13) || (e.keyCode>=32 && e.keyCode<= 40) || e.keyCode == 46 || (e.keyCode >=96 && e.keyCode <= 111)) {
			self.ui.update();
		}
	})
	.bind('keydown', function(e) {
		if ((e.metaKey || e.ctrlKey) && e.keyCode == 65) {
			self.ui.update();
		} else if (e.keyCode == 13) {
			var n = self.selection.getNode();
			// self.log(n)
			if (self.dom.selfOrParent(n, /^PRE$/)) {
				self.selection.insertNode(self.doc.createTextNode("\r\n"));
				return false;
			} else if ($.browser.safari && e.shiftKey) {
				self.selection.insertNode(self.doc.createElement('br'))
				return false;
			}
		}

		if ((e.keyCode>=48 && e.keyCode <=57) || e.keyCode==61 || e.keyCode == 109 || (e.keyCode>=65 && e.keyCode<=90) || e.keyCode==188 ||e.keyCode==190 || e.keyCode==191 || (e.keyCode>=219 && e.keyCode<=222)) {
			if (!self.typing) {
				self.history.add(true);
			}
			self.typing = true;
			self.lastKey = null;
		} else if (e.keyCode == 8 || e.keyCode == 46 || e.keyCode == 32 || e.keyCode == 13) {
			if (e.keyCode != self.lastKey) {
				self.history.add(true);
			}
			self.lastKey = e.keyCode;
			self.typing = false;
		}
		
		if (e.keyCode == 32 && $.browser.opera) {
			self.selection.insertNode(self.doc.createTextNode(" "));
			return false
		}
	})
	.bind('paste', function(e) {
		if (!self.options.allowPaste) {
			// paste denied 
			e.stopPropagation();
			e.preventDefault();
		} else {
			var n = $(self.dom.create('div'))[0],
				r = self.doc.createTextNode('_');
			self.history.add(true);
			self.typing = true;
			self.lastKey = null;
			n.appendChild(r);
			self.selection.deleteContents().insertNode(n);
			self.selection.select(r);
			setTimeout(function() {
				if (n.parentNode) {
					// clean sandbox content
					$(n).html(self.filter.proccess('paste', $(n).html()));
					r = n.lastChild;
					self.dom.unwrap(n);
					if (r) {
						self.selection.select(r);
						self.selection.collapse(false);
					}
				} else {
					// smth wrong - clean all doc
					n.parentNode && n.parentNode.removeChild(n);
					self.val(self.filter.proccess('paste', self.filter.wysiwyg2wysiwyg($(self.doc.body).html())));
					self.selection.select(self.doc.body.firstChild);
					self.selection.collapse(true);
				}
				$(self.doc.body).mouseup(); // to activate history buutons
			}, 15);
		}
	});
	
	if ($.browser.msie) {
		this.$doc.bind('keyup', function(e) {
			if (e.keyCode == 86 && (e.metaKey||e.ctrlKey)) {
				self.history.add(true);
				self.typing = true;
				self.lastKey = null;
				self.selection.saveIERange();
				self.val(self.filter.proccess('paste', self.filter.wysiwyg2wysiwyg($(self.doc.body).html())));
				self.selection.restoreIERange();
				$(self.doc.body).mouseup();
				this.ui.update();
			}
		});
	}
	
	if ($.browser.safari) {
		this.$doc.bind('click', function(e) {
			$(self.doc.body).find('.elrte-webkit-hl').removeClass('elrte-webkit-hl');
			if (e.target.nodeName == 'IMG') {
				$(e.target).addClass('elrte-webkit-hl');
			}
		}).bind('keyup', function(e) {
			$(self.doc.body).find('.elrte-webkit-hl').removeClass('elrte-webkit-hl');
		})
	}
	
	this.window.focus();
	
	this.destroy = function() {
		this.updateSource();
		this.target.is('textarea')
			? this.target.val($.trim(this.source.val()))
			: this.target.html($.trim(this.source.val()));
		this.editor.remove();
		this.target.show().parents('form').unbind('submit.elfinder');
	}
	
}

/**
 * Return message translated to selected language
 *
 * @param  string  msg  message text in english
 * @return string
 **/
elRTE.prototype.i18n = function(msg) {
	return this._i18n.translate(msg);
}



/**
 * Display editor
 *
 * @return void
 **/
elRTE.prototype.open = function() {
	this.editor.show();
}

/**
 * Hide editor and display elements on wich editor was created
 *
 * @return void
 **/
elRTE.prototype.close = function() {
	this.editor.hide();
}

elRTE.prototype.updateEditor = function() {
	this.val(this.source.val());
}

elRTE.prototype.updateSource = function() {
	this.source.val(this.filter.source($(this.doc.body).html()));
}

/**
 * Return edited text
 *
 * @return String
 **/
elRTE.prototype.val = function(v) {
	if (typeof(v) == 'string') {
		v = ''+v;
		if (this.source.is(':visible')) {
			this.source.val(this.filter.source2source(v));
		} else {
			if ($.browser.msie) {
				this.doc.body.innerHTML = '<br />'+this.filter.wysiwyg(v);
				this.doc.body.removeChild(this.doc.body.firstChild);
			} else {
				this.doc.body.innerHTML = this.filter.wysiwyg(v);
			}
			
		}
	} else {
		if (this.source.is(':visible')) {
			return this.filter.source2source(this.source.val()).trim();
		} else {
			return this.filter.source($(this.doc.body).html()).trim();
		}
	}
}

elRTE.prototype.beforeSave = function() {
	this.source.val($.trim(this.val())||'');
}

/**
 * Submit form
 *
 * @return void
 **/
elRTE.prototype.save = function() {
	this.beforeSave();
	this.editor.parents('form').submit();
}

elRTE.prototype.log = function(msg) {
	if (window.console && window.console.log) {
		window.console.log(msg);
	}
        
}

elRTE.prototype.i18Messages = {};

$.fn.elrte = function(o, v) { 
	var cmd = typeof(o) == 'string' ? o : '', ret;
	
	this.each(function() {
		if (!this.elrte) {
			this.elrte = new elRTE(this, typeof(o) == 'object' ? o : {});
		}
		switch (cmd) {
			case 'open':
			case 'show':
				this.elrte.open();
				break;
			case 'close':
			case 'hide':
				this.elrte.close();
				break;
			case 'updateSource':
				this.elrte.updateSource();
				break;
			case 'destroy':
				this.elrte.destroy();
		}
	});
	
	if (cmd == 'val') {
		if (!this.length) {
			return '';
		} else if (this.length == 1) {
			return v ? this[0].elrte.val(v) : this[0].elrte.val();
		} else {
			ret = {}
			this.each(function() {
				ret[this.elrte.source.attr('name')] = this.elrte.val();
			});
			return ret;
		}
	}
	return this;
}

})(jQuery);
/*
 * DOM utilites for elRTE 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 */
(function($) {
elRTE.prototype.dom = function(rte) {
	this.rte = rte;
	var self = this;
	this.regExp = {
		textNodes         : /^(A|ABBR|ACRONYM|ADDRESS|B|BDO|BIG|BLOCKQUOTE|CAPTION|CENTER|CITE|CODE|DD|DEL|DFN|DIV|DT|EM|FIELDSET|FONT|H[1-6]|I|INS|KBD|LABEL|LEGEND|LI|MARQUEE|NOBR|NOEMBED|P|PRE|Q|SAMP|SMALL|SPAN|STRIKE|STRONG|SUB|SUP|TD|TH|TT|VAR)$/,
		textContainsNodes : /^(A|ABBR|ACRONYM|ADDRESS|B|BDO|BIG|BLOCKQUOTE|CAPTION|CENTER|CITE|CODE|DD|DEL|DFN|DIV|DL|DT|EM|FIELDSET|FONT|H[1-6]|I|INS|KBD|LABEL|LEGEND|LI|MARQUEE|NOBR|NOEMBED|OL|P|PRE|Q|SAMP|SMALL|SPAN|STRIKE|STRONG|SUB|SUP|TABLE|THEAD|TBODY|TFOOT|TD|TH|TR|TT|UL|VAR)$/,
		block             : /^(APPLET|BLOCKQUOTE|BR|CAPTION|CENTER|COL|COLGROUP|DD|DIV|DL|DT|H[1-6]|EMBED|FIELDSET|LI|MARQUEE|NOBR|OBJECT|OL|P|PRE|TABLE|THEAD|TBODY|TFOOT|TD|TH|TR|UL)$/,
		selectionBlock    : /^(APPLET|BLOCKQUOTE|BR|CAPTION|CENTER|COL|COLGROUP|DD|DIV|DL|DT|H[1-6]|EMBED|FIELDSET|LI|MARQUEE|NOBR|OBJECT|OL|P|PRE|TD|TH|TR|UL)$/,		
		header            : /^H[1-6]$/,
		formElement       : /^(FORM|INPUT|HIDDEN|TEXTAREA|SELECT|BUTTON)$/
	};
	
	/********************************************************/
	/*                      Утилиты                         */
	/********************************************************/	
	
	/**
	 * Возвращает body редактируемого документа
	 *
	 * @return Element
	 **/
	this.root = function() {
		return this.rte.body;
	}

	this.create = function(t) {
		return this.rte.doc.createElement(t);
	}

	/**
	 * Return node for bookmark with unique ID
	 *
	 * @return DOMElement
	 **/
	this.createBookmark = function() {
		var b = this.rte.doc.createElement('span');
		b.id = 'elrte-bm-'+Math.random().toString().substr(2);
		$(b).addClass('elrtebm elrte-protected');
		return b;
	}

	/**
	 * Вовращает индекс элемента внутри родителя
	 *
	 * @param  Element n  нода
	 * @return integer
	 **/
	this.indexOf = function(n) {
		var ndx = 0;
		n = $(n);
		while ((n = n.prev()) && n.length) {
			ndx++;
		}
		return ndx;
	}
	
	/**
	 * Вовращает значение аттрибута в нижнем регистре (ох уж этот IE)
	 *
	 * @param  Element n  нода
	 * @param  String  attr имя аттрибута
	 * @return string
	 **/
	this.attr = function(n, attr) {
		var v = '';
		if (n.nodeType == 1) {
			v = $(n).attr(attr);
			if (v && attr != 'src' && attr != 'href' && attr != 'title' && attr != 'alt') {
				v = v.toString().toLowerCase();
			}
		} 
		return v||'';
	}
	
	/**
	 * Вовращает ближайший общий контейнер для 2-х эл-тов
	 *
	 * @param  Element n  нода1
	 * @param  Element n  нода2
	 * @return Element
	 **/
	this.findCommonAncestor = function(n1, n2) {
		if (!n1 || !n2) {
			return this.rte.log('dom.findCommonAncestor invalid arguments');
		}
		if (n1 == n2) {
			return n1;
		} else if (n1.nodeName == 'BODY' || n2.nodeName == 'BODY') {
			return this.rte.doc.body;
		}
		var p1 = $(n1).parents(), p2 = $(n2).parents(), l  = p2.length-1, c  = p2[l];
		for (var i = p1.length - 1; i >= 0; i--, l--){
			if (p1[i] == p2[l]) {
				c = p1[i];
			} else {
				break;
			}
		};
		return c;
	}
	/**
	 * Вовращает TRUE, если нода пустая
	 * пустой считаем ноды:
	 *  - текстовые эл-ты, содержащие пустую строку или тег br
	 *  - текстовые ноды с пустой строкой
	 *
	 * @param  DOMElement n  нода
	 * @return bool
	 **/
	this.isEmpty = function(n) {
		if (n.nodeType == 1) {
			return this.regExp.textNodes.test(n.nodeName) ? $.trim($(n).text()).length == 0 : false;
		} else if (n.nodeType == 3) {
			return /^(TABLE|THEAD|TFOOT|TBODY|TR|UL|OL|DL)$/.test(n.parentNode.nodeName)
				|| n.nodeValue == ''
				|| ($.trim(n.nodeValue).length== 0 && !(n.nextSibling && n.previousSibling && n.nextSibling.nodeType==1 && n.previousSibling.nodeType==1 && !this.regExp.block.test(n.nextSibling.nodeName) && !this.regExp.block.test(n.previousSibling.nodeName) ));
		}
		return true;
	}

	/********************************************************/
	/*                  Перемещение по DOM                  */
	/********************************************************/

	/**
	 * Вовращает следующую соседнюю ноду (не включаются текстовые ноды не создающие значимые пробелы между инлайн элементами)
	 *
	 * @param  DOMElement n  нода
	 * @return DOMElement
	 **/
	this.next = function(n) {
		while (n.nextSibling && (n = n.nextSibling)) {
			if (n.nodeType == 1 || (n.nodeType == 3 && !this.isEmpty(n))) {
				return n;
			}
		}
		return null;
	}

	/**
	 * Вовращает предыдующую соседнюю ноду (не включаются текстовые ноды не создающие значимые пробелы между инлайн элементами)
	 *
	 * @param  DOMElement n  нода
	 * @return DOMElement
	 **/
	this.prev = function(n) {
		while (n.previousSibling && (n = n.previousSibling)) {
			if (n.nodeType == 1 || (n.nodeType ==3 && !this.isEmpty(n))) {
				return n;
			}
		}
		return null;
	}

	this.isPrev = function(n, prev) {
		while ((n = this.prev(n))) {
			if (n == prev) {
				return true;
			}
		}
		return false;
	}

	/**
	 * Вовращает все следующие соседнии ноды (не включаются текстовые ноды не создающие значимые пробелы между инлайн элементами)
	 *
	 * @param  DOMElement n  нода
	 * @return Array
	 **/
	this.nextAll = function(n) {
		var ret = [];
		while ((n = this.next(n))) {
			ret.push(n);
		}
		return ret;
	}
	
	/**
	 * Вовращает все предыдующие соседнии ноды (не включаются текстовые ноды не создающие значимые пробелы между инлайн элементами)
	 *
	 * @param  DOMElement n  нода
	 * @return Array
	 **/
	this.prevAll = function(n) {
		var ret = [];
		while ((n = this.prev(n))) {
			ret.push(n);
		}
		return ret;
	}
	
	/**
	 * Вовращает все следующие соседнии inline ноды (не включаются текстовые ноды не создающие значимые пробелы между инлайн элементами)
	 *
	 * @param  DOMElement n  нода
	 * @return Array
	 **/
	this.toLineEnd = function(n) {
		var ret = [];
		while ((n = this.next(n)) && n.nodeName != 'BR' && n.nodeName != 'HR' && this.isInline(n)) {
			ret.push(n);
		}
		return ret;
	}
	
	/**
	 * Вовращает все предыдующие соседнии inline ноды (не включаются текстовые ноды не создающие значимые пробелы между инлайн элементами)
	 *
	 * @param  DOMElement n  нода
	 * @return Array
	 **/
	this.toLineStart = function(n) {
		var ret = [];
		while ((n = this.prev(n)) && n.nodeName != 'BR' && n.nodeName != 'HR' && this.isInline(n) ) {
			ret.unshift(n);
		}
		return ret;
	}
	
	/**
	 * Вовращает TRUE, если нода - первый непустой эл-т внутри родителя
	 *
	 * @param  Element n  нода
	 * @return bool
	 **/
	this.isFirstNotEmpty = function(n) {
		while ((n = this.prev(n))) {
			if (n.nodeType == 1 || (n.nodeType == 3 && $.trim(n.nodeValue)!='' ) ) {
				return false;
			}
		}
		return true;
	}
	
	/**
	 * Вовращает TRUE, если нода - последний непустой эл-т внутри родителя
	 *
	 * @param  Element n  нода
	 * @return bool
	 **/
	this.isLastNotEmpty = function(n) {
		while ((n = this.next(n))) {
			if (!this.isEmpty(n)) {
				return false;
			}
		}
		return true;
	}
	
	/**
	 * Вовращает TRUE, если нода - единственный непустой эл-т внутри родителя
	 *
	 * @param  DOMElement n  нода
	 * @return bool
	 **/
	this.isOnlyNotEmpty = function(n) {
		return this.isFirstNotEmpty(n) && this.isLastNotEmpty(n);
	}
	
	/**
	 * Вовращает последний непустой дочерний эл-т ноды или FALSE
	 *
	 * @param  Element n  нода
	 * @return Element
	 **/
	this.findLastNotEmpty = function(n) {
		this.rte.log('findLastNotEmpty Who is here 0_o');
		if (n.nodeType == 1 && (l = n.lastChild)) {
			if (!this.isEmpty(l)) {
				return l;
			}
			while (l.previousSibling && (l = l.previousSibling)) {
				if (!this.isEmpty(l)) {
					return l;
				}
			}
		}
		return false;
	}
	
	/**
	 * Возвращает TRUE, если нода "inline" 
	 *
	 * @param  DOMElement n  нода
	 * @return bool
	 **/
	this.isInline = function(n) {
		if (n.nodeType == 3) {
			return true;
		} else if (n.nodeType == 1) {
			n = $(n);
			var d = n.css('display');
			var f = n.css('float');
			return d == 'inline' || d == 'inline-block' || f == 'left' || f == 'right';
		}
		return true;
	}
	
	
	/********************************************************/
	/*                  Поиск элементов                     */
	/********************************************************/
	
	this.is = function(n, f) {
		if (n && n.nodeName) {

			if (typeof(f) == 'string') {
				f = this.regExp[f]||/.?/;
			}

			if (f instanceof RegExp && n.nodeName) {
				return f.test(n.nodeName);
			} else if (typeof(f) == 'function') {
				return f(n);
			}
		}
		
		return false;
	}
	
	/**
	 * Вовращает элемент(ы) отвечающие условиям поиска
	 *
	 * @param  DOMElement||Array  n       нода
	 * @param  RegExp||String     filter  фильтр условия поиска (RegExp или имя ключа this.regExp или *)
	 * @return DOMElement||Array
	 **/
	this.filter = function(n, filter) {
		var ret = [], i;
		if (!n.push) {
			return this.is(n, filter) ? n : null;
		}
		for (i=0; i < n.length; i++) {
			if (this.is(n[i], filter)) {
				ret.push(n[i]);
			}
		};
		return ret;
	}
	
	
	/**
	 * Вовращает массив родительских элементов, отвечающих условиям поиска
	 *
	 * @param  DOMElement      n  нода, родителей, которой ищем
	 * @param  RegExp||String  filter   фильтр условия поиска (RegExp или имя ключа this.regExp или *)
	 * @return Array
	 **/
	this.parents = function(n, filter) {
		var ret = [];

		while (n && (n = n.parentNode) && n.nodeName != 'BODY' && n.nodeName != 'HTML') {
			if (this.is(n, filter)) {
				ret.push(n);
			}
		}
		return ret;
	}
	
	/**
	 * Вовращает ближайший родительский эл-т, отвечающий условиям поиска
	 *
	 * @param  DOMElement     n  нода, родителя, которой ищем
	 * @param  RegExp||String f   фильтр условия поиска (RegExp или имя ключа this.regExp или *)
	 * @return DOMElement
	 **/
	this.parent = function(n, f) { 
		return this.parents(n, f)[0] || null; 
	}
	
	/**
	 * Вовращает или саму ноду или ее ближайшего родителя, если выполняются условия sf для самой ноды или pf для родителя
	 *
	 * @param  DOMElement     n  нода, родителя, которой ищем
	 * @param  RegExp||String sf   фильтр условия для самой ноды
	* @param  RegExp||String  pf   фильтр условия для родителя
	 * @return DOMElement
	 **/
	this.selfOrParent = function(n, sf, pf) {
		return this.is(n, sf) ? n : this.parent(n, pf||sf);
	}
	
	/**
	 * Вовращает родительскую ноду - ссылку
	 *
	 * @param  Element n  нода
	 * @return Element
	 **/
	this.selfOrParentLink = function(n) {
		n = this.selfOrParent(n, /^A$/);
		return n && n.href ? n : null;
	}

	/**
	 * Вовращает TRUE, если нода -  anchor
	 *
	 * @param  Element n  нода
	 * @return bool
	 **/
	this.selfOrParentAnchor = function(n) {
		n = this.selfOrParent(n, /^A$/);
		return n && !n.href && n.name ? n : null;
	}

	/**
	 * Вовращает массив дочерних ссылок
	 *
	 * @param  DOMElement n  нода
	 * @return Array
	 **/
	this.childLinks = function(n) {
		var res = [];
		$('a[href]', n).each(function() { res.push(this); });
		return res;
	}
	
	this.selectionHas = function(f) {
		var n = this.rte.selection.cloneContents(), i;
		if (n && n.childNodes && n.childNodes.length) {
			for (i=0; i < n.childNodes.length; i++) {
				if (typeof(f) == 'function') {
					if (f(n.childNodes[i])) {
						return true;
					}
				} else if (n instanceof RegExp) {
					if (f.test(n.childNodes[i].nodeName)) {
						return true;
					}
				}
			};
		}
		
		return false;
	}
	/********************************************************/
	/*                    Изменения DOM                     */
	/********************************************************/
	
	/**
	 * Оборачивает одну ноду другой
	 *
	 * @param  DOMElement n  оборачиваемая нода
	 * @param  DOMElement w  нода обертка или имя тега
	 * @return DOMElement
	 **/
	this.wrap = function(n, w) {
		n = $.isArray(n) ? n : [n];
		w = w.nodeName ? w : this.create(w);
		
		if (n[0] && n[0].nodeType && n[0].parentNode) {
			w = n[0].parentNode.insertBefore(w, n[0]);
			$(n).each(function() {
				if (this!=w) {
					w.appendChild(this);
				}
			});
		}
		
		return w;
	}
	
	/**
	 * Replace node with its contents
	 *
	 * @param  DOMElement n node
	 * @return void
	 **/
	this.unwrap = function(n) {
		if (n && n.parentNode) {
			while (n.firstChild) {
				n.parentNode.insertBefore(n.firstChild, n);
			}
			n.parentNode.removeChild(n);
			
		}
	}
	
	/**
	 * Оборачивает все содержимое ноды
	 *
	 * @param  DOMElement n  оборачиваемая нода
	 * @param  DOMElement w  нода обертка или имя тега
	 * @return DOMElement
	 **/
	this.wrapContents = function(n, w) {
		w = w.nodeName ? w : this.create(w);
		for (var i=0; i < n.childNodes.length; i++) {
			w.appendChild(n.childNodes[i]);
		};
		n.appendChild(w);
		return w;
	}
	
	this.cleanNode = function(n) {

		if (n.nodeType != 1) {
			return;
		}
		if (/^(P|LI)$/.test(n.nodeName) && (l = this.findLastNotEmpty(n)) && l.nodeName == 'BR') {
			$(l).remove();
		}
		$n = $(n);
		$n.children().each(function() {
			this.cleanNode(this);
		});
		if (n.nodeName != 'BODY' && !/^(TABLE|TR|TD)$/.test(n) && this.isEmpty(n)) {
			return $n.remove();
		}
		if ($n.attr('style') === '') {
			$n.removeAttr('style');
		}
		if (this.rte.browser.safari && $n.hasClass('Apple-span')) {
			$n.removeClass('Apple-span');
		}
		if (n.nodeName == 'SPAN' && !$n.attr('style') && !$n.attr('class') && !$n.attr('id')) {
			$n.replaceWith($n.html());
		}
	}
	
	this.cleanChildNodes = function(n) {
		var cmd = this.cleanNode;
		$(n).children().each(function() { cmd(this); });
	}
	
	/********************************************************/
	/*                       Таблицы                        */
	/********************************************************/
	
	this.tableMatrix = function(n) {
		var mx = [];
		if (n && n.nodeName == 'TABLE') {
			var max = 0;
			function _pos(r) {
				for (var i=0; i<=max; i++) {
					if (!mx[r][i]) {
						return i;
					}
				};
			}
			
			$(n).find('tr').each(function(r) {
				if (!$.isArray(mx[r])) {
					mx[r] = [];
				}
				
				$(this).children('td,th').each(function() {
					var w = parseInt($(this).attr('colspan')||1);
					var h = parseInt($(this).attr('rowspan')||1);
					var i = _pos(r);
					for (var y=0; y<h; y++) {
						for (var x=0; x<w; x++) {
							var _y = r+y;
							if (!$.isArray(mx[_y])) {
								mx[_y] = [];
							}
							var d = x==0 && y==0 ? this : (y==0 ? x : "-");
							mx[_y][i+x] = d;
						}
					};
					max= Math.max(max, mx[r].length);
				});
			});
		}
		return mx;
	}
	
	this.indexesOfCell = function(n, tbm) {
		for (var rnum=0; rnum < tbm.length; rnum++) {
			for (var cnum=0; cnum < tbm[rnum].length; cnum++) {
				if (tbm[rnum][cnum] == n) {
					return [rnum, cnum];
				}
				
			};
		};
	}
	
	this.fixTable = function(n) {
		if (n && n.nodeName == 'TABLE') {
			var tb = $(n);
			//tb.find('tr:empty').remove();
			var mx = this.tableMatrix(n);
			var x  = 0;
			$.each(mx, function() {
				x = Math.max(x, this.length);
			});
			if (x==0) {
				return tb.remove();
			}
			// for (var i=0; i<mx.length; i++) {
			// 	this.rte.log(mx[i]);
			// }
			
			for (var r=0; r<mx.length; r++) {
				var l = mx[r].length;
				//this.rte.log(r+' : '+l)
				
				if (l==0) {
					//this.rte.log('remove: '+tb.find('tr').eq(r))
					tb.find('tr').eq(r).remove();
//					tb.find('tr').eq(r).append('<td>remove</td>')
				} else if (l<x) {
					var cnt = x-l;
					var row = tb.find('tr').eq(r);
					for (i=0; i<cnt; i++) {
						row.append('<td>&nbsp;</td>');
					}
				}
			}
			
		}
	}
	
	this.tableColumn = function(n, ext, fix) {
		n      = this.selfOrParent(n, /^TD|TH$/);
		var tb = this.selfOrParent(n, /^TABLE$/);
		ret    = [];
		info   = {offset : [], delta : []};
		if (n && tb) {
			fix && this.fixTable(tb);
			var mx = this.tableMatrix(tb);
			var _s = false;
			var x;
			for (var r=0; r<mx.length; r++) {
				for (var _x=0; _x<mx[r].length; _x++) {
					if (mx[r][_x] == n) {
						x = _x;
						_s = true;
						break;
					}
				}
				if (_s) {
					break;
				}
			}
			
			// this.rte.log('matrix');
			// for (var i=0; i<mx.length; i++) {
			// 	this.rte.log(mx[i]);
			// }
			if (x>=0) {
				for(var r=0; r<mx.length; r++) {
					var tmp = mx[r][x]||null;
					if (tmp) {
						if (tmp.nodeName) {
							ret.push(tmp);
							if (ext) {
								info.delta.push(0);
								info.offset.push(x);
							}
						} else {
							var d = parseInt(tmp);
							if (!isNaN(d) && mx[r][x-d] && mx[r][x-d].nodeName) {
								ret.push(mx[r][x-d]);
								if (ext) {
									info.delta.push(d);
									info.offset.push(x);
								}
							}
						}
					}
				}
			}
		}
		return !ext ? ret : {column : ret, info : info};
	}
}

})(jQuery);
(function($) {
	/**
	 * @class Filter - clean editor content
	 * @param elRTE editor instance
	 * @author Dmitry (dio) Levashov, dio@std42.ru
	 */
	elRTE.prototype.filter = function(rte) {
		var self = this,
			n = $('<span/>').addClass('elrtetesturl').appendTo(document.body)[0];
		// media replacement image base url
		this.url = (typeof(n.currentStyle )!= "undefined" ? n.currentStyle['backgroundImage'] : document.defaultView.getComputedStyle(n, null)['backgroundImage']).replace(/^url\((['"]?)([\s\S]+\/)[\s\S]+\1\)$/i, "$2");
		$(n).remove();

		this.rte = rte;
		// flag - return xhtml tags?
		this.xhtml = /xhtml/i.test(rte.options.doctype);
		// boolean attributes
		this.boolAttrs = rte.utils.makeObject('checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected'.split(','));
		// tag regexp
		this.tagRegExp = /<(\/?)([\w:]+)((?:\s+[a-z\-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*\/?>/g;
		// this.tagRegExp = /<(\/?)([\w:]+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*\/?>/g;		
		// opened tag regexp
		this.openTagRegExp = /<([\w:]+)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*\/?>/g;
		// attributes regexp
		this.attrRegExp = /(\w+)(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^\s]+))?/g;
		// script tag regexp
		this.scriptRegExp = /<script([^>]*)>([\s\S]*?)<\/script>/gi;
		// style tag regexp
		this.styleRegExp = /(<style([^>]*)>[\s\S]*?<\/style>)/gi;
		// link tag regexp
		this.linkRegExp = /(<link([^>]+)>)/gi;
		// cdata regexp
		this.cdataRegExp = /<!\[CDATA\[([\s\S]+)\]\]>/g;
		// object tag regexp
		this.objRegExp = /<object([^>]*)>([\s\S]*?)<\/object>/gi;
		// embed tag regexp
		this.embRegExp = /<(embed)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*>/gi;
		// param tag regexp
		this.paramRegExp = /<(param)((?:\s+\w+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*>/gi;
		// iframe tag regexp
		this.iframeRegExp = /<iframe([^>]*)>([\s\S]*?)<\/iframe>/gi;

		// yandex maps regexp
		this.yMapsRegExp = /<div\s+([^>]*id\s*=\s*('|")?YMapsID[^>]*)>/gi;
		// google maps regexp
		this.gMapsRegExp = /<iframe\s+([^>]*src\s*=\s*"http:\/\/maps\.google\.\w+[^>]*)>([\s\S]*?)<\/iframe>/gi;
		// video hostings url regexp
		this.videoHostRegExp = /^(http:\/\/[\w\.]*)?(youtube|vimeo|rutube).*/i;
		// elrte services classes regexp
		this.serviceClassRegExp = /<(\w+)([^>]*class\s*=\s*"[^>]*elrte-[^>]*)>\s*(<\/\1>)?/gi;
		this.pagebreakRegExp = /<(\w+)([^>]*style\s*=\s*"[^>]*page-break[^>]*)>\s*(<\/\1>)?/gi;
		
		this.pbRegExp = new RegExp('<!-- pagebreak -->', 'gi');
		// allowed tags
		this.allowTags = rte.options.allowTags.length ? rte.utils.makeObject(rte.options.allowTags) : null;
		// denied tags
		this.denyTags = rte.options.denyTags.length ? rte.utils.makeObject(rte.options.denyTags) : null;
		// deny attributes
		this.denyAttr = rte.options.denyAttr ? rte.utils.makeObject(rte.options.denyAttr) : null;
		// deny attributes for pasted html
		this.pasteDenyAttr = rte.options.pasteDenyAttr ? rte.utils.makeObject(rte.options.pasteDenyAttr) : null;
		// font sizes to convert size attr into css property
		this.fontSize = ['medium', 'xx-small', 'small', 'medium','large','x-large','xx-large' ];
		// font families regexp to detect family by font name
		this.fontFamily = {
			'sans-serif' : /^(arial|tahoma|verdana)$/i,
			'serif'      : /^(times|times new roman)$/i,
			'monospace'  : /^courier$/i
		}
		// scripts storage
		this.scripts = {};
		// cached chains of rules
		this._chains = {};
		
		// cache chains
		$.each(this.chains, function(n) {
			self._chains[n] = [];
			$.each(this, function(i, r) {
				typeof(self.rules[r]) == 'function' && self._chains[n].push(self.rules[r]);
			});
		});

		/**
		 * filtering through required chain
		 *
		 * @param  String  chain name
		 * @param  String  html-code
		 * @return String
		 **/
		this.proccess = function(chain, html) {
			// remove whitespace at the begin and end
			html = $.trim(html).replace(/^\s*(&nbsp;)+/gi, '').replace(/(&nbsp;|<br[^>]*>)+\s*$/gi, '');
			// pass html through chain
			$.each(this._chains[chain]||[], function() {
				html = this.call(self, html);
			});
			html = html.replace(/\t/g, '  ').replace(/\r/g, '').replace(/\s*\n\s*\n+/g, "\n")+'  ';
			return $.trim(html) ? html : ' ';
		}
		
		/**
		 * wrapper for "wysiwyg" chain filtering
		 *
		 * @param  String  
		 * @return String
		 **/
		this.wysiwyg = function(html) {
			return this.proccess('wysiwyg', html);
		}
		
		/**
		 * wrapper for "source" chain filtering
		 *
		 * @param  String  
		 * @return String
		 **/
		this.source = function(html) {
			return this.proccess('source', html);
		}
		
		/**
		 * wrapper for "source2source" chain filtering
		 *
		 * @param  String  
		 * @return String
		 **/
		this.source2source = function(html) {
			return this.proccess('source2source', html);
		}
		
		/**
		 * wrapper for "wysiwyg2wysiwyg" chain filtering
		 *
		 * @param  String  
		 * @return String
		 **/
		this.wysiwyg2wysiwyg = function(html) {
			return this.proccess('wysiwyg2wysiwyg', html);
		}
		
		/**
		 * Parse attributes from string into object
		 *
		 * @param  String  string of attributes  
		 * @return Object
		 **/
		this.parseAttrs = function(s) {
			var a = {},
				b = this.boolAttrs,
				m = s.match(this.attrRegExp),
				t, n, v;
				// this.rte.log(s)
			// this.rte.log(m)
			m && $.each(m, function(i, s) {
				t = s.split('=');
				n = $.trim(t[0]).toLowerCase();

				if (t.length>2) {
					t.shift();
					v = t.join('=');
				} else {
					v = b[n] ||t[1]||'';
				}
				a[n] = $.trim(v).replace(/^('|")(.*)(\1)$/, "$2");
			});

			a.style = this.rte.utils.parseStyle(a.style);
			// rte.log(a.style)
			a['class'] = this.rte.utils.parseClass(a['class']||'')
			return a;
		}
		
		/**
		 * Restore attributes string from hash
		 *
		 * @param  Object  attributes hash
		 * @return String
		 **/
		this.serializeAttrs = function(a, c) {
			var s = [], self = this;

			$.each(a, function(n, v) {
				if (n=='style') {
					v = self.rte.utils.serializeStyle(v, c);
				} else if (n=='class') {
					// self.rte.log(v)
					// self.rte.log(self.rte.utils.serializeClass(v))
					v = self.rte.utils.serializeClass(v);
				} 
				v && s.push(n+'="'+v+'"');
			});
			return s.join(' ');
		}
		
		/**
		 * Remove/replace denied attributes/style properties
		 *
		 * @param  Object  attributes hash
		 * @param  String  tag name to wich attrs belongs 
		 * @return Object
		 **/
		this.cleanAttrs = function(a, t) {
			var self = this, ra = this.replaceAttrs;

			// remove safari and mso classes
			$.each(a['class'], function(n) {
				/^(Apple-style-span|mso\w+)$/i.test(n) && delete a['class'][n];
			});

			function value(v) {
				return v+(/\d$/.test(v) ? 'px' : '');
			}

			$.each(a, function(n, v) {
				// replace required attrs with css
				ra[n] && ra[n].call(self, a, t);
				// remove/fix mso styles
				if (n == 'style') {
					$.each(v, function(sn, sv) {
						switch (sn) {
							case "mso-padding-alt":
							case "mso-padding-top-alt":
							case "mso-padding-right-alt":
							case "mso-padding-bottom-alt":
							case "mso-padding-left-alt":
							case "mso-margin-alt":
							case "mso-margin-top-alt":
							case "mso-margin-right-alt":
							case "mso-margin-bottom-alt":
							case "mso-margin-left-alt":
							case "mso-table-layout-alt":
							case "mso-height":
							case "mso-width":
							case "mso-vertical-align-alt":
								a.style[sn.replace(/^mso-|-alt$/g, '')] = value(sv);
								delete a.style[sn];
								break;

							case "horiz-align":
								a.style['text-align'] = sv;
								delete a.style[sn];
								break;

							case "vert-align":
								a.style['vertical-align'] = sv;
								delete a.style[sn];
								break;

							case "font-color":
							case "mso-foreground":
								a.style.color = sv;
								delete a.style[sn];
							break;

							case "mso-background":
							case "mso-highlight":
								a.style.background = sv;
								delete a.style[sn];
								break;

							case "mso-default-height":
								a.style['min-height'] = value(sv);
								delete a.style[sn];
								break;

							case "mso-default-width":
								a.style['min-width'] = value(sv);
								delete a.style[sn];
								break;

							case "mso-padding-between-alt":
								a.style['border-collapse'] = 'separate';
								a.style['border-spacing'] = value(sv);
								delete a.style[sn];
								break;

							case "text-line-through":
								if (sv.match(/(single|double)/i)) {
									a.style['text-decoration'] = 'line-through';
								}
								delete a.style[sn];
								break;

							case "mso-zero-height":
								if (sv == 'yes') {
									a.style.display = 'none';
								}
								delete a.style[sn];
								break;

							case 'font-weight':
								if (sv == 700) {
									a.style['font-weight'] = 'bold';
								}
								break;

							default:
								if (sn.match(/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/)) {
									delete a.style[sn]
								}
						}
					});
				}
			});
			return a;
		}
		
	}

	// rules to replace tags
	elRTE.prototype.filter.prototype.replaceTags = {
		b         : { tag : 'strong' },
		big       : { tag : 'span', style : {'font-size' : 'large'} },
		center    : { tag : 'div',  style : {'text-align' : 'center'} },
		i         : { tag : 'em' },
		font      : { tag : 'span' },
		nobr      : { tag : 'span', style : {'white-space' : 'nowrap'} },
		menu      : { tag : 'ul' },
		plaintext : { tag : 'pre' },
		s         : { tag : 'strike' },
		small     : { tag : 'span', style : {'font-size' : 'small'}},
		u         : { tag : 'span', style : {'text-decoration' : 'underline'} },
		xmp       : { tag : 'pre' }
	}
	
	// rules to replace attributes
	elRTE.prototype.filter.prototype.replaceAttrs = {
		align : function(a, n) {
			switch (n) {
				case 'img':
					a.style[a.align.match(/(left|right)/) ? 'float' : 'vertical-align'] = a.align;
					break;
				
				case 'table':
					if (a.align == 'center') {
						a.style['margin-left'] = a.style['margin-right'] = 'auto';
					} else {
						a.style['float'] = a.align;
					}
					break;
					
				default:
					a.style['text-align'] = a.align;
			}
			delete a.align;
		},
		border : function(a) {
			!a.style['border-width'] && (a.style['border-width'] = (parseInt(a.border)||1)+'px');
			!a.style['border-style'] && (a.style['border-style'] = 'solid');
			delete a.border;
		},
		bordercolor : function(a) {
			!a.style['border-color'] && (a.style['border-color'] = a.bordercolor);
			delete a.bordercolor;
		},
		background : function(a) {
			!a.style['background-image'] && (a.style['background-image'] = 'url('+a.background+')');
			delete a.background;
		},
		bgcolor : function(a) {
			!a.style['background-color'] && (a.style['background-color'] = a.bgcolor);
			delete a.bgcolor;
		},
		clear : function(a) {
			a.style.clear = a.clear == 'all' ? 'both' : a.clear;
			delete a.clear;
		},
		color : function(a) {
			!a.style.color && (a.style.color = a.color);
			delete a.color;
		},
		face : function(a) {
			var f = a.face.toLowerCase();
			$.each(this.fontFamily, function(n, r) {
				if (f.match(r)) {
					a.style['font-family'] = f+','+n;
				}
			});
			delete a.face;
		},
		hspace : function(a, n) {
			if (n == 'img') {
				var v = parseInt(a.hspace)||0;
				!a.style['margin-left'] && (a.style['margin-left'] = v+'px');
				!a.style['margin-right'] && (a.style['margin-right'] = v+'px')
				delete a.hspace;
			}
		},
		size : function(a, n) {
			if (n != 'input') {
				a.style['font-size'] = this.fontSize[parseInt(a.size)||0]||'medium';
				delete a.size;
			}
		},
		valign : function(a) {
			if (!a.style['vertical-align']) {
				a.style['vertical-align'] = a.valign;
			}
			delete a.valign;
		},
		vspace : function(a, n) {
			if (n == 'img') {
				var v = parseInt(a.vspace)||0;
				!a.style['margin-top'] && (a.style['margin-top'] = v+'px');
				!a.style['margin-bottom'] && (a.style['margin-bottom'] = v+'px')
				delete a.hspace;
			}
		}
	}
	
	// rules collection
	elRTE.prototype.filter.prototype.rules = {
		/**
		 * If this.rte.options.allowTags is set - remove all except this ones
		 *
		 * @param String  html code
		 * @return String
		 **/
		allowedTags : function(html) {
			var a = this.allowTags;
			
			return a ? html.replace(this.tagRegExp, function(t, c, n) { return a[n.toLowerCase()] ? t : ''; }) : html;
		},
		/**
		 * If this.rte.options.denyTags is set - remove all deny tags
		 *
		 * @param String  html code
		 * @return String
		 **/
		deniedTags : function(html) {
			var d = this.denyTags; 

			return d ? html.replace(this.tagRegExp, function(t, c, n) { return d[n.toLowerCase()] ? '' : t }) : html;
		},
		
		/**
		 * Replace not allowed tags/attributes
		 *
		 * @param String  html code
		 * @return String
		 **/
		clean : function(html) {
			var self = this, 
				rt   = this.replaceTags,
				ra   = this.replaceAttrs, 
				da   = this.denyAttr,
				n;
			
			
			html = html.replace(/<!DOCTYPE([\s\S]*)>/gi, '')
				.replace(/<p [^>]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi, "<p><strong>$1</strong></p>")
				.replace(/<span\s+style\s*=\s*"\s*mso-spacerun\s*:\s*yes\s*;?\s*"\s*>([\s&nbsp;]*)<\/span>/gi, "$1")
				.replace(/(<p[^>]*>\s*<\/p>|<p[^>]*\/>)/gi, '<br>')
				.replace(/(<\/p>)(?:\s*<br\s*\/?>\s*|\s*&nbsp;\s*)+\s*(<p[^>]*>)/gi, function(t, b, e) {
					return b+"\n"+e;
				})
				.replace(this.tagRegExp, function(t, c, n, a) {
					n = n.toLowerCase();
					
					if (c) {
						return '</'+(rt[n] ? rt[n].tag : n)+'>';
					}
					// self.rte.log(t)
					// create attributes hash and clean it
					a = self.cleanAttrs(self.parseAttrs(a||''), n);
					// self.rte.log(a)
					if (rt[n]) {
						rt[n].style && $.extend(a.style, rt[n].style);
						n = rt[n].tag;
					}
					
					da && $.each(a, function(na) {
						if (da[na]) {
							delete a[na];
						}
					});
					a = self.serializeAttrs(a);
					// self.rte.log(a)
					return '<'+n+(a?' ':'')+a+'>';
				});
				
			
			n = $('<div>'+html+'</div>');
			
			// remove empty spans and merge nested spans
			n.find('span:not([id]):not([class])').each(function() {
				var t = $(this);
				
				if (!t.attr('style')) {
					
					$.trim(t.html()).length ? self.rte.dom.unwrap(this) : t.remove();
					// t.children().length ? self.rte.dom.unwrap(this) : t.remove();
				}
			}).end().find('span span:only-child').each(function() {
				var t   = $(this), 
					p   = t.parent().eq(0), 
					tid = t.attr('id'), 
					pid = p.attr('id'), id, s, c;

				if (self.rte.dom.isOnlyNotEmpty(this) && (!tid || !pid)) {
					c = $.trim(p.attr('class')+' '+t.attr('class'))
					c && p.attr('class', c);
					s = self.rte.utils.serializeStyle($.extend(self.rte.utils.parseStyle($(this).attr('style')||''), self.rte.utils.parseStyle($(p).attr('style')||'')));
					s && p.attr('style', s);
					id = tid||pid;
					id && p.attr('id', id);
					this.firstChild ? $(this.firstChild).unwrap() : t.remove();
				}
			})
			.end().find('a[name]').each(function() {
				$(this).addClass('elrte-protected elrte-anchor');
			});
			
			return n.html()	
		},
		
		/**
		 * Clean pasted html
		 *
		 * @param String  html code
		 * @return String
		 **/
		cleanPaste : function(html) {
			var self = this, d = this.pasteDenyAttr;

			html = html
				.replace(this.scriptRegExp, '')
				.replace(this.styleRegExp, '')
				.replace(this.linkRegExp, '')
				.replace(this.cdataRegExp, '')
				.replace(/\<\!--[\s\S]*?--\>/g, '');
			
			if (this.rte.options.pasteOnlyText) {
				html = html.replace(this.tagRegExp, function(t, c, n) {
					return /br/i.test(n) || (c && /h[1-6]|p|ol|ul|li|div|blockquote|tr/i) ? '<br>' : '';
				}).replace(/(&nbsp;|<br[^>]*>)+\s*$/gi, '');
			} else if (d) {
				html = html.replace(this.openTagRegExp, function(t, n, a) {
					a = self.parseAttrs(a);
					$.each(a, function(an) {
						if (d[an]) {
							delete a[an];
						}
					});
					a = self.serializeAttrs(a, true);
					return '<'+n+(a?' ':'')+a+'>';
				});
			}
			return html; 
		},
		
		/**
		 * Replace script/style/media etc with placeholders
		 *
		 * @param String  html code
		 * @return String
		 **/
		replace : function(html) {
			var self = this, r = this.rte.options.replace||[], n;

			// custom replaces if set
			if (r.length) {
				$.each(r, function(i, f) {
					if (typeof(f) == 'function') {
						html = f.call(self, html);
					}
				});
			}

			/**
			 * Return media replacement - img html code
			 *
			 * @param Object  object to store in rel attr
			 * @param String  media mime-type
			 * @return String
			 **/
			function img(o, t) {
				var s = src(),
					c = s && self.videoHostRegExp.test(s) ? s.replace(self.videoHostRegExp, "$2") : t.replace(/^\w+\/(.+)/, "$1"),
					w = parseInt((o.obj ? o.obj.width || o.obj.style.width : 0)||(o.embed ? o.embed.width || o.embed.style.width : 0))||150,
					h = parseInt((o.obj ? o.obj.height || o.obj.style.height : 0)||(o.embed ? o.embed.height || o.embed.style.height : 0))||100,
					id = 'media'+Math.random().toString().substring(2),
					style ='',
					l;

				// find media src
				function src() {
					if (o.embed && o.embed.src) {
						return o.embed.src;
					}
					if (o.params && o.params.length) {
						l = o.params.length;
						while (l--) {
							if (o.params[l].name == 'src' || o.params[l].name == 'movie') {
								return o.params[l].value;
							}
						}
					}
				}
				if (o.obj && o.obj.style && o.obj.style['float']) {
					style = ' style="float:'+o.obj.style['float']+'"';
				}
				self.scripts[id] = o;
				return '<img src="'+self.url+'pixel.gif" class="elrte-media elrte-media-'+c+' elrte-protected" title="'+(s ? self.rte.utils.encode(s) : '')+'" rel="'+id+'" width="'+w+'" height="'+h+'"'+style+'>';
			}
			
			html = html
				.replace(this.styleRegExp, "<!-- ELRTE_COMMENT$1 -->")
				.replace(this.linkRegExp,  "<!-- ELRTE_COMMENT$1-->")
				.replace(this.cdataRegExp, "<!--[CDATA[$1]]-->")
				.replace(this.scriptRegExp, function(t, a, s) {
					var id;
					if (self.denyTags.script) {
						return '';
					}
					id = 'script'+Math.random().toString().substring(2);
					a = self.parseAttrs(a);
					!a.type && (a.type = 'text/javascript');
					self.scripts[id] = '<script '+self.serializeAttrs(a)+">"+s+"</script>";
					return '<!-- ELRTE_SCRIPT:'+(id)+' -->';
				})
				.replace(this.yMapsRegExp, function(t, a) {
					a = self.parseAttrs(a);
					a['class']['elrte-yandex-maps'] = 'elrte-yandex-maps';
					a['class']['elrte-protected'] = 'elrte-protected';
					return '<div '+self.serializeAttrs(a)+'>';
				})
				.replace(this.gMapsRegExp, function(t, a) {
					var id = 'gmaps'+Math.random().toString().substring(2), w, h;
					a = self.parseAttrs(a);
					w = parseInt(a.width||a.style.width||100);
					h = parseInt(a.height||a.style.height||100);
					self.scripts[id] = t;
					return '<img src="'+self.url+'pixel.gif" class="elrte-google-maps elrte-protected" id="'+id+'" style="width:'+w+'px;height:'+h+'px">';
				})
				.replace(this.objRegExp, function(t, a, c) {
					var m = c.match(self.embRegExp),
						o = { obj : self.parseAttrs(a), embed : m && m.length ? self.parseAttrs(m[0].substring(7)) : null, params : [] },
						i = self.rte.utils.mediaInfo(o.embed ? o.embed.type||'' : '', o.obj.classid||'');
					
					if (i) {
						if ((m = c.match(self.paramRegExp))) {
							$.each(m, function(i, p) {
								o.params.push(self.parseAttrs(p.substring(6)));
							});
						}
						!o.obj.classid  && (o.obj.classid  = i.classid[0]);
						!o.obj.codebase && (o.obj.codebase = i.codebase);
						o.embed && !o.embed.type && (o.embed.type = i.type);
						// ie bug with empty attrs
						o.obj.width == '1' && delete o.obj.width;
						o.obj.height == '1' && delete o.obj.height;
						if (o.embed) {
							o.embed.width == '1' && delete o.embed.width;
							o.embed.height == '1' && delete o.embed.height;
						}
						return img(o, i.type);
					}
					return t;
				})
				.replace(this.embRegExp, function(t, n, a) {
					var a = self.parseAttrs(a),
						i = self.rte.utils.mediaInfo(a.type||'');
					// ie bug with empty attrs
					a.width == '1' && delete a.width;
					a.height == '1' && delete a.height;
					return i ? img({ embed : a }, i.type) : t;
				})
				.replace(this.iframeRegExp, function(t, a) {
					var a = self.parseAttrs(a);
					var w = a.style.width || (parseInt(a.width) > 1 ? parseInt(a.width)+'px' : '100px');
					var h = a.style.height || (parseInt(a.height) > 1 ? parseInt(a.height)+'px' : '100px');
					var id = 'iframe'+Math.random().toString().substring(2);
					self.scripts[id] = t;
					var img = '<img id="'+id+'" src="'+self.url+'pixel.gif" class="elrte-protected elrte-iframe" style="width:'+w+'; height:'+h+'">';
					return img;
				})
				.replace(this.vimeoRegExp, function(t, n, a) {
					a = self.parseAttrs(a);
					delete a.frameborder;
					a.width == '1' && delete a.width;
					a.height == '1' && delete a.height;
					a.type = 'application/x-shockwave-flash';
					return img({ embed : a }, 'application/x-shockwave-flash');
				})
				.replace(/<\/(embed|param)>/gi, '')
				.replace(this.pbRegExp, function() {
					return '<img src="'+self.url+'pixel.gif" class="elrte-protected elrte-pagebreak">';
				});


			n = $('<div>'+html+'</div>');
			
			// remove empty spans and merge nested spans
			// n.find('span:not([id]):not([class])').each(function() {
			// 	var t = $(this);
			// 	
			// 	if (!t.attr('style')) {
			// 		$.trim(t.html()).length ? self.rte.dom.unwrap(this) : t.remove();
			// 		// t.children().length ? self.rte.dom.unwrap(this) : t.remove();
			// 	}
			// }).end().find('span span:only-child').each(function() {
			// 	var t   = $(this), 
			// 		p   = t.parent().eq(0), 
			// 		tid = t.attr('id'), 
			// 		pid = p.attr('id'), id, s, c;
			// 
			// 	if (self.rte.dom.is(this, 'onlyChild') && (!tid || !pid)) {
			// 		c = $.trim(p.attr('class')+' '+t.attr('class'))
			// 		c && p.attr('class', c);
			// 		s = self.rte.utils.serializeStyle($.extend(self.rte.utils.parseStyle($(this).attr('style')||''), self.rte.utils.parseStyle($(p).attr('style')||'')));
			// 		s && p.attr('style', s);
			// 		id = tid||pid;
			// 		id && p.attr('id', id);
			// 		this.firstChild ? $(this.firstChild).unwrap() : t.remove();
			// 	}
			// })
			// .end().find('a[name]').each(function() {
			// 	$(this).addClass('elrte-anchor');
			// });


			if (!this.rte.options.allowTextNodes) {
				// wrap inline nodes with p
				var dom = this.rte.dom,
					nodes = [],
					w = [];
				
				if ($.browser.msie) {
					for (var i = 0; i<n[0].childNodes.length; i++) {
						nodes.push(n[0].childNodes[i])
					}
				} else {
					nodes = Array.prototype.slice.call(n[0].childNodes);
				}
				

				function wrap() {
					if (w.length && dom.filter(w, 'notEmpty').length) {
						dom.wrap(w, document.createElement('p'));
					}
					w = [];
				}	
				$.each(nodes, function(i, n) {
					if (dom.is(n, 'block')) {
						wrap();
					} else {
						if (w.length && n.previousSibling != w[w.length-1]) {
							wrap();
						}
						w.push(n);
					}
				});
				wrap();
			}
			
			return n.html();
		},
		/**
		 * Restore script/style/media etc from placeholders
		 *
		 * @param String  html code
		 * @return String
		 **/
		restore : function(html) {
			var self =this, r = this.rte.options.restore||[];

			// custom restore if set
			if (r.length) {
				$.each(r, function(i, f) {
					if (typeof(f) == 'function') {
						html = f.call(self, html);
					}
				});
			}
			
			html = html
				.replace(/\<\!--\[CDATA\[([\s\S]*?)\]\]--\>/gi, "<![CDATA[$1]]>")
				.replace(/\<\!--\s*ELRTE_SCRIPT\:\s*(script\d+)\s*--\>/gi, function(t, n) {
					if (self.scripts[n]) {
						t = self.scripts[n];
						delete self.scripts[n];
					}
					return t||'';
				})
				.replace(/\<\!-- ELRTE_COMMENT([\s\S]*?) --\>/gi, "$1")
				.replace(this.serviceClassRegExp, function(t, n, a, e) {

					var a = self.parseAttrs(a), j, o = '';
					// alert(t)
					if (a['class']['elrte-google-maps']) {
						var t = '';
						if (self.scripts[a.id]) {
							t = self.scripts[a.id];
							delete self.scripts[a.id]
						}
						return t;
					} else if (a['class']['elrte-iframe']) {
						return self.scripts[a.id] || '';
					} else if (a['class']['elrtebm']) {
						return '';
					} else if (a['class']['elrte-media']) {
						// alert(a.rel)
						// return ''
						// j = a.rel ? JSON.parse(self.rte.utils.decode(a.rel)) : {};
						j = self.scripts[a.rel]||{};
						j.params && $.each(j.params, function(i, p) {
							o += '<param '+self.serializeAttrs(p)+">\n";
						});
						j.embed && (o+='<embed '+self.serializeAttrs(j.embed)+">");
						j.obj && (o = '<object '+self.serializeAttrs(j.obj)+">\n"+o+"\n</object>\n");
						return o||t;
					} else if (a['class']['elrte-pagebreak']) {
						return '<!-- pagebreak -->';
					}
					$.each(a['class'], function(n) {
						if (/^elrte-\w+/i.test(n)) {
							delete(a['class'][n]);
						}
						// /^elrte\w+/i.test(n) && delete(a['class'][n]); 
					});
					return '<'+n+' '+self.serializeAttrs(a)+'>'+(e||'');

				});
			
			return html;
		},
		/**
		 * compact styles and move tags and attributes names in lower case(for ie&opera)
		 *
		 * @param String  html code
		 * return String
		 **/
		compactStyles : function(html) {
			var self = this;

			return html.replace(this.tagRegExp, function(t, c, n, a) {
				a = !c && a ? self.serializeAttrs(self.parseAttrs(a), true) : '';
				return '<'+c+n.toLowerCase()+(a?' ':'')+a+'>';
			});
		},
		/**
		 * return xhtml tags
		 *
		 * @param String  html code
		 * return String
		 **/
		xhtmlTags : function(html) {
			return this.xhtml ? html.replace(/<(img|hr|br|embed|param|link|area)([^>]*\/*)>/gi, "<$1$2 />") : html;
		}
	}
	
	/**
	 * Chains configuration
	 * Default chains 
	 * wysiwyg - proccess html from source for wysiwyg editor mode
	 * source  - proccess html from wysiwyg for source editor mode
	 * paste   - clean pasted html
	 * wysiwyg2wysiwyg - ciclyc rule to clean html from wysiwyg for wysiwyg paste
	 * source2source - ciclyc rule to clean html from source for source paste
	 * deniedTags is in the end of chain to protect google maps iframe from removed
	 **/
	elRTE.prototype.filter.prototype.chains = {
		wysiwyg         : ['replace', 'clean', 'allowedTags', 'deniedTags', 'compactStyles'],
		source          : ['clean', 'allowedTags', 'restore', 'compactStyles', 'xhtmlTags'],
		paste           : ['clean', 'allowedTags', 'cleanPaste', 'replace', 'deniedTags', 'compactStyles'],
		wysiwyg2wysiwyg : ['clean', 'allowedTags', 'restore', 'replace', 'deniedTags', 'compactStyles'],
		source2source   : ['clean', 'allowedTags', 'replace', 'deniedTags', 'restore', 'compactStyles', 'xhtmlTags']
	}
	

	
})(jQuery);
(function($) {
elRTE.prototype.history = function(rte) {
	this.rte = rte;
	this._prev = []
	this._next = [];

	
	this.add = function() {
		if (this.rte.options.historyLength>0 && this._prev.length>= this.rte.options.historyLength) {
			this._prev.slice(this.rte.options.historyLength);
		}
		var b = this.rte.selection.getBookmark();
		this._prev.push([$(this.rte.doc.body).html(), b]);
		this.rte.selection.moveToBookmark(b);
		// this._prev.push($(this.rte.doc.body).html());
		this._next = [];
	}
	
	this.back = function() {
		
		if (this._prev.length) {
			var b = this.rte.selection.getBookmark(), 
				data = this._prev.pop();
			this._next.push([$(this.rte.doc.body).html(), b]);
			
			$(this.rte.doc.body).html(data[0]);
			this.rte.selection.moveToBookmark(data[1]);
		}
	}

	this.fwd = function() {
		if (this._next.length) {
			var b = this.rte.selection.getBookmark(), 
				data = this._next.pop();
			this._prev.push([$(this.rte.doc.body).html(), b]);
			
			$(this.rte.doc.body).html(data[0]);
			this.rte.selection.moveToBookmark(data[1]);
		}
	}
	
	this.canBack = function() {
		return this._prev.length;
	}
	
	this.canFwd = function() {
		return this._next.length;
	}

}
})(jQuery);/*
 * elRTE configuration
 *
 * @param doctype         - doctype for editor iframe
 * @param cssClass        - css class for editor
 * @param cssFiles        - array of css files, witch will inlude in iframe
 * @param height          - not used now (may be deleted in future)
 * @param lang            - interface language (requires file in i18n dir)
 * @param toolbar         - name of toolbar to load
 * @param absoluteURLs    - convert files and images urls to absolute or not
 * @param allowSource     - is source editing allowing
 * @param stripWhiteSpace - strip лишние whitespaces/tabs or not
 * @param styleWithCSS    - use style=... instead of strong etc.
 * @param fmAllow         - allow using file manger (elFinder)
 * @param fmOpen          - callback for open file manager
 * @param buttons         - object with pairs of buttons classes names and titles (when create new button, you have to add iys name here)
 * @param panels          - named groups of buttons
 * @param panelNames      - title of panels (required for one planned feature)
 * @param toolbars        - named redy to use toolbals (you may combine your own toolbar)
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 */
(function($) {
elRTE.prototype.options   = {
	doctype         : '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">',
	cssClass        : 'el-rte',
	cssfiles        : [],
	height          : null,
	resizable       : true,
	lang            : 'en',
	toolbar         : 'normal',
	absoluteURLs    : true,
	allowSource     : true,
	stripWhiteSpace : true,
	styleWithCSS    : false,
	fmAllow         : true,
	fmOpen          : null,
	/* if set all other tag will be removed */
	allowTags : [],
	/* if set this tags will be removed */
	denyTags : ['applet', 'base', 'basefont', 'bgsound', 'blink', 'body', 'col', 'colgroup', 'isindex', 'frameset', 'html', 'head', 'meta', 'marquee', 'noframes', 'noembed', 'o:p', 'title', 'xml'],
	denyAttr : [],
	/* on paste event this attributes will removed from pasted html */
	pasteDenyAttr : ['id', 'name', 'class', 'style', 'language', 'onclick', 'ondblclick', 'onhover', 'onkeup', 'onkeydown', 'onkeypress'],
	/* If false - all text nodes will be wrapped by paragraph tag */
	allowTextNodes : true,
	/* allow browser specific styles like -moz|-webkit|-o */
	allowBrowsersSpecStyles : false,
	/* allow paste content into editor */
	allowPaste : true,
	/* if true - only text will be pasted (not in ie) */
	pasteOnlyText : false,
	/* user replacement rules */
	replace : [],
	/* user restore rules */
	restore : [],
	pagebreak : '<div style="page-break-after: always;"></div>', //'<!-- pagebreak -->',
	buttons         : {
		'save'                : 'Save',
		'copy'                : 'Copy',
		'cut'                 : 'Cut',
		'css'                 : 'Css style and class',
		'paste'               : 'Paste',
		'pastetext'           : 'Paste only text',
		'pasteformattext'     : 'Paste formatted text',
		'removeformat'        : 'Clean format', 
		'undo'                : 'Undo last action',
		'redo'                : 'Redo previous action',
		'bold'                : 'Bold',
		'italic'              : 'Italic',
		'underline'           : 'Underline',
		'strikethrough'       : 'Strikethrough',
		'superscript'         : 'Superscript',
		'subscript'           : 'Subscript',
		'justifyleft'         : 'Align left',
		'justifyright'        : 'Ailgn right',
		'justifycenter'       : 'Align center',
		'justifyfull'         : 'Align full',
		'indent'              : 'Indent',
		'outdent'             : 'Outdent',
		'rtl' : 'Right to left',
		'ltr' : 'Left to right',
		'forecolor'           : 'Font color',
		'hilitecolor'         : 'Background color',
		'formatblock'         : 'Format',
		'fontsize'            : 'Font size',
		'fontname'            : 'Font',
		'insertorderedlist'   : 'Ordered list',
		'insertunorderedlist' : 'Unordered list',
		'horizontalrule'      : 'Horizontal rule',
		'blockquote'          : 'Blockquote',
		'div'                 : 'Block element (DIV)',
		'link'                : 'Link',
		'unlink'              : 'Delete link',
		'anchor'              : 'Bookmark',
		'image'               : 'Image',
		'pagebreak'           : 'Page break',
		'smiley'              : 'Smiley',
		'flash'               : 'Flash',
		'table'               : 'Table',
		'tablerm'             : 'Delete table',
		'tableprops'          : 'Table properties',
		'tbcellprops'         : 'Table cell properties',
		'tbrowbefore'         : 'Insert row before',
		'tbrowafter'          : 'Insert row after',
		'tbrowrm'             : 'Delete row',
		'tbcolbefore'         : 'Insert column before',
		'tbcolafter'          : 'Insert column after',
		'tbcolrm'             : 'Delete column',
		'tbcellsmerge'        : 'Merge table cells',
		'tbcellsplit'         : 'Split table cell',
		'docstructure'        : 'Toggle display document structure',
		'elfinder'            : 'Open file manager',
		'fullscreen'          : 'Toggle full screen mode',
		'nbsp'                : 'Non breakable space',
		'stopfloat'           : 'Stop element floating',
		'about'               : 'About this software'
	},
	panels      : {
		eol        : [], // special panel, insert's a new line in toolbar
		save       : ['save'],
		copypaste  : ['copy', 'cut', 'paste', 'pastetext', 'pasteformattext', 'removeformat', 'docstructure'],
		undoredo   : ['undo', 'redo'],
		style      : ['bold', 'italic', 'underline', 'strikethrough', 'subscript', 'superscript'],
		colors     : ['forecolor', 'hilitecolor'],
		alignment  : ['justifyleft', 'justifycenter', 'justifyright', 'justifyfull'],
		indent     : ['outdent', 'indent'],
		format     : ['formatblock', 'fontsize', 'fontname'],
		lists      : ['insertorderedlist', 'insertunorderedlist'],
		elements   : ['horizontalrule', 'blockquote', 'div', 'stopfloat', 'css', 'nbsp', 'smiley', 'pagebreak'],
		direction  : ['ltr', 'rtl'],
		links      : ['link', 'unlink', 'anchor'],
		images     : ['image'],
		media      : ['image', 'flash'],		
		tables     : ['table', 'tableprops', 'tablerm',  'tbrowbefore', 'tbrowafter', 'tbrowrm', 'tbcolbefore', 'tbcolafter', 'tbcolrm', 'tbcellprops', 'tbcellsmerge', 'tbcellsplit'],
		elfinder   : ['elfinder'],
		fullscreen : ['fullscreen', 'about']
	},
	toolbars    : {
		tiny     : ['style'],
		compact  : ['save', 'undoredo', 'style', 'alignment', 'lists', 'links', 'fullscreen'],
		normal   : ['save', 'copypaste', 'undoredo', 'style', 'alignment', 'colors', 'indent', 'lists', 'links', 'elements', 'images', 'fullscreen'],
		complete : ['save', 'copypaste', 'undoredo', 'style', 'alignment', 'colors', 'format', 'indent', 'lists', 'links', 'elements', 'media', 'fullscreen'],
		maxi     : ['save', 'copypaste', 'undoredo', 'elfinder', 'style', 'alignment', 'direction', 'colors', 'format', 'indent', 'lists', 'links', 'elements', 'media', 'tables', 'fullscreen'],
		eldorado : ['save', 'copypaste', 'elfinder', 'undoredo', 'style', 'alignment', 'colors', 'format', 'indent', 'lists', 'links', 'elements', 'media', 'tables', 'fullscreen']
		
	},
	panelNames : {
		save      : 'Save',
		copypaste : 'Copy/Pase',
		undoredo  : 'Undo/Redo',
		style     : 'Text styles',
		colors    : 'Colors',
		alignment : 'Alignment',
		indent    : 'Indent/Outdent',
		format    : 'Text format',
		lists     : 'Lists',
		elements  : 'Misc elements',
		direction : 'Script direction',
		links     : 'Links',
		images    : 'Images',
		media     : 'Media',
		tables    : 'Tables',
		elfinder  : 'File manager (elFinder)'
	}
};
})(jQuery);
/**
 * @class selection  - elRTE utils for working with text selection
 *
 * @param  elRTE  rte  объект-редактор
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 **/
(function($) {
elRTE.prototype.selection = function(rte) {
	this.rte      = rte;
	var self      = this;
	this.w3cRange = null;
	var start, end, node, bm;
	
	$(this.rte.doc)
		.keyup(function(e) {
			if (e.ctrlKey || e.metaKey || (e.keyCode >= 8 && e.keyCode <= 13) || (e.keyCode>=32 && e.keyCode<= 40) || e.keyCode == 46 || (e.keyCode >=96 && e.keyCode <= 111)) {
				self.cleanCache();
			}
		})
		.mousedown(function(e) {
			// self.rte.log(e)
			if (e.target.nodeName == 'HTML') {
				start = self.rte.doc.body;
			} else {
				start = e.target;
			}
			end   = node = null;
		})
		.mouseup(function(e) {
			if (e.target.nodeName == 'HTML') {
				end = self.rte.doc.body;
			} else {
				end = e.target;
			}
			end  = e.target;
			node = null;
		}).click();
		
	/**
	 * возвращает selection
	 *
	 * @return  Selection
	 **/
	function selection() {
		return self.rte.window.getSelection ? self.rte.window.getSelection() : self.rte.window.document.selection;
	}
	
	/**
	 * Вспомогательная функция
	 * Возвращает самого верхнего родителя, отвечающего условию - текущая нода - его единственная непустая дочерняя нода
	 *
	 * @param   DOMElement  n нода, для которой ищем родителя
	 * @param   DOMElement  p если задана - нода, выше которой не поднимаемся
	 * @param   String      s строна поиска (left||right||null)
	 * @return  DOMElement
	 **/
	function realSelected(n, p, s) {
		while (n.nodeName != 'BODY' && n.parentNode && n.parentNode.nodeName != 'BODY' && (p ? n!== p && n.parentNode != p : 1) && ((s=='left' && self.rte.dom.isFirstNotEmpty(n)) || (s=='right' && self.rte.dom.isLastNotEmpty(n)) || (self.rte.dom.isFirstNotEmpty(n) && self.rte.dom.isLastNotEmpty(n))) ) {
			n = n.parentNode;
		}
		return n;
	}
	
	/**
	 * Возвращает TRUE, если выделение "схлопнуто"
	 *
	 * @return  bool
	 **/
	this.collapsed = function() {
		return this.getRangeAt().isCollapsed();
	}
	
	/**
	 * "Схлопывает" выделение 
	 *
	 * @param   bool  toStart  схлопнуть к начальной точке
	 * @return  void
	 **/
	this.collapse = function(st) {
		var s = selection(),
			r = this.getRangeAt();
		r.collapse(st?true:false);
		if (!$.browser.msie) {
			s.removeAllRanges();
			s.addRange(r);
			
		}
		return this;
	}
	
	/**
	 * Возвращает TextRange
	 * Для нормальных браузеров - нативный range
	 * для "самизнаетечего" - эмуляцию w3c range
	 *
	 * @return  range|w3cRange
	 **/
	this.getRangeAt = function(updateW3cRange) {
		if (this.rte.browser.msie) {
			if (!this.w3cRange) {
				this.w3cRange = new this.rte.w3cRange(this.rte);
			}
			updateW3cRange && this.w3cRange.update();
			return this.w3cRange;
		}
		
		var s = selection();
		var r = s.rangeCount > 0 ? s.getRangeAt(0) : this.rte.doc.createRange();
		r.getStart = function() {
			return this.startContainer.nodeType==1 
				? this.startContainer.childNodes[Math.min(this.startOffset, this.startContainer.childNodes.length-1)] 
				: this.startContainer;
		}
		
		r.getEnd = function() {
			return this.endContainer.nodeType==1 
				? this.endContainer.childNodes[ Math.min(this.startOffset == this.endOffset ? this.endOffset : this.endOffset-1, this.endContainer.childNodes.length-1)] 
				: this.endContainer;
		}
		r.isCollapsed = function() {
			return this.collapsed;
		}
		return r;
	}
	
	this.saveIERange = function() {
		if ($.browser.msie) {
			bm = this.getRangeAt().getBookmark();
		}
	}
	
	this.restoreIERange = function() {
		$.browser.msie && bm && this.getRangeAt().moveToBookmark(bm);
	}
	
	this.cloneContents = function() {
		var n = this.rte.dom.create('div'), r, c, i;
		if ($.browser.msie) {
			try { 
				r = this.rte.window.document.selection.createRange(); 
			} catch(e) { 
				r = this.rte.doc.body.createTextRange(); 
			}
			$(n).html(r.htmlText);
		} else {
			c = this.getRangeAt().cloneContents();
			for (i=0; i<c.childNodes.length; i++) {
				n.appendChild(c.childNodes[i].cloneNode(true));
			}
		}
		return n;
	}
	
	/**
	 * Выделяет ноды
	 *
	 * @param   DOMNode  s  нода начала выделения
	 * @param   DOMNode  e  нода конца выделения
	 * @return  selection
	 **/
	this.select = function(s, e) {
		e = e||s;
		
		if (this.rte.browser.msie) {
			var r  = this.rte.doc.body.createTextRange(),
				r1 = r.duplicate(),
				r2 = r.duplicate();
			
			r1.moveToElementText(s);
			r2.moveToElementText(e);
			r.setEndPoint('StartToStart', r1);
			r.setEndPoint('EndToEnd',     r2);
			r.select();
		} else {
			
			var sel = selection(),
				r = this.getRangeAt();
			r.setStartBefore(s);
			r.setEndAfter(e);
			sel.removeAllRanges();
			sel.addRange(r);
		}
		return this.cleanCache();
	}
	
	/**
	 * Выделяет содержимое ноды
	 *
	 * @param   Element  n  нода
	 * @return  selection
	 **/
	this.selectContents = function(n) {
		var r = this.getRangeAt();
		if (n && n.nodeType == 1) {
			if (this.rte.browser.msie) {
				r.range();
				r.r.moveToElementText(n.parentNode);
				r.r.select();
			} else {
				try {
					r.selectNodeContents(n);
				} catch (e) {
					return this.rte.log('unable select node contents '+n);
				}
				var s = selection();
				s.removeAllRanges();
				s.addRange(r);
			}
		}
		return this;
	}
	
	this.deleteContents = function() {
		if (!$.browser.msie) {
			this.getRangeAt().deleteContents();
		}
		return this;
	}
	
	/**
	 * Вставляет ноду в текущее выделение
	 *
	 * @param   Element  n  нода
	 * @return  selection
	 **/
	this.insertNode = function(n, collapse) {
		if (collapse && !this.collapsed()) {
			this.collapse();
		}

		if (this.rte.browser.msie) {
			var html = n.nodeType == 3 ? n.nodeValue : $(this.rte.dom.create('span')).append($(n)).html();
			 var r = this.getRangeAt();
			r.insertNode(html);
		} else {
			var r = this.getRangeAt();
			r.insertNode(n);
			r.setStartAfter(n);
			r.setEndAfter(n);
			var s = selection();
			s.removeAllRanges();
			s.addRange(r);
		}
		return this.cleanCache();
	}

	/**
	 * Вставляет html в текущее выделение
	 *
	 * @param   Element  n  нода
	 * @return  selection
	 **/
	this.insertHtml = function(html, collapse) {
		if (collapse && !this.collapsed()) {
			this.collapse();
		}
		
		if (this.rte.browser.msie) {
			this.getRangeAt().range().pasteHTML(html);
		} else {
			var n = $(this.rte.dom.create('span')).html(html||'').get(0);
			this.insertNode(n);
			$(n).replaceWith($(n).html());
		}
		return this.cleanCache();
	}

	/**
	 * Вставляет ноду в текущее выделение
	 *
	 * @param   Element  n  нода
	 * @return  selection
	 **/
	this.insertText = function(text, collapse) {
		var n = this.rte.doc.createTextNode(text);
		return this.insertHtml(n.nodeValue);
	}

	this.getBookmark = function() {
		this.rte.window.focus();
		var r, r1, r2, _s, _e,
			s = this.rte.dom.createBookmark(),
			e = this.rte.dom.createBookmark();
			
		
		
		if ($.browser.msie) {
			try { 
				r = this.rte.window.document.selection.createRange(); 
			} catch(e) { 
				r = this.rte.doc.body.createTextRange(); 
			}
			
			if (r.item) {
				var n = r.item(0);
				r = this.rte.doc.body.createTextRange();
				r.moveToElementText(n);
			}
			
			r1 = r.duplicate();
			r2 = r.duplicate();
			_s = this.rte.dom.create('span');
			_e = this.rte.dom.create('span');

			_s.appendChild(s);
			_e.appendChild(e);

			r1.collapse(true);
			r1.pasteHTML(_s.innerHTML);
			r2.collapse(false);
			r2.pasteHTML(_e.innerHTML);
		} else {
				var sel = selection();
				var r = sel.rangeCount > 0 ? sel.getRangeAt(0) : this.rte.doc.createRange();
				
			// r  = this.getRangeAt();
			r1 = r.cloneRange();
			r2 = r.cloneRange();
			
			// this.insertNode(this.rte.dom.create('hr'))
			// return
			r2.collapse(false);
			r2.insertNode(e);
			r1.collapse(true);
			r1.insertNode(s);
			this.select(s, e);
		}
		
		return [s.id, e.id];
	}

	this.moveToBookmark = function(b) {
		this.rte.window.focus();
		
		if (b && b.length==2) {
			var s = this.rte.doc.getElementById(b[0]),
				e = this.rte.doc.getElementById(b[1]),
				sel, r;
			if (s && e) {
				this.select(s, e);
				if (this.rte.dom.next(s) == e) {
					this.collapse(true);
				}
				if (!$.browser.msie) {
					sel = selection();
					r = sel.rangeCount > 0 ? sel.getRangeAt(0) : this.rte.doc.createRange();
					sel.removeAllRanges();
					sel.addRange(r);
				}
				
				s.parentNode.removeChild(s);
				e.parentNode.removeChild(e);
			}
		}
		return this;	
	}

	this.removeBookmark = function(b) {
		this.rte.window.focus();
		if (b.length==2) {
			var s = this.rte.doc.getElementById(b[0]),
				e = this.rte.doc.getElementById(b[1]);
			if (s && e) {
				s.parentNode.removeChild(s);
				e.parentNode.removeChild(e);
			}
		}
	}

	/**
	 * Очищает кэш
	 *
	 * @return  selection
	 **/
	this.cleanCache = function() {
		start = end = node = null;
		return this;
	}

	
	/**
	 * Возвращает ноду начала выделения
	 *
	 * @return  DOMElement
	 **/
	this.getStart = function() {
		if (!start) {
			var r = this.getRangeAt();
			start = r.getStart();
		}
		return start;
	}
	
	/**
	 * Возвращает ноду конца выделения
	 *
	 * @return  DOMElement
	 **/
	this.getEnd = function() {
		if (!end) {
			var r = this.getRangeAt();
			end = r.getEnd();
		}
		return end;
	}

	/**
	 * Возвращает выбраную ноду (общий контейнер всех выбранных нод)
	 *
	 * @return  Element
	 **/
	this.getNode = function() {
		if (!node) {
			node = this.rte.dom.findCommonAncestor(this.getStart(), this.getEnd());
		}
		return node;
	}

	
	/**
	 * Возвращает массив выбранных нод
	 *
	 * @param   Object  o  параметры получения и обработки выбраных нод
	 * @return  Array
	 **/
	this.selected = function(o) {
		var opts = {
			collapsed : false,  // вернуть выделение, даже если оно схлопнуто
			blocks    : false,  // блочное выделение
			filter    : false,  // фильтр результатов
			wrap      : 'text', // что оборачиваем
			tag       : 'span'  // во что оборачиваем
		}
		opts = $.extend({}, opts, o);
		
		// блочное выделение - ищем блочную ноду, но не таблицу
		if (opts.blocks) {
			var n  = this.getNode(), _n = null;
			if (_n = this.rte.dom.selfOrParent(n, 'selectionBlock') ) {
				return [_n];
			} 
		}

		var sel    = this.selectedRaw(opts.collapsed, opts.blocks);
		var ret    = [];
		var buffer = [];
		var ndx    = null;

		// оборачиваем ноды в буффере
		function wrap() {
			
			function allowParagraph() {
				for (var i=0; i < buffer.length; i++) {
					if (buffer[i].nodeType == 1 && (self.rte.dom.selfOrParent(buffer[i], /^P$/) || $(buffer[i]).find('p').length>0)) {
						return false;
					}
				};
				return true;
			} 
			
			if (buffer.length>0) {
				var tag  = opts.tag == 'p' && !allowParagraph() ? 'div' : opts.tag;
				var n    = self.rte.dom.wrap(buffer, tag);
				ret[ndx] = n;
				ndx      = null;
				buffer   = [];
			}
		}
		
		// добавляем ноды в буффер
		function addToBuffer(n) {
			if (n.nodeType == 1) {
				if (/^(THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(n.nodeName)) {
					$(n).find('td,th').each(function() {
						var tag = opts.tag == 'p' && $(this).find('p').length>0 ? 'div' : opts.tag;
						var n = self.rte.dom.wrapContents(this, tag);
						return ret.push(n);
					})
				} else if (/^(CAPTION|TD|TH|LI|DT|DD)$/.test(n.nodeName)) {
					var tag = opts.tag == 'p' && $(n).find('p').length>0 ? 'div' : opts.tag;
					var n = self.rte.dom.wrapContents(n, tag);
					return ret.push(n);
				} 
			} 
			var prev = buffer.length>0 ? buffer[buffer.length-1] : null;
			if (prev && prev != self.rte.dom.prev(n)) {
				wrap();
			}
			buffer.push(n); 
			if (ndx === null) {
				ndx = ret.length;
				ret.push('dummy'); // заглушка для оборачиваемых элементов
			}
		}
		
		if (sel.nodes.length>0) {
			
			for (var i=0; i < sel.nodes.length; i++) {
				var n = sel.nodes[i];
					// первую и посл текстовые ноды разрезаем, если необходимо
					 if (n.nodeType == 3 && (i==0 || i == sel.nodes.length-1) && $.trim(n.nodeValue).length>0) {
						if (i==0 && sel.so>0) {
							n = n.splitText(sel.so);
						}
						if (i == sel.nodes.length-1 && sel.eo>0) {
							n.splitText(i==0 && sel.so>0 ? sel.eo - sel.so : sel.eo);
						}
					}

					switch (opts.wrap) {
						// оборачиваем только текстовые ноды с br
						case 'text':
							if ((n.nodeType == 1 && n.nodeName == 'BR') || (n.nodeType == 3 && $.trim(n.nodeValue).length>0)) {
								addToBuffer(n);
							} else if (n.nodeType == 1) {
								ret.push(n);
							}
							break;
						// оборачиваем все инлайн элементы	
						case 'inline':
							if (this.rte.dom.isInline(n)) {
								addToBuffer(n);
							} else if (n.nodeType == 1) {
								
								ret.push(n);
							}
							break;
						// оборачиваем все	
						case 'all':
							if (n.nodeType == 1 || !this.rte.dom.isEmpty(n)) {
								addToBuffer(n);
							}
							break;
						// ничего не оборачиваем
						default:
							if (n.nodeType == 1 || !this.rte.dom.isEmpty(n)) {
								ret.push(n);
							}
					}
			};
			wrap();
		}
	
		if (ret.length) {
			this.rte.window.focus();
			
			this.select(ret[0], ret[ret.length-1]);
		}	
		return opts.filter ? this.rte.dom.filter(ret, opts.filter) : ret;
	}

	this.dump = function(ca, s, e, so, eo) {
		var r = this.getRangeAt();
		this.rte.log('commonAncestorContainer');
		this.rte.log(ca || r.commonAncestorContainer);
		// this.rte.log('commonAncestorContainer childs num')
		// this/rte.log((ca||r.commonAncestorContainer).childNodes.length)
		this.rte.log('startContainer');
		this.rte.log(s || r.startContainer);
		this.rte.log('startOffset: '+(so>=0 ? so : r.startOffset));
		this.rte.log('endContainer');
		this.rte.log(e||r.endContainer);
		this.rte.log('endOffset: '+(eo>=0 ? eo : r.endOffset));
	}

	/**
	 * Возвращает массив выбранных нод, как есть
	 *
	 * @param   bool           возвращать если выделение схлопнуто
	 * @param   bool           "блочное" выделение (текстовые ноды включаются полностью, не зависимо от offset)
	 * @return  Array
	 **/
	this.selectedRaw = function(collapsed, blocks) {
		var res = {so : null, eo : null, nodes : []};
		var r   = this.getRangeAt(true);
		var ca  = r.commonAncestorContainer;
		var s, e;  // start & end nodes
		var sf  = false; // start node fully selected
		var ef  = false; // end node fully selected
		
		// возвращает true, если нода не текстовая или выделена полностью
		function isFullySelected(n, s, e) {
			if (n.nodeType == 3) {
				e = e>=0 ? e : n.nodeValue.length;
				return (s==0 && e==n.nodeValue.length) || $.trim(n.nodeValue).length == $.trim(n.nodeValue.substring(s, e)).length;
			} 
			return true;
		}
		
		// возвращает true, если нода пустая или в ней не выделено ни одного непробельного символа
		function isEmptySelected(n, s, e) {
			if (n.nodeType == 1) {
				return self.rte.dom.isEmpty(n);
			} else if (n.nodeType == 3) {
				return $.trim(n.nodeValue.substring(s||0, e>=0 ? e : n.nodeValue.length)).length == 0;
			} 
			return true;
		}
		
		
		//this.dump()
		// начальная нода
		if (r.startContainer.nodeType == 1) {
			if (r.startOffset<r.startContainer.childNodes.length) {
				s = r.startContainer.childNodes[r.startOffset];
				res.so = s.nodeType == 1 ? null : 0;
			} else {
				s = r.startContainer.childNodes[r.startOffset-1];
				res.so = s.nodeType == 1 ? null : s.nodeValue.length;
			}
		} else {
			s = r.startContainer;
			res.so = r.startOffset;
		} 
		
		// выделение схлопнуто
		if (r.collapsed) {
			if (collapsed) {
				//  блочное выделение
				if (blocks) {
					s = realSelected(s);
					if (!this.rte.dom.isEmpty(s) || (s = this.rte.dom.next(s))) {
						res.nodes = [s];
					} 
					
					// добавляем инлайн соседей 
					if (this.rte.dom.isInline(s)) {
						res.nodes = this.rte.dom.toLineStart(s).concat(res.nodes, this.rte.dom.toLineEnd(s));
					}
					
					// offset для текстовых нод
					if (res.nodes.length>0) {
						res.so = res.nodes[0].nodeType == 1 ? null : 0;
						res.eo = res.nodes[res.nodes.length-1].nodeType == 1 ? null : res.nodes[res.nodes.length-1].nodeValue.length;
					}
					
				} else if (!this.rte.dom.isEmpty(s)) {
					res.nodes = [s];
				}
				
			}
			return res;
		}
		
		// конечная нода
		if (r.endContainer.nodeType == 1) {
			e = r.endContainer.childNodes[r.endOffset-1];
			res.eo = e.nodeType == 1 ? null : e.nodeValue.length;
		} else {
			e = r.endContainer;
			res.eo = r.endOffset;
		} 
		// this.rte.log('select 1')
		//this.dump(ca, s, e, res.so, res.eo)
		
		// начальная нода выделена полностью - поднимаемся наверх по левой стороне
		if (s.nodeType == 1 || blocks || isFullySelected(s, res.so, s.nodeValue.length)) {
//			this.rte.log('start text node is fully selected')
			s = realSelected(s, ca, 'left');
			sf = true;
			res.so = s.nodeType == 1 ? null : 0;
		}
		// конечная нода выделена полностью - поднимаемся наверх по правой стороне
		if (e.nodeType == 1 || blocks || isFullySelected(e, 0,  res.eo)) {
//			this.rte.log('end text node is fully selected')
			e = realSelected(e, ca, 'right');
			ef = true;
			res.eo = e.nodeType == 1 ? null : e.nodeValue.length;
		}

		// блочное выделение - если ноды не элементы - поднимаемся к родителю, но ниже контейнера
		if (blocks) {
			if (s.nodeType != 1 && s.parentNode != ca && s.parentNode.nodeName != 'BODY') {
				s = s.parentNode;
				res.so = null;
			}
			if (e.nodeType != 1 && e.parentNode != ca && e.parentNode.nodeName != 'BODY') {
				e = e.parentNode;
				res.eo = null;
			}
		}

		// если контенер выделен полностью, поднимаемся наверх насколько можно
		if (s.parentNode == e.parentNode && s.parentNode.nodeName != 'BODY' && (sf && this.rte.dom.isFirstNotEmpty(s)) && (ef && this.rte.dom.isLastNotEmpty(e))) {
//			this.rte.log('common parent')
			s = e = s.parentNode;
			res.so = s.nodeType == 1 ? null : 0;
			res.eo = e.nodeType == 1 ? null : e.nodeValue.length;
		}
		// начальная нода == конечной ноде
		if (s == e) {
//			this.rte.log('start is end')
			if (!this.rte.dom.isEmpty(s)) {
				res.nodes.push(s);
			}
			return res;
		}
		 // this.rte.log('start 2')
		  //this.dump(ca, s, e, res.so, res.eo)
		
		// находим начальную и конечную точки - ноды из иерархии родителей начальной и конечно ноды, у которых родитель - контейнер
		var sp = s;
		while (sp.nodeName != 'BODY' && sp.parentNode !== ca && sp.parentNode.nodeName != 'BODY') {
			sp = sp.parentNode;
		}
		//this.rte.log(s.nodeName)
		// this.rte.log('start point')
		// this.rte.log(sp)
		
		var ep = e;
//		this.rte.log(ep)
		while (ep.nodeName != 'BODY' && ep.parentNode !== ca && ep.parentNode.nodeName != 'BODY') {
			// this.rte.log(ep)
			ep = ep.parentNode;
		}
		// this.rte.log('end point')
		// this.rte.log(ep)
		
		
		//  если начальная нода не пустая - добавляем ее
		if (!isEmptySelected(s, res.so, s.nodeType==3 ? s.nodeValue.length : null)) {
			res.nodes.push(s);
		}
		// поднимаемся от начальной ноды до начальной точки
		var n = s;
		while (n !== sp) {
			var _n = n;
			while ((_n = this.rte.dom.next(_n))) {
					res.nodes.push(_n);
			}
			n = n.parentNode;
		}
		// от начальной точки до конечной точки
		n = sp;
		while ((n = this.rte.dom.next(n)) && n!= ep ) {
//			this.rte.log(n)
			res.nodes.push(n);
		}
		// поднимаемся от конечной ноды до конечной точки, результат переворачиваем
		var tmp = [];
		n = e;
		while (n !== ep) {
			var _n = n;
			while ((_n = this.rte.dom.prev(_n))) {
				tmp.push(_n);
			}
			n = n.parentNode;
		}
		if (tmp.length) {
			res.nodes = res.nodes.concat(tmp.reverse());
		}
		//  если конечная нода не пустая и != начальной - добавляем ее
		if (!isEmptySelected(e, 0, e.nodeType==3 ? res.eo : null)) {
			res.nodes.push(e);
		}
		
		if (blocks) {
			// добавляем инлайн соседей слева
			if (this.rte.dom.isInline(s)) {
				res.nodes = this.rte.dom.toLineStart(s).concat(res.nodes);
				res.so    = res.nodes[0].nodeType == 1 ? null : 0;
			}
			// добавляем инлайн соседей справа
			if (this.rte.dom.isInline(e)) {
				res.nodes = res.nodes.concat(this.rte.dom.toLineEnd(e));
				res.eo    = res.nodes[res.nodes.length-1].nodeType == 1 ? null : res.nodes[res.nodes.length-1].nodeValue.length;
			}
		}
		
		// все радуются! :)
		return res;
	}
	
}

})(jQuery);/**
 * @class elRTE User interface controller
 *
 * @param  elRTE  rte объект-редактор
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @todo: this.domElem.removeClass('disabled') - move to ui.update;
 * @todo: add dom and selection as button members
 * Copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui = function(rte) {
	this.rte      = rte;
	this._buttons = [];
	var self      = this,
		tb        = this.rte.options.toolbars[rte.options.toolbar && rte.options.toolbars[rte.options.toolbar] ? rte.options.toolbar : 'normal'],
		tbl       = tb.length,
		p, pname, pl, n, c, b, i;

	// add prototype to all buttons
	for (i in this.buttons) {
		if (this.buttons.hasOwnProperty(i) && i != 'button') {
			this.buttons[i].prototype = this.buttons.button.prototype;
		}
	}

	// create buttons and put on toolbar
	while (tbl--) {
		first = (tbl == 0 ? true : false);
		if (tb[tbl - 1] == 'eol') { first = true; }

		pname = tb[tbl];

		// special 'end of line' panel, starts next panel on a new line
		if (pname == 'eol') {
			$(this.rte.doc.createElement('br')).prependTo(this.rte.toolbar);
			continue;
		}

		p = $('<ul class="panel-'+pname+(first ? ' first' : '')+'" />').prependTo(this.rte.toolbar);
		p.bind('mousedown', function(e) {
			e.preventDefault();
		})
		pl = this.rte.options.panels[pname].length;
		while (pl--) {
			n = this.rte.options.panels[pname][pl];
			c = this.buttons[n] || this.buttons.button;
			this._buttons.push((b = new c(this.rte, n)));
			p.prepend(b.domElem);
		}
	}

	this.update();

	this.disable = function() {
		$.each(self._buttons, function() {
			!this.active && this.domElem.addClass('disabled');
		});
	}

}

/**
 * Обновляет кнопки - вызывает метод update() для каждой кнопки
 *
 * @return void
 **/
elRTE.prototype.ui.prototype.update = function(cleanCache) {
	cleanCache && this.rte.selection.cleanCache();
	var n    = this.rte.selection.getNode(),
		p    = this.rte.dom.parents(n, '*'),
		rtl = this.rte.rtl,
		sep  = rtl ? ' &laquo; ' : ' &raquo; ',
		path = '', name, i;

	function _name(n) {
		var name = n.nodeName.toLowerCase();
		n = $(n)
		if (name == 'img') {
			if (n.hasClass('elrte-media')) {
				name = 'media';
			} else if (n.hasClass('elrte-google-maps')) {
				name = 'google map';
			} else if (n.hasClass('elrte-yandex-maps')) {
				name = 'yandex map';
			} else if (n.hasClass('elrte-pagebreak')) {
				name = 'pagebreak';
			}
		}
		return name;
	}

	if (n && n.nodeType == 1 && n.nodeName != 'BODY') {
		p.unshift(n);
	}

	if (!rtl) {
		p = p.reverse();
	}

	for (i=0; i < p.length; i++) {
		path += (i>0 ? sep : '')+_name(p[i]);
	}

	this.rte.statusbar.html(path);
	$.each(this._buttons, function() {
		this.update();
	});
	this.rte.window.focus();
}



elRTE.prototype.ui.prototype.buttons = {

	/**
	 * @class кнопка на toolbar редактора
	 * реализует поведение по умолчанию и является родителем для других кнопок
	 *
	 * @param  elRTE  rte   объект-редактор
	 * @param  String name  название кнопки (команда исполняемая document.execCommand())
	 **/
	button : function(rte, name) {
		var self     = this;
		this.rte     = rte;
		this.active = false;
		this.name    = name;
		this.val     = null;
		this.domElem = $('<li style="-moz-user-select:-moz-none" class="'+name+' rounded-3" name="'+name+'" title="'+this.rte.i18n(this.rte.options.buttons[name] || name)+'" unselectable="on" />')
			.hover(
				function() { $(this).addClass('hover'); },
				function() { $(this).removeClass('hover'); }
			)
			.click( function(e) {
				e.stopPropagation();
				e.preventDefault();
				if (!$(this).hasClass('disabled')) {
					// try{
						self.command();
					// } catch(e) {
					// 	self.rte.log(e)
					// }
					
				}
				self.rte.window.focus();
			});
	}
}

/**
 * Обработчик нажатия на кнопку на тулбаре. Выполнение команды или открытие окна|меню и тд
 *
 * @return void
 **/
elRTE.prototype.ui.prototype.buttons.button.prototype.command = function() {
	this.rte.history.add();
	try {
		this.rte.doc.execCommand(this.name, false, this.val);
	} catch(e) {
		return this.rte.log('commands failed: '+this.name);
	}

	this.rte.ui.update(true);
}

/**
 * Обновляет состояние кнопки
 *
 * @return void
 **/
elRTE.prototype.ui.prototype.buttons.button.prototype.update = function() {
	try {
		if (!this.rte.doc.queryCommandEnabled(this.name)) {
			return this.domElem.addClass('disabled');
		} else {
			this.domElem.removeClass('disabled');
		}
	} catch (e) {
		return;
	}
	try {
		if (this.rte.doc.queryCommandState(this.name)) {
			this.domElem.addClass('active');
		} else {
			this.domElem.removeClass('active');
		}
	} catch (e) { }
}

})(jQuery);
/*
 * Misc utils for elRTE
 *
 * @param Object rte - editor
 * @todo Подумать, что из этого реально нужно и навести порядок. Возможно часть перенести в ellib
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 */
(function($) {
elRTE.prototype.utils = function(rte) {
	this.rte     = rte;
	this.url     = null;
	// domo arigato, Steave, http://blog.stevenlevithan.com/archives/parseuri
	this.reg     = /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/;
	this.baseURL = '';
	this.path    = '';
	/**
	 * entities map
	 **/
	this.entities = {'&' : '&amp;', '"' : '&quot;', '<' : '&lt;', '>' : '&gt;'};
	/**
	 * entities regexp
	 **/
	this.entitiesRegExp = /[<>&\"]/g;
	/**
	 * media info
	 **/
	this.media = [{ 
			type     : 'application/x-shockwave-flash', 
			classid  : ['clsid:d27cdb6e-ae6d-11cf-96b8-444553540000'], 
			codebase : 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0' 
		}, { 
			type     : 'application/x-director', 
			classid  : ['clsid:166b1bca-3f9c-11cf-8075-444553540000'], 
			codebase : 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0' 
		}, { 
			type     : 'application/x-mplayer2', 
			classid  : ['clsid:6bf52a52-394a-11d3-b153-00c04f79faa6', 'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95', 'clsid:05589fa1-c356-11ce-bf01-00aa0055595a'], 
			codebase : 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701' 
		}, { 
			type     : 'video/quicktime', 
			classid  : ['clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b'], 
			codebase : 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0' 
		}, { 
			type     : 'audio/x-pn-realaudio-plugin', 
			classid  : ['clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa'], 
			codebase : 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'
		}];
	
	// rgb color regexp
	this.rgbRegExp = /\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*/i;
	// regexp to detect color in border/background properties
	this.colorsRegExp = /aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|rgb\s*\([^\)]+\)/i;
	// web safe colors
	this.colors = {
		aqua    : '#00ffff',
		black   : '#000000',
		blue    : '#0000ff',
		fuchsia : '#ff00ff',
		gray    : '#808080',
		green   : '#008000',
		lime    : '#00ff00',
		maroon  : '#800000',
		navy    : '#000080',
		olive   : '#808000',
		orange  : '#ffa500',
		purple  : '#800080',
		red     : '#ff0000',
		silver  : '#c0c0c0',
		teal    : '#008080',
		white   : '#fffffff',
		yellow  : '#ffff00'
	}
	
	var self     = this;
	
	this.rgb2hex = function(str) {
		return this.color2Hex(''+str)
	}
	
	this.toPixels = function(num) {
		var m = num.match(/([0-9]+\.?[0-9]*)\s*(px|pt|em|%)/);
		if (m) {
			num  = m[1];
			unit = m[2];
		} 
		if (num[0] == '.') {
			num = '0'+num;
		}
		num = parseFloat(num);

		if (isNaN(num)) {
			return '';
		}
		var base = parseInt($(document.body).css('font-size')) || 16;
		switch (unit) {
			case 'em': return parseInt(num*base);
			case 'pt': return parseInt(num*base/12);
			case '%' : return parseInt(num*base/100);
		}
		return num;
	}
	
	// TODO: add parse rel path ../../etc
	this.absoluteURL = function(url) {
		!this.url && this._url();
		url = $.trim(url);
		if (!url) {
			return '';
		}
		// ссылки на якоря не переводим в абс
		if (url[0] == '#') {
			return url;
		}
		var u = this.parseURL(url);

		if (!u.host && !u.path && !u.anchor) {
			//this.rte.log('Invalid URL: '+url)
			return '';
		}
		if (!this.rte.options.absoluteURLs) { 
			return url;
		}
		if (u.protocol) {
			//this.rte.log('url already absolute: '+url);
			return url;
		}
		if (u.host && (u.host.indexOf('.')!=-1 || u.host == 'localhost')) {
			//this.rte.log('no protocol');
			return this.url.protocol+'://'+url;
		}
		if (url[0] == '/') {
			url = this.baseURL+url;
		} else {
			if (url.indexOf('./') == 0) {
				url = url.substring(2);
			}
			url = this.baseURL+this.path+url;
		}
		return url;
	}
	
	this.parseURL = function(url) {
		var u   = url.match(this.reg);
		var ret = {};
		$.each(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"], function(i) {
			ret[this] = u[i];
		});
		if (!ret.host.match(/[a-z0-9]/i)) {
			ret.host = '';
		}
		return ret;
	}
	
	this.trimEventCallback = function(c) {
		c = c ? c.toString() : '';
		return $.trim(c.replace(/\r*\n/mg, '').replace(/^function\s*on[a-z]+\s*\(\s*event\s*\)\s*\{(.+)\}$/igm, '$1'));
	}
	
	this._url = function() {
		this.url     = this.parseURL(window.location.href);
		this.baseURL = this.url.protocol+'://'+(this.url.userInfo ?  parts.userInfo+'@' : '')+this.url.host+(this.url.port ? ':'+this.url.port : '');
		this.path    = !this.url.file ? this.url.path : this.url.path.substring(0, this.url.path.length - this.url.file.length);
	}


	/**
	 * Create object (map) from array
	 *
	 * @param   Array
	 * @return  Object
	 **/
	this.makeObject = function(o) {
		var m = {};
		$.each(o, function(i, e) {
			m[e] = e;
		});
		return m;
	}

	/**
	 * Encode entities in string
	 *
	 * @param   String
	 * @return  String
	 **/
	this.encode = function(s) {
		var e = this.entities;
		return (''+s).replace(this.entitiesRegExp, function(c) {
			return e[c];
		});
	}
	
	/**
	 * Decode entities in string
	 *
	 * @param   String
	 * @return  String
	 **/
	this.decode = function(s) {
		return $('<div/>').html(s||'').text();
	}
	
	/**
	 * Parse style string into object
	 *
	 * @param   String
	 * @return  Object
	 **/
	this.parseStyle = function(s) {
		var st = {}, a = this.rte.options.allowBrowsersSpecStyles, t, n, v, p;
		
		if (typeof(s) == 'string' && s.length) {
			
			$.each(s.replace(/&quot;/gi, "'").split(';'), function(i, str) {
				if ((p = str.indexOf(':')) !== -1) {
					n = $.trim(str.substr(0, p));
					v = $.trim(str.substr(p+1))
					if (n == 'color' || n == 'background-color') {
						v = v.toLowerCase();
					}
					if (n && v && (a || n.substring(0, 1) != '-')) {
						st[n] = v;
					}
				}
			});
		}
		return st;
	}
	
	
	/**
	 * Compact some style properties and convert colors in hex
	 *
	 * @param   Object
	 * @return  Object
	 **/
	this.compactStyle = function(s) {
		var self = this;

		if (s.border == 'medium none') {
			delete s.border;
		}
		
		$.each(s, function(n, v) {
			if (/color$/i.test(n)) {
				s[n] = self.color2Hex(v);
			} else if (/^(border|background)$/i.test(n)) {
				s[n] = v.replace(self.colorsRegExp, function(m) {
					return self.color2Hex(m);
				});
			}
		});
		
		if (s['border-width']) {
			s.border = s['border-width']+' '+(s['border-style']||'solid')+' '+(s['border-color']||'#000');
			delete s['border-width'];
			delete s['border-style'];
			delete s['border-color'];
		}
		
		if (s['background-image']) {
			s.background = (s['background-color']+' ')||''+s['background-image']+' '+s['background-position']||'0 0'+' '+s['background-repeat']||'repeat';
			delete s['background-image'];
			delete['background-image'];
			delete['background-position'];
			delete['background-repeat'];
		}
		
		if (s['margin-top'] && s['margin-right'] && s['margin-bottom'] && s['margin-left']) {
			s.margin = s['margin-top']+' '+s['margin-right']+' '+s['margin-bottom']+' '+s['margin-left'];
			delete s['margin-top'];
			delete s['margin-right'];
			delete s['margin-bottom'];
			delete s['margin-left'];
		}
		
		if (s['padding-top'] && s['padding-right'] && s['padding-bottom'] && s['padding-left']) {
			s.padding = s['padding-top']+' '+s['padding-right']+' '+s['padding-bottom']+' '+s['padding-left'];
			delete s['padding-top'];
			delete s['padding-right'];
			delete s['padding-bottom'];
			delete s['padding-left'];
		}
		
		if (s['list-style-type'] || s['list-style-position'] || s['list-style-image']) {
			s['list-style'] = $.trim(s['list-style-type']||' '+s['list-style-position']||''+s['list-style-image']||'');
			delete s['list-style-type'];
			delete s['list-style-position'];
			delete s['list-style-image'];
		}
		
		return s;
	}
	
	/**
	 * Serialize style object into string
	 *
	 * @param   Object  style map
	 * @param   Boolean flag - compact style?
	 * @return  String
	 **/
	this.serializeStyle = function(o, c) {
		var s = [];
		// c=true
		$.each(c ? this.compactStyle(o) : o, function(n, v) {
			v && s.push(n+':'+v);
		});
		return s.join(';');
	}

	/**
	 * Parse class string into object
	 *
	 * @param   String
	 * @return  Object
	 **/
	this.parseClass = function(c) {
		c = $.trim(c); 
		// this.rte.log(c)
		return c.length ? this.makeObject(c.split(/\s+/)) : {};
		return c.length ? c.split(/\s+/) : [];
	}

	/**
	 * Serialize class object into string
	 *
	 * @param   Object
	 * @return  String
	 **/
	this.serializeClass = function(c) {
		// return c.join(' ')
		var s = [];
		// this.rte.log(c)
		var rte = this.rte
		$.each(c, function(n) {
			s.push(n);
			// rte.log(typeof(n))
		});
		return s.join(' ');
	}
	
	/**
	 * Return required media type info
	 *
	 * @param   String  mimetype
	 * @param   String  classid
	 * @return  Object
	 **/
	this.mediaInfo = function(t, c) {
		var l = this.media.length;
		
		while (l--) {
			if (t === this.media[l].type || (c && $.inArray(c, this.media[l].classid) != -1)) {
				return this.media[l];
			}
		}
	}

	/**
	 * Return color hex value
	 *
	 * @param   String   color name or rgb
	 * @return  String
	 **/
	this.color2Hex = function(c) {
		var m;
		
		c = c||'';
		
		if (c.indexOf('#') === 0) {
			return c;
		}
		
		
		function hex(s) {
			s = parseInt(s).toString(16);
			return s.length > 1 ? s : '0' + s; 
		};
		
		if (this.colors[c]) {
			return this.colors[c];
		}
		if ((m = c.match(this.rgbRegExp))) {
			return '#'+hex(m[1])+hex(m[2])+hex(m[3]);
		}
		return '';
	}
	

	
	
}

})(jQuery);/**
 * @class w3cRange  - w3c text range emulation for "strange" browsers
 *
 * @param  elRTE  rte  объект-редактор
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.w3cRange = function(rte) {
	var self                     = this;
	this.rte                     = rte;
	this.r                       = null;
	this.collapsed               = true;
	this.startContainer          = null;
	this.endContainer            = null;
	this.startOffset             = 0;
	this.endOffset               = 0;
	this.commonAncestorContainer = null;
	
	this.range = function() {
		try { 
			this.r = this.rte.window.document.selection.createRange(); 
		} catch(e) { 
			this.r = this.rte.doc.body.createTextRange(); 
		}
		return this.r;
	}
	
	this.insertNode = function(html) {
		this.range();
		self.r.collapse(false)
		var r = self.r.duplicate();
		r.pasteHTML(html);
	}
	
	this.getBookmark = function() {
		this.range();
		if (this.r.item) {
			var n = this.r.item(0);
			this.r = this.rte.doc.body.createTextRange();
			this.r.moveToElementText(n);
		}
		return this.r.getBookmark();
	}
	
	this.moveToBookmark = function(bm) {
		this.rte.window.focus();
		this.range().moveToBookmark(bm);
		this.r.select();
	}
	
	/**
	 * Обновляет данные о выделенных нодах
	 *
	 * @return void
	 **/
	this.update = function() {

		function _findPos(start) {
			var marker = '\uFEFF';
			var ndx = offset = 0;
			var r = self.r.duplicate();
			r.collapse(start);
			var p = r.parentElement();
			if (!p || p.nodeName == 'HTML') {
				return {parent : self.rte.doc.body, ndx : ndx, offset : offset};
			}

			r.pasteHTML(marker);
			
			childs = p.childNodes;
			for (var i=0; i < childs.length; i++) {
				var n = childs[i];
				if (i>0 && (n.nodeType!==3 || childs[i-1].nodeType !==3)) {
					ndx++;
				}
				if (n.nodeType !== 3) {
					offset = 0;
				} else {
					var pos = n.nodeValue.indexOf(marker);
					if (pos !== -1) {
						offset += pos;
						break;
					}
					offset += n.nodeValue.length;
				}
			};
			r.moveStart('character', -1);
			r.text = '';
			return {parent : p, ndx : Math.min(ndx, p.childNodes.length-1), offset : offset};
		}

		this.range();
		this.startContainer = this.endContainer = null;

		if (this.r.item) {
			this.collapsed = false;
			var i = this.r.item(0);
			this.setStart(i.parentNode, this.rte.dom.indexOf(i));
			this.setEnd(i.parentNode, this.startOffset+1);
		} else {
			this.collapsed = this.r.boundingWidth == 0;
			var start = _findPos(true); 
			var end   = _findPos(false);
			
			start.parent.normalize();
			end.parent.normalize();
			start.ndx = Math.min(start.ndx, start.parent.childNodes.length-1);
			end.ndx = Math.min(end.ndx, end.parent.childNodes.length-1);
			if (start.parent.childNodes[start.ndx].nodeType && start.parent.childNodes[start.ndx].nodeType == 1) {
				this.setStart(start.parent, start.ndx);
			} else {
				this.setStart(start.parent.childNodes[start.ndx], start.offset);
			}
			if (end.parent.childNodes[end.ndx].nodeType && end.parent.childNodes[end.ndx].nodeType == 1) {
				this.setEnd(end.parent, end.ndx);
			} else {
				this.setEnd(end.parent.childNodes[end.ndx], end.offset);
			}
			// this.dump();
			this.select();
		}
		return this;
	}
	
	this.isCollapsed = function() {
		this.range();
		this.collapsed = this.r.item ? false : this.r.boundingWidth == 0;
		return this.collapsed;
	}
	
	/**
	 * "Схлопывает" выделение
	 *
	 * @param  bool  toStart - схлопывать выделение к началу или к концу
	 * @return void
	 **/
	this.collapse = function(toStart) {
		this.range();
		if (this.r.item) {
			var n = this.r.item(0);
			this.r = this.rte.doc.body.createTextRange();
			this.r.moveToElementText(n);
		}
		this.r.collapse(toStart);
		this.r.select();
		this.collapsed = true;
	}

	this.getStart = function() {
		this.range();
		if (this.r.item) {
			return this.r.item(0);
		}
		var r = this.r.duplicate();
		r.collapse(true);
		var s = r.parentElement();
		return s && s.nodeName == 'BODY' ? s.firstChild : s;
	}
	
	
	this.getEnd = function() {
		this.range();
		if (this.r.item) {
			return this.r.item(0);
		}
		var r = this.r.duplicate();
		r.collapse(false);
		var e = r.parentElement();
		return e && e.nodeName == 'BODY' ? e.lastChild : e;
	}

	
	/**
	 * Устанавливает начaло выделения на указаную ноду
	 *
	 * @param  Element  node    нода
	 * @param  Number   offset  отступ от начала ноды
	 * @return void
	 **/
	this.setStart = function(node, offset) {
		this.startContainer = node;
		this.startOffset    = offset;
		if (this.endContainer) {
			this.commonAncestorContainer = this.rte.dom.findCommonAncestor(this.startContainer, this.endContainer);
		}
	}
	
	/**
	 * Устанавливает конец выделения на указаную ноду
	 *
	 * @param  Element  node    нода
	 * @param  Number   offset  отступ от конца ноды
	 * @return void
	 **/
	this.setEnd = function(node, offset) {
		this.endContainer = node;
		this.endOffset    = offset;
		if (this.startContainer) {
			this.commonAncestorContainer = this.rte.dom.findCommonAncestor(this.startContainer, this.endContainer);
		}
	}
	
	/**
	 * Устанавливает начaло выделения перед указаной нодой
	 *
	 * @param  Element  node    нода
	 * @return void
	 **/
	this.setStartBefore = function(n) {
		if (n.parentNode) {
			this.setStart(n.parentNode, this.rte.dom.indexOf(n));
		}
	}
	
	/**
	 * Устанавливает начaло выделения после указаной ноды
	 *
	 * @param  Element  node    нода
	 * @return void
	 **/
	this.setStartAfter = function(n) {
		if (n.parentNode) {
			this.setStart(n.parentNode, this.rte.dom.indexOf(n)+1);
		}
	}
	
	/**
	 * Устанавливает конец выделения перед указаной нодой
	 *
	 * @param  Element  node    нода
	 * @return void
	 **/
	this.setEndBefore = function(n) {
		if (n.parentNode) {
			this.setEnd(n.parentNode, this.rte.dom.indexOf(n));
		}
	}
	
	/**
	 * Устанавливает конец выделения после указаной ноды
	 *
	 * @param  Element  node    нода
	 * @return void
	 **/
	this.setEndAfter = function(n) {
		if (n.parentNode) {
			this.setEnd(n.parentNode, this.rte.dom.indexOf(n)+1);
		}
	}
	
	/**
	 * Устанавливает новое выделение после изменений
	 *
	 * @return void
	 **/
	this.select = function() {
		// thanks tinymice authors
		function getPos(n, o) {
			if (n.nodeType != 3) {
				return -1;
			}
			var c   ='\uFEFF';
			var val = n.nodeValue;
			var r   = self.rte.doc.body.createTextRange();
			n.nodeValue = val.substring(0, o) + c + val.substring(o);
			r.moveToElementText(n.parentNode);
			r.findText(c);
			var p = Math.abs(r.moveStart('character', -0xFFFFF));
			n.nodeValue = val;
			return p;
		};
		
		this.r = this.rte.doc.body.createTextRange(); 
		var so = this.startOffset;
		var eo = this.endOffset;
		var s = this.startContainer.nodeType == 1 
			? this.startContainer.childNodes[Math.min(so, this.startContainer.childNodes.length - 1)]
			: this.startContainer;
		var e = this.endContainer.nodeType == 1 
			? this.endContainer.childNodes[Math.min(so == eo ? eo : eo - 1, this.endContainer.childNodes.length - 1)]
			: this.endContainer;

		if (this.collapsed) {
			if (s.nodeType == 3) {
				var p = getPos(s, so);
				this.r.move('character', p);
			} else {
				this.r.moveToElementText(s);
				this.r.collapse(true);
			}
		} else {
			var r  = this.rte.doc.body.createTextRange(); 
			var sp = getPos(s, so);
			var ep = getPos(e, eo);
			if (s.nodeType == 3) {
				this.r.move('character', sp);
			} else {
				this.r.moveToElementText(s);
			}
			if (e.nodeType == 3) {
				r.move('character', ep);
			} else {
				r.moveToElementText(e);
			}
			this.r.setEndPoint('EndToEnd', r);
		}
		
		try {
			this.r.select();
		} catch(e) {
			
		}
		if (r) {
			r = null;
		}
	}
	
	this.dump = function() {
		this.rte.log('collapsed: '+this.collapsed);
		//this.rte.log('commonAncestorContainer: '+this.commonAncestorContainer.nodeName||'#text')
		this.rte.log('startContainer: '+(this.startContainer ? this.startContainer.nodeName : 'non'));
		this.rte.log('startOffset: '+this.startOffset);
		this.rte.log('endContainer: '+(this.endContainer ? this.endContainer.nodeName : 'none'));
		this.rte.log('endOffset: '+this.endOffset);
	}
	
}
})(jQuery);
(function($) {
	elRTE.prototype.ui.prototype.buttons.about = function(rte, name)  {
		
		this.constructor.prototype.constructor.call(this, rte, name);
		this.active  = true;
		this.command = function() {
			var opts, d, txt;
			
			opts = {
				rtl : rte.rtl,
				submit : function(e, d) {  d.close(); },
				dialog : {
					width : 560,
					title : this.rte.i18n('About this software'),
					buttons     : {
						Ok : function() { $(this).dialog('destroy'); }
					}
				}
			}

			txt = '<div class="elrte-logo"></div><h3>'+this.rte.i18n('About elRTE')+'</h3><br clear="all"/>'
				+'<div class="elrte-ver">'+this.rte.i18n('Version')+': '+this.rte.version+' ('+this.rte.build+')</div>' 
				+'<div class="elrte-ver">jQuery: '+$('<div/>').jquery+'</div>' 
				+'<div class="elrte-ver">jQueryUI: '+$.ui.version+'</div>' 
				+'<div class="elrte-ver">'+this.rte.i18n('Licence')+': BSD Licence</div>'
				+'<p>'
				+this.rte.i18n('elRTE is an open-source JavaScript based WYSIWYG HTML-editor.')+'<br/>'
				+this.rte.i18n('Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.')+'<br/>'
				+this.rte.i18n('You can use it in any commercial or non-commercial projects.')
				+'</p>'
				+'<h4>'+this.rte.i18n('Authors')+'</h4>'
				+'<table class="elrte-authors">'
				+'<tr><td>Dmitry (dio) Levashov &lt;dio@std42.ru&gt;</td><td>'+this.rte.i18n('Chief developer')+'</td></tr>'
				+'<tr><td>Troex Nevelin &lt;troex@fury.scancode.ru&gt;</td><td>'+this.rte.i18n('Developer, tech support')+'</td></tr>'
				+'<tr><td>Valentin Razumnyh &lt;content@std42.ru&gt;</td><td>'+this.rte.i18n('Interface designer')+'</td></tr>'
				+'<tr><td>Tawfek Daghistani &lt;tawfekov@gmail.com&gt;</td><td>'+this.rte.i18n('RTL support')+'</td></tr>'
				+(this.rte.options.lang != 'en' ? '<tr><td>'+this.rte.i18n('_translator')+'</td><td>'+this.rte.i18n('_translation')+'</td></tr>' : '')
				+'</table>'
				+'<div class="elrte-copy">Copyright &copy; 2009-2011, <a href="http://www.std42.ru">Studio 42</a></div>'
				+'<div class="elrte-copy">'+this.rte.i18n('For more information about this software visit the')+' <a href="http://elrte.org">'+this.rte.i18n('elRTE website')+'.</a></div>'
				+'<div class="elrte-copy">Twitter: <a href="http://twitter.com/elrte_elfinder">elrte_elfinder</a></div>';
			
			d = new elDialogForm(opts);
			d.append(txt);
			d.open();
		}
		
		this.update = function() {
			this.domElem.removeClass('disabled');
		}
		
	}
	
})(jQuery);
/**
 * @class кнопка - Закладка (открывает диалоговое окно)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.anchor = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	this.input = $('<input type="text" />').attr('name', 'anchor').attr('size', '16')
	var self = this;
	
	this.command = function() {
		var opts = {
			rtl : this.rte.rtl,
			submit : function(e, d) { e.stopPropagation(); e.preventDefault(); d.close(); self.set();  },
			dialog : {
				title : this.rte.i18n('Bookmark')
			}
		}

		
		this.anchor = this.rte.dom.selfOrParentAnchor(this.rte.selection.getEnd()) || rte.dom.create('a');
		!this.rte.selection.collapsed() && this.rte.selection.collapse(false);
		this.input.val($(this.anchor).addClass('elrte-anchor').attr('name'));
		this.rte.selection.saveIERange();
		var d = new elDialogForm(opts);
		d.append([this.rte.i18n('Bookmark name'), this.input], null, true).open();
		setTimeout(function() { self.input.focus()}, 20);
	}
	
	this.update = function() {
		var n = this.rte.selection.getNode();
		if (this.rte.dom.selfOrParentLink(n)) {
			this.domElem.addClass('disabled');
		} else if (this.rte.dom.selfOrParentAnchor(n)) {
			this.domElem.removeClass('disabled').addClass('active');
		} else {
			this.domElem.removeClass('disabled').removeClass('active');
		}
	}
	
	this.set = function() {
		var n = $.trim(this.input.val());

		if (n) {
			this.rte.history.add();
			if (!this.anchor.parentNode) {
				this.rte.selection.insertHtml('<a name="'+n+'" title="'+this.rte.i18n('Bookmark')+': '+n+'" class="elrte-anchor"></a>');
			} else {
				this.anchor.name = n;
				this.anchor.title = this.rte.i18n('Bookmark')+': '+n;
			}
		} else if (this.anchor.parentNode) {
			this.rte.history.add();
			this.anchor.parentNode.removeChild(this.anchor);
		}
	}
}
})(jQuery);
/**
 * @class кнопка - Цитата
 * Если выделение схлопнуто и находится внутри цитаты - она удаляется
 * Новые цитаты создаются только из несхлопнутого выделения
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.blockquote = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		var n, nodes;
		this.rte.history.add();
		if (this.rte.selection.collapsed() && (n = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^BLOCKQUOTE$/))) {
			$(n).replaceWith($(n).html());
		} else {
			nodes = this.rte.selection.selected({wrap : 'all', tag : 'blockquote'});
			nodes.length && this.rte.selection.select(nodes[0], nodes[nodes.length-1]);
		}
		this.rte.ui.update(true);
	}
	
	this.update = function() {
		if (this.rte.selection.collapsed()) {
			if (this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^BLOCKQUOTE$/)) {
				this.domElem.removeClass('disabled').addClass('active');
			} else {
				this.domElem.addClass('disabled').removeClass('active');
			}
		} else {
			this.domElem.removeClass('disabled active');
		}
	}
}
})(jQuery);
/**
 * @class кнопки "копировать/вырезать/вставить" 
 * в firefox показывает предложение нажать Ctl+c, в остальных - копирует
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.copy = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		
		if (this.rte.browser.mozilla) {
			try {
				this.rte.doc.execCommand(this.name, false, null);
			} catch (e) {
				var s = ' Ctl + C';
				if (this.name == 'cut') {
					s = ' Ctl + X';
				} else if (this.name == 'paste') {
					s = ' Ctl + V';
				}
				var opts = {
					dialog : {
						title   : this.rte.i18n('Warning'),
						buttons : { Ok : function() { $(this).dialog('close'); } }
					}
				}

				var d = new elDialogForm(opts);
				d.append(this.rte.i18n('This operation is disabled in your browser on security reason. Use shortcut instead.')+': '+s).open();
			}
		} else {
			this.constructor.prototype.command.call(this);
		}
	}
}

elRTE.prototype.ui.prototype.buttons.cut   = elRTE.prototype.ui.prototype.buttons.copy;
elRTE.prototype.ui.prototype.buttons.paste = elRTE.prototype.ui.prototype.buttons.copy;

})(jQuery);(function($) {
	
	elRTE.prototype.ui.prototype.buttons.css = function(rte, name) {
		var self = this;
		this.constructor.prototype.constructor.call(this, rte, name);
		this.cssStyle  = $('<input type="text" size="42" name="style" />');
		this.cssClass  = $('<input type="text" size="42" name="class" />');
		this.elementID = $('<input type="text" size="42" name="id" />');
		
		this.command = function() {
			var n = this.node(), opts;
			this.rte.selection.saveIERange();
			if (n) {
				var opts = {
					
					submit : function(e, d) { e.stopPropagation(); e.preventDefault(); d.close(); self.set();  },
					dialog : {
						title : this.rte.i18n('Style'),
						width : 450,
						resizable : true,
						modal : true
					}
				}
				this.cssStyle.val($(n).attr('style'));
				this.cssClass.val($(n).attr('class'));
				this.elementID.val($(n).attr('id'));
				var d = new elDialogForm(opts);
				d.append([this.rte.i18n('Css style'), this.cssStyle],  null, true)
				d.append([this.rte.i18n('Css class'), this.cssClass],  null, true)
				d.append([this.rte.i18n('ID'),        this.elementID], null, true)
				d.open();
				setTimeout(function() { self.cssStyle.focus() }, 20)
			}
		}
		
		this.set = function() {
			var n = this.node();
			this.rte.selection.restoreIERange();
			if (n) {
				$(n).attr('style', this.cssStyle.val());
				$(n).attr('class', this.cssClass.val());
				$(n).attr('id',    this.elementID.val());
				this.rte.ui.update();
			}
		}
		
		this.node = function() {
			var n = this.rte.selection.getNode();
			if (n.nodeType == 3) {
				n = n.parentNode;
			}
			return n.nodeType == 1 && n.nodeName != 'BODY' ? n : null;
		}
		
		this.update = function() {
			this.domElem.toggleClass('disabled', this.node()?false:true);
		}
		
	}
	
})(jQuery);

(function($) {
	/**
	 * @class button - right to left direction (not work yet with text nodes in body)
	 *
	 * @param  elRTE  rte   объект-редактор
	 * @param  String name  название кнопки 
	 *
	 * @author:    Dmitry Levashov (dio) dio@std42.ru
	 * Copyright: Studio 42, http://www.std42.ru
	 **/
	elRTE.prototype.ui.prototype.buttons.rtl = function(rte, name)  {
		this.constructor.prototype.constructor.call(this, rte, name);
		var self = this;
	
		this.command = function() {
			var n = this.rte.selection.getNode(), self = this;
			if ($(n).attr('dir') == 'rtl' || $(n).parents('[dir="rtl"]').length || $(n).find('[dir="rtl"]').length) {
				$(n).removeAttr('dir');
				$(n).parents('[dir="rtl"]').removeAttr('dir');
				$(n).find('[dir="rtl"]').removeAttr('dir');
			} else {
				if (this.rte.dom.is(n, 'textNodes') && this.rte.dom.is(n, 'block')) {
					$(n).attr('dir', 'rtl');
				} else {
					$.each(this.rte.dom.parents(n, 'textNodes'), function(i, n) {
						if (self.rte.dom.is(n, 'block')) {
							$(n).attr('dir', 'rtl');
							return false;
						}
					});
				}
			}
			this.rte.ui.update();
		}

		this.update = function() {
			var n = this.rte.selection.getNode();
			this.domElem.removeClass('disabled');
			if ($(n).attr('dir') == 'rtl' || $(n).parents('[dir="rtl"]').length || $(n).find('[dir="rtl"]').length) {
				this.domElem.addClass('active');
			} else {
				this.domElem.removeClass('active');
			}
		}
	}
	
	/**
	 * @class button - left to right direction (not work yet with text nodes in body)
	 *
	 * @param  elRTE  rte   объект-редактор
	 * @param  String name  название кнопки 
	 *
	 * @author:    Dmitry Levashov (dio) dio@std42.ru
	 * Copyright: Studio 42, http://www.std42.ru
	 **/
	elRTE.prototype.ui.prototype.buttons.ltr = function(rte, name)  {
		this.constructor.prototype.constructor.call(this, rte, name);
		var self = this;
	
		this.command = function() {
			var n = this.rte.selection.getNode(), self = this;
			if ($(n).attr('dir') == 'ltr' || $(n).parents('[dir="ltr"]').length || $(n).find('[dir="ltr"]').length) {
				$(n).removeAttr('dir');
				$(n).parents('[dir="ltr"]').removeAttr('dir');
				$(n).find('[dir="ltr"]').removeAttr('dir');
			} else {
				if (this.rte.dom.is(n, 'textNodes') && this.rte.dom.is(n, 'block')) {
					$(n).attr('dir', 'ltr');
				} else {
					$.each(this.rte.dom.parents(n, 'textNodes'), function(i, n) {
						if (self.rte.dom.is(n, 'block')) {
							$(n).attr('dir', 'ltr');
							return false;
						}
					});
				}
			}
			this.rte.ui.update();
		}

		this.update = function() {
			var n = this.rte.selection.getNode();
			this.domElem.removeClass('disabled');
			if ($(n).attr('dir') == 'ltr' || $(n).parents('[dir="ltr"]').length || $(n).find('[dir="ltr"]').length) {
				this.domElem.addClass('active');
			} else {
				this.domElem.removeClass('active');
			}
		}
	}
	
})(jQuery);/**
 * @class кнопка - DIV
 * Если выделение схлопнуто и находится внутри div'a - он удаляется
 * Новые div'ы создаются только из несхлопнутого выделения
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 * 
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.div = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		var n, nodes;
		this.rte.history.add();

		if (this.rte.selection.collapsed()) {
			n = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^DIV$/);
			if (n) {
				$(n).replaceWith($(n).html());
			}
		} else {
			nodes = this.rte.selection.selected({wrap : 'all', tag : 'div'});
			nodes.length && this.rte.selection.select(nodes[0], nodes[nodes.length-1]);
		}
		this.rte.ui.update(true);
	}
	
	this.update = function() {
		if (this.rte.selection.collapsed()) {
			if (this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^DIV$/)) {
				this.domElem.removeClass('disabled').addClass('active');
			} else {
				this.domElem.addClass('disabled active');
			}
		} else {
			this.domElem.removeClass('disabled active');
		}
	}
}
})(jQuery);
/**
 * @class кнопка - Включение/выключение показа структуры документа
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 * 
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.docstructure = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		this.domElem.toggleClass('active');
		$(this.rte.doc.body).toggleClass('el-rte-structure');
	}
	this.command();
	
	this.update = function() {	
		this.domElem.removeClass('disabled');
	}
}
})(jQuery);
/**
 * @class button - open elfinder window (not needed for image or link buttons).Used in ELDORADO.CMS for easy file manipulations.
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.elfinder = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this,
		rte = this.rte;
	this.command = function() {
		if (self.rte.options.fmAllow && typeof(self.rte.options.fmOpen) == 'function') {
			self.rte.options.fmOpen( function(url) { 
				var name = decodeURIComponent(url.split('/').pop().replace(/\+/g, " "));
				
				if (rte.selection.collapsed()) {
					rte.selection.insertHtml('<a href="'+url+'" >'+name+'</a>');
				} else {
					rte.doc.execCommand('createLink', false, url);
				}
				
			} );
		}
	}
	
	this.update = function() {
		if (self.rte.options.fmAllow && typeof(self.rte.options.fmOpen) == 'function') {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}

})(jQuery);
(function($) {
	
	elRTE.prototype.ui.prototype.buttons.flash = function(rte, name) {
		this.constructor.prototype.constructor.call(this, rte, name);
		var self = this;
		this.swf = null;
		this.placeholder = null;
		this.src = {
			url    : $('<input type="text" name="url" />').css('width', '99%'),
			type   : $('<select name="type"/>')
						.append('<option value="application/x-shockwave-flash">Flash</option>')
						.append('<option value="video/quicktime">Quicktime movie</option>')
						.append('<option value="application/x-mplayer2">Windows media</option>'),
			width  : $('<input type="text" />').attr('size', 5).css('text-align', 'right'),
			height : $('<input type="text" />').attr('size', 5).css('text-align', 'right'),
			wmode  : $('<select />')
						.append($('<option />').val('').text(this.rte.i18n('Not set', 'dialogs')))
						.append($('<option />').val('transparent').text(this.rte.i18n('Transparent'))),
			align  : $('<select />')
						.append($('<option />').val('').text(this.rte.i18n('Not set', 'dialogs')))
						.append($('<option />').val('left'       ).text(this.rte.i18n('Left')))
						.append($('<option />').val('right'      ).text(this.rte.i18n('Right')))
						.append($('<option />').val('top'        ).text(this.rte.i18n('Top')))
						.append($('<option />').val('text-top'   ).text(this.rte.i18n('Text top')))
						.append($('<option />').val('middle'     ).text(this.rte.i18n('middle')))
						.append($('<option />').val('baseline'   ).text(this.rte.i18n('Baseline')))
						.append($('<option />').val('bottom'     ).text(this.rte.i18n('Bottom')))
						.append($('<option />').val('text-bottom').text(this.rte.i18n('Text bottom'))),
			margin : $('<div />')
		}
		
		this.command = function() {

			var n = this.rte.selection.getEnd(), opts, url='', w='', h='', f, a, d, mid, o, wm;
			this.rte.selection.saveIERange();
			this.src.margin.elPaddingInput({ type : 'margin' });
			this.placeholder = null;
			this.swf = null;
			if ($(n).hasClass('elrte-media') && (mid = $(n).attr('rel')) &&  this.rte.filter.scripts[mid]) {
				this.placeholder = $(n);
				o = this.rte.filter.scripts[mid];
				url = '';
				if (o.embed && o.embed.src) {
					url = o.embed.src;
				}
				if (o.params && o.params.length) {
					l = o.params.length;
					while (l--) {
						if (o.params[l].name == 'src' || o.params[l].name == 'movie') {
							url =  o.params[l].value;
						}
					}
				}
				
				if (o.embed) {
					w = o.embed.width||parseInt(o.embed.style.width)||'';
					h = o.embed.height||parseInt(o.embed.style.height)||'';
					wm = o.embed.wmode||'';
				} else if (o.obj) {
					w = o.obj.width||parseInt(o.obj.style.width)||'';
					h = o.obj.height||parseInt(o.obj.style.height)||'';
					wm = o.obj.wmode||'';
				}
				
				if (o.obj) {
					f = o.obj.style['float']||'';
					a = o.obj.style['vertical-align']||'';
				} else if (o.embed) {
					f = o.embed.style['float']||'';
					a = o.embed.style['vertical-align']||'';
				}
				this.src.margin.val(n);
				this.src.type.val(o.embed ? o.embed.type : '');
			}
			if ($(n).hasClass('elrte-swf-placeholder')) {
				this.placeholder = $(n);
				url = $(n).attr('rel');
				w = parseInt($(n).css('width'))||'';
				h = parseInt($(n).css('height'))||'';
				f = $(n).css('float');
				a = $(n).css('vertical-align');
				this.src.margin.val(n);
				this.src.wmode.val($(n).attr('wmode'));
			} 
			this.src.url.val(url);
			this.src.width.val(w);
			this.src.height.val(h);
			this.src.align.val(f||a);
			this.src.wmode.val(wm);
			

			

			var opts = {
				rtl : this.rte.rtl,
				submit : function(e, d) { e.stopPropagation(); e.preventDefault(); self.set(); d.close(); },
				dialog : {
					width    : 580,
					position : 'top',
					title    : this.rte.i18n('Flash')
				}
			}
			var d = new elDialogForm(opts);
			
			if (this.rte.options.fmAllow && this.rte.options.fmOpen) {
				var src = $('<span />').append(this.src.url.css('width', '85%'))
						.append(
							$('<span />').addClass('ui-state-default ui-corner-all')
								.css({'float' : 'right', 'margin-right' : '3px'})
								.attr('title', self.rte.i18n('Open file manger'))
								.append($('<span />').addClass('ui-icon ui-icon-folder-open'))
									.click( function() {
										self.rte.options.fmOpen( function(url) { self.src.url.val(url).change(); } );
									})
									.hover(function() {$(this).addClass('ui-state-hover')}, function() { $(this).removeClass('ui-state-hover')})
							);
			} else {
				var src = this.src.url;
			}
			
			d.append([this.rte.i18n('URL'), src], null, true);
			d.append([this.rte.i18n('Type'), this.src.type], null, true);
			d.append([this.rte.i18n('Size'), $('<span />').append(this.src.width).append(' x ').append(this.src.height).append(' px')], null, true)
			d.append([this.rte.i18n('Wmode'), this.src.wmode], null, true);
			d.append([this.rte.i18n('Alignment'), this.src.align], null, true);
			d.append([this.rte.i18n('Margins'), this.src.margin], null, true);
			
			
			
			d.open();
			// setTimeout( function() {self.src.url.focus()}, 100)
			
			
			var fs = $('<fieldset />').append($('<legend />').text(this.rte.i18n('Preview')))
			d.append(fs, 'main');
			var frame = document.createElement('iframe');
			$(frame).attr('src', '#').addClass('el-rte-preview').appendTo(fs);
			html = this.rte.options.doctype+'<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body style="padding:0;margin:0;font-size:9px"> Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin</body></html>';
			frame.contentWindow.document.open();
			frame.contentWindow.document.write(html);
			frame.contentWindow.document.close();
			this.frame = frame.contentWindow.document;
			this.preview = $(frame.contentWindow.document.body);
			 				 
			this.src.type.change(function() {
				self.src.url.change();
			});

			this.src.width.change(function() {
				if (self.swf) {
					var w = parseInt($(this).val())||'';
					$(this).val(w);
					self.swf.css('width', w);
					self.swf.children('embed').css('width', w);
				} else {
					$(this).val('');
				}
			});

			this.src.height.change(function() {
				if (self.swf) {
					var h = parseInt($(this).val())||'';
					$(this).val(h);
					self.swf.css('height', h);
					self.swf.children('embed').css('height', h);
				} else {
					$(this).val('');
				}
			});
			
			this.src.wmode.change(function() {
				if (self.swf) {
					var wm = $(this).val();
					if (wm) {
						self.swf.attr('wmode', wm);
						self.swf.children('embed').attr('wmode', wm);
					} else {
						self.swf.removeAttr('wmode');
						self.swf.children('embed').removeAttr('wmode');
					}
				}
			});
			
			this.src.align.change(function() {
				var v = $(this).val(), f = v=='left' || v=='right';
				if (self.swf) {
					self.swf.css({
						'float' : f ? v : '',
						'vertical-align' : f ? '' : v
					});
				} else {
					$(this).val('');
				}
			});
			
			this.src.margin.change(function() {
				if (self.swf) {
					var m = self.src.margin.val();
					if (m.css) {
						self.swf.css('margin', m.css);
					} else {
						self.swf.css('margin-top', m.top);
						self.swf.css('margin-right', m.right);
						self.swf.css('margin-bottom', m.bottom);
						self.swf.css('margin-left', m.left);						
					}
				}
			});
			
			this.src.url.change(function() {
				var url = self.rte.utils.absoluteURL($(this).val()), i, swf;
				if (url) {
					i = self.rte.utils.mediaInfo(self.src.type.val());
					if (!i) {
						i = self.rte.util.mediaInfo('application/x-shockwave-flash');
					}
					swf = '<object classid="'+i.classid+'" codebase="'+i.codebase+'"><param name="src" value="'+url+'" /><embed quality="high" src="'+url+'" type="'+i.type+'"></object>';
					self.preview.children('object').remove().end().prepend(swf);
					self.swf = self.preview.children('object').eq(0);
				} else if (self.swf){
					self.swf.remove();
					self.swf = null;
				}
				self.src.width.trigger('change');
				self.src.height.trigger('change');
				self.src.align.trigger('change');

			}).trigger('change');
		};
		
		this.set = function() {
			self.swf = null
			var url = this.rte.utils.absoluteURL(this.src.url.val()),
				w = parseInt(this.src.width.val()) || '',
				h = parseInt(this.src.height.val()) || '',
				wm = this.src.wmode.val(),
				a = this.src.align.val(),
				f = a == 'left' || a == 'right' ? a : '',
				mid = this.placeholder ? this.placeholder.attr('rel') : '', o, _o, c, 
				m = this.src.margin.val(), margin;

			
			
			if (!url) {
				if (this.placeholder) {
					this.placeholder.remove();
					delete this.rte.filter.scripts[mid];
				}
			} else {
				i = self.rte.utils.mediaInfo(self.src.type.val());
				if (!i) {
					i = self.rte.util.mediaInfo('application/x-shockwave-flash');
				}
				c = this.rte.filter.videoHostRegExp.test(url) ? url.replace(this.rte.filter.videoHostRegExp, "$2") : i.type.replace(/^\w+\/(.+)/, "$1");

				o = {
					obj : {
						classid : i.classid[0],
						codebase : i.codebase,
						style : {}
					},
					params :[ { name : 'src', value : url } ],
					embed :{
						src : url,
						type : i.type,
						quality : 'high',
						wmode : wm,
						style : {}
					}
				};
				
				if (w) {
					o.obj.width = w;
					o.embed.width = w;
				}
				if (h) {
					o.obj.height = h;
					o.embed.height = h;
				}
				if (f) {
					o.obj.style['float'] = f;
				} else if (a) {
					o.obj.style['vertical-align'] = a;
				}
				
				if (m.css) {
					margin = { margin : m.css };
				} else {
					margin = {
						'margin-top' : m.top,
						'margin-right' : m.right,
						'margin-bottom' : m.bottom,
						'margin-left' : m.left
					};
				}
				
				o.obj.style = $.extend({}, o.obj.style, margin);
				
				if (this.placeholder && mid) {
					_o = this.rte.filter.scripts[mid]||{};

					o = $.extend(true, _o, o);
					delete o.obj.style.width;
					delete o.obj.style.height;
					delete o.embed.style.width;
					delete o.embed.style.height;
					this.rte.filter.scripts[mid] = o;
					this.placeholder.removeAttr('class');
				} else {
					var id = 'media'+Math.random().toString().substring(2);
					this.rte.filter.scripts[id] = o;
					this.placeholder = $(this.rte.dom.create('img')).attr('rel', id).attr('src', this.rte.filter.url+'pixel.gif');
					var ins = true;
				}
				this.placeholder.attr('title', this.rte.utils.encode(url)).attr('width', w||150).attr('height', h||100).addClass('elrte-protected elrte-media elrte-media-'+c).css(o.obj.style);
				if (f) {
					this.placeholder.css('float', f).css('vertical-align', '');
				} else if (a) {
					this.placeholder.css('float', '').css('vertical-align', a);
				} else {
					this.placeholder.css('float', '').css('vertical-align', '');
				}
				
				if (ins) {
					this.rte.window.focus();
					this.rte.selection.restoreIERange();
					this.rte.selection.insertNode(this.placeholder.get(0));
				}
			}
		}
		
		this.update = function() {
			this.domElem.removeClass('disabled');
			var n = this.rte.selection.getNode();
			this.domElem.toggleClass('active', n && n.nodeName == 'IMG' && $(n).hasClass('elrte-media'))
			
		}
		
		
	}
})(jQuery);/**
 * @class drop-down menu - font-family for selected text
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.fontname = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	var opts = {
		tpl      : '<span style="font-family:%val">%label</span>',
		select   : function(v) { self.set(v); },
		src      : {
			''                                              : this.rte.i18n('Font'),
			'andale mono,sans-serif'                        : 'Andale Mono',
			'arial,helvetica,sans-serif'                    : 'Arial',
			'arial black,gadget,sans-serif'                 : 'Arial Black',
			'book antiqua,palatino,sans-serif'              : 'Book Antiqua',
			'comic sans ms,cursive'                         : 'Comic Sans MS',
			'courier new,courier,monospace'                 : 'Courier New',
			'georgia,palatino,serif'                        : 'Georgia',
			'helvetica,sans-serif'                          : 'Helvetica',
			'impact,sans-serif'                             : 'Impact',
			'lucida console,monaco,monospace'               : 'Lucida console',
			'lucida sans unicode,lucida grande,sans-serif'  : 'Lucida grande',
			'tahoma,sans-serif'                             : 'Tahoma',
			'times new roman,times,serif'                   : 'Times New Roman',
			'trebuchet ms,lucida grande,verdana,sans-serif' : 'Trebuchet MS',
			'verdana,geneva,sans-serif'                     : 'Verdana'
		}
	}
	
	this.select = this.domElem.elSelect(opts);
	
	this.command = function() {
	}
	
	this.set = function(size) {
		this.rte.history.add();
		var nodes = this.rte.selection.selected({filter : 'textContainsNodes'});
		$.each(nodes, function() {
			$this = /^(THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(this.nodeName) ? $(this).find('td,th') : $(this);
			$(this).css('font-family', size).find('[style]').css('font-family', '');
		});
		this.rte.ui.update();
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled'); 
		var n = this.rte.selection.getNode();
		if (n.nodeType != 1) {
			n = n.parentNode;
		}
		var v = $(n).css('font-family');
		v = v ? v.toString().toLowerCase().replace(/,\s+/g, ',').replace(/'|"/g, '') : '';
		this.select.val(opts.src[v] ? v : '');
	}
}

})(jQuery);/**
 * @class drop-down menu - font size for selected text
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.fontsize = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	var opts = {
		labelTpl : '%label',
		tpl      : '<span style="font-size:%val;line-height:1.2em">%label</span>',
		select   : function(v) { self.set(v); },
		src      : {
			''         : this.rte.i18n('Font size'),
			'xx-small' : this.rte.i18n('Small (8pt)'), 
			'x-small'  : this.rte.i18n('Small (10px)'), 
			'small'    : this.rte.i18n('Small (12pt)'), 
			'medium'   : this.rte.i18n('Normal (14pt)'),
			'large'    : this.rte.i18n('Large (18pt)'),
			'x-large'  : this.rte.i18n('Large (24pt)'),
			'xx-large' : this.rte.i18n('Large (36pt)')
		}
	}
	
	this.select = this.domElem.elSelect(opts);
	
	this.command = function() {
	}
	
	this.set = function(size) {
		this.rte.history.add();
		var nodes = this.rte.selection.selected({filter : 'textContainsNodes'});
		$.each(nodes, function() {
			$this = /^(THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(this.nodeName) ? $(this).find('td,th') : $(this);
			$this.css('font-size', size).find("[style]").css('font-size', '');
		});
		this.rte.ui.update();
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
		var n = this.rte.selection.getNode();
		this.select.val((m = this.rte.dom.attr(n, 'style').match(/font-size:\s*([^;]+)/i)) ? m[1] : '');
	}
}

})(jQuery);/**
 * @class color pallete for text color and background
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.forecolor = function(rte, name) {
	var self = this;
	this.constructor.prototype.constructor.call(this, rte, name);
	var opts = {
		'class' : '',
		palettePosition : 'outer',
		color   : this.defaultColor,
		update  : function(c) { self.indicator.css('background-color', c); },
		change  : function(c) { self.set(c) }
	}
	
	this.defaultColor = this.name == 'forecolor' ? '#000000' : '#ffffff';
	this.picker       = this.domElem.elColorPicker(opts);
	this.indicator    = $('<div />').addClass('color-indicator').prependTo(this.domElem);
	
	this.command = function() {
	}
	
	this.set = function(c) {
		if (!this.rte.selection.collapsed()) {
			this.rte.history.add();
			var nodes = this.rte.selection.selected({collapse : false, wrap : 'text'}),
				css   = this.name == 'forecolor' ? 'color' : 'background-color';			
			$.each(nodes, function() {
				if (/^(THEAD|TBODY|TFOOT|TR)$/.test(this.nodeName)) {
					$(this).find('td,th').each(function() {
						$(this).css(css, c).find('*').css(css, '');
					})
				} else {
					$(this).css(css, c).find('*').css(css, '');
				}
			});
			this.rte.ui.update(true);
		}
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
		var n = this.rte.selection.getNode();
		this.picker.val(this.rte.utils.rgb2hex($(n.nodeType != 1 ? n.parentNode : n).css(this.name == 'forecolor' ? 'color' : 'background-color'))||this.defaultColor)
	}
}

elRTE.prototype.ui.prototype.buttons.hilitecolor = elRTE.prototype.ui.prototype.buttons.forecolor;

})(jQuery);/**
 * @class drop-down menu - formatting text block
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.formatblock = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);

	var cmd = this.rte.browser.msie 
		? function(v) { self.val = v; self.constructor.prototype.command.call(self); }
		: function(v) { self.ieCommand(v); } 
	var self = this;
	var opts = {
		labelTpl : '%label',
		tpls     : {'' : '%label'},
		select   : function(v) { self.formatBlock(v); },
		src      : {
			'span'    : this.rte.i18n('Format'),
			'h1'      : this.rte.i18n('Heading 1'),
			'h2'      : this.rte.i18n('Heading 2'),
			'h3'      : this.rte.i18n('Heading 3'),
			'h4'      : this.rte.i18n('Heading 4'),
			'h5'      : this.rte.i18n('Heading 5'),
			'h6'      : this.rte.i18n('Heading 6'),
			'p'       : this.rte.i18n('Paragraph'),
			'address' : this.rte.i18n('Address'),
			'pre'     : this.rte.i18n('Preformatted'),
			'div'     : this.rte.i18n('Normal (DIV)')
		}
	}

	this.select = this.domElem.elSelect(opts);
	
	this.command = function() {

	}
	
	this.formatBlock = function(v) {

		function format(n, tag) {
			
			function replaceChilds(p) {
				$(p).find('h1,h2,h3,h4,h5,h6,p,address,pre').each(function() {
					$(this).replaceWith($(this).html());
				});
				return p;
			}
			
			if (/^(LI|DT|DD|TD|TH|CAPTION)$/.test(n.nodeName)) {
				!self.rte.dom.isEmpty(n) && self.rte.dom.wrapContents(replaceChilds(n), tag);
			} else if (/^(UL|OL|DL|TABLE)$/.test(n.nodeName)) {
				self.rte.dom.wrap(n, tag);
			} else {
				!self.rte.dom.isEmpty(n) && $(replaceChilds(n)).replaceWith( $(self.rte.dom.create(tag)).html($(n).html()));
			}
			
		}
		this.rte.history.add();

		var tag = v.toUpperCase(),
			i, n, $n,
			c = this.rte.selection.collapsed(),
			bm = this.rte.selection.getBookmark(),
			nodes = this.rte.selection.selected({
				collapsed : true,
				blocks    : true,
				filter    : 'textContainsNodes',
				wrap      : 'inline',
				tag       : 'span'
			})
			l = nodes.length,
			s = $(nodes[0]).prev(),
			e = $(nodes[nodes.length-1]).next();

		while (l--) {
			n = nodes[l];
			$n = $(n);
			if (tag == 'DIV' || tag == 'SPAN') {
				if (/^(H[1-6]|P|ADDRESS|PRE)$/.test(n.nodeName)) {
					$n.replaceWith($(this.rte.dom.create('div')).html($n.html()||''));
				}
			} else {
				if (/^(THEAD|TBODY|TFOOT|TR)$/.test(n.nodeName)) {
					$n.find('td,th').each(function() { format(this, tag); });
				} else if (n.nodeName != tag) {
					format(n, tag);
				}
			}
		}

		this.rte.selection.moveToBookmark(bm);

		this.rte.ui.update(true);
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
		var n = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^(H[1-6]|P|ADDRESS|PRE)$/);
		this.select.val(n ? n.nodeName.toLowerCase() : 'span');
	}
}
})(jQuery);
/**
 * @class button - switch to fullscreen mode and back
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.fullscreen = function(rte, name) {
	var self     = this;
	this.constructor.prototype.constructor.call(this, rte, name);
	this.active  = true;
	this.editor = rte.editor;
	this.wz = rte.workzone;
	this.height  = 0;
	this.delta = 0;
	this._class = 'el-fullscreen';
	
	setTimeout(function() {
		self.height  = self.wz.height();
		self.delta   = self.editor.outerHeight()-self.height;
	}, 50);
	
	
	/**
	 * Update editor height on window resize in fullscreen view
	 *
	 **/
	function resize() {
		self.wz.height($(window).height()-self.delta);
		self.rte.updateHeight();
	}
	
	this.command = function() {
		var w = $(window),
			e = this.editor,
			p = e.parents().filter(function(i, n) { return  !/^(html|body)$/i.test(n.nodeName) && $(n).css('position') == 'relative'; }),
			wz = this.wz,
			c = this._class,
			f = e.hasClass(c),
			rte = this.rte,
			s = this.rte.selection,
			m = $.browser.mozilla,
			b, h;

		function save() {
			if (m) {
				b = s.getBookmark();
			}
		}
		
		function restore() {
			if (m) {
				self.wz.children().toggle();
				self.rte.source.focus();
				self.wz.children().toggle();
				s.moveToBookmark(b);
			}
		}

		save();
		p.css('position', f ? 'relative' : 'static');	
		
		if (f) {
			e.removeClass(c);
			wz.height(this.height);
			w.unbind('resize', resize);
			this.domElem.removeClass('active');
		} else {
			e.addClass(c).removeAttr('style');
			wz.height(w.height() - this.delta).css('width', '100%');
			w.bind('resize', resize);
			this.domElem.addClass('active');
		}
		rte.updateHeight();	
		rte.resizable(f);
		restore();
		
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
	}
}
})(jQuery);
/**
 * @class button - horizontal rule (open dialog window)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.horizontalrule = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	this.src = {
		width   : $('<input type="text" />').attr({'name' : 'width', 'size' : 4}).css('text-align', 'right'),
		wunit   : $('<select />').attr('name', 'wunit')
					.append($('<option />').val('%').text('%'))
					.append($('<option />').val('px').text('px'))
					.val('%'),
		height  : $('<input type="text" />').attr({'name' : 'height', 'size' : 4}).css('text-align', 'right'),
		bg      : $('<div />'),
		border  : $('<div />'),
		'class' : $('<input type="text" />').css('width', '100%'),
		style   : $('<input type="text" />').css('width', '100%')
	}
	
	this.command = function() {
		this.src.bg.elColorPicker({palettePosition : 'outer', 'class' : 'el-colorpicker ui-icon ui-icon-pencil'});
		
		var n   = this.rte.selection.getEnd();
		this.hr = n.nodeName == 'HR' ? $(n) : $(rte.doc.createElement('hr')).css({width : '100%', height : '1px'});
		this.src.border.elBorderSelect({styleHeight : 73, value : this.hr});
		
		var _w  = this.hr.css('width') || this.hr.attr('width');
		this.src.width.val(parseInt(_w) || 100);
		this.src.wunit.val(_w.indexOf('px') != -1 ? 'px' : '%');
		
		this.src.height.val( this.rte.utils.toPixels(this.hr.css('height') || this.hr.attr('height')) || 1) ;
		
		this.src.bg.val(this.rte.utils.color2Hex(this.hr.css('background-color')));
		this.src['class'].val(this.rte.dom.attr(this.hr, 'class'));
		this.src.style.val(this.rte.dom.attr(this.hr, 'style'));
		
		var opts = {
			rtl : this.rte.rtl,
			submit : function(e, d) { e.stopPropagation(); e.preventDefault(); self.set(); d.close(); },
			dialog : {
				title : this.rte.i18n('Horizontal rule')
			}
		}

		var d = new elDialogForm(opts);
		d.append([this.rte.i18n('Width'),          $('<span />').append(this.src.width).append(this.src.wunit) ], null, true)
			.append([this.rte.i18n('Height'),      $('<span />').append(this.src.height).append(' px')], null, true)
			.append([this.rte.i18n('Border'),      this.src.border], null, true)
			.append([this.rte.i18n('Background'),  this.src.bg], null, true)
			.append([this.rte.i18n('Css class'),   this.src['class']], null, true)
			.append([this.rte.i18n('Css style'),   this.src.style], null, true)
			.open();
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
		if (this.rte.selection.getEnd().nodeName == 'HR') {
			this.domElem.addClass('active');
		} else {
			this.domElem.removeClass('active');
		}
	}
	
	this.set = function() {
		this.rte.history.add();
		!this.hr.parentNode && this.rte.selection.insertNode(this.hr.get(0));
		var attr = {
			noshade : true,
			style   : this.src.style.val()
		}
		var b = this.src.border.val();
		var css = {
			width  : (parseInt(this.src.width.val()) || 100)+this.src.wunit.val(),
			height : parseInt(this.src.height.val()) || 1,
			'background-color' : this.src.bg.val(),
			border : b.width && b.style ? b.width+' '+b.style+' '+b.color : ''
		}

		this.hr.removeAttr('class')
			.removeAttr('style')
			.removeAttr('width')
			.removeAttr('height')
			.removeAttr('align')
			.attr(attr)
			.css(css);
		
		if (this.src['class'].val()) {
			this.hr.attr('class', this.src['class'].val());	
		}
		this.rte.ui.update()
	}
	
}
})(jQuery);
/**
 * @class button - insert/edit image (open dialog window)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.image = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this,
		rte  = self.rte,
		proportion = 0,
		width = 0,
		height = 0,
		bookmarks = null,
		reset = function(nosrc) {
			$.each(self.src, function(i, elements) {
				$.each(elements, function(n, el) {
					if (n == 'src' && nosrc) {
						return;
					}
					el.val('');
				});
			});
		},
		values = function(img) {
			$.each(self.src, function(i, elements) {
				$.each(elements, function(n, el) {
					var val, w, c, s, border;
					
					if (n == 'width') {
						val = img.width();
					} else if (n == 'height') {
						val = img.height();
					} else if (n == 'border') {
						val = '';
						border = img.css('border') || rte.utils.parseStyle(img.attr('style')).border || '';

						if (border) {
							w = border.match(/(\d(px|em|%))/);
							c = border.match(/(#[a-z0-9]+)/);
							val = {
								width : w ? w[1] : border,
								style : border,
								color : rte.utils.color2Hex(c ? c[1] : border)
							}
						} 
					} else if (n == 'margin') {
						val = img;
					} else if (n == 'align') { 
						val = img.css('float');

						if (val != 'left' && val != 'right') {
							val = img.css('vertical-align');
						}
					 }else {
						val = img.attr(n)||'';
					}
					
					if (i == 'events') {
						val = rte.utils.trimEventCallback(val);
					}

					el.val(val);
				});
			});
		},
		preview = function() {
			var src = self.src.main.src.val();
			
			reset(true);
			
			if (!src) {
				self.preview.children('img').remove();
				self.prevImg = null;
			} else {
				if (self.prevImg) {
					self.prevImg
						.removeAttr('src')
						.removeAttr('style')
						.removeAttr('class')
						.removeAttr('id')
						.removeAttr('title')
						.removeAttr('alt')
						.removeAttr('longdesc');
						
					$.each(self.src.events, function(name, input) {
						self.prevImg.removeAttr(name);
					});
				} else {
					self.prevImg = $('<img/>').prependTo(self.preview);
				}
				self.prevImg.load(function() {
					self.prevImg.unbind('load');
					setTimeout(function() {
						width      = self.prevImg.width();
						height     = self.prevImg.height();
						proportion = (width/height).toFixed(2);
						self.src.main.width.val(width);
						self.src.main.height.val(height);
						
					}, 100);
				})
				.attr('src', src);
			}
			
		},
		size = function(e) {
			var w = parseInt(self.src.main.width.val())||0,
				h = parseInt(self.src.main.height.val())||0;
				
			if (self.prevImg) {
				if (w && h) {
					if (e.target === self.src.main.width[0]) {
						h = parseInt(w/proportion);
					} else {
						w = parseInt(h*proportion);
					}
				} else {
					w = width;
					h = height;
				}
				self.src.main.height.val(h);
				self.src.main.width.val(w);
				self.prevImg.width(w).height(h);
				self.src.adv.style.val(self.prevImg.attr('style'));
			}
		}
		;
	
	this.img     = null;
	this.prevImg = null;
	this.preview = $('<div class="elrte-image-preview"/>').text('Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin');
	
	this.init = function() {	
		this.labels = {
			main   : 'Properies',
			link   : 'Link',
			adv    : 'Advanced',
			events : 'Events',
			id       : 'ID',
			'class'  : 'Css class',
			style    : 'Css style',
			longdesc : 'Detail description URL',
			href    : 'URL',
			target  : 'Open in',
			title   : 'Title'
		}
		
		this.src = {
			main : {
				src    : $('<input type="text" />').css('width', '100%').change(preview),
				title  : $('<input type="text" />').css('width', '100%'),
				alt    : $('<input type="text" />').css('width', '100%'),
				width  : $('<input type="text" />').attr('size', 5).css('text-align', 'right').change(size),
				height : $('<input type="text" />').attr('size', 5).css('text-align', 'right').change(size),
				margin : $('<div />').elPaddingInput({
					type : 'margin', 
					change : function() {
						var margin = self.src.main.margin.val();
					
						if (self.prevImg) {
							if (margin.css) {
								self.prevImg.css('margin', margin.css)
							} else {
								self.prevImg.css({
									'margin-left'   : margin.left,
									'margin-top'    : margin.top,
									'margin-right'  : margin.right,
									'margin-bottom' : margin.bottom
								});
							}
						}
					} 
				}), 
				align  : $('<select />').css('width', '100%')
							.append($('<option />').val('').text(this.rte.i18n('Not set', 'dialogs')))
							.append($('<option />').val('left'       ).text(this.rte.i18n('Left')))
							.append($('<option />').val('right'      ).text(this.rte.i18n('Right')))
							.append($('<option />').val('top'        ).text(this.rte.i18n('Top')))
							.append($('<option />').val('text-top'   ).text(this.rte.i18n('Text top')))
							.append($('<option />').val('middle'     ).text(this.rte.i18n('middle')))
							.append($('<option />').val('baseline'   ).text(this.rte.i18n('Baseline')))
							.append($('<option />').val('bottom'     ).text(this.rte.i18n('Bottom')))
							.append($('<option />').val('text-bottom').text(this.rte.i18n('Text bottom')))
							.change(function() {
								var val = $(this).val(),
									css = {
										'float' : '',
										'vertical-align' : ''
									};
								if (self.prevImg) {
									if (val == 'left' || val == 'right') {
										css['float'] = val;
										css['vertical-align'] = '';
									} else if (val) {
										css['float'] = '';
										css['vertical-align'] = val;
									} 
									self.prevImg.css(css);
								}
							})
						,
				border : $('<div />').elBorderSelect({
					name : 'border',
					change : function() {
						var border = self.src.main.border.val();
						if (self.prevImg) {
							self.prevImg.css('border', border.width ? border.width+' '+border.style+' '+border.color : '');
						}
					}
				})
			},

			adv : {},
			events : {}
		}
		
		$.each(['id', 'class', 'style', 'longdesc'], function(i, name) {
			self.src.adv[name] = $('<input type="text" style="width:100%" />');
		});
		
		this.src.adv['class'].change(function() {
			if (self.prevImg) {
				self.prevImg.attr('class', $(this).val());
			}
		});
		
		this.src.adv.style.change(function() {
			if (self.prevImg) {
				self.prevImg.attr('style', $(this).val());
				values(self.prevImg);
			}
		});
		
		$.each(
			['onblur', 'onfocus', 'onclick', 'ondblclick', 'onmousedown', 'onmouseup', 'onmouseover', 'onmouseout', 'onmouseleave', 'onkeydown', 'onkeypress', 'onkeyup'], 
			function() {
				self.src.events[this] = $('<input type="text"  style="width:100%"/>');
		});
	}
	
	this.command = function() {
		!this.src && this.init();
		
		var img, 
			opts = {
				rtl : rte.rtl,
				submit : function(e, d) { 
					e.stopPropagation(); 
					e.preventDefault(); 
					self.set(); 

					dialog.close(); 
				},
				close : function() {

					bookmarks && rte.selection.moveToBookmark(bookmarks)
				},
				dialog : {
					autoOpen  : false,
					width     : 500,
					position  : 'top',
					title     : rte.i18n('Image'),
					resizable : true,
					open      : function() {
						$.fn.resizable && $(this).parents('.ui-dialog:first').resizable('option', 'alsoResize', '.elrte-image-preview');
					}
				}
			},
			dialog = new elDialogForm(opts),
			fm = !!rte.options.fmOpen,
			src = fm
				? $('<div class="elrte-image-src-fm"><span class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-folder-open"/></span></div>')
					.append(this.src.main.src.css('width', '87%'))
				: this.src.main.src;
			
			;
		
		reset();
		this.preview.children('img').remove();
		this.prevImg = null;
		img = rte.selection.getEnd();
		
		this.img = img.nodeName == 'IMG' && !$(img).is('.elrte-protected')
			? $(img)
			: $('<img/>');
		
		bookmarks = rte.selection.getBookmark();

		if (fm) {
			src.children('.ui-state-default')
				.click( function() {
					rte.options.fmOpen( function(url) { self.src.main.src.val(url).change() } );
				})
				.hover(function() {
					$(this).toggleClass('ui-state-hover');
				});
		}
		
		dialog.tab('main', this.rte.i18n('Properies'))
			.append([this.rte.i18n('Image URL'), src],                 'main', true)
			.append([this.rte.i18n('Title'),     this.src.main.title], 'main', true)
			.append([this.rte.i18n('Alt text'),  this.src.main.alt],   'main', true)
			.append([this.rte.i18n('Size'), $('<span />').append(this.src.main.width).append(' x ').append(this.src.main.height).append(' px')], 'main', true)
			.append([this.rte.i18n('Alignment'), this.src.main.align],  'main', true)
			.append([this.rte.i18n('Margins'),   this.src.main.margin], 'main', true)
			.append([this.rte.i18n('Border'),    this.src.main.border], 'main', true)
		
		dialog.append($('<fieldset><legend>'+this.rte.i18n('Preview')+'</legend></fieldset>').append(this.preview), 'main');
		
		
		
		$.each(this.src, function(tabname, elements) {
		
			if (tabname == 'main') {
				return;
			}
			dialog.tab(tabname, rte.i18n(self.labels[tabname]));
			
			$.each(elements, function(name, el) {
				self.src[tabname][name].val(tabname == 'events' ? rte.utils.trimEventCallback(self.img.attr(name)) : self.img.attr(name)||'');
				dialog.append([rte.i18n(self.labels[name] || name), self.src[tabname][name]], tabname, true);
			});
		});
		
		dialog.open();		
		
		if (this.img.attr('src')) {
			values(this.img);
			this.prevImg = this.img.clone().prependTo(this.preview);
			proportion   = (this.img.width()/this.img.height()).toFixed(2);
			width        = parseInt(this.img.width());
			height       = parseInt(this.img.height());
		}
	}
		
	this.set = function() {
		var src = this.src.main.src.val(),
			link;
		
		this.rte.history.add();
		bookmarks && rte.selection.moveToBookmark(bookmarks);
		
		if (!src) {
			link = rte.dom.selfOrParentLink(this.img[0]);
			link && link.remove();
			return this.img.remove();
		}
		
		!this.img[0].parentNode && (this.img = $(this.rte.doc.createElement('img')));
		
		this.img.attr('src', src)
			.attr('style', this.src.adv.style.val());
		
		$.each(this.src, function(i, elements) {
			$.each(elements, function(name, el) {
				var val = el.val(), style;
				
				switch (name) {
					case 'width':
						self.img.css('width', val);
						break;
					case 'height':
						self.img.css('height', val);
						break;
					case 'align':
						self.img.css(val == 'left' || val == 'right' ? 'float' : 'vertical-align', val);
						break;
					case 'margin':
						if (val.css) {
							self.img.css('margin', val.css);
						} else {
							self.img.css({
								'margin-left'   : val.left,
								'margin-top'    : val.top,
								'margin-right'  : val.right,
								'margin-bottom' : val.bottom
							});
						}
						break;
					case 'border':
						if (!val.width) {
							val = '';
						} else {
							val = 'border:'+val.css+';'+$.trim((self.img.attr('style')||'').replace(/border\-[^;]+;?/ig, ''));
							name = 'style';
							self.img.attr('style', val)
							return;
						}

						break;
					case 'src':
					case 'style':
						return;
					default:
						val ? self.img.attr(name, val) : self.img.removeAttr(name);
				}
			});
		});
		
		!this.img[0].parentNode && rte.selection.insertNode(this.img[0]);
		this.rte.ui.update();
	}

	this.update = function() {
		this.domElem.removeClass('disabled');
		var n = this.rte.selection.getEnd(),
			$n = $(n);
		if (n.nodeName == 'IMG' && !$n.hasClass('elrte-protected')) {
			this.domElem.addClass('active');
		} else {
			this.domElem.removeClass('active');
		}
	}
	
}
})(jQuery);
/**
 * @class Увеличение отступа
 * списки - если выделен один элемент - увеличивается вложенность списка, в остальных случаях - padding у родительского ul|ol
 * Если таблица выделена полностью - ей добавляется margin, если частично - увеличивается padding для ячеек
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.indent = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	
	this.command = function() {
		this.rte.history.add();
		var nodes = this.rte.selection.selected({collapsed : true, blocks : true, wrap : 'inline', tag : 'p'});

		function indent(n) {
			var css = /(IMG|HR|TABLE|EMBED|OBJECT)/.test(n.nodeName) ? 'margin-left' : 'padding-left';
			var val = self.rte.dom.attr(n, 'style').indexOf(css) != -1 ? parseInt($(n).css(css))||0 : 0;
			$(n).css(css, val+40+'px');
		}
		
		for (var i=0; i < nodes.length; i++) {
			if (/^(TABLE|THEAD|TFOOT|TBODY|COL|COLGROUP|TR)$/.test(nodes[i].nodeName)) {
				$(nodes[i]).find('td,th').each(function() {
					indent(this);
				});
			} else if (/^LI$/.test(nodes[i].nodeName)) {
				var n = $(nodes[i]);
				$(this.rte.dom.create(nodes[i].parentNode.nodeName))
					.append($(this.rte.dom.create('li')).html(n.html()||'')).appendTo(n.html('&nbsp;'));
			} else {
				indent(nodes[i]);
			}
		};
		this.rte.ui.update();
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
	}

}
})(jQuery);
/**
 * @class button - justify text
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.justifyleft = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	this.align = this.name == 'justifyfull' ? 'justify' : this.name.replace('justify', '');

	this.command = function() {
		var s = this.rte.selection.selected({collapsed:true, blocks : true, tag : 'div'}),
			l = s.length;
		l && this.rte.history.add();
		while (l--) {
			this.rte.dom.filter(s[l], 'textNodes') && $(s[l]).css('text-align', this.align);
		}
		this.rte.ui.update();
	}
	
	this.update = function() {
		var s = this.rte.selection.getNode(), 
			n = s.nodeName == 'BODY' ? s : this.rte.dom.selfOrParent(s, 'textNodes')||(s.parentNode && s.parentNode.nodeName == 'BODY' ? s.parentNode : null);
		if (n) {
			this.domElem.removeClass('disabled').toggleClass('active', $(n).css('text-align') == this.align);
		} else {
			this.domElem.addClass('disabled');
		}
	}
	
}

elRTE.prototype.ui.prototype.buttons.justifycenter = elRTE.prototype.ui.prototype.buttons.justifyleft;
elRTE.prototype.ui.prototype.buttons.justifyright  = elRTE.prototype.ui.prototype.buttons.justifyleft;
elRTE.prototype.ui.prototype.buttons.justifyfull   = elRTE.prototype.ui.prototype.buttons.justifyleft;

})(jQuery);
/**
 * @class button - insert/edit link (open dialog window)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.link = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	this.img = false;
	
	this.bm;
	
	function init() {
		self.labels = {
			id        : 'ID',
			'class'   : 'Css class',
			style     : 'Css style',
			dir       : 'Script direction',
			lang      : 'Language',
			charset   : 'Charset',
			type      : 'Target MIME type',
			rel       : 'Relationship page to target (rel)',
			rev       : 'Relationship target to page (rev)',
			tabindex  : 'Tab index',
			accesskey : 'Access key'
		}
		self.src = {
			main : {
				href   : $('<input type="text" />'),
				title  : $('<input type="text" />'),
				anchor : $('<select />').attr('name', 'anchor'),
				target : $('<select />')
					.append($('<option />').text(self.rte.i18n('In this window')).val(''))
					.append($('<option />').text(self.rte.i18n('In new window (_blank)')).val('_blank'))
				// 	.append($('<option />').text(self.rte.i18n('In new parent window (_parent)')).val('_parent'))
				// 	.append($('<option />').text(self.rte.i18n('In top frame (_top)')).val('_top'))
			},

			popup : {
				use        : $('<input type="checkbox" />'),
				url        : $('<input type="text" />'    ).val('http://'),
				name       : $('<input type="text" />'    ),
				width      : $('<input type="text" />'    ).attr({size : 6, title : self.rte.i18n('Width')} ).css('text-align', 'right'),
				height     : $('<input type="text" />'    ).attr({size : 6, title : self.rte.i18n('Height')}).css('text-align', 'right'),
				left       : $('<input type="text" />'    ).attr({size : 6, title : self.rte.i18n('Left')}  ).css('text-align', 'right'),
				top        : $('<input type="text" />'    ).attr({size : 6, title : self.rte.i18n('Top')}   ).css('text-align', 'right'),
				location   : $('<input type="checkbox" />'),				
				menubar    : $('<input type="checkbox" />'),
				toolbar    : $('<input type="checkbox" />'),
				scrollbars : $('<input type="checkbox" />'),
				status     : $('<input type="checkbox" />'),
				resizable  : $('<input type="checkbox" />'),
				dependent  : $('<input type="checkbox" />'),
				retfalse   : $('<input type="checkbox" />').attr('checked', true)
			},

			adv : {
				id        : $('<input type="text" />'),
				'class'   : $('<input type="text" />'),
				style     : $('<input type="text" />'),
				dir       : $('<select />')
							.append($('<option />').text(self.rte.i18n('Not set')).val(''))
							.append($('<option />').text(self.rte.i18n('Left to right')).val('ltr'))
							.append($('<option />').text(self.rte.i18n('Right to left')).val('rtl')),
				lang      : $('<input type="text" />'),
				charset   : $('<input type="text" />'),
				type      : $('<input type="text" />'),
				rel       : $('<input type="text" />'),
				rev       : $('<input type="text" />'),
				tabindex  : $('<input type="text" />'),
				accesskey : $('<input type="text" />')
			},
			events : {}
		}

		$.each(
			['onblur', 'onfocus', 'onclick', 'ondblclick', 'onmousedown', 'onmouseup', 'onmouseover', 'onmouseout', 'onmouseleave', 'onkeydown', 'onkeypress', 'onkeyup'], 
			function() {
				self.src.events[this] = $('<input type="text" />');
		});

		$.each(self.src, function() {
			for (var n in this) {
				// this[n].attr('name', n);
				var t = this[n].attr('type');
				if (!t || (t == 'text'  && !this[n].attr('size')) ) {
					this[n].css('width', '100%');
				}
			}
		});
		
	}
	
	this.command = function() {
		var n = this.rte.selection.getNode(),
			sel, i, v, opts, l, r, link, href, s;
		
		!this.src && init();
		// this.rte.selection.saveIERange();

		this.bm = this.rte.selection.getBookmark();

		function isLink(n) { return n.nodeName == 'A' && n.href; }
		
		this.link = this.rte.dom.selfOrParentLink(n);
		
		if (!this.link) {
			sel = $.browser.msie ? this.rte.selection.selected() : this.rte.selection.selected({wrap : false});
			if (sel.length) {
				for (i=0; i < sel.length; i++) {
					if (isLink(sel[i])) {
						this.link = sel[i];
						break;
					}
				};
				if (!this.link) {
					this.link = this.rte.dom.parent(sel[0], isLink) || this.rte.dom.parent(sel[sel.length-1], isLink);
				}
			}
		}
		
		this.link = this.link ? $(this.link) : $(this.rte.doc.createElement('a'));
		this.img = n.nodeName == 'IMG' ? n : null;
		this.updatePopup();
		
		this.src.main.anchor.empty();
		$('a[href!=""][name]', this.rte.doc).each(function() {
			var n = $(this).attr('name');
			self.src.main.anchor.append($('<option />').val(n).text(n));
		});
		if (this.src.main.anchor.children().length) {
			this.src.main.anchor.prepend($('<option />').val('').text(this.rte.i18n('Select bookmark')) )
				.change(function() {
					var v = $(this).val();
					if (v) {
						self.src.main.href.val('#'+v);
					}
				});
		}
		
		opts = {
			rtl : this.rte.rtl,
			submit : function(e, d) { e.stopPropagation(); e.preventDefault(); self.set(); d.close(); },
			tabs : { show : function(e, ui) { if (ui.index==3) { self.updateOnclick(); } } },
			close : function() {self.rte.browser.msie && self.rte.selection.restoreIERange(); },
			dialog : {
				width : 'auto',
				width : 430,
				title : this.rte.i18n('Link')
				
			}
		}

		d = new elDialogForm(opts);

		l = $('<div />')
			.append( $('<label />').append(this.src.popup.location).append(this.rte.i18n('Location bar')))
			.append( $('<label />').append(this.src.popup.menubar).append(this.rte.i18n('Menu bar')))
			.append( $('<label />').append(this.src.popup.toolbar).append(this.rte.i18n('Toolbar')))				
			.append( $('<label />').append(this.src.popup.scrollbars).append(this.rte.i18n('Scrollbars')));
		r = $('<div />')
			.append( $('<label />').append(this.src.popup.status).append(this.rte.i18n('Status bar')))
			.append( $('<label />').append(this.src.popup.resizable).append(this.rte.i18n('Resizable')))
			.append( $('<label />').append(this.src.popup.dependent).append(this.rte.i18n('Depedent')))				
			.append( $('<label />').append(this.src.popup.retfalse).append(this.rte.i18n('Add return false')));

		d.tab('main', this.rte.i18n('Properies'))
			.tab('popup',  this.rte.i18n('Popup'))
			.tab('adv',    this.rte.i18n('Advanced'))
			.tab('events', this.rte.i18n('Events'))
			.append($('<label />').append(this.src.popup.use).append(this.rte.i18n('Open link in popup window')), 'popup')
			.separator('popup')
			.append([this.rte.i18n('URL'),  this.src.popup.url],  'popup', true)
			.append([this.rte.i18n('Window name'), this.src.popup.name], 'popup', true)
			.append([this.rte.i18n('Window size'), $('<span />').append(this.src.popup.width).append(' x ').append(this.src.popup.height).append(' px')], 'popup', true)
			.append([this.rte.i18n('Window position'), $('<span />').append(this.src.popup.left).append(' x ').append(this.src.popup.top).append(' px')], 'popup', true)				
			.separator('popup')
			.append([l, r], 'popup', true);

		link = this.link.get(0);
		href = this.rte.dom.attr(link, 'href');
		this.src.main.href.val(href).change(function() {
			$(this).val(self.rte.utils.absoluteURL($(this).val()));
		});
		
		if (this.rte.options.fmAllow && this.rte.options.fmOpen) {
			var s = $('<span />').append(this.src.main.href.css('width', '87%'))
				.append(
					$('<span />').addClass('ui-state-default ui-corner-all')
						.css({'float' : 'right', 'margin-right' : '3px'})
						.attr('title', self.rte.i18n('Open file manger'))
						.append($('<span />').addClass('ui-icon ui-icon-folder-open'))
							.click( function() {
								self.rte.options.fmOpen( function(url) { self.src.main.href.val(url).change(); } );
							})
							.hover(function() {$(this).addClass('ui-state-hover')}, function() { $(this).removeClass('ui-state-hover')})
				);
			d.append([this.rte.i18n('Link URL'), s], 'main', true);
		} else {
			d.append([this.rte.i18n('Link URL'), this.src.main.href], 'main', true);
		}
		this.src.main.href.change();
		
		d.append([this.rte.i18n('Title'), this.src.main.title.val(this.rte.dom.attr(link, 'title'))], 'main', true);
		if (this.src.main.anchor.children().length) {
			d.append([this.rte.i18n('Bookmark'), this.src.main.anchor.val(href)], 'main', true)
		}
		if (!(this.rte.options.doctype.match(/xhtml/) && this.rte.options.doctype.match(/strict/))) {
			d.append([this.rte.i18n('Target'), this.src.main.target.val(this.link.attr('target')||'')], 'main', true);
		}
		


		for (var n in this.src.adv) {
			this.src.adv[n].val(this.rte.dom.attr(link, n));
			d.append([this.rte.i18n(this.labels[n] ? this.labels[n] : n), this.src.adv[n]], 'adv', true);
		}
		for (var n in this.src.events) {
			var v = this.rte.utils.trimEventCallback(this.rte.dom.attr(link, n));
			this.src.events[n].val(v);
			d.append([this.rte.i18n(this.labels[n] ? this.labels[n] : n), this.src.events[n]], 'events', true);
		}
		
		this.src.popup.use.change(function() {
			var c = $(this).attr('checked');
			$.each(self.src.popup, function() {
				if ($(this).attr('name') != 'use') {
					if (c) {
						$(this).removeAttr('disabled');
					} else {
						$(this).attr('disabled', true);
					}
				}
			})
		});
		this.src.popup.use.change();

		d.open();
	}
	
	this.update = function() {
		var n = this.rte.selection.getNode();
		
		// var t = this.rte.dom.selectionHas(function(n) { return n.nodeName == 'A' && n.href; });
		// this.rte.log(t)
		
		if (this.rte.dom.selfOrParentLink(n)) {
			this.domElem.removeClass('disabled').addClass('active');
		} else if (this.rte.dom.selectionHas(function(n) { return n.nodeName == 'A' && n.href; })) {
			this.domElem.removeClass('disabled').addClass('active');
		} else if (!this.rte.selection.collapsed() || n.nodeName == 'IMG') {
			this.domElem.removeClass('disabled active');
		} else {
			this.domElem.addClass('disabled').removeClass('active');
		}
	}
	
	this.updatePopup = function() {
		var onclick = ''+this.link.attr('onclick');
		// onclick = onclick ? $.trim(onclick.toString()) : ''
		if ( onclick.length>0 && (m = onclick.match(/window.open\('([^']+)',\s*'([^']*)',\s*'([^']*)'\s*.*\);\s*(return\s+false)?/))) {
			this.src.popup.use.attr('checked', 'on')
			this.src.popup.url.val(m[1]);
			this.src.popup.name.val(m[2]);

			if ( /location=yes/.test(m[3]) ) {
				this.src.popup.location.attr('checked', true);
			}
			if ( /menubar=yes/.test(m[3]) ) {
				this.src.popup.menubar.attr('checked', true);
			}
			if ( /toolbar=yes/.test(m[3]) ) {
				this.src.popup.toolbar.attr('checked', true);
			}
			if ( /scrollbars=yes/.test(m[3]) ) {
				this.src.popup.scrollbars.attr('checked', true);
			}
			if ( /status=yes/.test(m[3]) ) {
				this.src.popup.status.attr('checked', true);
			}
			if ( /resizable=yes/.test(m[3]) ) {
				this.src.popup.resizable.attr('checked', true);
			}
			if ( /dependent=yes/.test(m[3]) ) {
				this.src.popup.dependent.attr('checked', true);
			}
			if ((_m = m[3].match(/width=([^,]+)/))) {
				this.src.popup.width.val(_m[1]);
			}
			if ((_m = m[3].match(/height=([^,]+)/))) {
				this.src.popup.height.val(_m[1]);
			}
			if ((_m = m[3].match(/left=([^,]+)/))) {
				this.src.popup.left.val(_m[1]);
			}
			if ((_m = m[3].match(/top=([^,]+)/))) {
				this.src.popup.top.val(_m[1]);
			}
			if (m[4]) {
				this.src.popup.retfalse.attr('checked', true);
			}
		} else {
			$.each(this.src.popup, function() {
				var $this = $(this);
				if ($this.attr('type') == 'text') {
					$this.val($this.attr('name') == 'url' ? 'http://' : '');
				} else {
					if ($this.attr('name') == 'retfalse') {
						this.attr('checked', true);
					} else {
						$this.removeAttr('checked');
					}
				}
			});
		}
		
	}
	
	this.updateOnclick = function () {
		var url = this.src.popup.url.val();
		if (this.src.popup.use.attr('checked') && url) {
			var params = '';
			if (this.src.popup.location.attr('checked')) {
				params += 'location=yes,';
			}
			if (this.src.popup.menubar.attr('checked')) {
				params += 'menubar=yes,';
			}
			if (this.src.popup.toolbar.attr('checked')) {
				params += 'toolbar=yes,';
			}
			if (this.src.popup.scrollbars.attr('checked')) {
				params += 'scrollbars=yes,';
			}
			if (this.src.popup.status.attr('checked')) {
				params += 'status=yes,';
			}
			if (this.src.popup.resizable.attr('checked')) {
				params += 'resizable=yes,';
			}
			if (this.src.popup.dependent.attr('checked')) {
				params += 'dependent=yes,';
			}
			if (this.src.popup.width.val()) {
				params += 'width='+this.src.popup.width.val()+',';
			}
			if (this.src.popup.height.val()) {
				params += 'height='+this.src.popup.height.val()+',';
			}
			if (this.src.popup.left.val()) {
				params += 'left='+this.src.popup.left.val()+',';
			}
			if (this.src.popup.top.val()) {
				params += 'top='+this.src.popup.top.val()+',';
			}
			if (params.length>0) {
				params = params.substring(0, params.length-1)
			}
			var retfalse = this.src.popup.retfalse.attr('checked') ? 'return false;' : '';
			var onclick = "window.open('"+url+"', '"+$.trim(this.src.popup.name.val())+"', '"+params+"'); "+retfalse;
			this.src.events.onclick.val(onclick);
			if (!this.src.main.href.val()) {
				this.src.main.href.val('#');
			}
		} else {
			var v = this.src.events.onclick.val();
			v = v.replace(/window\.open\([^\)]+\)\s*;?\s*return\s*false\s*;?/i, '');
			this.src.events.onclick.val(v);
		}
	}
	
	this.set = function() {
		var href, fakeURL;
		this.updateOnclick();
		this.rte.selection.moveToBookmark(this.bm);
		// this.rte.selection.restoreIERange();
		this.rte.history.add();
		href = this.rte.utils.absoluteURL(this.src.main.href.val());
		if (!href) {
			// this.link.parentNode && this.rte.doc.execCommand('unlink', false, null);
			var bm = this.rte.selection.getBookmark();
			this.rte.dom.unwrap(this.link[0]);
			this.rte.selection.moveToBookmark(bm);

		} else {
				if (this.img && this.img.parentNode) {
					this.link = $(this.rte.dom.create('a')).attr('href', href);
					this.rte.dom.wrap(this.img, this.link[0]);
				} else if (!this.link[0].parentNode) {
					fakeURL = '#--el-editor---'+Math.random();
					this.rte.doc.execCommand('createLink', false, fakeURL);
					this.link = $('a[href="'+fakeURL+'"]', this.rte.doc);
					this.link.each(function() {
						var $this = $(this);

						// удаляем ссылки вокруг пустых элементов
						if (!$.trim($this.html()) && !$.trim($this.text())) {
							$this.replaceWith($this.text()); //  сохраняем пробелы :)
						}
					});
				}

			this.src.main.href.val(href);
			for (var tab in this.src) {
				if (tab != 'popup') {
					for (var n in this.src[tab]) {
						if (n != 'anchors') {
							var v = $.trim(this.src[tab][n].val());
							if (v) {
								this.link.attr(n, v);
							} else {
								this.link.removeAttr(n);
							}
						}
					}
				}
			};


			this.img && this.rte.selection.select(this.img);
		}
		this.rte.ui.update(true);
	}
	
}

})(jQuery);
/**
 * @class button - insert non breakable space
 * Если выделение схлопнуто и находится внутри div'a - он удаляется
 * Новые div'ы создаются только из несхлопнутого выделения
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.nbsp = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		this.rte.history.add();
		this.rte.selection.insertHtml('&nbsp;', true);
		this.rte.window.focus();
		this.rte.ui.update();
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
	}
}
})(jQuery);

/**
 * @class button - outdent text
 * уменьшает padding/margin/самомнение ;)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 * @todo decrease lists nesting level!
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.outdent = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;

	this.command = function() {
		var v = this.find();
		if (v.node) {
			this.rte.history.add();
			$(v.node).css(v.type, (v.val>40 ? v.val-40 : 0)+'px');
			this.rte.ui.update();
		}
	}
	
	this.find = function(n) {
		function checkNode(n) {
			var ret = {type : '', val : 0};
			var s;
			if ((s = self.rte.dom.attr(n, 'style'))) {
				ret.type = s.indexOf('padding-left') != -1
					? 'padding-left'
					: (s.indexOf('margin-left') != -1 ? 'margin-left' : '');
				ret.val = ret.type ? parseInt($(n).css(ret.type))||0 : 0;
			}
			return ret;
		}
		
		var n = this.rte.selection.getNode();
		var ret = checkNode(n);
		if (ret.val) {
			ret.node = n;
		} else {
			$.each(this.rte.dom.parents(n, '*'), function() {
				ret = checkNode(this);
				if (ret.val) {
					ret.node = this;
					return ret;
				}
			})
		}
		return ret;
	}
	
	this.update = function() {
		var v = this.find();
		if (v.node) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}

	
}

})(jQuery);
(function($) {
	elRTE.prototype.ui.prototype.buttons.pagebreak = function(rte, name) {
		this.constructor.prototype.constructor.call(this, rte, name);
		
		// prevent resize
		$(this.rte.doc.body).bind('mousedown', function(e) {
			if ($(e.target).hasClass('elrte-pagebreak')) {
				e.preventDefault();
			}
		})
		
		this.command = function() {
			this.rte.selection.insertHtml('<img src="'+this.rte.filter.url+'pixel.gif" class="elrte-protected elrte-pagebreak"/>', false);
		}
		
		this.update = function() {
			this.domElem.removeClass('disabled');
		}
	}
	
})(jQuery);/**
 * @class button - insert formatted text (open dialog window)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.pasteformattext = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	this.iframe = $(document.createElement('iframe')).addClass('el-rte-paste-input');
	this.doc    = null;
	var self    = this;
	
	this.command = function() {
		this.rte.selection.saveIERange();
		var self = this,
			opts = {
			submit : function(e, d) {
				e.stopPropagation();
				e.preventDefault();
				self.paste();
				d.close();
			},
			dialog : {
				width : 500,
				title : this.rte.i18n('Paste formatted text')
			}
		},
		d = new elDialogForm(opts);
		d.append(this.iframe).open();
		this.doc = this.iframe.get(0).contentWindow.document;
		html = this.rte.options.doctype
			+'<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
		html += '</head><body> <br /> </body></html>';	
		
		this.doc.open();
		this.doc.write(html);
		this.doc.close();

		if (!this.rte.browser.msie) {
			try { this.doc.designMode = "on"; } 
			catch(e) { }
		} else {
			this.doc.body.contentEditable = true;
		}
		setTimeout(function() { self.iframe[0].contentWindow.focus(); }, 50);
	}
	
	this.paste = function() {
		$(this.doc.body).find('[class]').removeAttr('class');
		var html = $.trim($(this.doc.body).html());
		if (html) {
			this.rte.history.add();
			this.rte.selection.restoreIERange();
			this.rte.selection.insertHtml(this.rte.filter.wysiwyg2wysiwyg(this.rte.filter.proccess('paste', html)));
			this.rte.ui.update(true);
		}
	}

	this.update = function() {
		this.domElem.removeClass('disabled');
	}
}
})(jQuery);

/**
 * @class кнопка "вставить только текст" 
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.pastetext = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	this.input = $('<textarea />').addClass('el-rte-paste-input');
	var self   = this;
	
	this.command = function() {
		this.rte.browser.msie && this.rte.selection.saveIERange();
		var opts = {
			submit : function(e, d) {
				e.stopPropagation();
				e.preventDefault();
				self.paste();
				d.close();
			},
			dialog : {
				width : 500,
				title : this.rte.i18n('Paste only text')
			}
		}
		var d = new elDialogForm(opts);
		d.append(this.input).open();
	}
	
	this.paste = function() {
		var txt = $.trim(this.input.val());
		if (txt) {
			this.rte.history.add();
			this.rte.browser.msie && this.rte.selection.restoreIERange();
			this.rte.selection.insertText(txt.replace(/\r?\n/g, '<br />'), true);
			this.rte.ui.update(true);
		}
		this.input.val('');
	}

	this.update = function() {
		this.domElem.removeClass('disabled');
	}
	
}
})(jQuery);
/**
 * @class button - save editor content (submit form)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.save = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	this.active = true;
	
	this.command = function() {
		this.rte.save();
	}
	
	this.update = function() { }
}
})(jQuery);
/**
 * @class button - insert smiley (open dialog window)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки
 *
 * @author:    eSabbath
 *
 **/
(function($) { 
elRTE.prototype.ui.prototype.buttons.smiley = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	this.img = null;
	this.url = this.rte.filter.url+'smileys/';
	this.smileys = {
		'smile' : 'smile.png',
		'happy' : 'happy.png',
		'tongue' : 'tongue.png',
		'surprised' : 'surprised.png',
		'waii' : 'waii.png',
		'wink' : 'wink.png',
		'evilgrin' : 'evilgrin.png',
		'grin' : 'grin.png',
		
		
		'unhappy' : 'unhappy.png'
	};
	this.width = 120;

	this.command = function() {
		var self = this, url = this.url, d, opts, img;

		this.rte.browser.msie && this.rte.selection.saveIERange();

		opts = {
			dialog : {
				height  : 120,
				width   : this.width,
				title   : this.rte.i18n('Smiley'),
				buttons : {}
			}
		}
		d = new elDialogForm(opts);
		$.each(this.smileys, function(name, img) {
			d.append($('<img src="'+url+img+'" title="'+name+'" id="'+name+'" class="el-rte-smiley"/>').click(function() { self.set(this.id, d);	}));
		});
		d.open();
	}

	this.update = function() {
		this.domElem.removeClass('disabled');
		this.domElem.removeClass('active');
	}

	this.set = function(s, d) {
		this.rte.browser.msie && this.rte.selection.restoreIERange();
		if (this.smileys[s]) {
			this.img = $(this.rte.doc.createElement('img'));
			this.img.attr({
				src    : this.url + this.smileys[s],
				title  : s,
				alt    : s
			});
			this.rte.selection.insertNode(this.img.get(0));
			this.rte.ui.update();
		}
		d.close();
	}
}
})(jQuery);
/**
 * @class button - stops elements floating. Insert div with style="clear:all"
 * Если выделение схлопнуто и находится внутри div'a с аттрибутом или css clear - он удаляется
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.stopfloat = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);

	this.find = function() {
		if (this.rte.selection.collapsed()) {
			var n = this.rte.dom.selfOrParent(this.rte.selection.getEnd(), /^DIV$/);
			if (n && (this.rte.dom.attr(n, 'clear') || $(n).css('clear') != 'none')) {
				return n;
			}
		}
	}
	
	this.command = function() {
		var n;
		if ((n = this.find())) {
			var n = $(n);
			this.rte.history.add();
			if (!n.children().length && !$.trim(n.text()).length) {
				n.remove();
			} else {
				n.removeAttr('clear').css('clear', '');
			}
		} else {
			this.rte.history.add();
			this.rte.selection.insertNode($(this.rte.dom.create('div')).css('clear', 'both').get(0), true);
		}
		this.rte.ui.update(true);
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
		if (this.find()) {
			this.domElem.addClass('active');
		} else {
			this.domElem.removeClass('active');
		}
	}
}

})(jQuery);/**
 * @class button - create/edit table (open dialog window)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * Copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.table = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self    = this;
	this.src    = null;
	this.labels = null;
	
	function init() {
		self.labels = {
			main      : 'Properies',
			adv       : 'Advanced',
			events    : 'Events',
			id        : 'ID',
			'class'   : 'Css class',
			style     : 'Css style',
			dir       : 'Script direction',
			summary   : 'Summary',
			lang      : 'Language',
			href      : 'URL'
		}
		
		self.src = {
			main : {
				caption : $('<input type="text" />'),
				rows    : $('<input type="text" />').attr('size', 5).val(2),
				cols    : $('<input type="text" />').attr('size', 5).val(2),
				width   : $('<input type="text" />').attr('size', 5),
				wunit   : $('<select />')
							.append($('<option />').val('%').text('%'))
							.append($('<option />').val('px').text('px')),				
				height  : $('<input type="text" />').attr('size', 5),	
				hunit   : $('<select />')
							.append($('<option />').val('%').text('%'))
							.append($('<option />').val('px').text('px')),	
				align   : $('<select />')
							.append($('<option />').val('').text(self.rte.i18n('Not set')))
							.append($('<option />').val('left').text(self.rte.i18n('Left')))
							.append($('<option />').val('center').text(self.rte.i18n('Center')))	
							.append($('<option />').val('right').text(self.rte.i18n('Right'))),	
				spacing : $('<input type="text" />').attr('size', 5),	
				padding : $('<input type="text" />').attr('size', 5),
				border  : $('<div />'),
				// frame   : $('<select />')
				// 			.append($('<option />').val('void').text(self.rte.i18n('No')))
				// 			.append($('<option />').val('border').text(self.rte.i18n('Yes'))),
				rules   : $('<select />')
							.append($('<option />').val('none').text(self.rte.i18n('No')))
							.append($('<option />').val('all').text(self.rte.i18n('Cells')))
							.append($('<option />').val('groups').text(self.rte.i18n('Groups')))
							.append($('<option />').val('rows').text(self.rte.i18n('Rows')))
							.append($('<option />').val('cols').text(self.rte.i18n('Columns'))),
				margin  : $('<div />'),
				bg      : $('<div />'),
				bgimg   : $('<input type="text" />').css('width', '90%')
			},
			
			adv : {
				id        : $('<input type="text" />'),
				summary   : $('<input type="text" />'),
				'class'   : $('<input type="text" />'),
				style     : $('<input type="text" />'),
				dir       : $('<select />')
								.append($('<option />').text(self.rte.i18n('Not set')).val(''))
								.append($('<option />').text(self.rte.i18n('Left to right')).val('ltr'))
								.append($('<option />').text(self.rte.i18n('Right to left')).val('rtl')),
				lang      : $('<input type="text" />')
			},
			
			events : {}
		}
		
		$.each(self.src, function() {
			for (var n in this) {
				this[n].attr('name', n);
				var t = this[n].get(0).nodeName; 
				if (t == 'INPUT' && n != 'bgimg') {
					this[n].css(this[n].attr('size') ? {'text-align' : 'right'} : {width : '100%'});
				} else if (t == 'SELECT' && n!='wunit' && n!='hunit') {
					this[n].css('width', '100%');
				}
			}
		});
		
		$.each(
			['onblur', 'onfocus', 'onclick', 'ondblclick', 'onmousedown', 'onmouseup', 'onmouseover', 'onmouseout', 'onmouseleave', 'onkeydown', 'onkeypress', 'onkeyup'], 
			function() {
				self.src.events[this] = $('<input type="text" />').css('width', '100%');
		});
		
		self.src.main.align.change(function() {
			var v = $(this).val();
			if (v == 'center') {
				self.src.main.margin.val({left : 'auto', right : 'auto'});
			} else {
				var m = self.src.main.margin.val();
				if (m.left == 'auto' && m.right == 'auto') {
					self.src.main.margin.val({left : '', right : ''});
				}
			}
		});
		
		self.src.main.bgimg.change(function() {
			var t = $(this);
			t.val(self.rte.utils.absoluteURL(t.val()));
		})
		
	}
	
	this.command = function() {
		var n = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^TABLE$/);
		
		if (this.name == 'table') {
			this.table = $(this.rte.doc.createElement('table'));	
		} else {
			this.table = n ? $(n) : $(this.rte.doc.createElement('table'));					
		}
		
		!this.src && init();
		this.src.main.border.elBorderSelect({styleHeight : 117});
		this.src.main.bg.elColorPicker({palettePosition : 'outer', 'class' : 'el-colorpicker ui-icon ui-icon-pencil'});
		this.src.main.margin.elPaddingInput({ type : 'margin', value : this.table});
		
		if (this.table.parents().length) {
			this.src.main.rows.val('').attr('disabled', true);
			this.src.main.cols.val('').attr('disabled', true);
		} else {
			this.src.main.rows.val(2).removeAttr('disabled');
			this.src.main.cols.val(2).removeAttr('disabled');
		}
		
		var w = this.table.css('width') || this.table.attr('width');
		this.src.main.width.val(parseInt(w)||'');
		this.src.main.wunit.val(w.indexOf('px') != -1 ? 'px' : '%');
		
		var h = this.table.css('height') || this.table.attr('height');	
		this.src.main.height.val(parseInt(h)||'');
		this.src.main.hunit.val(h && h.indexOf('px') != -1 ? 'px' : '%');

		var f = this.table.css('float');
		this.src.main.align.val('');
		if (f == 'left' || f == 'right') {
			this.src.main.align.val(f);
		} else {
			var ml = this.table.css('margin-left');
			var mr = this.table.css('margin-right');
			if (ml == 'auto' && mr == 'auto') {
				this.src.main.align.val('center');
			}
		}

		this.src.main.border.val(this.table);
		//this.src.main.frame.val(this.table.attr('frame'));
		this.src.main.rules.val(this.rte.dom.attr(this.table.get(0), 'rules'));

		this.src.main.bg.val(this.table.css('background-color'));
		var bgimg = (this.table.css('background-image')||'').replace(/url\(([^\)]+)\)/i, "$1");
		this.src.main.bgimg.val(bgimg!='none' ? bgimg : '');

		var opts = {
			rtl : this.rte.rtl,
			submit : function(e, d) { e.stopPropagation(); e.preventDefault(); self.set(); d.close(); },
			dialog : {
				width : 530,
				title : this.rte.i18n('Table')
			}
		}
		var d = new elDialogForm(opts);
		
		for (var tab in this.src) {
			d.tab(tab, this.rte.i18n(this.labels[tab]));
			if (tab == 'main') {
				var t1 = $('<table />')
					.append($('<tr />').append('<td>'+this.rte.i18n('Rows')+'</td>').append($('<td />').append(this.src.main.rows)))
					.append($('<tr />').append('<td>'+this.rte.i18n('Columns')+'</td>').append($('<td />').append(this.src.main.cols)));
				var t2 = $('<table />')
					.append($('<tr />').append('<td>'+this.rte.i18n('Width')+'</td>').append($('<td />').append(this.src.main.width).append(this.src.main.wunit)))
					.append($('<tr />').append('<td>'+this.rte.i18n('Height')+'</td>').append($('<td />').append(this.src.main.height).append(this.src.main.hunit)));
				var t3 = $('<table />')
					.append($('<tr />').append('<td>'+this.rte.i18n('Spacing')+'</td>').append($('<td />').append(this.src.main.spacing.val(this.table.attr('cellspacing')||''))))
					.append($('<tr />').append('<td>'+this.rte.i18n('Padding')+'</td>').append($('<td />').append(this.src.main.padding.val(this.table.attr('cellpadding')||''))));
				
				d.append([this.rte.i18n('Caption'), this.src.main.caption.val(this.table.find('caption').eq(0).text() || '')], 'main', true)
					.separator('main')
					.append([t1, t2, t3], 'main', true)
					.separator('main')
					.append([this.rte.i18n('Border'),        this.src.main.border], 'main', true)
					//.append([this.rte.i18n('Frame'),       this.src.main.frame], 'main', true)
					.append([this.rte.i18n('Inner borders'), this.src.main.rules], 'main', true)
					.append([this.rte.i18n('Alignment'),     this.src.main.align], 'main', true)
					.append([this.rte.i18n('Margins'),       this.src.main.margin], 'main', true)
					.append([this.rte.i18n('Background'),    $('<span />').append($('<span />').css({'float' : 'left', 'margin-right' : '3px'}).append(this.src.main.bg)).append(this.src.main.bgimg)], 'main', true)
			} else {
				for (var name in this.src[tab]) {
					var v = this.rte.dom.attr(this.table, name);
					if (tab == 'events') {
						v = this.rte.utils.trimEventCallback(v);
					} 
					d.append([this.rte.i18n(this.labels[name] ? this.labels[name] : name), this.src[tab][name].val(v)], tab, true);
				}
			}
		}
		
		d.open();
	}
	
	this.set = function() {
		
		if (!this.table.parents().length) {
			var r = parseInt(this.src.main.rows.val()) || 0;
			var c = parseInt(this.src.main.cols.val()) || 0;
			if (r<=0 || c<=0) {
				return;
			}
			this.rte.history.add(); 
			var b = $(this.rte.doc.createElement('tbody')).appendTo(this.table);
			
			for (var i=0; i < r; i++) {
				var tr = '<tr>';
				for (var j=0; j < c; j++) {
					tr += '<td>&nbsp;</td>';
				}
				b.append(tr+'</tr>');
			};
			
			// var tr = $(this.rte.doc.createElement('tr'));
			// 
			// for (var i=0; i < c; i++) {
			// 	tr.append($(this.rte.doc.createElement('td')).html('&nbsp;'));
			// };
			// 
			// for (var i=0; i<r; i++) {
			// 	b.append(tr.clone(true));
			// };
			
			// this.rte.selection.insertNode(this.table.get(0), true);
		} else {
			this.table
				.removeAttr('width')
				.removeAttr('height')
				.removeAttr('border')
				.removeAttr('align')
				.removeAttr('bordercolor')
				.removeAttr('bgcolor')
				.removeAttr('cellspacing')
				.removeAttr('cellpadding')
				.removeAttr('frame')
				.removeAttr('rules')
				.removeAttr('style');
		}
		
		var cap = $.trim(this.src.main.caption.val());
		if (cap) {
			if (!this.table.children('caption').length) {
				this.table.prepend('<caption />' );
			}
			this.table.children('caption').text(cap);
		} else {
			this.table.children('caption').remove();
		}
		
		
		for (var tab in this.src) {
			if (tab != 'main') {
				for (var n in this.src[tab]) {
					var v = $.trim(this.src[tab][n].val());
					if (v) {
						this.table.attr(n, v);
					} else {
						this.table.removeAttr(n);
					}
				}
			}
		}
		var spacing, padding, rules;

		if ((spacing = parseInt(this.src.main.spacing.val())) && spacing>=0) {
			this.table.attr('cellspacing', spacing);
		} 

		if ((padding = parseInt(this.src.main.padding.val())) && padding>=0) {
			this.table.attr('cellpadding', padding);
		} 
		
		if ((rules = this.src.main.rules.val())) {
			this.table.attr('rules', rules);
		}
		
		var
			w = parseInt(this.src.main.width.val()) || '',
			h = parseInt(this.src.main.height.val()) || '',
			i = $.trim(this.src.main.bgimg.val()),
			b = this.src.main.border.val(),
			m = this.src.main.margin.val(),
			f = this.src.main.align.val();
		this.table.css({
			width              : w ? w+this.src.main.wunit.val() : '',
			height             : h ? h+this.src.main.hunit.val() : '',
			border             : $.trim(b.width+' '+b.style+' '+b.color),
			'background-color' : this.src.main.bg.val(),
			'background-image' : i ? 'url('+i+')' : ''
		});	
		if (m.css) {
			this.table.css('margin', m.css);
		} else {
			this.table.css({
				'margin-top'    : m.top,
				'margin-right'  : m.right,
				'margin-bottom' : m.bottom,
				'margin-left'   : m.left
			});
		}
		if ((f=='left' || f=='right') && this.table.css('margin-left')!='auto'  && this.table.css('margin-right')!='auto') {
			this.table.css('float', f);
		}
		if (!this.table.attr('style')) {
			this.table.removeAttr('style');
		}
		if (!this.table.parents().length) {
			this.rte.selection.insertNode(this.table.get(0), true);
		}
		this.rte.ui.update();
	}
	
	this.update = function() {
		this.domElem.removeClass('disabled');
		if (this.name == 'tableprops' && !this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^TABLE$/)) {
			this.domElem.addClass('disabled').removeClass('active');
		}
	}
	
}

elRTE.prototype.ui.prototype.buttons.tableprops = elRTE.prototype.ui.prototype.buttons.table;

})(jQuery);

/**
 * @class button - remove table
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tablerm = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		var t = this.rte.dom.parent(this.rte.selection.getNode(), /^TABLE$/);
		// t && $(t).remove();
		if (t) {
			this.rte.history.add();
			$(t).remove();
		}
		this.rte.ui.update(true);
	}
	
	this.update = function() {
		if (this.rte.dom.parent(this.rte.selection.getNode(), /^TABLE$/)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}
})(jQuery);
/**
 * @class button - table cell properties
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tbcellprops = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	this.src = null;
	this.labels = null;
	
	function init() {
		self.labels = {
			main    : 'Properies',
			adv     : 'Advanced',
			events  : 'Events',
			id      : 'ID',
			'class' : 'Css class',
			style   : 'Css style',
			dir     : 'Script direction',
			lang    : 'Language'
		}
		
		self.src = {
			main : {
				type    : $('<select />').css('width', '100%')
							.append($('<option />').val('td').text(self.rte.i18n('Data')))
							.append($('<option />').val('th').text(self.rte.i18n('Header'))),
				width   : $('<input type="text" />').attr('size', 4),
				wunit   : $('<select />')
							.append($('<option />').val('%').text('%'))
							.append($('<option />').val('px').text('px')),				
				height  : $('<input type="text" />').attr('size', 4),	
				hunit   : $('<select />')
							.append($('<option />').val('%').text('%'))
							.append($('<option />').val('px').text('px')),	
				align   : $('<select />').css('width', '100%')
							.append($('<option />').val('').text(self.rte.i18n('Not set')))
							.append($('<option />').val('left').text(self.rte.i18n('Left')))
							.append($('<option />').val('center').text(self.rte.i18n('Center')))	
							.append($('<option />').val('right').text(self.rte.i18n('Right')))
							.append($('<option />').val('justify').text(self.rte.i18n('Justify'))),	
				border  : $('<div />'),
				padding  : $('<div />'),
				bg      : $('<div />'),
				bgimg   : $('<input type="text" />').css('width', '90%'),
				apply   : $('<select />').css('width', '100%')
							.append($('<option />').val('').text(self.rte.i18n('Current cell')))
							.append($('<option />').val('row').text(self.rte.i18n('All cells in row')))
							.append($('<option />').val('column').text(self.rte.i18n('All cells in column')))	
							.append($('<option />').val('table').text(self.rte.i18n('All cells in table')))
			},
			
			adv : {
				id        : $('<input type="text" />'),
				'class'   : $('<input type="text" />'),
				style     : $('<input type="text" />'),
				dir       : $('<select />').css('width', '100%')
								.append($('<option />').text(self.rte.i18n('Not set')).val(''))
								.append($('<option />').text(self.rte.i18n('Left to right')).val('ltr'))
								.append($('<option />').text(self.rte.i18n('Right to left')).val('rtl')),
				lang      : $('<input type="text" />')
			},
			
			events : {}
		}
		
		$.each(self.src, function() {
			for (var n in this) {
				this[n].attr('name', n);
				if (this[n].attr('type') == 'text' && !this[n].attr('size') && n!='bgimg') {
					this[n].css('width', '100%')
				}
			}
		});
		
		$.each(
			['onblur', 'onfocus', 'onclick', 'ondblclick', 'onmousedown', 'onmouseup', 'onmouseover', 'onmouseout', 'onmouseleave', 'onkeydown', 'onkeypress', 'onkeyup'], 
			function() {
				self.src.events[this] = $('<input type="text" />').css('width', '100%');
		});
		
	}
	
	this.command = function() {
		!this.src && init();
		this.cell = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^(TD|TH)$/);
		if (!this.cell) {
			return;
		}
		this.src.main.type.val(this.cell.nodeName.toLowerCase());
		this.cell = $(this.cell);
		this.src.main.border.elBorderSelect({styleHeight : 117, value : this.cell});
		this.src.main.bg.elColorPicker({palettePosition : 'outer', 'class' : 'el-colorpicker ui-icon ui-icon-pencil'});
		this.src.main.padding.elPaddingInput({ value : this.cell});
		
		var w = this.cell.css('width') || this.cell.attr('width');
		this.src.main.width.val(parseInt(w)||'');
		this.src.main.wunit.val(w.indexOf('px') != -1 ? 'px' : '%');
		
		var h = this.cell.css('height') || this.cell.attr('height');	
		this.src.main.height.val(parseInt(h)||'');
		this.src.main.hunit.val(h.indexOf('px') != -1 ? 'px' : '%');
		
		this.src.main.align.val(this.cell.attr('align') || this.cell.css('text-align'));
		this.src.main.bg.val(this.cell.css('background-color'));
		var bgimg = this.cell.css('background-image');
		this.src.main.bgimg.val(bgimg && bgimg!='none' ? bgimg.replace(/url\(([^\)]+)\)/i, "$1") : '');
		this.src.main.apply.val('');
		
		var opts = {
			rtl : this.rte.rtl,
			submit : function(e, d) { e.stopPropagation(); e.preventDefault(); self.set(); d.close(); },
			dialog : {
				width : 520,
				title : this.rte.i18n('Table cell properties')
			}
		}
		var d = new elDialogForm(opts);
		for (var tab in this.src) {
			d.tab(tab, this.rte.i18n(this.labels[tab]));
			
			if (tab == 'main') {
				d.append([this.rte.i18n('Width'),              $('<span />').append(this.src.main.width).append(this.src.main.wunit)],  'main', true)
					.append([this.rte.i18n('Height'),          $('<span />').append(this.src.main.height).append(this.src.main.hunit)], 'main', true)
					.append([this.rte.i18n('Table cell type'), this.src.main.type],    'main', true)
					.append([this.rte.i18n('Border'),          this.src.main.border],  'main', true)
					.append([this.rte.i18n('Alignment'),       this.src.main.align],   'main', true)
					.append([this.rte.i18n('Paddings'),        this.src.main.padding], 'main', true)
					.append([this.rte.i18n('Background'),      $('<span />').append($('<span />').css({'float' : 'left', 'margin-right' : '3px'}).append(this.src.main.bg)).append(this.src.main.bgimg)],  'main', true)
					.append([this.rte.i18n('Apply to'),        this.src.main.apply],   'main', true);
			} else {
				for (var name in this.src[tab]) {
					var v = this.cell.attr(name) || '';
					if (tab == 'events') {
						v = this.rte.utils.trimEventCallback(v);
					} 
					d.append([this.rte.i18n(this.labels[name] ? this.labels[name] : name), this.src[tab][name].val(v)], tab, true);
				}
			}
		}
		d.open()
	}
	
	this.set = function() {
		// $(t).remove();
		var target = this.cell,
			apply  = this.src.main.apply.val();
		switch (this.src.main.apply.val()) {
			case 'row':
				target = this.cell.parent('tr').children('td,th');
				break;
				
			case 'column':
				target = $(this.rte.dom.tableColumn(this.cell.get(0)));
				break;
				
			case 'table':
				target = this.cell.parents('table').find('td,th');
				break;
		}

		for (var tab in this.src) {
			if (tab != 'main') {
				for (var n in this.src[tab]) {
					var v = $.trim(this.src[tab][n].val());
					if (v) {
						target.attr(n, v);
					} else {
						target.removeAttr(n);
					}
				}
			}
		}
		
		target.removeAttr('width')
			.removeAttr('height')
			.removeAttr('border')
			.removeAttr('align')
			.removeAttr('bordercolor')
			.removeAttr('bgcolor');
			
		var t = this.src.main.type.val();
		var w = parseInt(this.src.main.width.val()) || '';
		var h = parseInt(this.src.main.height.val()) || '';
		var i = $.trim(this.src.main.bgimg.val());
		var b = this.src.main.border.val();
		var css = {
			'width'            : w ? w+this.src.main.wunit.val() : '',
			'height'           : h ? h+this.src.main.hunit.val() : '',
			'background-color' : this.src.main.bg.val(),
			'background-image' : i ? 'url('+i+')' : '',
			'border'           : $.trim(b.width+' '+b.style+' '+b.color),
			'text-align'       : this.src.main.align.val() || ''
		};
		var p = this.src.main.padding.val();
		if (p.css) {
			css.padding = p.css;
		} else {
			css['padding-top']    = p.top;
			css['padding-right']  = p.right;
			css['padding-bottom'] = p.bottom;
			css['padding-left']   = p.left;
		}
		
		target = target.get();

		$.each(target, function() {
			var type = this.nodeName.toLowerCase();
			var $this = $(this);
			if (type != t) {
				
				var attr = {}
				for (var i in self.src.adv) {
					var v = $this.attr(i)
					if (v) {
						attr[i] = v.toString();
					}
				}
				for (var i in self.src.events) {
					var v = $this.attr(i)
					if (v) {
						attr[i] = v.toString();
					}
				}
				var colspan = $this.attr('colspan')||1;
				var rowspan = $this.attr('rowspan')||1;
				if (colspan>1) {
					attr.colspan = colspan;
				}
				if (rowspan>1) {
					attr.rowspan = rowspan;
				}
				
				$this.replaceWith($('<'+t+' />').html($this.html()).attr(attr).css(css) );
				
			} else {
				$this.css(css);
			}
		});

		this.rte.ui.update();
	}
	
	this.update = function() {
		if (this.rte.dom.parent(this.rte.selection.getNode(), /^TABLE$/)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
	
}

})(jQuery);/**
 * @class button - table cells merge
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tbcellsmerge = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	
	function selectedCells() {
		var c1 = self.rte.dom.selfOrParent(self.rte.selection.getStart(), /^(TD|TH)$/);
		var c2 = self.rte.dom.selfOrParent(self.rte.selection.getEnd(), /^(TD|TH)$/);		
		if (c1 && c2 && c1!=c2 && $(c1).parents('table').get(0) == $(c2).parents('table').get(0)) {
			return [c1, c2];
		}
		return null;
	}
	
	this.command = function() {
		var cells = selectedCells();

		if (cells) {
			
			var _s  = this.rte.dom.indexOf($(cells[0]).parent('tr').get(0));
			var _e  = this.rte.dom.indexOf($(cells[1]).parent('tr').get(0));
			var ro  = Math.min(_s, _e); // row offset
			var rl  = Math.max(_s, _e) - ro + 1; // row length
			var _c1 = this.rte.dom.tableColumn(cells[0], true, true); 
			var _c2 = this.rte.dom.tableColumn(cells[1], true);
			var _i1 = $.inArray(cells[0], _c1.column); 
			var _i2 = $.inArray(cells[1], _c2.column);
			
			var colBegin = _c1.info.offset[_i1] < _c2.info.offset[_i2]  ? _c1 : _c2;
			var colEnd   = _c1.info.offset[_i1] >= _c2.info.offset[_i2] ? _c1 : _c2;
			var length   = 0;
			var target   = null;
			var html     = '';
			this.rte.history.add();
			var rows = $($(cells[0]).parents('table').eq(0).find('tr').get().slice(ro, ro+rl))
				.each( function(i) {
					var _l = html.length;
					var accept = false;
					$(this).children('td,th').each(function() {
						var $this   = $(this);
						var inBegin = $.inArray(this, colBegin.column);
						var inEnd   = $.inArray(this, colEnd.column);
						
						if (inBegin!=-1 || inEnd!=-1) {
							accept = inBegin!=-1 && inEnd==-1;
							var len = parseInt($this.attr('colspan')||1)
							if (i == 0) {
								length += len;
							}
							
							if (inBegin!=-1 && i>0) {
								var delta = colBegin.info.delta[inBegin];
								if (delta>0) {
									if ($this.css('text-align') == 'left') {
										var cell = $this.clone(true);
										$this.html('&nbsp;');
									} else {
										var cell = $this.clone().html('&nbsp;');
									}
									cell.removeAttr('colspan').removeAttr('id').insertBefore(this);
									if (delta>1) {
										cell.attr('colspan', delta);
									}
								}
							}
							
							if (inEnd!=-1) {
								var delta = colEnd.info.delta[inEnd];
								if (len-delta>1) {
									var cp = len-delta-1;
									if ($this.css('text-align') == 'right') {
										var cell = $this.clone(true);
										$this.html('&nbsp;');
									} else {
										var cell = $this.clone().html('&nbsp;');
									}
									cell.removeAttr('colspan').removeAttr('id').insertAfter(this);
									if (cp>1) {
										cell.attr('colspan', cp);
									}
								}
							}
							if (!target) {
								target = $this;
							} else {
								html += $this.html();
								$this.remove();
							}
						} else if (accept) {
							if (i == 0) {
								length += parseInt($this.attr('colspan')||1);
							}
							html += $this.html();
							$this.remove();
							

						}
					})
					html += _l!=html.length ? '<br />' : '';
				});

			target.removeAttr('colspan').removeAttr('rowspan').html(target.html()+html)
			if (length>1) {
				target.attr('colspan', length);
			}
			if (rl>1) {
				target.attr('rowspan', rl);
			}
			// sometimes when merge cells with different rowspans we get "lost" cells in rows 
			// this add cells if needed
			this.rte.dom.fixTable($(cells[0]).parents('table').get(0));
		}
	}
	
	this.update = function() {
		if (selectedCells()) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}
})(jQuery);
/**
 * @class button - split merged cell
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки
 * @todo split not merged cell 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru 
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tbcellsplit = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		var n = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^(TD|TH)$/);
		if (n) {
			this.rte.history.add();
			var colspan = parseInt(this.rte.dom.attr(n, 'colspan'));
			var rowspan = parseInt(this.rte.dom.attr(n, 'rowspan'));
			if (colspan>1 || rowspan>1) {
				var cnum = colspan-1;
				var rnum = rowspan-1;
				var tb   = this.rte.dom.parent(n, /^TABLE$/);
				var tbm  = this.rte.dom.tableMatrix(tb);
				
				// ячейки в текущем ряду
				if (cnum) {
					for (var i=0; i<cnum; i++) {
						$(this.rte.dom.create(n.nodeName)).html('&nbsp;').insertAfter(n);
					}
				}
				if (rnum) {
					var ndx  = this.rte.dom.indexesOfCell(n, tbm)
					var rndx = ndx[0];
					var cndx = ndx[1];
					// ячейки в следущих рядах
					for (var r=rndx+1; r < rndx+rnum+1; r++) {
						var cell;
						
						if (!tbm[r][cndx].nodeName) {
							if (tbm[r][cndx-1].nodeName) {
								cell = tbm[r][cndx-1];
							} else {
								for (var i=cndx-1; i>=0; i--) {
									if (tbm[r][i].nodeName) {
										cell =tbm[r][i];
										break;
									}
								}
							}
							if (cell) {
								for (var i=0; i<= cnum; i++) {
									$(this.rte.dom.create(cell.nodeName)).html('&nbsp;').insertAfter(cell);
								}
							}
						}
					};
				}
				$(n).removeAttr('colspan').removeAttr('rowspan');
				this.rte.dom.fixTable(tb);
			}
		}
		this.rte.ui.update(true);
	}
	
	this.update = function() {
		var n = this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^(TD|TH)$/);
		if (n && (parseInt(this.rte.dom.attr(n, 'colspan'))>1 || parseInt(this.rte.dom.attr(n, 'rowspan'))>1)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}

})(jQuery);
/**
 * @class button - Insert new column in table(before or after current)
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tbcolbefore = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	
	this.command = function() {
		var self = this;
		var cells = this.rte.dom.tableColumn(this.rte.selection.getNode(), false, true);
		if (cells.length) {
			this.rte.history.add();
			$.each(cells, function() {
				var $this = $(this);
				var cp = parseInt($this.attr('colspan')||1)
				if (cp >1) {
					$this.attr('colspan', cp+1);
				} else {
					var c = $(self.rte.dom.create(this.nodeName)).html('&nbsp;');
					if (self.name == 'tbcolbefore') {
						c.insertBefore(this);
					} else {
						c.insertAfter(this);
					}
				}
			});
			this.rte.ui.update();
		}
	}
	
	this.update = function() {
		if (this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^(TD|TH)$/)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}

elRTE.prototype.ui.prototype.buttons.tbcolafter = elRTE.prototype.ui.prototype.buttons.tbcolbefore;

})(jQuery);
/**
 * @class button - remove table colunm
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tbcolrm = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	
	this.command = function() {
		var n     = this.rte.selection.getNode();
		var c     = this.rte.dom.selfOrParent(n, /^(TD|TH)$/);
		var prev  = $(c).prev('td,th').get(0);
		var next  = $(c).next('td,th').get(0);			
		var tb    = this.rte.dom.parent(n, /^TABLE$/);
		var cells = this.rte.dom.tableColumn(n, false, true);

		if (cells.length) {
			this.rte.history.add();
			$.each(cells, function() {
				var $this = $(this);
				var cp    = parseInt($this.attr('colspan')||1);
				if ( cp>1 ) {
					$this.attr('colspan', cp-1);
				} else {
					$this.remove();
				}
			});
			this.rte.dom.fixTable(tb);
			if (prev || next) {
				this.rte.selection.selectContents(prev ? prev : next).collapse(true);
			}
			this.rte.ui.update(true);
		}
	}
	
	this.update = function() {
		if (this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^(TD|TH)$/)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}

})(jQuery);
/**
 * @class меню - Новый ряд в таблице
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 **/
elRTE.prototype.ui.prototype.buttons.tbrowbefore = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	
	this.command = function() {
		var n  = this.rte.selection.getNode();
		var c  = this.rte.dom.selfOrParent(n, /^(TD|TH)$/);
		var r  = this.rte.dom.selfOrParent(c, /^TR$/);
		var mx = this.rte.dom.tableMatrix(this.rte.dom.selfOrParent(c, /^TABLE$/));

		if (c && r && mx) {
			this.rte.history.add();
			var before = this.name == 'tbrowbefore';
			var ro     = $(r).prevAll('tr').length;
			var cnt    = 0;
			var mdf    = [];
			
			function _find(x, y) {
				while (y>0) {
					y--;
					if (mx[y] && mx[y][x] && mx[y][x].nodeName) {
						return mx[y][x];
					}
				}
			}
			
			for (var i=0; i<mx[ro].length; i++) {
				if (mx[ro][i] && mx[ro][i].nodeName) {
					var cell    = $(mx[ro][i]);
					var colspan = parseInt(cell.attr('colspan')||1);
					if (parseInt(cell.attr('rowspan')||1) > 1) {
						if (before) {
							cnt += colspan;
						} else {
							mdf.push(cell);
						}
					} else {
						cnt += colspan;
					}
				} else if (mx[ro][i] == '-') {
					cell = _find(i, ro);
					cell && mdf.push($(cell));
				}
			}
			var row = $(this.rte.dom.create('tr'));
			for (var i=0; i<cnt; i++) {
				row.append('<td>&nbsp;</td>');
			}
			if (before) {
				row.insertBefore(r);
			} else {
				row.insertAfter(r);
			}
			$.each(mdf, function() {
				$(this).attr('rowspan', parseInt($(this).attr('rowspan')||1)+1);
			});
			this.rte.ui.update();
		}
	}
	
	this.update = function() {
		if (this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^TR$/)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}

elRTE.prototype.ui.prototype.buttons.tbrowafter = elRTE.prototype.ui.prototype.buttons.tbrowbefore;
/**
 * @class button - remove table row
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
elRTE.prototype.ui.prototype.buttons.tbrowrm = function(rte, name) {
	this.constructor.prototype.constructor.call(this, rte, name);
	var self = this;
	this.command = function() {
		
		var n  = this.rte.selection.getNode(),
			c  = this.rte.dom.selfOrParent(n, /^(TD|TH)$/),
			r  = this.rte.dom.selfOrParent(c, /^TR$/),
			tb = this.rte.dom.selfOrParent(c, /^TABLE$/),
			mx = this.rte.dom.tableMatrix(tb);
		
		if (c && r && mx.length) {
			this.rte.history.add();
			if (mx.length==1) {
				$(tb).remove();
				return this.rte.ui.update();
			}
			var mdf = [];
			var ro  = $(r).prevAll('tr').length;
			
			function _find(x, y) {
				while (y>0) {
					y--;
					if (mx[y] && mx[y][x] && mx[y][x].nodeName) {
						return mx[y][x];
					}
				}
			}
			
			// move cell with rowspan>1 to next row
			function _move(cell, x) {
				y = ro+1;
				var sibling= null;
				if (mx[y]) {
					for (var _x=0; _x<x; _x++) {
						if (mx[y][_x] && mx[y][_x].nodeName) {
							sibling = mx[y][_x];
						}
					};
					
					cell = cell.remove();
					if (sibling) {
						cell.insertAfter(sibling);
					} else {
						cell.prependTo($(r).next('tr').eq(0));
					}
				}
			}
			
			function _cursorPos(column) {
				for (var i = 0; i<column.length; i++) {
					if (column[i] == c) {
						return i<column.length-1 ? column[i+1] : column[i-1];
					}
				}
			}
			
			for (var i=0; i<mx[ro].length; i++) {
				var cell = null;
				var move = false;
				if (mx[ro][i] && mx[ro][i].nodeName) {
					cell = mx[ro][i];
					move = true;
				} else if (mx[ro][i] == '-' && (cell = _find(i, ro))) {
					move = false;
				}
				if (cell) {
					cell = $(cell);
					var rowspan = parseInt(cell.attr('rowspan')||1);
					if (rowspan>1) {
						cell.attr('rowspan', rowspan-1);
						move && _move(cell, i, ro);
					} 
				}
			};
			
			var _c = _cursorPos(this.rte.dom.tableColumn(c));
			if (_c) {
				this.rte.selection.selectContents(_c).collapse(true);
			}

			$(r).remove();
		}
		this.rte.ui.update();
	}
	
	this.update = function() {
		if (this.rte.dom.selfOrParent(this.rte.selection.getNode(), /^TR$/)) {
			this.domElem.removeClass('disabled');
		} else {
			this.domElem.addClass('disabled');
		}
	}
}

})(jQuery);/**
 * @class кнопка - отмена повтор действий
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки 
 * 
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru
 **/
(function($) {
	elRTE.prototype.ui.prototype.buttons.undo = function(rte, name) {
		this.constructor.prototype.constructor.call(this, rte, name);
	
		this.command = function() {
			if (this.name == 'undo' && this.rte.history.canBack()) {
				this.rte.history.back();
				this.rte.ui.update();
			} else if (this.name == 'redo' && this.rte.history.canFwd()) {
				this.rte.history.fwd();
				this.rte.ui.update();
			}
		}
	
		this.update = function() {
			this.domElem.toggleClass('disabled', this.name == 'undo' ? !this.rte.history.canBack() : !this.rte.history.canFwd());
		}
	}

	elRTE.prototype.ui.prototype.buttons.redo = elRTE.prototype.ui.prototype.buttons.undo;

})(jQuery);/**
 * @class button - remove link
 *
 * @param  elRTE  rte   объект-редактор
 * @param  String name  название кнопки
 *
 * @author:    Dmitry Levashov (dio) dio@std42.ru
 * @copyright: Studio 42, http://www.std42.ru 
 **/
(function($) {

	elRTE.prototype.ui.prototype.buttons.unlink = function(rte, name) {
		this.constructor.prototype.constructor.call(this, rte, name);

		this.command = function() {

			var n = this.rte.selection.getNode(), 
				l = this.rte.dom.selfOrParentLink(n);

			function isLink(n) { return n.nodeName == 'A' && n.href; }

			if (!l) {

				var sel = $.browser.msie ? this.rte.selection.selected() : this.rte.selection.selected({wrap : false});
				if (sel.length) {
					for (var i=0; i < sel.length; i++) {
						if (isLink(sel[i])) {
							l = sel[i];
							break;
						}
					};
					if (!l) {
						l = this.rte.dom.parent(sel[0], isLink) || this.rte.dom.parent(sel[sel.length-1], isLink);
					}
				}
			}

			if (l) {
				this.rte.history.add();
				this.rte.selection.select(l);
				this.rte.doc.execCommand('unlink', false, null);
				this.rte.ui.update(true);
			}
		
		}
	
		this.update = function() {
			var n = this.rte.selection.getNode();
			if (this.rte.dom.selfOrParentLink(n)) {
				this.domElem.removeClass('disabled').addClass('active');
			} else if (this.rte.dom.selectionHas(function(n) { return n.nodeName == 'A' && n.href; })) {
				this.domElem.removeClass('disabled').addClass('active');
			} else {
				this.domElem.addClass('disabled').removeClass('active');
			}
		}
	}

})(jQuery);

js/i18n/elrte.es.js000060400000014271150714137430010024 0ustar00/**
 * Spanish translation
 * @author Ricardo Obregón <robregonm@gmail.com>
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.es = {
	'_translator'    : 'Ricardo Obregón &lt;robregonm@gmail.com&gt;',
	'_translation'   : 'Spanish translation',
	'Editor' : 'Editor',
	'Source' : 'Código Fuente',
	// Panel Name
	'Copy/Pase'      : 'Copiar/Pegar',
	'Undo/Redo'      : 'Deshacer/Rehacer',
	'Text styles'    : 'Estilos de Texto',
	'Colors'         : 'Colores',
	'Alignment'      : 'Alineación',
	'Indent/Outdent' : 'Aumentar/Disminuir Sangría',
	'Text format'    : 'Formato de texto',
	'Lists'          : 'Listas',
	'Misc elements'  : 'Elementos varios',
	'Links'          : 'Vínculos',
	'Images'         : 'Imágenes',
	'Media'          : 'Multimedia',
	'Tables'         : 'Tablas',
	'File manager (elFinder)' : 'Administrador de archivos',
	// button names
	'Save'                    : 'Guardar',
	'Copy'                    : 'Copiar',
	'Cut'                     : 'Cortar',
	'Paste'                   : 'Pegar',
	'Paste only text'         : 'Pegar solo texto',
	'Paste formatted text'    : 'Pegar texto formateado',
	'Clean format'            : 'Limpiar formato',
	'Undo last action'        : 'Deshacer la última acción',
	'Redo previous action'    : 'Rehacer la última acción',
	'Bold'                    : 'Negrita',
	'Italic'                  : 'Cursiva',
	'Underline'               : 'Subrayado',
	'Strikethrough'           : 'Tachado',
	'Superscript'             : 'Superíndice',
	'Subscript'               : 'Subíndice',
	'Align left'              : 'Alinear a la izquierda',
	'Ailgn right'             : 'Alinear a la derecha',
	'Align center'            : 'Centrar',
	'Align full'              : 'Justificado',
	'Font color'              : 'Color de texto',
	'Background color'        : 'Color de fondo',
	'Indent'                  : 'Aumentar sangría',
	'Outdent'                 : 'Reducir sangría',
	'Format'                  : 'Formato',
	'Font size'               : 'Tamaño de letra',
	'Font'                    : 'Fuente',
	'Ordered list'            : 'Lista ordenada',
	'Unordered list'          : 'Lista desordenada',
	'Horizontal rule'         : 'Línea horizontal',
	'Blockquote'              : 'Cita',
	'Block element (DIV)'     : 'Bloque de Elementos (DIV)',
	'Link'                    : 'Vínculo',
	'Delete link'             : 'Eliminar vínculo',
	'Bookmark'                : 'Marcador',
	'Image'                   : 'Imagen',
	'Table'                   : 'Tabla',
	'Delete table'            : 'Eliminar tabla',
	'Insert row before'       : 'Insertar fila antes',
	'Insert row after'        : 'Insertar fila después',
	'Delete row'              : 'Eliminar fila',
	'Insert column before'    : 'Insertar columna antes',
	'Insert column after'     : 'Insertar columna después',
	'Delete column'           : 'Eliminar columna',
	'Merge table cells'       : 'Fundir celdas',
	'Split table cell'        : 'Dividir celda',
	'Toggle display document structure' : 'Pantalla de estructura de documento',
	'Table cell properties'   : 'Propiedades de celda',
	'Table properties'        : 'Propiedades de tabla',
	'Toggle full screen mode' : 'Modo de pantalla completa',
	'Open file manager'       : 'Abrir administrador de archivos',
	'Non breakable space'     : 'Espacio indivisible',
	'Stop element floating'   : 'Detener elemento flotante',
	// dialogs
	'Warning' : 'Advertencia',
	'Properies' : 'Propiedades',
	'Popup' : 'Ventana emergente',
	'Advanced' : 'Avanzado',
	'Events' : 'Eventos',
	'Width' : 'Ancho',
	'Height' : 'Alto',
	'Left'   : 'Izquierda',
	'Center' : 'Centrado',
	'Right'  : 'Derecha',
	'Border' : 'Borde',
	'Background' : 'Fondo',
	'Css class' : 'Clase CSS',
	'Css style' : 'Estilo CSS',
	'No' : 'No',
	'Title' : 'Título',
	'Script direction' : 'Dirección del script',
	'Language' : 'Idioma',
	'Charset' : 'Charset',
	'Not set' : 'No establecido',
	'Left to right' : 'Izquierda a derecha',
	'Right to left' : 'Derecha a izquierda',
	'In this window' : 'En esta ventana (_self)',
	'In new window (_blank)' : 'En nueva ventana (_blank)',
	'In new parent window (_parent)' : 'En nueva ventana padre (_parent)',
	'In top frame (_top)' : 'En marco superior (_top)',
	'URL' : 'URL',
	'Open in' : 'Abrir en',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Esta operación está desactivada en su navegador por razones de seguridad. Utilice en su lugar un comando de teclado.',
	// format 
	'Heading 1' : 'Encabezado 1',
	'Heading 2' : 'Encabezado 2',
	'Heading 3' : 'Encabezado 3',
	'Heading 4' : 'Encabezado 4',
	'Heading 5' : 'Encabezado 5',
	'Heading 6' : 'Encabezado 6',
	'Paragraph' : 'Párrafo',
	'Address' : 'Dirección',
	'Preformatted' : 'Preformateado',
	// font size
	'Small (8pt)'   : 'Pequeño (8pt)',
	'Small (10px)'  : 'Pequeño (10px)',
	'Small (12pt)'  : 'Pequeño (12pt)',
	'Normal (14pt)' : 'Normal (14pt)',
	'Large (18pt)'  : 'Grande (18pt)',
	'Large (24pt)'  : 'Grande (24pt)',
	'Large (36pt)'  : 'Grande (36pt)',
	// bookmark
	'Bookmark name' : 'Nombre del marcador',
	// link
	'Link URL' : 'URL del vínculo',
	'Target' : 'Objetivo',
	'Open link in popup window' : 'Abrir vínculo en ventana emergente',
	'Window name' : 'Nombre de la ventana',
	'Window size' : 'Tamaño de la ventana',
	'Window position' : 'Posición de la ventana',
	'Location bar' : 'Barra de dirección',
	'Menu bar' : 'Barra de Menú',
	'Toolbar' : 'Barra de herramientas',
	'Scrollbars' : 'Barras de desplazamiento',
	'Status bar' : 'Barra de estado',
	'Resizable' : 'Redimensionable',
	'Depedent' : 'Dependiente (Netscape)',
	'Add return false' : 'Agregar (return false)',
	'Target MIME type' : 'Objetivo de Tipo MIME',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index' : '',
	'Access key' : 'Tecla de acceso',
	// image
	'Size' : 'Tamaño',
	'Preview' : 'Previsualización',
	'Margins' : 'Márgenes',
	'Alt text' : 'Texto alternativo',
	'Image URL' : 'URL de la imagen',
	// table
	'Spacing'       : 'Espaciado (Spacing)',
	'Padding'       : 'Relleno (Padding)',
	'Rows'          : 'Filas',
	'Columns'       : 'Columnas',
	'Groups'        : 'Grupos',
	'Cells'         : 'Celdas',
	'Caption'       : 'Leyenda',
	'Inner borders' : 'Bordes internos'
	
	
}
})(jQuery);
js/i18n/elrte.uk.js000060400000022767150714137430010045 0ustar00/*
 * Ukranian translation
 * @author Artem Vasilyev
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.uk = {
	'_translator'    : 'Artem Vasilyev',
	'_translation'   : 'Ukranian translation',
	'Editor' : 'Редактор',
	'Source' : 'Джерело',
// Назви панелей
	'Copy / Pase' : 'Копіювання / Вставка',
	'Undo / Redo' : 'Скасувати / Повтор дії',
	'Text styles' : 'Стилі тексту',
	'Colors': 'Кольори',
	'Alignment': 'Вирівнювання',
	'Indent / Outdent': 'Відступи',
	'Text format': 'Форматування',
	'Lists': 'Списки',
	'Misc elements': 'Різні елементи',
	'Links': 'Посилання',
	'Images': 'Малюнки',
	'Media': 'Media файли',
	'Tables': 'Таблиці',
	'File manager (elFinder)' : 'Файловый менеджер (elFinder)',
// Назви кнопок
	'About this software'     : 'О программе',
	'Save': 'Зберегти',
	'Copy': 'Копіювати',
	'Cut': 'Вирізати',
	'Paste': 'Вставити',
	'Paste only text': 'Вставити тільки текст',
	'Paste formatted text': 'Вставити форматування тексту',
	'Clean format': 'Видалити форматування',
	'Undo last action': 'Скасувати дію',
	'Redo previous action': 'Повторити дію',
	'Bold': 'Товстий',
	'Italic': 'Курсив',
	'Underline': 'Підкреслений',
	'Strikethrough': 'Перекреслений',
	'Superscript': 'Верхній регістр',
	'Subscript': 'Нижній регістр',
	'Align left': 'Вирівняти ліворуч',
	'Ailgn right': 'Вирівняти праворуч',
	'Align center': 'Вирівняти по центру',
	'Align full': 'Вирівняти по краях',
	'Font color': 'Колір тексту',
	'Background color': 'Колір залікві',
	'Indent': 'Збільшити відступ',
	'Outdent': 'Зменшити відступ',
	'Format': 'Форматування',
	'Font size': 'Розмір шрифту',
	'Font': 'Шрифт',
	'Ordered list': 'Нумерований список',
	'Unordered list': 'Ненумерований список',
	'Horizontal rule': 'Горизонтальна лінія',
	'Blockquote': 'Цитата',
	'Block element (DIV)'  : 'Блочный элемент (DIV)',
	'Link': 'Посилання',
	'Delete link': 'Видалити посилання',
	'Bookmark': 'Закладка',
	'Image': 'Зображення',
	'Table': 'Таблиця',
	'Delete table': 'Видалити таблицю',
	'Insert row before': 'Вставити ряд до',
	'Insert row after': 'Вставити ряд після',
	'Delete row': 'Видалити ряд',
	'Insert column before': 'Вставити колонку до',
	'Insert column after': 'Вставити колонку після',
	'Delete column': 'Видалити колонку',
	'Merge table cells': 'склеїти осередку',
	'Split table cell': 'Розділити клітинку',
	'Toggle display document structure': 'Показати структуру документа / невидимі елементи',
	'Table cell properties': 'Властивість клітинку',
	'Table properties': 'Властивість таблиці',
	'Toggle full screen mode' : 'Во весь экран',
	'Open file manager'       : 'Открыть файловый менеджер',
	'Non breakable space'   : 'Неразрывный пробел',
	'Stop element floating' : 'Отключить обтекание элементов текстом',
//Dialogs
	'Warning': 'Увага',
	'Properies': 'Властивості',
	'Popup': 'Нове вікно',
	'Advanced': 'Більше',
	'Events': 'Події',
	'Width': 'Ширина',
	'Height': 'Висота',
	'Left'   : 'Слева',
	'Center' : 'По центру',
	'Right'  : 'Справа',
	'Border': 'Бордюр',
	'Background': 'Фон',
	'Css class': 'Css клас',
	'Css style': 'Css style',
	'No': 'Ні',
	'Title': 'Заголовок',
	'Script direction': 'Направлення письма',
	'Language': 'Мова',
	'Charset': 'Кодування',
	'Not set': 'Не встановлено',
	'Left to right': 'Зліва направо',
	'Right to left': 'Справа наліво',
	'In this window': 'У цьому вікні',
	'In new window (_blank)': 'У новому вікні (_blank)',
	'In new parent window (_parent)': 'У батьківському вікні (_parent)',
	'In top frame (_top)': 'У верхньому фреймі (_top)',
	'URL':'',
	'Open in': 'Відкрити',
// Copy
	'This operation is disabled in your browser on security reason. Use shortcut instead. ' : 'Дія заборонено у вашому браузері з міркувань безпеки. Використовуйте клавіші ',
// Format
	'Heading 1' : 'Заголовок 1',
	'Heading 2' : 'Заголовок 2',
	'Heading 3' : 'Заголовок 3',
	'Heading 4' : 'Заголовок 4',
	'Heading 5' : 'Заголовок 5',
	'Heading 6' : 'Заголовок 6',	
	'Paragraph' : 'Параграф',
	'Address' : 'Адрес',
	'Preformatted':'',
// Font size
	'Small (8pt)': 'Дрібний (8pt)',
	'Small (10px)': 'Маленький (10px)',
	'Small (12pt)': 'Невеликий (12pt)',
	'Normal (14pt)': 'Звичайний (14pt)',
	'Large (18pt)': 'Великий (18pt)',
	'Large (24pt)': 'Крупний (24pt)',
	'Large (36pt)': 'Величезний (36pt)',
// Bookmark
	'Bookmark name': 'Ім&rsquo;я закладки',
// Link
	'Link URL': 'Адреса ссиклі (URL)',
	'Target': 'Мета',
	'Select bookmark' : 'Выбрать закладку',
	'Open link in popup window': 'Відкрити посилання у спливаючому вікні',
	'URL':'',
	'Window name': 'Назва вікна',
	'Window size': 'Розмір вікна',
	'Window position': 'Позиція вікна',
	'Open link in popup window': 'Відкрити посилання у спливаючому вікні',
	'Window name': 'Назва вікна',
	'Window size': 'Розмір вікна',
	'Window position': 'Позиція вікна',
	'Location bar': 'Панель локації',
	'Menu bar': 'Панель меню',
	'Toolbar': 'Панель інструментів',
	'Scrollbars': 'Смуги прокрутки',
	'Status bar': 'Рядок стану',
	'Resizable': 'Зміна розміру',
	'Depedent': 'Залежний (Netscape)',
	'Add return false': 'Додати (return false)',
	'Target MIME type': 'MIME type цілі',
	'Relationship page to target (rel)': 'Ставлення сторінки до мети (rel) ',
	'Relationship target to page (rev)': 'Відношення мети до сторінки (rev)',
	'Tab index':'',
	'Access key': 'Клавіша доступу',
// Image
	'Size': 'Розмір',
	'Preview': 'Попередній перегляд',
	'Margins': 'Відступи',
	'Alt text': 'Опис (Alt)',
	'Image URL': 'URL',
// Table
	'Spacing'       : 'Проміжок (spacing)',
	'Padding'       : 'Відступ (padding)',
	'Rows'          : 'Рядок ',
	'Columns'       : 'Колонки',
	'Groups'        : 'Группы',
	'Cells'         : 'Ячейки',
	'Caption'       : 'Заголовок таблиці',
	'Inner borders' : 'Внутрішній бордюр' ,
	// table cell
	'Table cell type' : 'Тип ячейки',
	'Data' : 'Данные',
	'Header' : 'Заголовок',
	'Justify' : 'По краям',
	'Paddings' : 'Отступы',
	'Apply to' : 'Применить к',
	'Current cell' : 'Выбранная ячейка',
	'All cells in row' : 'Все ячейки в ряду',
	'All cells in column' : 'Все ячейки в столбце',
	'All cells in table' : 'Все ячейки таблицы',
	// about
	'About elRTE' : 'О редакторе elRTE',
	'Version' : 'Версия',
	'Licence' : 'Лицензия',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE - это свободный WYSIWYG редактор для сайтов и систем управления контентом (CMS), написанный на JavaScript.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'Основная цель редактора - максимально упростить работу с текстом и разметкой (HTML) на сайтах, блогах, форумах и прочих online сервисах.',
	'You can use it in any commercial or non-commercial projects.' : 'Вы можете использовать его в любых коммерческих и некоммерческих проектах.',
	'Authors' : 'Авторы',
	'Chief developer' : 'Ведущий разработчик',
	'Developer, tech support' : 'Разработчик, техническая поддержка',
	'Interface designer' : 'Дизайнер интерфейса',
	'Spanish localization' : 'Испанская локализация',
	'Japanese localization' : 'Японская локализация',
	'Latvian localization' : 'Латвийская локализация',
	'German localization' : 'Немецкая локализация',
	'Ukranian localization' : 'Украинская локализация',
	'For more information about this software visit the' : 'Подробная информация и форум тех. поддержки',
	'elRTE website' : 'на сайте elRTE'
};
})(jQuery);
js/i18n/elrte.da.js000060400000021034150714137430007774 0ustar00/*
 * Danish translation
 * @author Steen Rabol <steen.rabol@gmail.com>
 * @version 2011-01-05
 */
(function($) {
elRTE.prototype.i18Messages.da = {
	'_translator'    : 'Steen Rabol &lt;steen.rabol@gmail.com&gt;',
	'_translation'   : 'Dansk oversættelse', // will be seen in about dialog
	'Editor' : 'Editor',
	'Source' : 'Kilde',
	// panels names
	'Copy/Pase'      : 'Kopier/Sæt ind',
	'Undo/Redo'      : 'Fortryd / Gentag',
	'Text styles'    : 'Tekst stile',
	'Colors'         : 'Farver',
	'Alignment'      : 'Justering',
	'Indent/Outdent' : 'Indrykning / Udrykning',
	'Text format'    : 'Tekst formatering',
	'Lists'          : 'Lister',
	'Misc elements'  : 'Forsekllign elementer',
	'Links'          : 'Links',
	'Images'         : 'Billeder',
	'Media'          : 'Media',
	'Tables'         : 'Tabeller',
	'File manager (elFinder)' : 'Fil håndtering',
	// buttons names
	'About this software'     : 'Om...',
	'Save'                    : 'Gem',
	'Copy'                    : 'Kopier',
	'Cut'                     : 'Klip',
	'Paste'                   : 'Sæt ind',
	'Paste only text'         : 'Indsæt kun teskst',
	'Paste formatted text'    : 'Indsæt formateret tekst',
	'Clean format'            : 'Fjern formatering', 
	'Undo last action'        : 'Fortryd sidste handling',
	'Redo previous action'    : 'Gentag sidste handling',
	'Bold'                    : 'Fed',
	'Italic'                  : 'Kursiv',
	'Underline'               : 'Understreg',
	'Strikethrough'           : 'Gennemstreget',
	'Superscript'             : 'Hævet skrift',
	'Subscript'               : 'Sænket skrift',
	'Align left'              : 'Venstrejusteret',
	'Ailgn right'             : 'Højrejusteret',
	'Align center'            : 'Centreret',
	'Align full'              : 'Lige margner',
	'Font color'              : 'Tekst farve',
	'Background color'        : 'Baggrunds farve',
	'Indent'                  : 'Indryk',
	'Outdent'                 : 'Ryk ud',
	'Format'                  : 'Formatering',
	'Font size'               : 'Skrift størrelse',
	'Font'                    : 'Skrifttype',
	'Ordered list'            : 'Nummeret liste',
	'Unordered list'          : 'Punkt liste',
	'Horizontal rule'         : 'Horisontal linie',
	'Blockquote'              : 'Citat',
	'Block element (DIV)'     : 'Lag (DIV)',
	'Link'                    : 'Link',
	'Delete link'             : 'Slet link',
	'Bookmark'                : 'Bogmærke',
	'Image'                   : 'Billed',
	'Table'                   : 'Tabel',
	'Delete table'            : 'Slet tabel',
	'Insert row before'       : 'Indsæt række før',
	'Insert row after'        : 'Indsæt række efter',
	'Delete row'              : 'Slet række',
	'Insert column before'    : 'Indsæt kolonne før',
	'Insert column after'     : 'Indsæt kolone efter',
	'Delete column'           : 'Slet kolone',
	'Merge table cells'       : 'Flet tabel celler',
	'Split table cell'        : 'Del tabel celler',
	'Toggle display document structure' : 'Skift visning af dokument struktur',
	'Table cell properties'   : 'Tabel celler egenskaber',
	'Table properties'        : 'Tabel egenskaber',
	'Toggle full screen mode' : 'Skift fuldskærms tilstand',
	'Open file manager'       : 'Åben filhåndtering',
	'Non breakable space'     : 'Ikke ombrydelig mellemrum',
	'Stop element floating'   : 'Forhindre element forskydning',
	// dialogs
	'Warning'          : 'Advarsel',
	'Properies'        : 'Egenskaber',
	'Popup'            : 'Popup',
	'Advanced'         : 'Avanceret',
	'Events'           : 'Hændelser',
	'Width'            : 'Bredde',
	'Height'           : 'Højde',
	'Left'             : 'Venstre',
	'Center'           : 'Centreret',
	'Right'            : 'Højre',
	'Border'           : 'Ramme',
	'Background'       : 'Baggrund',
	'Css class'        : 'Css klasse',
	'Css style'        : 'Css stil',
	'No'               : 'Nej',
	'Title'            : 'Overskrift',
	'Script direction' : 'Script retning',
	'Language'         : 'Sprog',
	'Charset'          : 'Karaktersæt',
	'Not set'          : 'Ikke sat',
	'Left to right'    : 'Venstre mod højre',
	'Right to left'    : 'Højre mod venstre',
	'In this window'   : 'I dette vindue',
	'In new window (_blank)'         : 'I et nyt vindue',
	'In new parent window (_parent)' : 'I ydre ramme (_parent)',
	'In top frame (_top)'            : 'I øverste ramme (_top)',
	'URL'              : 'URL',
	'Open in'          : 'Åbn i',
	'Open file manger' : 'Åbn fil håndtering',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : '',
	// format 
	'Heading 1'     : 'Overskrift 1',
	'Heading 2'     : 'Overskrift 2',
	'Heading 3'     : 'Overskrift 3',
	'Heading 4'     : 'Overskrift 4',
	'Heading 5'     : 'Overskrift 5',
	'Heading 6'     : 'Overskrift 6',
	'Paragraph'     : 'Paragraf',
	'Address'       : 'Adresse',
	'Preformatted'  : 'Pre-formateret',
	// font size
	'Small (8pt)'   : 'Lille (8pt)',
	'Small (10px)'  : 'Lille (10px)',
	'Small (12pt)'  : 'Lille (12pt)',
	'Normal (14pt)' : 'Normal (14pt)',
	'Large (18pt)'  : 'Stor (18pt)',
	'Large (24pt)'  : 'Stor (24pt)',
	'Large (36pt)'  : 'Stor (36pt)',				
	// bookmark
	'Bookmark name' : 'Bogmærke navn',
	// link
	'Link URL'         : 'Link URL',
	'Target'           : 'Destination',
	'Select bookmark'  : 'Vælg bogmærke',
	'Open link in popup window' : 'Åbn link i popup vindue',
	'Window name'      : 'Title',
	'Window size'      : 'Størrelse',
	'Window position'  : 'Position',
	'Location bar'     : 'Adresselinje',
	'Menu bar'         : 'Menu bar',
	'Toolbar'          : 'Værktøjslinie',
	'Scrollbars'       : 'Vis rullepanel',
	'Status bar'       : 'Status linie',
	'Resizable'        : 'Skalebar',
	'Depedent'         : 'Afh\u00E6ngig (Kun Mozilla/Firefox)',
	'Add return false' : 'Inds\u00E6t \'return false\'',
	'Target MIME type' : 'Destinations-MIME-type',
	'Relationship page to target (rel)' : 'Forholds side til desitnation (rel)',
	'Relationship target to page (rev)' : 'Forholds desitination til side (rev)',
	'Tab index'        : 'Tabindeks',
	'Access key'       : 'Genvejstast',
	// image
	'Size'             : 'Størrelse',
	'Preview'          : 'Vis',
	'Margins'          : 'Margin',
	'Alt text'         : 'Alternativ teks',
	'Image URL'        : 'Billed URL',
	// table
	'Spacing'          : 'Celle afstand',
	'Padding'          : 'Indholds afstand',
	'Rows'             : 'Rækker',
	'Columns'          : 'Kolonner',
	'Groups'           : 'Grupper',
	'Cells'            : 'Celler',
	'Caption'          : 'Oversrift',
	'Inner borders'    : 'Kanter',
	// table cell
	'Table cell type'  : 'Tabel celle type',
	'Data'             : 'Data',
	'Header'           : 'Hoved',
	'Justify'          : 'Lige margin',
	'Paddings'         : 'Afstand',
	'Apply to'         : 'Gælder for',
	'Current cell'     : 'Aktuelle celle',
	'All cells in row' : 'Alle celler i rækken',
	'All cells in column' : 'Alle celler i kolonnen',
	'All cells in table' : 'Alle celler i tabellen',
	// about
	'About elRTE'                  : 'Om elRTE',
	'Version'                      : 'Version',
	'Licence'                      : 'Licens',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : '',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : '',
	'You can use it in any commercial or non-commercial projects.' : '',
	'Authors'                      : 'Forfatere',
	'Chief developer'              : 'Chef udvikler',
	'Developer, tech support'      : 'Udvikler, teknisk support',
	'Developer'                    : 'Udvikler',
	'Interface designer'           : 'Interface designer',
	'Spanish localization'         : 'Spansk oversættelse',
	'Czech localization'           : 'Tjekkoslovakisk oversættelse',
	'Japanese localization'        : 'Japansk oversættelse',
	'Latvian localization'         : 'Lettisk oversættelse',
	'German localization'          : 'Tysk oversættelse',
	'Ukranian localization'        : 'Ukrainsk oversættelse',
	'Persian (farsi) localization' : 'Persisk (fasi) oversættelse',
	'Arabic localization'          : 'Arabisk oversættelse',
	'RTL support'                  : 'RTL understøttelse',
	'French localization'          : 'Fransk oversættelse',
	'Dutch localization'           : 'Hollandsk oversættelse',
	'Hungarian localization'       : 'Ungarsk oversættelse',
	'Polish localization'          : 'Polsk oversættelse',
	'Italian localization'         : 'Italiensk oversættelse',
	'Traditional Chinese localization' : 'Traditoinel kinesisk oversættelse',
	'For more information about this software visit the' : 'For mere information, besøg ',
	'elRTE website'                : 'elRTE\'s hjemmeside'
}
})(jQuery);
js/i18n/elrte.ca.js000060400000014424150714137430010000 0ustar00/**
 * Catalan translation
 * @author Maria Consuelo Bravo <consolbravo@gmail.com>
 * @version 2010-12-21
 */
(function($) {
elRTE.prototype.i18Messages.ca = {
	'_translator'    : 'Maria Consuelo Bravo &lt;consolbravo@gmail.com&gt;',
	'_translation'   : 'Catalan translation',
	'Editor' : 'Editor',
	'Source' : 'Codi font',
	// Panel Name
	'Copy/Pase'      : 'Copia/Enganxa',
	'Undo/Redo'      : 'Desfés/Restaura',
	'Text styles'    : 'Estils de text',
	'Colors'         : 'Colors',
	'Alignment'      : 'Alineació',
	'Indent/Outdent' : 'Augmenta/Redueix el sagnat',
	'Text format'    : 'Format de text',
	'Lists'          : 'Llistes',
	'Misc elements'  : 'Diversos',
	'Links'          : 'Enllaços',
	'Images'         : 'Imatges',
	'Media'          : 'Multimèdia',
	'Tables'         : 'Taules',
	'File manager (elFinder)' : 'Gestor d\'arxius',
	// button names
	'Save'                    : 'Desa',
	'Copy'                    : 'Copia',
	'Cut'                     : 'Retalla',
	'Paste'                   : 'Enganxa',
	'Paste only text'         : 'Enganxa només el text',
	'Paste formatted text'    : 'Enganxa el text formatat',
	'Clean format'            : 'Neteja el format',
	'Undo last action'        : 'Desfés l\'última acció',
	'Redo previous action'    : 'Restaura l\'última acció',
	'Bold'                    : 'Negreta',
	'Italic'                  : 'Cursiva',
	'Underline'               : 'Subratllat',
	'Strikethrough'           : 'Ratllat',
	'Superscript'             : 'Superíndex',
	'Subscript'               : 'Subíndex',
	'Align left'              : 'Alinea a l\'esquerra',
	'Ailgn right'             : 'Alinea a la dreta',
	'Align center'            : 'Centra',
	'Align full'              : 'Justifica',
	'Font color'              : 'Color del text',
	'Background color'        : 'Color de fons',
	'Indent'                  : 'Augmenta el sagnat',
	'Outdent'                 : 'Redueix el sagnat',
	'Format'                  : 'Format',
	'Font size'               : 'Mida de la lletra',
	'Font'                    : 'Font',
	'Ordered list'            : 'Llista ordenada',
	'Unordered list'          : 'Llista desordenada',
	'Horizontal rule'         : 'Línia horitzontal',
	'Blockquote'              : 'Cita',
	'Block element (DIV)'     : 'Elements de bloc (DIV)',
	'Link'                    : 'Enllaç',
	'Delete link'             : 'Elimina l\'enllaç',
	'Bookmark'                : 'Marcador',
	'Image'                   : 'Imatge',
	'Table'                   : 'Taula',
	'Delete table'            : 'Elimina la taula',
	'Insert row before'       : 'Insereix fila abans',
	'Insert row after'        : 'Insereix fila després',
	'Delete row'              : 'Elimina la fila',
	'Insert column before'    : 'Insereix columna abans',
	'Insert column after'     : 'Insereix columna després',
	'Delete column'           : 'Elimina la columna',
	'Merge table cells'       : 'Fusiona les cel·les',
	'Split table cell'        : 'Divideix la cel·la',
	'Toggle display document structure' : 'Pantalla d\'estructura del document',
	'Table cell properties'   : 'Propietats de la cel·la',
	'Table properties'        : 'Propietats de la taula',
	'Toggle full screen mode' : 'Pantalla completa',
	'Open file manager'       : 'Obre el gestor d\'arxius',
	'Non breakable space'     : 'Espai indivisible',
	'Stop element floating'   : 'Atura l\'element flotant',
	// dialogs
	'Warning' : 'Advertència',
	'Properies' : 'Propietats',
	'Popup' : 'Finestra emergent',
	'Advanced' : 'Avançat',
	'Events' : 'Incidències',
	'Width' : 'Amplada',
	'Height' : 'Alçada',
	'Left'   : 'Esquerra',
	'Center' : 'Centrat',
	'Right'  : 'Dreta',
	'Border' : 'Vora',
	'Background' : 'Fons',
	'Css class' : 'Classe CSS',
	'Css style' : 'Estil CSS',
	'No' : 'No',
	'Title' : 'Títol',
	'Script direction' : 'Adreça de l\'script',
	'Language' : 'Idioma',
	'Charset' : 'Charset',
	'Not set' : 'No establert',
	'Left to right' : 'D\'esquerra a dreta',
	'Right to left' : 'De dreta a esquerra',
	'In this window' : 'En aquesta finestra (_self)',
	'In new window (_blank)' : 'En una finestra nova (_blank)',
	'In new parent window (_parent)' : 'En una finestra mare nova (_parent)',
	'In top frame (_top)' : 'En un marc superior (_top)',
	'URL' : 'URL',
	'Open in' : 'Obre a',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Per raons de seguretat aquesta operació no està disponible en el seu navegador. Utilitzi una drecera de teclat.',
	// format 
	'Heading 1' : 'Encapçalament 1',
	'Heading 2' : ' Encapçalament 2',
	'Heading 3' : ' Encapçalament 3',
	'Heading 4' : ' Encapçalament 4',
	'Heading 5' : ' Encapçalament 5',
	'Heading 6' : ' Encapçalament 6',
	'Paragraph' : 'Paràgraf',
	'Address' : 'Adreça',
	'Preformatted' : 'Preformatat',
	// font size
	'Small (8pt)'   : 'Petit (8pt)',
	'Small (10px)'  : 'Petit (10px)',
	'Small (12pt)'  : 'Petit (12pt)',
	'Normal (14pt)' : 'Normal (14pt)',
	'Large (18pt)'  : 'Gran (18pt)',
	'Large (24pt)'  : 'Gran (24pt)',
	'Large (36pt)'  : 'Gran (36pt)',
	// bookmark
	'Bookmark name' : 'Nom del marcador',
	// link
	'Link URL' : 'URL de l\'enllaç',
	'Target' : 'Objectiu',
	'Open link in popup window' : 'Obre l\'enllaç en una finestra emergent',
	'Window name' : 'Nom de la finestra',
	'Window size' : 'Mida de la finestra',
	'Window position' : 'Posició de la finestra',
	'Location bar' : 'Barra d\'adreces',
	'Menu bar' : 'Barra de menús',
	'Toolbar' : 'Barra d\'eines',
	'Scrollbars' : 'Barres de desplaçament',
	'Status bar' : 'Barra d\'estat',
	'Resizable' : 'Redimensionable',
	'Depedent' : 'Dependent (Netscape)',
	'Add return false' : 'Afegeix (return false)',
	'Target MIME type' : 'Destí de tipus MIME',
	'Relationship page to target (rel)' : 'Relació de la pàgina amb l\'enllaç (rel)',
	'Relationship target to page (rev)' : 'Relació de l\'enllaç amb la pàgina (rev)',
	'Tab index' : 'Índex de tabulador',
	'Access key' : 'Tecla d\'accés',
	// image
	'Size' : 'Mida',
	'Preview' : 'Previsualització',
	'Margins' : 'Marges',
	'Alt text' : 'Text alternatiu',
	'Image URL' : 'URL de la imatge',
	// table
	'Spacing'       : 'Interlineat (Spacing)',
	'Padding'       : 'Emplenament (Padding)',
	'Rows'          : 'Files',
	'Columns'       : 'Columnes',
	'Groups'        : 'Grups',
	'Cells'         : 'Cel·les',
	'Caption'       : 'Llegenda',
	'Inner borders' : 'Vores internes'
}
})(jQuery);
js/i18n/elrte.nl.js000060400000014115150714137430010023 0ustar00/**
 * Dutch translation
 * @author Kurt Aerts
 * @link http://ilabsolutions.net/
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.nl = {
	'_translator'    : 'Kurt Aerts',
	'_translation'   : 'Dutch translation',
	'Editor' : 'Editor',
	'Source' : 'Broncode',
// Panel names
	'Copy / Pase' : 'Kopieeer / Plakken',
	'Undo / Redo' : 'Ongedaan maken / Herhalen typen',
	'Text styles' : 'Tekst stijlen',
	'Colors': 'Kleuren:',
	'Alignment': 'Alinea',
	'Indent / Outdent': '',
	'Text format': 'Tekst opmaak',
	'Lists': 'Lijsten',
	'Misc elements': '',
	'Links': 'Links',
	'Images': 'Afbeeldingen',
	'Media': 'Media',
	'Tables': 'Tabelllen',
	'File manager (elFinder)' : 'Bestandsmanager (elFinder)',
// Button names
	'About this software'     : 'Over deze software',
	'Save': 'Opslaan',
	'Copy': 'Kopieer',
	'Cut': 'Knip',
	'Paste': 'Plak',
	'Paste only text': 'Plak alleen tekst',
	'Paste formatted text': 'Plak opgemaakte tekst',
	'Clean format': 'Opmaak opschonen',
	'Undo last action': 'Maak laaste actie ongedaan',
	'Redo previous action': 'Herdoe laatst gedane actie',
	'Bold': 'Vet',
	'Italic': 'Cursief',
	'Underline': 'Onderlijnt',
	'Strikethrough': 'Doorstreept',
	'Superscript': '',
	'Subscript': '',
	'Align left': 'Links uitlijnen',
	'Ailgn right': 'Rechts uitlijnen',
	'Align center': 'Centreren',
	'Align full': 'Uitvullen',
	'Font color': 'Tekst kleur',
	'Background color': 'Achtergrond kleur',
	'Indent': 'Inspringing vergroten',
	'Outdent': 'Inspringing Verkleinen',
	'Format': 'Opmaak',
	'Font size': 'Tekst grootte',
	'Font': 'Lettertype',
	'Ordered list': 'Geordende lijst',
	'Unordered list': 'Ongeordende lijst',
	'Horizontal rule': 'Horizontale regel',
	'Blockquote': '',
	'Block element (DIV)'  : '',
	'Link': 'Link',
	'Delete link': 'Verwijder mo,l',
	'Bookmark': '',
	'Image': 'Afbeelding',
	'Table': 'Tabel',
	'Delete table': 'Verwijder tabel',
	'Insert row before': 'Invoegen voor rij',
	'Insert row after': 'Invoegen na rij',
	'Delete row': 'Verwijder rij',
	'Insert column before': 'Invoegen voor kolom',
	'Insert column after': 'Invoegen na kolom',
	'Delete column': 'Verwijder kolom',
	'Merge table cells': 'Samenvoegen tabel cellen',
	'Split table cell': '',
	'Toggle display document structure': '',
	'Table cell properties': '',
	'Table properties': '',
	'Toggle full screen mode' : '(toggle) Volledig scherm',
	'Open file manager'       : 'Open bestandsmanager',
	'Non breakable space'   : '',
	'Stop element floating' : '',
// Dialogs
	'Warning': 'Waarschuwing',
	'Properies': 'Opties',
	'Popup': 'Popup',
	'Advanced': 'Geavanceerd',
	'Events': 'Events',
	'Width': 'Breedte',
	'Height': 'Hoogte',
	'Left'   : 'Links',
	'Center' : 'Midden',
	'Right'  : 'Rechts',
	'Border': 'Border',
	'Background': 'Achtergrond',
	'Css class': 'Css Class',
	'Css style': 'Css style',
	'No': 'Nee',
	'Title': 'Titel',
	'Script direction': '',
	'Language': 'Taal',
	'Charset': 'Charset',
	'Not set': 'Niet gezet',
	'Left to right': 'Links naar rechts',
	'Right to left': 'Rechts naar link',
	'In this window': 'In dit venster',
	'In new window (_blank)': 'In nieuw venster (_blank)',
	'In new parent window (_parent)': 'In new parent window (_parent)',
	'In top frame (_top)': 'In top frame (_top)',
	'URL':'',
	'Open in': 'Open in',
// Copy
	'This operation is disabled in your browser on security reason. Use shortcut instead. ' : 'Deze operatie is uitgeschakeld in jou browser voor beveiligings redenen. Gebruik de snelkoppeling.',
// Format
	'Heading 1' : '',
	'Heading 2' : '',
	'Heading 3' : '',
	'Heading 4' : '',
	'Heading 5' : '',
	'Heading 6' : '',
	'Paragraph' : '',
	'Address' : '',
	'Preformatted':'',
// Font size
	'Small (8pt)': 'Kleinst (8pt)',
	'Small (10px)': 'Kleiner (10px)',
	'Small (12pt)': 'Klein (12pt)',
	'Normal (14pt)': 'Normaal (14pt)',
	'Large (18pt)': 'Groot (18pt)',
	'Large (24pt)': 'Groter (24pt)',
	'Large (36pt)': 'Grootst (36pt)',
// Bookmark
	'Bookmark name': '',
// Link
	'Link URL': '',
	'Target': 'Doel',
	'Select bookmark' : '',
	'Open link in popup window': '',
	'URL':'',
	'Window name': 'Venster naam',
	'Window size': 'Venster grootte',
	'Window position': 'Venster Positie',
	'Open link in popup window': 'Open link in een popup enster',
	'Location bar': 'Locatie balk',
	'Menu bar': 'Menu balk',
	'Toolbar': 'Toolbar',
	'Scrollbars': 'Scrollbar',
	'Status bar': 'Status balk',
	'Resizable': 'Schaalbaar',
	'Depedent': '',
	'Add return false': '',
	'Target MIME type': '',
	'Relationship page to target (rel)': '',
	'Relationship target to page (rev)': '',
	'Tab index':'',
	'Access key': '',
// Image
	'Size': 'Grootte',
	'Preview': 'Voorbeeld',
	'Margins': '',
	'Alt text': 'Alt tekst',
	'Image URL': 'Afbeelding URL',
// Table
	'Spacing'       : '',
	'Padding'       : '',
	'Rows'          : '',
	'Columns'       : '',
	'Groups'        : '',
	'Cells'         : '',
	'Caption'       : '',
	'Inner borders' : '' ,
	// table cell
	'Table cell type' : '',
	'Data' : '',
	'Header' : '',
	'Justify' : '',
	'Paddings' : '',
	'Apply to' : 'Toepassen op',
	'Current cell' : 'Huidige cell',
	'All cells in row' : 'Alle cellen in rij',
	'All cells in column' : 'Alle cellen in kolom',
	'All cells in table' : 'Alle cellen in tabel',
	// about
	'About elRTE' : 'Over elRTE',
	'Version' : 'Versie',
	'Licence' : 'Licentie',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE is een open-source Javascript gebasseerd WYSIWYG HTML-editor.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'Hoofddoel van de editor - Simpel wekren met tekst en opmaak (HTML) op websites, forums en andere online diensten.',
	'You can use it in any commercial or non-commercial projects.' : 'Je kan het gebruiken in commerciele en niet commericiele projecten.',
	'Authors' : 'Auteurs',
	'Chief developer' : '',
	'Developer, tech support' : '',
	'Interface designer' : '',
	'Spanish localization' : '',
	'Japanese localization' : '',
	'Latvian localization' : '',
	'German localization' : '',
	'Ukranian localization' : '',
	'For more information about this software visit the' : 'Voor meer informatie over deze software bezoek de',
	'elRTE website' : ''
};
})(jQuery);
js/i18n/elrte.YOUR_LANG.js000060400000014650150714137430011015 0ustar00/*
 * WARNING! Use this file only if you want to make translation
 * Please submit your translation to the project by creating new issue at:
 * http://elrte.org/redmine/projects/elrte/issues/new
 */
/*
 * YOUR_LANGUAGE_TRANSLATION translation
 * @author NAME <EMAIL>
 * @version 201x-xx-xx
 */
(function($) {
// LANG_CODE can be 2-letter "en", "fr" or 5-letter "pt_BR", "zh_CN"
elRTE.prototype.i18Messages.LANG_CODE = {
	'_translator'    : 'YOUR_NAME &lt;YOUR_EMAIL&gt;',
	'_translation'   : 'YOUR_TRANSLATION NAME', // will be seen in about dialog
	'Editor' : '',
	'Source' : '',
	// panels names
	'Copy/Pase'      : '',
	'Undo/Redo'      : '',
	'Text styles'    : '',
	'Colors'         : '',
	'Alignment'      : '',
	'Indent/Outdent' : '',
	'Text format'    : '',
	'Lists'          : '',
	'Misc elements'  : '',
	'Links'          : '',
	'Images'         : '',
	'Media'          : '',
	'Tables'         : '',
	'File manager (elFinder)' : '',
	// buttons names
	'About this software'     : '',
	'Save'                    : '',
	'Copy'                    : '',
	'Cut'                     : '',
	'Paste'                   : '',
	'Paste only text'         : '',
	'Paste formatted text'    : '',
	'Clean format'            : '', 
	'Undo last action'        : '',
	'Redo previous action'    : '',
	'Bold'                    : '',
	'Italic'                  : '',
	'Underline'               : '',
	'Strikethrough'           : '',
	'Superscript'             : '',
	'Subscript'               : '',
	'Align left'              : '',
	'Ailgn right'             : '',
	'Align center'            : '',
	'Align full'              : '',
	'Font color'              : '',
	'Background color'        : '',
	'Indent'                  : '',
	'Outdent'                 : '',
	'Format'                  : '',
	'Font size'               : '',
	'Font'                    : '',
	'Ordered list'            : '',
	'Unordered list'          : '',
	'Horizontal rule'         : '',
	'Blockquote'              : '',
	'Block element (DIV)'     : '',
	'Link'                    : '',
	'Delete link'             : '',
	'Bookmark'                : '',
	'Image'                   : '',
	'Table'                   : '',
	'Delete table'            : '',
	'Insert row before'       : '',
	'Insert row after'        : '',
	'Delete row'              : '',
	'Insert column before'    : '',
	'Insert column after'     : '',
	'Delete column'           : '',
	'Merge table cells'       : '',
	'Split table cell'        : '',
	'Toggle display document structure' : '',
	'Table cell properties'   : '',
	'Table properties'        : '',
	'Toggle full screen mode' : '',
	'Open file manager'       : '',
	'Non breakable space'     : '',
	'Stop element floating'   : '',
	// dialogs
	'Warning'          : '',
	'Properies'        : '',
	'Popup'            : '',
	'Advanced'         : '',
	'Events'           : '',
	'Width'            : '',
	'Height'           : '',
	'Left'             : '',
	'Center'           : '',
	'Right'            : '',
	'Border'           : '',
	'Background'       : '',
	'Css class'        : '',
	'Css style'        : '',
	'No'               : '',
	'Title'            : '',
	'Script direction' : '',
	'Language'         : '',
	'Charset'          : '',
	'Not set'          : '',
	'Left to right'    : '',
	'Right to left'    : '',
	'In this window'   : '',
	'In new window (_blank)'         : '',
	'In new parent window (_parent)' : '',
	'In top frame (_top)'            : '',
	'URL'              : '',
	'Open in'          : '',
	'Open file manger' : '',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : '',
	// format 
	'Heading 1'     : '',
	'Heading 2'     : '',
	'Heading 3'     : '',
	'Heading 4'     : '',
	'Heading 5'     : '',
	'Heading 6'     : '',
	'Paragraph'     : '',
	'Address'       : '',
	'Preformatted'  : '',
	// font size
	'Small (8pt)'   : '',
	'Small (10px)'  : '',
	'Small (12pt)'  : '',
	'Normal (14pt)' : '',
	'Large (18pt)'  : '',
	'Large (24pt)'  : '',
	'Large (36pt)'  : '',				
	// bookmark
	'Bookmark name' : '',
	// link
	'Link URL'         : '',
	'Target'           : '',
	'Select bookmark'  : '',
	'Open link in popup window' : '',
	'Window name'      : '',
	'Window size'      : '',
	'Window position'  : '',
	'Location bar'     : '',
	'Menu bar'         : '',
	'Toolbar'          : '',
	'Scrollbars'       : '',
	'Status bar'       : '',
	'Resizable'        : '',
	'Depedent'         : '',
	'Add return false' : '',
	'Target MIME type' : '',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index'        : '',
	'Access key'       : '',
	// image
	'Size'             : '',
	'Preview'          : '',
	'Margins'          : '',
	'Alt text'         : '',
	'Image URL'        : '',
	// table
	'Spacing'          : '',
	'Padding'          : '',
	'Rows'             : '',
	'Columns'          : '',
	'Groups'           : '',
	'Cells'            : '',
	'Caption'          : '',
	'Inner borders'    : '',
	// table cell
	'Table cell type'  : '',
	'Data'             : '',
	'Header'           : '',
	'Justify'          : '',
	'Paddings'         : '',
	'Apply to'         : '',
	'Current cell'     : '',
	'All cells in row' : '',
	'All cells in column' : '',
	'All cells in table' : '',
	// about
	'About elRTE'                  : '',
	'Version'                      : '',
	'Licence'                      : '',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : '',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : '',
	'You can use it in any commercial or non-commercial projects.' : '',
	'Authors'                      : '',
	'Chief developer'              : '',
	'Developer, tech support'      : '',
	'Developer'                    : '',
	'Interface designer'           : '',
	'Spanish localization'         : '',
	'Czech localization'           : '',
	'Japanese localization'        : '',
	'Latvian localization'         : '',
	'German localization'          : '',
	'Ukranian localization'        : '',
	'Persian (farsi) localization' : '',
	'Arabic localization'          : '',
	'RTL support'                  : '',
	'French localization'          : '',
	'Dutch localization'           : '',
	'Hungarian localization'       : '',
	'Polish localization'          : '',
	'Italian localization'         : '',
	'Traditional Chinese localization' : '',
	'For more information about this software visit the' : '',
	'elRTE website'                : 'на сайте elRTE'
}
})(jQuery);
js/i18n/elrte.sk.js000060400000013666150714137430010041 0ustar00/*
 * Slovak translation
 * @author Lubos Voros <lubos@simpledevelopment.sk>
 * @version 2010-09-19
 */
(function($) {
elRTE.prototype.i18Messages.cs = {
	'_translator'    : 'Lubos Voros &lt;lubos@simpledevelopment.sk&gt;',
	'_translation'   : 'Slovak translation',
	'Editor' : 'Editor',
	'Source' : 'Zdroj',
	// Panel Name
	'Copy/Pase'      : 'Kopírovať/Vložiť',
	'Undo/Redo'      : 'Zpäť/Znova',
	'Text styles'    : 'Štýly',
	'Colors'         : 'Farby',
	'Alignment'      : 'Zarovnanie',
	'Indent/Outdent' : 'Odsadiť / Predsadit',
	'Text format'    : 'Formát',
	'Lists'          : 'Zoznamy',
	'Misc elements'  : 'Iné elementy',
	'Links'          : 'Odkazy',
	'Images'         : 'Obrázky',
	'Media'          : 'Média',
	'Tables'         : 'Tabuľky',
	'File manager (elFinder)' : 'Správca súborov (elFinder)',
	'elfinder' : 'Správca súborov',
	// button names
	'Save'                    : 'Uložiť',
	'Copy'                    : 'Kopírovať',
	'Cut'                     : 'Vystrihnúť',
	'Paste'                   : 'Vložiť',
	'Paste only text'         : 'Vložiť ako text',
	'Paste formatted text'    : 'Vložiť formátovaný text',
	'Clean format'            : 'Vyčistiť', 
	'Undo last action'        : 'Zpäť',
	'Redo previous action'    : 'Znova',
	'Bold'                    : 'Tučné',
	'Italic'                  : 'Kurzíva',
	'Underline'               : 'Podčiarknuté',
	'Strikethrough'           : 'Priečiarknuté',
	'Superscript'             : 'Horný index',
	'Subscript'               : 'Dolný index',
	'Align left'              : 'Zarovnať vľavo',
	'Ailgn right'             : 'Zarovnať vpravo',
	'Align center'            : 'Zarovnať na stred',
	'Align full'              : 'Do bloku',
	'Font color'              : 'Farba písma',
	'Background color'        : 'Farba pozadí',
	'Indent'                  : 'Odsadiť', 
	'Outdent'                 : 'Predsadiť', 
	'Format'                  : 'Formát',
	'Font size'               : 'Veľkosť',
	'Font'                    : 'Písmo',
	'Ordered list'            : 'Číslovaný zoznam',
	'Unordered list'          : 'Zoznam',
	'Horizontal rule'         : 'Vodorovná čiara',
	'Blockquote'              : 'Citát',
	'Block element (DIV)'     : 'DIV element',
	'Link'                    : 'Odkaz',
	'Delete link'             : 'Odstraniť odkaz',
	'Bookmark'                : 'Záložka',
	'Image'                   : 'Obrázok',
	'Table'                   : 'Tabuľka',
	'Delete table'            : 'Smazať tabuľku',
	'Insert row before'       : 'Vložiť riadok nad',
	'Insert row after'        : 'Vložiť riadok pod',
	'Delete row'              : 'Smazať riadok',
	'Insert column before'    : 'Vložiť stľpec před',
	'Insert column after'     : 'Vložiť stľpec za',
	'Delete column'           : 'Smazať stľpec',
	'Merge table cells'       : 'Zlúčiť bunky',
	'Split table cell'        : 'Rozděliť bunku',
	'Toggle display document structure' : 'Zobraziť štruktúru',
	'Table cell properties'   : 'Vlastnosti bunky',
	'Table properties'        : 'Vlastnosti tabuľky',
	'Toggle full screen mode' : 'Celá obrazovka',
	'Open file manager'       : 'Otvoriť správcu súborov',
	'Non breakable space'     : 'Nerozdeliteľná medzera',
	'Stop element floating'   : 'Zrušiť obtekanie elementu',
	// dialogs
	'Warning' : 'Pozor',
	'Properies' : 'Vlastnosti',
	'Popup' : 'Pop-up',
	'Advanced' : 'Viacej',
	'Events' : 'Udalosti',
	'Width' : 'Šířka',
	'Height' : 'Výška',
	'Left'   : 'Vľavo',
	'Center' : 'Na stred',
	'Right'  : 'Vpravo',
	'Border' : 'Rámček',
	'Background' : 'Pozadie',
	'Css class' : 'CSS trieda',
	'Css style' : 'CSS štýl',
	'No' : 'Nie',
	'Title' : 'Titulka',
	'Script direction' : 'Pravidlá scriptu',
	'Language' : 'Jazyk',
	'Charset' : 'Znaková sada',
	'Not set' : 'Nenastavené',
	'Left to right' : 'Zľava doprava',
	'Right to left' : 'Zprava doľava',
	'In this window' : 'V tomto okne (_self)',
	'In new window (_blank)' : 'V novom okne (_blank)',
	'In new parent window (_parent)' : 'V novom rodičovskom okne (_parent)',
	'In top frame (_top)' : 'V hlavnom okne (_top)',
	'URL' : 'URL',
	'Open in' : 'Otevoriť v',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Táto operácia je vo vašom prehliadači vypnutá kvôli bezpečnosti. Použite klávesovú skratku.',
	// format 
	'Heading 1' : 'Nadpis 1',
	'Heading 2' : 'Nadpis 2',
	'Heading 3' : 'Nadpis 3',
	'Heading 4' : 'Nadpis 4',
	'Heading 5' : 'Nadpis 5',
	'Heading 6' : 'Nadpis 6',	
	'Paragraph' : 'Odstavec',
	'Address' : 'Adresa',
	'Preformatted' : 'Predformátované',
	// font size
	'Small (8pt)'   : 'Malé (8 pt)',
	'Small (10px)'  : 'Malé (10 pt)',
	'Small (12pt)'  : 'Malé (12 pt)',
	'Normal (14pt)' : 'Normálne (14 pt)',
	'Large (18pt)'  : 'Veľké (18 pt)',
	'Large (24pt)'  : 'Veľké (24 pt)',
	'Large (36pt)'  : 'Veľké (36 pt)',				
	// bookmark
	'Bookmark name' : 'Názov záložky',
	// link
	'Link URL' : 'URL',
	'Target' : 'Cieľ',
	'Open link in popup window' : 'Otvárať odkaz v popup okne.',
	'URL' : 'URL',
	'Window name' : 'Meno okna',
	'Window size' : 'Veľkosť okna',
	'Window position' : 'Pozícia okna',
	'Location bar' : 'Adresový riadok',
	'Menu bar' : 'Ponuky',
	'Toolbar' : 'Lišta nástrojov',
	'Scrollbars' : 'Posuvníky',
	'Status bar' : 'Stavový riadok',
	'Resizable' : 'Zmena veľkosti',
	'Depedent' : 'Závislý',
	'Add return false' : 'Pridat return false',
	'Target MIME type' : 'Cieľový MIME typ',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index' : '',
	'Access key' : '',
	// image
	'Size' : 'Veľkosti',
	'Preview' : 'Náhľad',
	'Margins' : 'Okraje',
	'Alt text' : 'Alternativny text',
	'Image URL' : 'URL',
	// table
	'Spacing'       : 'Vonkajši okraj',
	'Padding'       : 'Vnútorný okraj',
	'Rows'          : 'Riadky',
	'Columns'       : 'Stľpce',
	'Groups'        : 'Skupiny',
	'Cells'         : 'Buňky',
	'Caption'       : 'Titulok',
	'Inner borders' : 'Vnútorné rámčeky'
	
	
}
})(jQuery);

js/i18n/elrte.cs.js000060400000013576150714137430010031 0ustar00/*
 * Czech translation
 * @author Michal Marek <mich.marek@gmail.com>
 * @version 2010-09-19
 */
(function($) {
elRTE.prototype.i18Messages.cs = {
	'_translator'    : 'Michal Marek &lt;mich.marek@gmail.com&gt;',
	'_translation'   : 'Czech translation',
	'Editor' : 'Editor',
	'Source' : 'Kód',
	// Panel Name
	'Copy/Pase'      : 'Kopírovat/Vložit',
	'Undo/Redo'      : 'Zpět/Znovu',
	'Text styles'    : 'Styly',
	'Colors'         : 'Barvy',
	'Alignment'      : 'Zarovnání',
	'Indent/Outdent' : 'Odsadit / Předsadit',
	'Text format'    : 'Formát',
	'Lists'          : 'Seznamy',
	'Misc elements'  : 'Ostatní elementy',
	'Links'          : 'Odkazy',
	'Images'         : 'Obrázky',
	'Media'          : 'Média',
	'Tables'         : 'Tabulky',
	'File manager (elFinder)' : 'Správce souborů (elFinder)',
	'elfinder' : 'Správce souborů',
	// button names
	'Save'                    : 'Uložit',
	'Copy'                    : 'Kopírovat',
	'Cut'                     : 'Vyjmout',
	'Paste'                   : 'Vložit',
	'Paste only text'         : 'Vložit pouze text',
	'Paste formatted text'    : 'Vložit formátovaný text',
	'Clean format'            : 'Vyčistit', 
	'Undo last action'        : 'Zpět',
	'Redo previous action'    : 'Znovu',
	'Bold'                    : 'Tučné',
	'Italic'                  : 'Kurzíva',
	'Underline'               : 'Podtržené',
	'Strikethrough'           : 'Škrtnuté',
	'Superscript'             : 'Horní index',
	'Subscript'               : 'Dolní index',
	'Align left'              : 'Zarovnat vlevo',
	'Ailgn right'             : 'Zarovna vpravo',
	'Align center'            : 'Zarovnat na střed',
	'Align full'              : 'Do bloku',
	'Font color'              : 'Barva písma',
	'Background color'        : 'Barva pozadí',
	'Indent'                  : 'Odsadit', 
	'Outdent'                 : 'Předsadit', 
	'Format'                  : 'Formát',
	'Font size'               : 'Velikost',
	'Font'                    : 'Písmo',
	'Ordered list'            : 'Číslovaný seznam',
	'Unordered list'          : 'Seznam',
	'Horizontal rule'         : 'Vodorovná čára',
	'Blockquote'              : 'Citát',
	'Block element (DIV)'     : 'DIV element',
	'Link'                    : 'Odkaz',
	'Delete link'             : 'Odstranit odkaz',
	'Bookmark'                : 'Záložka',
	'Image'                   : 'Obrázek',
	'Table'                   : 'Tabulka',
	'Delete table'            : 'Smazat tabulku',
	'Insert row before'       : 'Vložit řádek nad',
	'Insert row after'        : 'Vložit řádek pod',
	'Delete row'              : 'Smazat řádek',
	'Insert column before'    : 'Vložit sloupec před',
	'Insert column after'     : 'Vložit sloupec za',
	'Delete column'           : 'Smazat sloupec',
	'Merge table cells'       : 'Sloučit buňky',
	'Split table cell'        : 'Rozdělit buňku',
	'Toggle display document structure' : 'Zobrazit strukturu',
	'Table cell properties'   : 'Vlastnosti buňky',
	'Table properties'        : 'Vlastnosti tabulky',
	'Toggle full screen mode' : 'Fullscreen',
	'Open file manager'       : 'Otevřít správce souborů',
	'Non breakable space'     : 'Nedělitelná mezera',
	'Stop element floating'   : 'Zrušit obtékání elementu',
	// dialogs
	'Warning' : 'Pozor',
	'Properies' : 'Vlastnosti',
	'Popup' : 'Pop-up',
	'Advanced' : 'Více',
	'Events' : 'Události',
	'Width' : 'Šířka',
	'Height' : 'Výška',
	'Left'   : 'Vlevo',
	'Center' : 'Na střed',
	'Right'  : 'Vpravo',
	'Border' : 'Rámeček',
	'Background' : 'Pozadí',
	'Css class' : 'CSS třída',
	'Css style' : 'CSS styl',
	'No' : 'Ne',
	'Title' : 'Titulek',
	'Script direction' : 'Pravidla scriptu',
	'Language' : 'Jazyk',
	'Charset' : 'Znaková sada',
	'Not set' : 'Nenastaveno',
	'Left to right' : 'Zleva doprava',
	'Right to left' : 'Zprava doleva',
	'In this window' : 'V tomto okně (_self)',
	'In new window (_blank)' : 'V novém okně (_blank)',
	'In new parent window (_parent)' : 'V novém rodičovském okně (_parent)',
	'In top frame (_top)' : 'V hlavním okně (_top)',
	'URL' : 'URL',
	'Open in' : 'Otevřít v',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Tato operace je ve vašem prohlížeči vypnutá kvůli bezpečnosti. Použijte klávesovou zkratku.',
	// format 
	'Heading 1' : 'Nadpis 1',
	'Heading 2' : 'Nadpis 2',
	'Heading 3' : 'Nadpis 3',
	'Heading 4' : 'Nadpis 4',
	'Heading 5' : 'Nadpis 5',
	'Heading 6' : 'Nadpis 6',	
	'Paragraph' : 'Odstavec',
	'Address' : 'Adresa',
	'Preformatted' : 'Předformátováno',
	// font size
	'Small (8pt)'   : 'Malé (8 pt)',
	'Small (10px)'  : 'Malé (10 pt)',
	'Small (12pt)'  : 'Malé (12 pt)',
	'Normal (14pt)' : 'Normální (14 pt)',
	'Large (18pt)'  : 'Velké (18 pt)',
	'Large (24pt)'  : 'Velké (24 pt)',
	'Large (36pt)'  : 'Velké (36 pt)',				
	// bookmark
	'Bookmark name' : 'Jméno záložky',
	// link
	'Link URL' : 'URL',
	'Target' : 'Cíl',
	'Open link in popup window' : 'Otevírat odkaz v popup okně.',
	'URL' : 'URL',
	'Window name' : 'Jméno okna',
	'Window size' : 'Velikost okna',
	'Window position' : 'Pozice okna',
	'Location bar' : 'Adresní řádek',
	'Menu bar' : 'Menu nabídek',
	'Toolbar' : 'Lišta nástrojů',
	'Scrollbars' : 'Posuvníky',
	'Status bar' : 'Stavový řádek',
	'Resizable' : 'Změna velikosti',
	'Depedent' : '',
	'Add return false' : 'Přidat return false',
	'Target MIME type' : 'Cílový MIME typ',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index' : '',
	'Access key' : '',
	// image
	'Size' : 'Velikost',
	'Preview' : 'Náhled',
	'Margins' : 'Okraje',
	'Alt text' : 'Alternativní text',
	'Image URL' : 'URL',
	// table
	'Spacing'       : 'Vnější okraje',
	'Padding'       : 'Vnitřní okraje',
	'Rows'          : 'Řádky',
	'Columns'       : 'Sloupce',
	'Groups'        : 'Skupiny',
	'Cells'         : 'Buňky',
	'Caption'       : 'Popisek',
	'Inner borders' : 'Vnitřní rámečky'
	
	
}
})(jQuery);
js/i18n/elrte.de.js000060400000014204150714137430010001 0ustar00/*
 * German translation
 * @author Daniel Holzmann <d@velopment.at>
 * @version 2011-03-31
 */
(function($) {
elRTE.prototype.i18Messages.de = {
	'_translator'    : 'Daniel Holzmann &lt;d@velopment.at&gt;',
	'_translation'   : 'German translation',
	'Editor' : 'Editor',
	'Source' : 'Quellcode',
	// Panel Name
	'Copy/Pase'      : 'Kopieren/Einfügen',
	'Undo/Redo'      : 'Rückgängig/Wiederherstellen',
	'Text styles'    : 'Textstile',
	'Colors'         : 'Farbe',
	'Alignment'      : 'Ausrichtung',
	'Indent/Outdent' : 'Einrücken / Ausrücken',
	'Text format'    : 'Format',
	'Lists'          : 'Listen',
	'Misc elements'  : 'Sonstige Elemente',
	'Links'          : 'Link',
	'Images'         : 'Bild',
	'Media'          : 'Media Datei',
	'Tables'         : 'Tabelle',
	'File manager (elFinder)' : 'Datei-Manager (elFinder)',
	// button names
	'Save'                    : 'Speichern',
	'Copy'                    : 'Ausschneiden',
	'Cut'                     : 'Kopieren',
	'Paste'                   : 'Einfügen',
	'Paste only text'         : 'nur Text einfügen',
	'Paste formatted text'    : 'formatierten Text einfügen',
	'Clean format'            : 'Formatierungen entfernen', 
	'Undo last action'        : 'Rückgängig',
	'Redo previous action'    : 'Wiederherstellen',
	'Bold'                    : 'Fett',
	'Italic'                  : 'Kursiv',
	'Underline'               : 'Unterstrichen',
	'Strikethrough'           : 'Durchgestrichen',
	'Superscript'             : 'Hochgestellt',
	'Subscript'               : 'Tiefgestellt',
	'Align left'              : 'Linksbündig',
	'Ailgn right'             : 'Rechtsbündig',
	'Align center'            : 'Zentriert',
	'Align full'              : 'Blocksatz',
	'Font color'              : 'Textfarbe',
	'Background color'        : 'Hintergrundfarbe',
	'Indent'                  : 'Einzug erhöhen', 
	'Outdent'                 : 'Einzug verringern', 
	'Format'                  : 'Format',
	'Font size'               : 'Größe',
	'Font'                    : 'Schriftart',
	'Ordered list'            : 'Nummerierte Liste',
	'Unordered list'          : 'Liste',
	'Horizontal rule'         : 'Horizontale Linie',
	'Blockquote'              : 'Zitatblock',
	'Block element (DIV)'     : 'Block-Element (DIV)',
	'Link'                    : 'Link',
	'Delete link'             : 'Link entfernen',
	'Bookmark'                : 'Lesezeichen einfügen/editieren',
	'Image'                   : 'Bild',
	'Table'                   : 'Tabelle',
	'Delete table'            : 'Tabelle löschen',
	'Insert row before'       : 'Zeile oberhalb einfügen',
	'Insert row after'        : 'Zeile unterhalb einfügen',
	'Delete row'              : 'Zeile entfernen',
	'Insert column before'    : 'Spalte links davor einfügen',
	'Insert column after'     : 'Spalte rechts danach einfügen',
	'Delete column'           : 'Spalte löschen',
	'Merge table cells'       : 'Zellen verbinden',
	'Split table cell'        : 'Zelle teilen',
	'Toggle display document structure' : 'Blöcke anzeigen',
	'Table cell properties'   : 'Zellen-Eigenschaften',
	'Table properties'        : 'Tabellen-Eigenschaften',
	'Toggle full screen mode' : 'Editor maximieren',
	'Open file manager'       : 'Dateimanager öffnen',
	'Non breakable space'     : 'Geschütztes Leerzeichen',
	'Stop element floating'   : 'Floating deaktivieren',
	// dialogs
	'Warning' : 'ACHTUNG',
	'Properies' : 'Einstellungen',
	'Popup' : 'Pop-up',
	'Advanced' : 'erweitert',
	'Events' : 'Veranstaltungen',
	'Width' : 'Breite',
	'Height' : 'Höhe',
	'Left'   : 'Links',
	'Center' : 'Mitte',
	'Right'  : 'Rechts',
	'Border' : 'Rahmen',
	'Background' : 'Hintergrundfarbe',
	'Css class' : 'CSS Klasse',
	'Css style' : 'CSS Stil',
	'No' : 'Nein',
	'Title' : 'Titel',
	'Script direction' : 'Schreibrichtung',
	'Language' : 'Sprache',
	'Charset' : 'Zeichensatz',
	'Not set' : 'nicht definiert',
	'Left to right' : 'Links nach Rechts',
	'Right to left' : 'Rechts nach Links',
	'In this window' : 'Gleiches Fenster (_self)',
	'In new window (_blank)' : 'Neues Fenster (_blank)',
	'In new parent window (_parent)' : 'Oberes Fenster (_parent)',
	'In top frame (_top)' : 'Oberstes Fenster (_top)',
	'URL' : 'URL',
	'Open in' : 'öffnen in',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Dieser Vorgang ist in Ihrem Browser aus Sicherheitsgründen deaktiviert. Benutzen Sie stattessen die Tastenkombination.',
	// format 
	'Heading 1' : 'Überschrift 1',
	'Heading 2' : 'Überschrift 2',
	'Heading 3' : 'Überschrift 3',
	'Heading 4' : 'Überschrift 4',
	'Heading 5' : 'Überschrift 5',
	'Heading 6' : 'Überschrift 6',	
	'Paragraph' : 'Absatz',
	'Address' : 'Addresse',
	'Preformatted' : 'vorformattierter Text',
	// font size
	'Small (8pt)'   : 'Klein (8pt)',
	'Small (10px)'  : 'Klein (10px)',
	'Small (12pt)'  : 'Klein (12pt)',
	'Normal (14pt)' : 'Normal (14pt)',
	'Large (18pt)'  : 'Groß (18pt)',
	'Large (24pt)'  : 'Groß (24pt)',
	'Large (36pt)'  : 'Groß (36pt)',				
	// bookmark
	'Bookmark name' : 'Lesezeichen-Name',
	// link
	'Link URL' : 'Link URL',
	'Target' : 'Zielfenster',
	'Open link in popup window' : 'Link in einem Popup-Fenster öffnen',
	'URL' : 'URL',
	'Window name' : 'Fenster-Name',
	'Window size' : 'Fenstergröße',
	'Window position' : 'Fensterposition',
	'Location bar' : 'Adressleiste',
	'Menu bar' : 'Menüleiste',
	'Toolbar' : 'Werkzeugleiste',
	'Scrollbars' : 'Scrollbalken',
	'Status bar' : 'Statusleiste',
	'Resizable' : 'Vergrößerbar',
	'Depedent' : 'Abhängig (Netscape)',
	'Add return false' : 'return false hinzufügen',
	'Target MIME type' : 'MIME-Type',
	'Relationship page to target (rel)' : 'Verhältnis Seite zum Ziel (rel)',
	'Relationship target to page (rev)' : 'Verhältnis Ziel zur Seite (rev)',
	'Tab index' : 'Tab Index',
	'Access key' : 'Zugriffstaste',
	// image
	'Size' : 'Größe',
	'Preview' : 'Vorschau',
	'Margins' : 'Außenabstände',
	'Alt text' : 'Alt-Text',
	'Image URL' : 'Bild-URL',
	// table
	'Spacing'       : 'Abstand (spacing)',
	'Padding'       : 'Abstand (padding)',
	'Rows'          : 'Zeilen',
	'Columns'       : 'Spalten',
	'Groups'        : 'Gruppen',
	'Cells'         : 'Zellen',
	'Caption'       : 'Überschrift',
	'Inner borders' : 'Innere Ränder'
	
	
}
})(jQuery);
js/i18n/elrte.lv.js000060400000015306150714137430010036 0ustar00/**
 * Latvian translation
 * @author Uldis Plotiņš <uldis.plotins@gmail.com>
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.lv = {
	'_translator'    : 'Uldis Plotiņš &lt;uldis.plotins@gmail.com&gt;',
	'_translation'   : 'Latvian translation',
	'Editor' : 'Redaktors',
	'Source' : 'Izejas kods',
	// panel names
	'Copy/Pase'      : 'Kopēt/Ievietot',
	'Undo/Redo'      : 'Atcelt/Atkārtot darbību',
	'Text styles'    : 'Teksta stili',
	'Colors'         : 'Krāsa',
	'Alignment'      : 'Izlīdzināšana',
	'Indent/Outdent' : 'Atkāpes',
	'Text format'    : 'Formatēšana',
	'Lists'          : 'Saraksti',
	'Misc elements'  : 'Dažādi elementi',
	'Links'          : 'Saites',
	'Images'         : 'Attēli',
	'Media'          : 'Mēdiju faili',
	'Tables'         : 'Tabulas',
	'File manager (elFinder)' : 'Failu pārvaldnieks (elFinder)',
	// button names
	'Save'                    : 'Saglabāt',
	'Copy'                    : 'Kopēt',
	'Cut'                     : 'Izgriezt',
	'Paste'                   : 'Ievietot',
	'Paste only text'         : 'Ievietot tikai tekstu',
	'Paste formatted text'    : 'Ievietot formatētu tekstu',
	'Clean format'            : 'Atcelt formatēšanu', 
	'Undo last action'        : 'Atcelt pēdējo darbību',
	'Redo previous action'    : 'Atkārtot pēdējo darbību',
	'Bold'                    : 'Treknraksts',
	'Italic'                  : 'Slīpraksts',
	'Underline'               : 'Pasvītrots',
	'Strikethrough'           : 'Izsvītrots',
	'Superscript'             : 'Augšraksts',
	'Subscript'               : 'Apakšraksts',
	'Align left'              : 'Izlīdzināt pa kreiso malu',
	'Ailgn right'             : 'Izlīdzināt pa labo malu',
	'Align center'            : 'Centrēt',
	'Align full'              : 'Izlīdzināt pa malām',
	'Font color'              : 'Šrifta krāsa',
	'Background color'        : 'Fona krāsa',
	'Indent'                  : 'Palielināt atkāpi',
	'Outdent'                 : 'Samazināt atkāpi',
	'Format'                  : 'Formatēšana',
	'Font size'               : 'Šrifta lielums',
	'Font'                    : 'Šrifts',
	'Ordered list'            : 'Numurēts saraksts',
	'Unordered list'          : 'Nenumurēts saraksts',
	'Horizontal rule'         : 'Horizontālā līnija',
	'Blockquote'              : 'Citāts',
	'Block element (DIV)'     : 'Bloka elements (DIV)',
	'Link'                    : 'Saite',
	'Delete link'             : 'Dzēst saiti',
	'Bookmark'                : 'Grāmatzīme',
	'Image'                   : 'Attēls',
	'Table'                   : 'Tabula',
	'Delete table'            : 'Dzēst tabulu',
	'Insert row before'       : 'Ievietot rindu pirms',
	'Insert row after'        : 'Ievietot rindu pēc',
	'Delete row'              : 'Dzēst rindu',
	'Insert column before'    : 'Ievietot kolonnu pirms',
	'Insert column after'     : 'Ievietot kolonnu pēc',
	'Delete column'           : 'Dzēst kolonnu',
	'Merge table cells'       : 'Apvienot ailes',
	'Split table cell'        : 'Sadalīt aili',
	'Toggle display document structure' : 'Rādīt dokumenta struktūru/neredzamos elementus',
	'Table cell properties'   : 'Ailes iestatījumi',
	'Table properties'        : 'Tabulas iestatījumi',
	'Toggle full screen mode' : 'Pilns ekrāns',
	'Open file manager'       : 'Atvērt failu pārvaldnieku',
	'Non breakable space'     : 'Nepārtrauktā atstarpe',
	'Stop element floating'   : 'Atslēgt elementu apklāšanu ar tekstu',
	// dialogs
	'Warning' : 'Uzmanību',
	'Properies' : 'Iestatījumi',
	'Popup' : 'Jauns logs',
	'Advanced' : 'Papildus',
	'Events' : 'Notikumi',
	'Width' : 'Platums',
	'Height' : 'Augstums',
	'Left'   : 'Pa kresi',
	'Center' : 'Pa centru',
	'Right'  : 'Pa labi',
	'Border' : 'Mala',
	'Background' : 'Fons',
	'Css class' : 'Css klase',
	'Css style' : 'Css stils',
	'No' : 'Nē',
	'Title' : 'Virsraksts',
	'Script direction' : 'Vēstules virziens',
	'Language' : 'Valoda',
	'Charset' : 'Kodējums',
	'Not set' : 'Nav uzstādī†s',
	'Left to right' : 'No kreisās uz labo',
	'Right to left' : 'No labās uz kreiso',
	'In this window' : 'Dotajā logā',
	'In new window (_blank)' : 'Jaunā logā (_blank)',
	'In new parent window (_parent)' : 'Vecāku logā (_parent)',
	'In top frame (_top)' : 'Augšējā rāmī (_top)',
	'URL' : 'URL',
	'Open in' : 'Atvērt',
	'Open file manger' : 'Atvērt failu pārvaldnieku',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Dotā darbība jūsu pārlūkam ir liegta saistībā ar drošības aspektiem. Izmantojiet taustiņu kombināciju.',
	// format 
	'Heading 1' : 'Virsraksts 1',
	'Heading 2' : 'Virsraksts 2',
	'Heading 3' : 'Virsraksts 3',
	'Heading 4' : 'Virsraksts 4',
	'Heading 5' : 'Virsraksts 5',
	'Heading 6' : 'Virsraksts 6',	
	'Paragraph' : 'Paragrāfs',
	'Address' : 'Adrese',
	'Preformatted' : '',
	// font size
	'Small (8pt)'   : 'Sīks (8pt)',
	'Small (10px)'  : 'Mazs (10px)',
	'Small (12pt)'  : 'Neliels (12pt)',
	'Normal (14pt)' : 'Parasts (14pt)',
	'Large (18pt)'  : 'Liels (18pt)',
	'Large (24pt)'  : 'Ļoti liels(24pt)',
	'Large (36pt)'  : 'Milzīgs (36pt)',				
	// bookmark
	'Bookmark name' : 'Grāmatzīmes vārds',
	// link
	'Link URL' : 'Saites adrese (URL)',
	'Target' : 'Mērķis',
	'Select bookmark' : 'Izvēlēties grāmatzīmi',
	'Open link in popup window' : 'Atvērt saiti jaunā logā',
	'URL' : 'URL',
	'Window name' : 'Loga nosaukums',
	'Window size' : 'Loga izmērs',
	'Window position' : 'Loga pozīcija',
	'Location bar' : 'Vietas panelis',
	'Menu bar' : 'Izvēlnes panelis',
	'Toolbar' : 'Instrumentu panelis',
	'Scrollbars' : 'Ritjoslas',
	'Status bar' : 'Stāvokļa panelis',
	'Resizable' : 'Izmēra izmaiņas',
	'Depedent' : 'Atkarīgs (Netscape)',
	'Add return false' : 'Pievienot (return false)',
	'Target MIME type' : 'MIME type mērķi',
	'Relationship page to target (rel)' : 'Lapas attiecībaa pret mērķi (rel)',
	'Relationship target to page (rev)' : 'Mērķa attiecība pret lapu (rev)',
	'Tab index' : '',
	'Access key' : 'Pieejas taustiņš',
	// image
	'Size' : 'Izmērs',
	'Preview' : 'Priekšskats',
	'Margins' : 'Atkāpes',
	'Alt text' : 'Apraksta teksts',
	'Image URL' : 'Bildes URL',
	// table
	'Spacing'       : 'Atstarpe',
	'Padding'       : 'Atkāpe',
	'Rows'          : 'Rindas',
	'Columns'       : 'Kolonnas',
	'Groups'        : 'Grupas',
	'Cells'         : 'Ailes',
	'Caption'       : 'Tabulas virsraksts',
	'Inner borders' : 'Iekšējās robežas',
	// table cell
	'Table cell type' : 'Tabulas ailes tips',
	'Data' : 'Dati',
	'Header' : 'Virsraksts',
	'Justify' : 'Pa malām',
	'Paddings' : 'Atkāpes',
	'Apply to' : 'Pielietot uz',
	'Current cell' : 'Izvēlētā aile',
	'All cells in row' : 'Visas rindas ailes',
	'All cells in column' : 'Visas stabiņa ailes',
	'All cells in table' : 'Visas tabulas ailes'
}
})(jQuery);
js/i18n/elrte.zh_CN.js000060400000015000150714137430010405 0ustar00/**
 * Simplified Chinese translation
 * @author Lee Chenhwa <leechenhwa@gmail.com>
 * @version 2010-11-01
 */
(function($) {
elRTE.prototype.i18Messages.zh_CN = {
	'_translator'    : 'Lee Chenhwa &lt;leechenhwa@gmail.com&gt;',
	'_translation'   : 'Simplified Chinese translation',
	'Editor' : '编辑器',
	'Source' : '源代码',
	// Panel Name
	'Copy/Pase'      : '复制/粘贴',
	'Undo/Redo'      : '取消/重做',
	'Text styles'    : '文字样式',
	'Colors'         : '颜色',
	'Alignment'      : '对齐',
	'Indent/Outdent' : '缩进/缩回',
	'Text format'    : '文字格式',
	'Lists'          : '列单',
	'Misc elements'  : '其他元素',
	'Links'          : '链接',
	'Images'         : '图片',
	'Media'          : '多媒体',
	'Tables'         : '表格',
	'File manager (elFinder)' : '文件管理(elFinder)',
	// button names
	'Save'                    : '保存',
	'Copy'                    : '复制',
	'Cut'                     : '剪切',
	'Paste'                   : '粘贴',
	'Paste only text'         : '粘贴为纯文字',
	'Paste formatted text'    : '粘贴为已格式化文字',
	'Clean format'            : '清除格式',
	'Undo last action'        : '取消上一个动作',
	'Redo previous action'    : '重做上一个动作',
	'Bold'                    : '粗体',
	'Italic'                  : '斜体',
	'Underline'               : '下划线',
	'Strikethrough'           : '删除线',
	'Superscript'             : '上标',
	'Subscript'               : '下标',
	'Align left'              : '靠左',
	'Ailgn right'             : '靠右',
	'Align center'            : '居中',
	'Align full'              : '左右对齐',
	'Font color'              : '文字颜色',
	'Background color'        : '背景颜色',
	'Indent'                  : '增大缩进',
	'Outdent'                 : '减少缩进',
	'Format'                  : '格式',
	'Font size'               : '字体大小',
	'Font'                    : '字体',
	'Ordered list'            : '编号',
	'Unordered list'          : '项目编号',
	'Horizontal rule'         : '水平线',
	'Blockquote'              : '引用',
	'Block element (DIV)'     : '区块 (DIV)',
	'Link'                    : '链接',
	'Delete link'             : '删除链接',
	'Bookmark'                : '书签(锚点)',
	'Flash'                   : 'Flash媒体',
	'Image'                   : '图片',
	'Table'                   : '表格',
	'Delete table'            : '删除表格',
	'Insert row before'       : '上方增加一行',
	'Insert row after'        : '下方增加一行',
	'Delete row'              : '删除列',
	'Insert column before'    : '左边增加一列',
	'Insert column after'     : '右边增加一列',
	'Delete column'           : '删除列',
	'Merge table cells'       : '合并表格单元',
	'Split table cell'        : '分割表格单元',
	'Toggle display document structure' : '显示文件结构标记',
	'Table cell properties'   : '表格单元属性',
	'Table properties'        : '表格属性',
	'Toggle full screen mode' : '切换为全屏幕',
	'Open file manager'       : '打开文件管理',
	'Non breakable space'     : '空格',
	'Smiley'                  : '笑脸',
	'Page break'              : '换页符',
	'Stop element floating'   : '停止元素浮动属性',
	// dialogs
	'Warning' : '警告',
	'Properies' : '属性',
	'Popup' : '弹出框',
	'Advanced' : '高级',
	'Events' : '事件',
	'Width' : '宽度',
	'Height' : '高度',
	'Left'   : '靠左',
	'Center' : '居中',
	'Right'  : '靠右',
	'Border' : '边框',
	'Background' : '背景',
	'Css class' : 'CSS类别',
	'Css style' : 'CSS样式',
	'No' : '不设置',
	'Title' : '标题',
	'Script direction' : '文字方向',
	'Language' : '语言',
	'Charset' : '字符编码',
	'Not set' : '不设定',
	'Left to right' : '从左至右',
	'Right to left' : '从右至左',
	'In this window' : '在本窗口',
	'In new window (_blank)' : '在新窗口 (_blank)',
	'In new parent window (_parent)' : '在父窗口 (_parent)',
	'In top frame (_top)' : '在顶层 (_top)',
	'URL' : '网址',
	'Open in' : '打开到',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : '基于安全考虑,此动作无法在浏览器中进行,请直接按 Ctrl+V 试试。',
	// format 
	'Heading 1' : '标题 1',
	'Heading 2' : '标题 2',
	'Heading 3' : '标题 3',
	'Heading 4' : '标题 4',
	'Heading 5' : '标题 5',
	'Heading 6' : '标题 6',
	'Paragraph' : '段落',
	'Address' : '地址',
	'Preformatted' : '预格式化的',
	// font size
	'Small (8pt)'   : '极小 (8pt)',
	'Small (10px)'  : '更小 (10px)',
	'Small (12pt)'  : '小 (12pt)',
	'Normal (14pt)' : '中 (14pt)',
	'Large (18pt)'  : '大 (18pt)',
	'Large (24pt)'  : '更大 (24pt)',
	'Large (36pt)'  : '极大 (36pt)',
	// bookmark
	'Bookmark name'   : '书签名称',
	'Select bookmark' : '选择书签',
	// link
	'Link URL' : '链接地址',
	'Target' : '目标',
	'Open link in popup window' : '在弹出窗口中打开',
	'Window name' : '窗口名称',
	'Window size' : '窗口尺寸',
	'Window position' : '窗口位置',
	'Location bar' : '地址栏',
	'Menu bar' : '菜单栏',
	'Toolbar' : '工具栏',
	'Scrollbars' : '滚动条',
	'Status bar' : '状态栏',
	'Resizable' : '可否调整尺寸',
	'Depedent' : '相关',
	'Add return false' : '附加 return false ',
	'Target MIME type' : '目标的MIME类型',
	'Relationship page to target (rel)' : '关联页到目标 (rel)',
	'Relationship target to page (rev)' : '关联目标到页 (rev)',
	'Tab index' : 'Tab键顺序',
	'Access key' : '访问键',
	// image
	'Size' : '尺寸',
	'Preview' : '预览',
	'Margins' : '边界',
	'Alt text' : '提示文字',
	'Image URL' : '图片网址',
	// table
	'Spacing'       : '表格间距 (Spacing)',
	'Padding'       : '表格边距 (Padding)',
	'Rows'          : '行',
	'Columns'       : '列',
	'Groups'        : '组',
	'Cells'         : '单元格',
	'Caption'       : '标题',
	'Inner borders' : '边框',
	// table cell
	'Table cell type'  : '单元格类型',
	'Data'             : '数据',
	'Header'           : '标题',
	'Justify'          : '对齐',
	'Paddings'         : '边距',
	'Apply to'         : '应用到',
	'Current cell'     : '当前单元格',
	'All cells in row' : '本行所有单元格',
	'All cells in column' : '本列所有单元格',
	'All cells in table' : '本表所有单元格',
	// about
	'About this software' : '关于本软件',
	'About elRTE'                  : '关于elRTE',
	'Version'                      : '版本',
	'Licence'                      : '许可证'
	
	
}
})(jQuery);
js/i18n/elrte.zh_TW.js000060400000021271150714137430010446 0ustar00/*
 * Traditional Chinese translation
 * @author T.C. Chou <tcchou@tcchou.org>
 * @version 2010-12-11
 * @author Tad <tad0616@gmail.com>
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.zh_TW = {
	'_translator'    : 'Tad &lt;tad0616@gmail.com&gt;<br>T.C. Chou &lt;tcchou@tcchou.org&gt;',
	'_translation'   : 'Traditional Chinese translation',
	'Editor' : '編輯',
	'Source' : '原始碼',
	// panels names
	'Copy/Pase'      : '複製/貼上',
	'Undo/Redo'      : '復原/重做',
	'Text styles'    : '文字樣式',
	'Colors'         : '顏色',
	'Alignment'      : '對齊',
	'Indent/Outdent' : '縮排/凸排',
	'Text format'    : '文字格式',
	'Lists'          : '清單',
	'Misc elements'  : '其他元件',
	'Links'          : '連結',
	'Images'         : '圖檔',
	'Media'          : '多媒體',
	'Tables'         : '表格',
	'File manager (elFinder)' : '檔案管理',
	// buttons names
	'About this software'     : '關於此軟體',
	'Save'                    : '儲存',
	'Copy'                    : '複製',
	'Cut'                     : '剪下',
	'Paste'                   : '貼上',
	'Paste only text'         : '貼上純文字',
	'Paste formatted text'    : '貼上格式化文字',
	'Clean format'            : '清除格式',
	'Undo last action'        : '復原最後一個動作',
	'Redo previous action'    : '重做上一個動作',
	'Bold'                    : '粗體',
	'Italic'                  : '斜體',
	'Underline'               : '底線',
	'Strikethrough'           : '刪除線',
	'Superscript'             : '上標',
	'Subscript'               : '下標',
	'Align left'              : '靠左',
	'Ailgn right'             : '靠右',
	'Align center'            : '置中',
	'Align full'              : '左右對齊',
	'Font color'              : '文字顏色',
	'Background color'        : '背景顏色',
	'Indent'                  : '縮排',
	'Outdent'                 : '凸排',
	'Format'                  : '格式',
	'Font size'               : '字型大小',
	'Font'                    : '字型',
	'Ordered list'            : '編號',
	'Unordered list'          : '項目符號',
	'Horizontal rule'         : '水平線',
	'Blockquote'              : '引用',
	'Block element (DIV)'     : '區域元件 (DIV)',
	'Link'                    : '連結',
	'Delete link'             : '移除連結',
	'Bookmark'                : '書籤',
	'Image'                   : '插圖',
	'Table'                   : '表格',
	'Delete table'            : '刪除表格',
	'Insert row before'       : '上方新增一列',
	'Insert row after'        : '下方新增一列',
	'Delete row'              : '刪除列',
	'Insert column before'    : '左邊新增一欄',
	'Insert column after'     : '右邊新增一欄',
	'Delete column'           : '刪除欄',
	'Merge table cells'       : '合併儲存格',
	'Split table cell'        : '分割儲存格',
	'Toggle display document structure' : '切換顯示文件結構',
	'Table cell properties'   : '表格儲存格屬性',
	'Table properties'        : '表格屬性',
	'Toggle full screen mode' : '切換為全螢幕',
	'Open file manager'       : '開啟檔案管理',
	'Non breakable space'     : '不斷行空白',
	'Stop element floating'   : '停止元件浮動屬性',
	// dialogs
	'Warning'          : '警告',
	'Properies'        : '屬性',
	'Popup'            : '跳出框',
	'Advanced'         : '進階',
	'Events'           : '事件',
	'Width'            : '寬度',
	'Height'           : '高度',
	'Left'             : '靠左',
	'Center'           : '置中',
	'Right'            : '靠右',
	'Border'           : '邊框',
	'Background'       : '背景',
	'Css class'        : 'CSS類別',
	'Css style'        : 'CSS樣式',
	'No'               : '不設置',
	'Title'            : '標題',
	'Script direction' : '語言方向',
	'Language'         : '語言',
	'Charset'          : '字元編碼',
	'Not set'          : '不設定',
	'Left to right'    : '左至右',
	'Right to left'    : '右到左',
	'In this window'   : '在此視窗',
	'In new window (_blank)'         : '在新視窗 (_blank)',
	'In new parent window (_parent)' : '在父視窗 (_parent)',
	'In top frame (_top)'            : '跳出框架 (_top)',
	'URL'              : '網址',
	'Open in'          : '開啟至',
	'Open file manger' : '開啟檔案管理員',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : '此動作被你的瀏覽器基於安全理由所禁止,請直接用快捷鍵。',
	// format 
	'Heading 1'     : '標題 1',
	'Heading 2'     : '標題 2',
	'Heading 3'     : '標題 3',
	'Heading 4'     : '標題 4',
	'Heading 5'     : '標題 5',
	'Heading 6'     : '標題 6',
	'Paragraph'     : '段落',
	'Address'       : '位址',
	'Preformatted'  : '固定格式',
	// font size
	'Small (8pt)'   : '極小 (8pt)',
	'Small (10px)'  : '更小 (10px)',
	'Small (12pt)'  : '小 (12pt)',
	'Normal (14pt)' : '中 (14pt)',
	'Large (18pt)'  : '大 (18pt)',
	'Large (24pt)'  : '更大 (24pt)',
	'Large (36pt)'  : '極大 (36pt)',
	// bookmark
	'Bookmark name' : '書籤名稱',
	// link
	'Link URL'         : '連結位址',
	'Target'           : '目標',
	'Select bookmark'  : '選擇書籤',
	'Open link in popup window' : '在跳出視窗中開啟',
	'Window name'      : '視窗名稱',
	'Window size'      : '視窗尺寸',
	'Window position'  : '視窗位置',
	'Location bar'     : '位址列',
	'Menu bar'         : '選單列',
	'Toolbar'          : '工具列',
	'Scrollbars'       : '捲軸',
	'Status bar'       : '狀態列',
	'Resizable'        : '可否調整尺寸',
	'Depedent'         : '相關 (Netscape)',
	'Add return false' : '加入傳回false (return false)',
	'Target MIME type' : '目標物的MIME類型',
	'Relationship page to target (rel)' : '定義連結的起點文件與目標文件之間的關係 (rel)',
	'Relationship target to page (rev)' : '定義連結的起點文件與目標文件之間的反向關係 (rev)',
	'Tab index'        : '定位索引',
	'Access key'       : '快速鍵',
	// image
	'Size'             : '尺寸',
	'Preview'          : '預覽',
	'Margins'          : '邊界',
	'Alt text'         : '提示文字',
	'Image URL'        : '圖檔網址',
	// table
	'Spacing'          : '儲存格間距 (Spacing)',
	'Padding'          : '儲存格內距 (Padding)',
	'Rows'             : '列',
	'Columns'          : '欄',
	'Groups'           : '儲存格群組',
	'Cells'            : '儲存格',
	'Caption'          : '表格標題',
	'Inner borders'    : '框線',
	// table cell
	'Table cell type'  : '表格儲存格型態',
	'Data'             : '資料',
	'Header'           : '標題',
	'Justify'          : '排整齊',
	'Paddings'         : '內距',
	'Apply to'         : '適用於',
	'Current cell'     : '目前儲存格',
	'All cells in row' : '同列所有儲存格',
	'All cells in column' : '同欄所有儲存格',
	'All cells in table' : '表格所有儲存格',
	// about
	'About elRTE'                  : '關於 elRTE',
	'Version'                      : '版本',
	'Licence'                      : '許可證',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE 是一個開放源碼 JavaScript 為基礎的所見即所得 HTML 編輯器。',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : '此編輯器主要目標 - 簡化網站, 部落格, 論壇及許多線上服務在文字處理與編排 (HTML) 的工作。',
	'You can use it in any commercial or non-commercial projects.' : '你可用於任何商業或者非商業專案中。',
	'Authors'                      : '作者',
	'Chief developer'              : '主力開發者',
	'Developer, tech support'      : '開發者, 技術支援',
	'Developer'                    : '開發者',
	'Interface designer'           : '介面設計師',
	'Spanish localization'         : '西班牙翻譯',
	'Czech localization'           : '捷克翻譯',
	'Japanese localization'        : '日文翻譯',
	'Latvian localization'         : '拉脫維亞翻譯',
	'German localization'          : '德文翻譯',
	'Ukranian localization'        : '烏克蘭翻譯',
	'Persian (farsi) localization' : '波斯翻譯',
	'Arabic localization'          : '阿拉伯翻譯',
	'RTL support'                  : 'RTL 支援',
	'French localization'          : '法文翻譯',
	'Dutch localization'           : '荷蘭翻譯',
	'Hungarian localization'       : '匈牙利翻譯',
	'Polish localization'          : '波蘭翻譯',
	'Italian localization'         : '義大利翻譯',
	'Traditional Chinese localization' : '中文翻譯',
	'For more information about this software visit the' : '更多關於此軟體的資訊請拜訪',
	'elRTE website'                : 'elRTE 網站'
}
})(jQuery);
js/i18n/elrte.jp.js000060400000020053150714137430010021 0ustar00/**
 * Japanese translation
 * @author Tomoaki Yoshida <info@yoshida-studio.jp>
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.jp = {
	'_translator'    : 'Tomoaki Yoshida &lt;info@yoshida-studio.jp&gt;',
	'_translation'   : 'Japanese translation',
	'Editor' : 'エディター',
	'Source' : 'ソース',
	// Panel Name
	'Copy/Pase'      : 'コピー/ペースト',
	'Undo/Redo'      : '元に戻す/やり直し',
	'Text styles'    : 'テキストスタイル',
	'Colors'         : '色',
	'Alignment'      : '行揃え',
	'Indent/Outdent' : 'インデント/アウトデント',
	'Text format'    : 'テキストフォーマット',
	'Lists'          : 'リスト',
	'Misc elements'  : 'その他',
	'Links'          : 'リンク',
	'Images'         : '画像',
	'Media'          : 'メディア',
	'Tables'         : 'テーブル',
	'File manager (elFinder)' : 'ファイルマネージャ(elFinder)',
	// button names
	'About this software'     : 'このソフトウェアについて',
	'Save'                    : '保存',
	'Copy'                    : 'コピー',
	'Cut'                     : '切り取り',
	'Paste'                   : '貼り付け',
	'Paste only text'         : 'テキストのみ貼り付け',
	'Paste formatted text'    : 'フォーマットされたテキストの貼り付け',
	'Clean format'            : 'フォーマット消去', 
	'Undo last action'        : '元に戻す',
	'Redo previous action'    : 'やり直し',
	'Bold'                    : '太字',
	'Italic'                  : '斜体',
	'Underline'               : '下線',
	'Strikethrough'           : '打ち消し線',
	'Superscript'             : '上付き文字',
	'Subscript'               : '添え字',
	'Align left'              : '左揃え',
	'Ailgn right'             : '右揃え',
	'Align center'            : '中央揃え',
	'Align full'              : '両端揃え',
	'Font color'              : 'テキスト色',
	'Background color'        : '背景色',
	'Indent'                  : 'インデント', 
	'Outdent'                 : 'アウトデント', 
	'Format'                  : 'フォーマット',
	'Font size'               : 'サイズ',
	'Font'                    : 'フォント',
	'Ordered list'            : '段落番号',
	'Unordered list'          : '箇条書き',
	'Horizontal rule'         : '横罫線',
	'Blockquote'              : 'ブロック引用',
	'Block element (DIV)'     : 'ブロック要素 (DIV)',
	'Link'                    : 'リンク',
	'Delete link'             : 'リンク削除',
	'Bookmark'                : 'アンカー挿入/編集',
	'Image'                   : 'イメージ',
	'Table'                   : 'テーブル',
	'Delete table'            : 'テーブル削除',
	'Insert row before'       : '前に行を挿入',
	'Insert row after'        : '後ろに行を挿入',
	'Delete row'              : '行を削除',
	'Insert column before'    : '前に列を挿入',
	'Insert column after'     : '後ろに列を挿入',
	'Delete column'           : '列を削除',
	'Merge table cells'       : 'セルを結合する',
	'Split table cell'        : 'セルを分割する',
	'Toggle display document structure' : '構成要素の表示',
	'Table cell properties'   : 'テーブルセルプロパティ',
	'Table properties'        : 'テーブルプロパティ',
	'Toggle full screen mode' : '最大化',
	'Open file manager'       : 'ファイルマネージャを開く',
	'Non breakable space'     : '改行なしスペース',
	'Stop element floating'   : 'フロートの解除',
	// dialogs
	'Warning' : '警告',
	'Properies' : 'プロパティ',
	'Popup' : 'ポップアップ',
	'Advanced' : 'アドバンス',
	'Events' : 'イベント',
	'Width' : '幅',
	'Height' : '高さ',
	'Left'   : '左',
	'Center' : '中央',
	'Right'  : '右',
	'Border' : 'ボーダー',
	'Background' : '背景',
	'Css class' : 'CSS class',
	'Css style' : 'CSS style',
	'No' : 'No',
	'Title' : 'タイトル',
	'Script direction' : '文字表記方向',
	'Language' : '言語',
	'Charset' : 'Charset',
	'Not set' : '設定しない',
	'Left to right' : '左から右',
	'Right to left' : '右から左',
	'In this window' : '同じウィンドウ (_self)',
	'In new window (_blank)' : '新しいウィンドウ (_blank)',
	'In new parent window (_parent)' : '新しい親ウィンドウ (_parent)',
	'In top frame (_top)' : 'トップフレーム (_top)',
	'URL' : 'URL',
	'Open in' : 'Open in',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'この機能はお使いのブラウザではセキュリティの観点からご利用できません。ショートカットをご利用ください。',
	// format 
	'Heading 1' : '見出し1',
	'Heading 2' : '見出し2',
	'Heading 3' : '見出し3',
	'Heading 4' : '見出し4',
	'Heading 5' : '見出し5',
	'Heading 6' : '見出し6',
	'Paragraph' : '段落',
	'Address' : 'アドレス',
	'Preformatted' : '',
	// font size
	'Small (8pt)'   : '小(8pt)',
	'Small (10px)'  : '小(10pt)',
	'Small (12pt)'  : '小(12pt)',
	'Normal (14pt)' : '中(14pt)',
	'Large (18pt)'  : '大(18pt)',
	'Large (24pt)'  : '大(24pt)',
	'Large (36pt)'  : '大(36pt)',
	// bookmark
	'Bookmark name' : 'アンカー名',
	// link
	'Link URL' : '(URL)',
	'Target' : 'ターゲット',
	'Open link in popup window' : 'リンク先をポップアップで開く',
	'URL' : 'URL',
	'Window name' : 'ウィンドウ名',
	'Window size' : 'ウィンドウサイズ',
	'Window position' : 'ウィンドウ位置',
	'Location bar' : 'ロケーションバー',
	'Menu bar' : 'メニューバー',
	'Toolbar' : 'ツールバー',
	'Scrollbars' : 'スクロールバー',
	'Status bar' : 'ステータスバー',
	'Resizable' : 'サイズ可変',
	'Depedent' : 'ウィンドウ連動',
	'Add return false' : 'return falseを加える',
	'Target MIME type' : 'Target MIME type',
	'Relationship page to target (rel)' : 'ページからターゲットの関係 (rel)',
	'Relationship target to page (rev)' : 'ターゲットからページの関係 (rev)',
	'Tab index' : 'タブインデックス',
	'Access key' : 'アクセスキー',
	// image
	'Size' : 'サイズ',
	'Preview' : 'プレビュー',
	'Margins' : 'マージン',
	'Alt text' : '代替テキスト',
	'Image URL' : '画像URL',
	// table
	'Spacing'       : 'セル間隔 (spacing)',
	'Padding'       : 'セル内余白 (padding)',
	'Rows'          : '行',
	'Columns'       : '列',
	'Groups'        : 'グループ',
	'Cells'         : 'セル',
	'Caption'       : 'キャプション',
	'Inner borders' : '内部ボーダー',
	// about
	'About elRTE' : 'elRTEについて',
	'Version' : 'バージョン',
	'Licence' : 'ライセンス',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTEはJavascriptベースのオープンソースWYSIWYG HTMLエディタです。',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'このエディタの主な目的は、ウェブサイト、ブログ、フォーラムやその他のオンラインサービスのテキストとHTMLフォーマット入力作業をシンプルにすることです。',
	'You can use it in any commercial or non-commercial projects.' : '商用・非商用に関わらずご利用いただけます。',
	'Authors' : '著作者',
	'Chief developer' : 'チーフデベロッパー',
	'Developer, tech support' : 'デベロッパー・テクニカルサポート',
	'Interface designer' : 'インターフェイスデザイナー',
	'Spanish localization' : 'スペイン語化ローカライゼーション',
	'Japanese localization' : '日本語化ローカライゼーション',
	'Latvian localization' : 'ラトビア語化ローカライゼーション',
	'German localization' : 'ドイツ語化ローカライゼーション',
	'Ukranian localization' : 'ウクライナ語化ローカライゼーション',
	'For more information about this software visit the' : '次のURLにてこのソフトウェアのより詳しい情報を公開しています。',
	'elRTE website' : 'elRTE ウェブサイト'
	
	
}
})(jQuery);
js/i18n/elrte.th.js000060400000031515150714137430010030 0ustar00/*
 * Thai translation
 * @author Jaideejung007 (Anusuk Sangubon) <jaideejung007@gmail.com>, http://www.thzaa.com
 * @version 2010-10-27
 */
(function($) {
elRTE.prototype.i18Messages.th = {
	'_translator'    : 'Anusuk Sangubon &lt;jaideejung007@gmail.com&gt;',
	'_translation'   : 'Thai translation',
	'Editor' : 'อิดิเตอร์',
	'Source' : 'ซอร์ส',
	// panels names
	'Copy/Pase'      : 'คัดลอก/วาง',
	'Undo/Redo'      : 'เลิกทำ/ทำซ้ำ',
	'Text styles'    : 'ลักษณะข้อความ',
	'Colors'         : 'สี',
	'Alignment'      : 'การจัดตำแหน่ง',
	'Indent/Outdent' : 'เพิ่มเยื้อง/ลดเยื้อง',
	'Text format'    : 'รูปแบบตัวอักษร',
	'Lists'          : 'รายการ',
	'Misc elements'  : 'องค์ประกอบอื่นๆ',
	'Links'          : 'ลิงค์',
	'Images'         : 'ภาพ',
	'Media'          : 'มีเดีย',
	'Tables'         : 'ตาราง',
	'File manager (elFinder)' : 'จัดการไฟล์ (elFinder)',
	// buttons names
	'About this software'     : 'เกี่ยวกับซอฟต์แวร์นี้',
	'Save'                    : 'บันทึก',
	'Copy'                    : 'คัดลอก',
	'Cut'                     : 'ตัด',
	'Paste'                   : 'วาง',
	'Paste only text'         : 'วางข้อความเท่านั้น',
	'Paste formatted text'    : 'วางข้อความที่จัดรูปแบบ',
	'Clean format'            : 'ล้างรูปแบบ', 
	'Undo last action'        : 'ยกเลิกการทำงานล่าสุด',
	'Redo previous action'    : 'ทำซ้ำการกระทำก่อนหน้า',
	'Bold'                    : 'ตัวหนา',
	'Italic'                  : 'ตัวเอียง',
	'Underline'               : 'ขีดเส้นใต้',
	'Strikethrough'           : 'ขีดเส้นตรงกลาง',
	'Superscript'             : 'ตัวยก',
	'Subscript'               : 'ตัวห้อย',
	'Align left'              : 'ชิดซ้าย',
	'Ailgn right'             : 'ชิดขวา',
	'Align center'            : 'กึ่งกลาง',
	'Align full'              : 'จัดเต็ม',
	'Font color'              : 'สีตัวอักษร',
	'Background color'        : 'สีพื้นหลัง',
	'Indent'                  : 'เพิ่มเยื้อง',
	'Outdent'                 : 'ลดเยื้อง',
	'Format'                  : 'รูปแบบ',
	'Font size'               : 'ขนาดอักษร',
	'Font'                    : 'แบบอักษร',
	'Ordered list'            : 'ลำดับรายการ',
	'Unordered list'          : 'ไม่มีลำดับรายการ',
	'Horizontal rule'         : 'เส้นคั่น',
	'Blockquote'              : 'ข้อความย่อหน้า',
	'Block element (DIV)'     : 'องค์ประกอบ Block (DIV)',
	'Link'                    : 'ลิงค์',
	'Delete link'             : 'ลบลิงค์',
	'Bookmark'                : 'บุ๊คมาร์ค',
	'Image'                   : 'ภาพ',
	'Table'                   : 'ตาราง',
	'Delete table'            : 'ลบตาราง',
	'Insert row before'       : 'แทรกแถวบน',
	'Insert row after'        : 'แทรกแถวหลัง',
	'Delete row'              : 'ลบแถว',
	'Insert column before'    : 'แทรกคอลัมน์บน',
	'Insert column after'     : 'แทรกคอลัมน์ล่าง',
	'Delete column'           : 'ลบคอลัมน์',
	'Merge table cells'       : 'ผสานเซลล์ตาราง',
	'Split table cell'        : 'แบ่งเซลล์ของตาราง',
	'Toggle display document structure' : 'สลับโครงสร้างของเอกสาร',
	'Table cell properties'   : 'ตารางคุณสมบัติของเซลล์',
	'Table properties'        : 'คุณสมบัติของตาราง',
	'Toggle full screen mode' : 'โหมดการสลับหน้าจอแบบเต็ม',
	'Open file manager'       : 'เปิดการจัดการไฟล์',
	'Non breakable space'     : 'ช่องว่าง',
	'Stop element floating'   : 'องค์ประกอบหยุดลอย',
	// dialogs
	'Warning'          : 'คำเตือน',
	'Properies'        : 'Properies',
	'Popup'            : 'ป๊อปอัพ',
	'Advanced'         : 'ขั้นสูง',
	'Events'           : 'เหตุการณ์',
	'Width'            : 'กว้าง',
	'Height'           : 'สูง',
	'Left'             : 'ซ้าย',
	'Center'           : 'กลาง',
	'Right'            : 'ขวา',
	'Border'           : 'เส้นขอบ',
	'Background'       : 'พื้นหลัง',
	'Css class'        : 'Css class',
	'Css style'        : 'Css style',
	'No'               : 'ไม่',
	'Title'            : 'ชื่อเรื่อง',
	'Script direction' : 'ทิศทางสคริปต์',
	'Language'         : 'ภาษา',
	'Charset'          : 'รหัสตัวอักษร',
	'Not set'          : 'ไม่ได้ตั้งค่า',
	'Left to right'    : 'ซ้ายไปขวา',
	'Right to left'    : 'ขวาไปซ้าย',
	'In this window'   : 'ในหน้าต่างนี้',
	'In new window (_blank)'         : 'ในหน้าต่างใหม่ (_blank)',
	'In new parent window (_parent)' : 'ในหน้าต่างใหม่ (_parent)',
	'In top frame (_top)'            : 'ในเฟรมด้านบน (_top)',
	'URL'              : 'URL',
	'Open in'          : 'เปิดใน',
	'Open file manger' : 'เปิดการจัดการไฟล์',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'การดำเนินการนี้จะปิดการใช้งานในเบราว์เซอร์ของคุณในเหตุผลด้านความปลอดภัย กรุณาใช้ทางลัดแทน',
	// format 
	'Heading 1'     : 'หัวเรื่อง 1',
	'Heading 2'     : 'หัวเรื่อง 2',
	'Heading 3'     : 'หัวเรื่อง 3',
	'Heading 4'     : 'หัวเรื่อง 4',
	'Heading 5'     : 'หัวเรื่อง 5',
	'Heading 6'     : 'หัวเรื่อง 6',
	'Paragraph'     : 'ย่อหน้า',
	'Address'       : 'ที่อยู่',
	'Preformatted'  : 'จัดย่อหน้าอิสระ',
	// font size
	'Small (8pt)'   : 'ขนาดเล็ก (8pt)',
	'Small (10px)'  : 'ขนาดเล็ก (10px)',
	'Small (12pt)'  : 'ขนาดเล็ก (12pt)',
	'Normal (14pt)' : 'ปกติ (14pt)',
	'Large (18pt)'  : 'ขนาดใหญ่ (18pt)',
	'Large (24pt)'  : 'ขนาดใหญ่ (24pt)',
	'Large (36pt)'  : 'ขนาดใหญ่ (36pt)',				
	// bookmark
	'Bookmark name' : 'ชื่อบุ๊คมาร์ค',
	// link
	'Link URL'         : 'ลิงค์ URL',
	'Target'           : 'Target',
	'Select bookmark'  : 'เลือกบุ๊คมาร์ค',
	'Open link in popup window' : 'เปิดลิงก์ในหน้าต่างป๊อปอัพ',
	'Window name'      : 'ชื่อหน้าต่าง',
	'Window size'      : 'ขนาดหน้าต่าง',
	'Window position'  : 'ตำแหน่งหน้าต่าง',
	'Location bar'     : 'แถบที่มา',
	'Menu bar'         : 'แถบเมนู',
	'Toolbar'          : 'แถบเครื่องมือ',
	'Scrollbars'       : 'สกอลล์บาร์',
	'Status bar'       : 'แถบสถานะ',
	'Resizable'        : 'ปรับขนาด',
	'Depedent'         : 'Depedent',
	'Add return false' : 'เพิ่ม return false',
	'Target MIME type' : 'รูปแบบ Target MIME',
	'Relationship page to target (rel)' : 'หน้าความสัมพันธ์ไปยังเป้าหมาย (rel)',
	'Relationship target to page (rev)' : 'เป้าหมายความสัมพันธ์ไปยังหน้า (rev)',
	'Tab index'        : 'ดัชนีแท็บ',
	'Access key'       : 'คีย์สำหรับเข้าถึง',
	// image
	'Size'             : 'ขนาด',
	'Preview'          : 'แสดงตัวอย่าง',
	'Margins'          : 'ขอบ',
	'Alt text'         : 'ข้อความ Alt',
	'Image URL'        : 'URL ของรูป',
	// table
	'Spacing'          : 'ระยะห่าง',
	'Padding'          : 'Padding',
	'Rows'             : 'แถว',
	'Columns'          : 'คอลัมน์',
	'Groups'           : 'กลุ่ม',
	'Cells'            : 'เซลล์',
	'Caption'          : 'Caption',
	'Inner borders'    : 'เส้นขอบด้านใน',
	// table cell
	'Table cell type'  : 'ประเภทของเซลล์ตาราง',
	'Data'             : 'ข้อมูล',
	'Header'           : 'หัว',
	'Justify'          : 'ชิด',
	'Paddings'         : 'Paddings',
	'Apply to'         : 'นำไปใช้',
	'Current cell'     : 'เซลล์ปัจจุบัน',
	'All cells in row' : 'เซลล์ทั้งหมดในแถว',
	'All cells in column' : 'เซลล์ทั้งหมดในคอลัมน์',
	'All cells in table' : 'เซลล์ทั้งหมดในตาราง',
	// about
	'About elRTE'                  : 'เกี่ยวกับ elRTE',
	'Version'                      : 'เวอร์ชั่น',
	'Licence'                      : 'ใบอนุญาต',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE คือ โอเพ้นซอร์ส ภายใต้การทำงานของจาวาสคริปต์บนคำสั่ง WYSIWYG HTML-editor',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'เป้าหมายหลักของโปรแกรมแก้ไข -- ลดความซับซ้อนของการทำงานกับข้อความและรูปแบบ (HTML) ในเว็บไซต์บล็อกฟอรั่มและบริการออนไลน์อื่นๆ',
	'You can use it in any commercial or non-commercial projects.' : 'คุณสามารถใช้ในเชิงพาณิชย์หรือโครงการที่ไม่ใช่เชิงพาณิชย์ใดๆ',
	'Authors'                      : 'ผู้เขียน',
	'Chief developer'              : 'ประธานผู้พัฒนา',
	'Developer, tech support'      : 'นักพัฒนาสนับสนุนด้านเทคนิค',
	'Developer'                    : 'นักพัฒนา',
	'Interface designer'           : 'นักออกแบบอินเตอร์เฟซ',
	'Spanish localization'         : 'แปลภาษาสเปน',
	'Czech localization'           : 'แปลภาษาเช็ก',
	'Japanese localization'        : 'แปลภาษาญี่ปุ่น',
	'Latvian localization'         : 'แปลภาษาลัตเวีย',
	'German localization'          : 'แปลภาษาเยอรมัน',
	'Ukranian localization'        : 'แปลภาษายูเครน',
	'Persian (farsi) localization' : 'แปลภาษาเปอร์เซีย (farsi)',
	'Arabic localization'          : 'แปลภาษาอาหรับ',
	'RTL support'                  : 'สนับสนุน RTL',
	'French localization'          : 'แปลภาษาฝรั่งเศส',
	'Dutch localization'           : 'แปลภาษาดัตช์',
	'Hungarian localization'       : 'แปลภาษาฮังการี',
	'Polish localization'          : 'แปลภาษาโปแลนด์',
	'Italian localization'         : 'แปลภาษาอิตาลี',
	'Traditional Chinese localization' : 'แปลภาษาจีนดั้งเดิม',
	'For more information about this software visit the' : 'สำหรับข้อมูลเพิ่มเติมเกี่ยวกับซอฟต์แวร์นี้ เยี่ยมชมได้ที่',
	'elRTE website'                : 'เว็บไซต์ elRTE'
}
})(jQuery);
js/i18n/elrte.fa.js000060400000016034150714137430010002 0ustar00/**
 * Persian (farsi) translation
 * @author Saleh soozanchi <info@soozanchi.ir>
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.fa = {
	'_translator'    : 'Saleh soozanchi &lt;info@soozanchi.ir&gt;',
	'_translation'   : 'Persian (farsi) translation',
	'Editor' : 'ویراستار',
	'Source' : 'کد منبع',
	// Panel Name
	'Copy/Pase'      : 'کپی در حافظه موفت/بازگردانی از حافظه',
	'Undo/Redo'      : 'انجام عمل بعد/برگشت به عمل قبل',
	'Text styles'    : 'استایل متن',
	'Colors'         : 'رنگها',
	'Alignment'      : 'صفحه بندی',
	'Indent/Outdent' : 'تو رفتگی/ برون رفتگی',
	'Text format'    : 'قالب متون',
	'Lists'          : 'لیست ها',
	'Misc elements'  : 'عناصر متفرقه',
	'Links'          : 'پیوندها',
	'Images'         : 'تصاویر',
	'Media'          : 'مولتی مدیا',
	'Tables'         : 'جدول ها',
	'File manager (elFinder)' : '(elFinder)مدیریت فایل',
	// button names
	'Save'                    : 'ذخیره کردن',
	'Copy'                    : 'کپی کردن',
	'Cut'                     : 'برش دادن',
	'Paste'                   : 'بازگردانی',
	'Paste only text'         : 'بازگرادنی فقط متنها',
	'Paste formatted text'    : 'بازگردانی متن های دارای قالب',
	'Clean format'            : 'حذف قالب ها', 
	'Undo last action'        : 'بازگشتن به آخرین حرکت',
	'Redo previous action'    : 'تکرار حرکت قبلی',
	'Bold'                    : 'درشت',
	'Italic'                  : 'خوابیده',
	'Underline'               : 'خط زیر متن',
	'Strikethrough'           : 'خط روی متن',
	'Superscript'             : 'بالانویس',
	'Subscript'               : 'زیرنویس',
	'Align left'              : 'چپ چین',
	'Ailgn right'             : 'راست چین',
	'Align center'            : 'وسط چین',
	'Align full'              : 'به صورت کشده و کامل',
	'Font color'              : 'رنگ قلم ها',
	'Background color'        : 'رنگ ضمینه',
	'Indent'                  : 'تورفتگی', 
	'Outdent'                 : 'بیرون رفتگی', 
	'Format'                  : 'قالب',
	'Font size'               : 'اندازه قلم',
	'Font'                    : 'قلم',
	'Ordered list'            : 'مرتب سازی لیست',
	'Unordered list'          : 'به هم ریختن لیست',
	'Horizontal rule'         : 'خط افقی',
	'Blockquote'              : 'نقل قول',
	'Block element (DIV)'     : 'عنر نگه دارنده (DIV)',
	'Link'                    : 'پیوند',
	'Delete link'             : 'حذف لینک',
	'Bookmark'                : 'نشانه گزاری',
	'Image'                   : 'تصویر',
	'Table'                   : 'جدول',
	'Delete table'            : 'حذف جدول',
	'Insert row before'       : 'درج سطر قبل از این',
	'Insert row after'        : 'درج سطر بعد از این',
	'Delete row'              : 'حذف سطر',
	'Insert column before'    : 'درج ستون قبل از',
	'Insert column after'     : 'درج ستون بعد از',
	'Delete column'           : 'حذف ستون',
	'Merge table cells'       : 'ادغام کردن  خانه های جدول',
	'Split table cell'        : 'تقسیم و مجزا کردن خانه های جدول',
	'Toggle display document structure' : 'زنجیر شده به ساختار سند در حال نمایش',
	'Table cell properties'   : 'تنظیمات خونه جدول',
	'Table properties'        : 'تنظیمات جدول',
	'Toggle full screen mode' : 'نمایش و پوشانیدن کل نمایشگر',
	'Open file manager'       : 'بازکردن مدیریت فایل',
	'Non breakable space'     : 'فضای غیر قابل شکستن',
	'Stop element floating'   : 'متوقف ساخت عنر شناور',
	// dialogs
	'Warning' : 'اخطار',
	'Properies' : 'خصوصیات',
	'Popup' : 'پنجر بازشو',
	'Advanced' : 'پیشرفته',
	'Events' : 'رویداد',
	'Width' : 'طول',
	'Height' : 'عرض',
	'Left'   : 'چپ',
	'Center' : 'وسط',
	'Right'  : 'راست',
	'Border' : 'کادر حایه',
	'Background' : 'پشت صحنه/ضمینه',
	'Css class' : 'کلاس سی اس اس',
	'Css style' : 'استایل سی اس اس',
	'No' : 'خیر',
	'Title' : 'عنوان',
	'Script direction' : 'اسکریپت هم سو',
	'Language' : 'ربان',
	'Charset' : 'کدپیج زیان',
	'Not set' : 'اعمال نشد',
	'Left to right' : 'چپ به راست',
	'Right to left' : 'راست به چپ',
	'In this window' : '(_self) نمایش در همین پنجره',
	'In new window (_blank)' : '(_blank) نمایش در پنجره جدید ',
	'In new parent window (_parent)' : '(_parent) نمایش در پنجره اصلی',
	'In top frame (_top)' : '(_top) نمایش در بالای قاب',
	'URL' : '',
	'Open in' : 'باز کردن در',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'این عملیات به دلایل امنیتی در مرورگر وب شما مسدود شده ، لطفا از میانبر ها استفاده کنید.',
	// format 
	'Heading 1' : 'سر فصل 1',
	'Heading 2' : 'سر فصل 2',
	'Heading 3' : 'سر فصل 3',
	'Heading 4' : 'سر فصل 4',
	'Heading 5' : 'سر فصل 5',
	'Heading 6' : 'سر فصل 6',	
	'Paragraph' : 'پراگراف',
	'Address' : 'آدرس',
	'Preformatted' : 'قالب بندی شده',
	// font size
	'Small (8pt)'   : '',
	'Small (10px)'  : '',
	'Small (12pt)'  : '',
	'Normal (14pt)' : '',
	'Large (18pt)'  : '',
	'Large (24pt)'  : '',
	'Large (36pt)'  : '',				
	// bookmark
	'Bookmark name' : 'نام نشانه',
	// link
	'Link URL' : '(URL) پیوند',
	'Target' : 'مقصد',
	'Open link in popup window' : 'باز کردن پیوند در یک پنجره بازشو',
	'URL' : '',
	'Window name' : 'نام پنجره',
	'Window size' : 'سایز پنجره',
	'Window position' : 'موقعیت پنجره',
	'Location bar' : 'محل نگه دارنده',
	'Menu bar' : 'نگه دارنده منو',
	'Toolbar' : 'جعبه ابزار',
	'Scrollbars' : 'محل اسکرول',
	'Status bar' : 'محل وضعیت',
	'Resizable' : 'تغییر ساز پذیر بودن',
	'Depedent' : 'محتاج',
	'Add return false' : '(return false) افزودن',
	'Target MIME type' : 'MIME type',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index' : '',
	'Access key' : 'کیلید دسترسی',
	// image
	'Size' : 'سایز',
	'Preview' : 'پیش نمایش',
	'Margins' : 'حاشیه ها',
	'Alt text' : 'Alt',
	'Image URL' : 'URL',
	// table
	'Spacing'       : '(spacing)فاصه های میانی',
	'Padding'       : '(padding) حاشیه ها درونی',
	'Rows'          : 'سطرها',
	'Columns'       : 'ستون ها',
	'Groups'        : 'گروه هاس',
	'Cells'         : 'خانه هاس',
	'Caption'       : 'عنوان',
	'Inner borders' : 'کادر درونی'
	
	
}
})(jQuery);
js/i18n/elrte.hu.js000060400000021046150714137430010027 0ustar00/**
 * Hungarian translation
 * @author Viktor Tamas <tamas.viktor@totalstudio.hu>
 * @version 2010-09-18
 */
 (function($) {
elRTE.prototype.i18Messages.hu = {
    '_translator'    : 'Viktor Tamas &lt;tamas.viktor@totalstudio.hu&gt;',
    '_translation'   : 'Hungarian translation',
    'Editor' : 'Szerkesztő',
    'Source' : 'Forrás',
    // названия панелей
    'Copy/Pase'      : 'Másolás/Beillesztés',
    'Undo/Redo'      : 'Visszavonás/Ismét',
    'Text styles'    : 'Szöveg stílus',
    'Colors'         : 'Színek',
    'Alignment'      : 'Elrendezés',
    'Indent/Outdent' : 'Отступы',
    'Text format'    : 'Szöveg forma',
    'Lists'          : 'Listák',
    'Misc elements'  : 'Egyéb elemek',
    'Links'          : 'Linkek',
    'Images'         : 'Képek',
    'Media'          : 'Média',
    'Tables'         : 'Táblázatok',
    'File manager (elFinder)' : 'Fájl kezelő (elFinder)',
    // названия кнопок
    'About this software'     : 'A szoftverről',
    'Save'                    : 'Mentés',
    'Copy'                    : 'Másolás',
    'Cut'                     : 'Kivágás',
    'Paste'                   : 'Beillesztés',
    'Paste only text'         : 'Beillesztés csak szövegként',
    'Paste formatted text'    : 'Beillesztés formázott szövegként',
    'Clean format'            : 'Formázás törlése', 
    'Undo last action'        : 'Utolsó művelet visszavonása',
    'Redo previous action'    : 'Előző művelet újra',
    'Bold'                    : 'Félkövér',
    'Italic'                  : 'Dőlt',
    'Underline'               : 'Aláhúzott',
    'Strikethrough'           : 'Áthúzott',
    'Superscript'             : 'Felső index',
    'Subscript'               : 'Alsó index',
    'Align left'              : 'Balra igazítás',
    'Ailgn right'             : 'Jobbra igazítás',
    'Align center'            : 'Középre igazítás',
    'Align full'              : 'Sórkizárt igazítás',
    'Font color'              : 'Betűszín',
    'Background color'        : 'Háttér szín',
    'Indent'                  : 'Behúzás',
    'Outdent'                 : 'Kihúzás',
    'Format'                  : 'Formátum',
    'Font size'               : 'Betű méret',
    'Font'                    : 'Betű típus',
    'Ordered list'            : 'Számozott lista',
    'Unordered list'          : 'Lista',
    'Horizontal rule'         : 'Vízszintes vonal',
    'Blockquote'              : 'Idézet',
    'Block element (DIV)'     : 'Blokk elem (DIV)',
    'Link'                    : 'Link',
    'Delete link'             : 'Link törlése',
    'Bookmark'                : 'Horgony',
    'Image'                   : 'Kép',
    'Table'                   : 'Táblázat',
    'Delete table'            : 'Táblázat törlése',
    'Insert row before'       : 'Sor beszúrása sor elé',
    'Insert row after'        : 'Sor beszúrása sor mögé',
    'Delete row'              : 'Sor törlése',
    'Insert column before'    : 'Oszlop beszúrása oszlop elé',
    'Insert column after'     : 'Oszlop beszúrása oszlop mögé',
    'Delete column'           : 'Oszlop törlése',
    'Merge table cells'       : 'Cellák összevonása',
    'Split table cell'        : 'Cellák szétávlasztása',
    'Toggle display document structure' : 'Dokumentum szerkezet megtekintése',
    'Table cell properties'   : 'Táblázat cella tulajdonságai',
    'Table properties'        : 'Tábla tulajdonságok',
    'Toggle full screen mode' : 'Teljes képernyős mód',
    'Open file manager'       : 'Fájl kezelő megnyitása',
    'Non breakable space'     : 'Szóköz',
    'Stop element floating'   : 'Elem elrendezések törlése',
    // dialogs
    'Warning' : 'Figyelmeztetés',
    'Properies' : 'Tulajdonságok',
    'Popup' : 'Popup',
    'Advanced' : 'Egyéni',
    'Events' : 'Események',
    'Width' : 'Szélesség',
    'Height' : 'Magasság',
    'Left'   : 'Bal',
    'Center' : 'Közép',
    'Right'  : 'Jobb',
    'Border' : 'Keret',
    'Background' : 'Háttér',
    'Css class' : 'Css class',
    'Css style' : 'Css stílus',
    'No' : 'Nem',
    'Title' : 'Cím',
    'Script direction' : 'Script hivatkozás',
    'Language' : 'Nyelv',
    'Charset' : 'Karaktertábla',
    'Not set' : 'Nincs beállítva',
    'Left to right' : 'Balról jobbra',
    'Right to left' : 'Jobbról balra',
    'In this window' : 'Ebbe az ablakba',
    'In new window (_blank)' : 'Új ablakba (_blank)',
    'In new parent window (_parent)' : 'Egy új ablakba (_parent)',
    'In top frame (_top)' : 'A top frame-be (_top)',
    'URL' : '',
    'Open in' : 'Megnyitás',
    'Open file manger' : 'Fájlkezelő megnyitása',
    // copy
    'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Ez a művelet le van tiltva a böngészőjében a biztonsági okból. Használja a parancsikont ehelyett.',
    // format 
    'Heading 1' : 'Címsor 1',
    'Heading 2' : 'Címsor 2',
    'Heading 3' : 'Címsor 3',
    'Heading 4' : 'Címsor 4',
    'Heading 5' : 'Címsor 5',
    'Heading 6' : 'Címsor 6',    
    'Paragraph' : 'Bekezdés',
    'Address' : 'Cím',
    'Preformatted' : 'Előre formázott',
    // font size
    'Small (8pt)'   : 'Kicsi (8pt)',
    'Small (10px)'  : 'Kicsi (10px)',
    'Small (12pt)'  : 'Kicsi (12pt)',
    'Normal (14pt)' : 'Normál (14pt)',
    'Large (18pt)'  : 'Nagy (18pt)',
    'Large (24pt)'  : 'Nagy (24pt)',
    'Large (36pt)'  : 'Nagy (36pt)',                
    // bookmark
    'Bookmark name' : 'Horgony neve',
    // link
    'Link URL' : 'Link címe (URL)',
    'Target' : 'Cél',
    'Select bookmark' : 'Horgony választása',
    'Open link in popup window' : 'Hivatkozás megnyitása új popup ablakban',
    'URL' : '',
    'Window name' : 'Ablak neve',
    'Window size' : 'Ablak mérete',
    'Window position' : 'Ablak pozíciója',
    'Location bar' : 'Címsor',
    'Menu bar' : 'Menüsor',
    'Toolbar' : 'Eszköztár',
    'Scrollbars' : 'Görgősáv',
    'Status bar' : 'Státusz sor',
    'Resizable' : 'Átméretezhető',
    'Depedent' : '',
    'Add return false' : 'Hozzáadás (return false)',
    'Target MIME type' : 'MIME típusú cél',
    'Relationship page to target (rel)' : 'Célhoz kapcsolódó lap (rel)',
    'Relationship target to page (rev)' : 'Laphoz kapcsolódó cél (rev)',
    'Tab index' : 'Tabulátor index',
    'Access key' : 'Hozzáférési kulcs',
    // image
    'Size' : 'Méret',
    'Preview' : 'Előnézet',
    'Margins' : 'Margók',
    'Alt text' : 'Alt szöveg',
    'Image URL' : 'Kép URL',
    // table
    'Spacing'       : 'Cellaköz',
    'Padding'       : '',
    'Rows'          : 'Sorok',
    'Columns'       : 'Oszlopok',
    'Groups'        : 'Csoportok',
    'Cells'         : 'Cellák',
    'Caption'       : 'Felirat',
    'Inner borders' : 'Belső keret',
    // table cell
    'Table cell type' : 'Táblázat cella típus',
    'Data' : 'Adat',
    'Header' : 'Címsor',
    'Justify' : 'Sorkizárt',
    'Paddings' : 'Padding',
    'Apply to' : 'Alkalmazás a',
    'Current cell' : 'Jelenlegi cella',
    'All cells in row' : 'Összes cella a sorban',
    'All cells in column' : 'Összes cella az oszlopban',
    'All cells in table' : 'Összes cella a táblázatban',
    // about
    'About elRTE' : 'Az elRTE-ről',
    'Version' : 'Verzió',
    'Licence' : 'Liszensz',
    'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'Az elRTE egy nyíltforráskódú JavaScript alapú WYSIWYG HTML-szerkesztő.',
    'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'A szerkesztő fő célja, hogy egyszerűsítse a munkát és a szöveg formázást (HTML) az oldalakon, blogokon, fórumokon illetve más online szolgáltatásokban.',
    'You can use it in any commercial or non-commercial projects.' : 'Használhatod bármilyen kereskedelni vagy nem-kereskedelmi célú projektben.',
    'Authors' : 'Készítők',
    'Chief developer' : 'Fő fejlesztő',
    'Developer, tech support' : 'Fejelsaztő, tech kapcsolat',
    'Interface designer' : 'Interface tervező',
    'Spanish localization' : 'Spanyol fordító',
    'Japanese localization' : 'Japán fordító',
    'Latvian localization' : 'Litván fordító',
    'German localization' : 'Német fordító',
    'Ukranian localization' : 'Ukrán fordító',
    'Magyar localization' : 'Magyar fordító',
    'For more information about this software visit the' : 'További információkért a szoftverről keresse fel a ',
    'elRTE website' : 'elRTE honlapját' 
    
    
}
})(jQuery);
js/i18n/elrte.pt_BR.js000060400000014073150714137430010423 0ustar00/**
 * Brazilian Portuguese translation
 * @author Jairo Moreno <master.zion@gmail.com>
 * @version 2010-10-18
 */
(function($) {
elRTE.prototype.i18Messages.pt_BR = {
	'_translator'    : 'Jairo Moreno &lt;master.zion@gmail.com&gt;',
	'_translation'   : 'Brazilian Portuguese translation',
	'Editor' : 'Editor',
	'Source' : 'Código Fonte',
	// Panel Name
	'Copy/Pase'      : 'Copiar/Colar',
	'Undo/Redo'      : 'Desfazer/Refazer',
	'Text styles'    : 'Folhas de Estilo',
	'Colors'         : 'Cores',
	'Alignment'      : 'Alinhamento',
	'Indent/Outdent' : 'Aumentar/Diminuir',
	'Text format'    : 'Formato',
	'Lists'          : 'Listas',
	'Misc elements'  : 'Elementos diversos',
	'Links'          : 'Links',
	'Images'         : 'Imagens',
	'Media'          : 'Multimedia',
	'Tables'         : 'Tabelas',
	'File manager (elFinder)' : 'Gerenciador de arquivos',
	// button names
	'Save'                    : 'Gravar',
	'Copy'                    : 'Copiar',
	'Cut'                     : 'Cortar',
	'Paste'                   : 'Colar',
	'Paste only text'         : 'Colar texto',
	'Paste formatted text'    : 'Colar texto formatado',
	'Clean format'            : 'Limpar formato',
	'Undo last action'        : 'Desfazer última ação',
	'Redo previous action'    : 'Refazer última ação',
	'Bold'                    : 'Negrito',
	'Italic'                  : 'Itálico',
	'Underline'               : 'Sublinhado',
	'Strikethrough'           : 'Riscado',
	'Superscript'             : 'Superíndice',
	'Subscript'               : 'Subíndice',
	'Align left'              : 'Alinhar à esquerda',
	'Ailgn right'             : 'Alinhar à direita',
	'Align center'            : 'Centralizar',
	'Align full'              : 'Justificado',
	'Font color'              : 'Cor de texto',
	'Background color'        : 'Cor de fundo',
	'Indent'                  : 'Aumentar',
	'Outdent'                 : 'Reduzir',
	'Format'                  : 'Formato',
	'Font size'               : 'Tamanho de Fonte',
	'Font'                    : 'Fonte',
	'Ordered list'            : 'Lista ordenada',
	'Unordered list'          : 'Lista desordenada',
	'Horizontal rule'         : 'Linha horizontal',
	'Blockquote'              : 'Comentar',
	'Block element (DIV)'     : 'Bloco de Elementos (DIV)',
	'Link'                    : 'Link',
	'Delete link'             : 'Remover link',
	'Bookmark'                : 'Favoritos',
	'Image'                   : 'Imagem',
	'Table'                   : 'Tabela',
	'Delete table'            : 'Remover tabela',
	'Insert row before'       : 'Inserir linha antes',
	'Insert row after'        : 'Inserir linha depois',
	'Delete row'              : 'Remover linha',
	'Insert column before'    : 'Inserir coluna antes',
	'Insert column after'     : 'Inserir coluna depois',
	'Delete column'           : 'Remover columna',
	'Merge table cells'       : 'Unir células',
	'Split table cell'        : 'Separar célula',
	'Toggle display document structure' : 'Extrutura de documento',
	'Table cell properties'   : 'Propiedades de célula',
	'Table properties'        : 'Propiedades de tabela',
	'Toggle full screen mode' : 'Tela cheia',
	'Open file manager'       : 'Abrir administrador de arquivos',
	'Non breakable space'     : 'Espaço indivisivel',
	'Stop element floating'   : 'Parar elemento flutunte',
	// dialogs
	'Warning' : 'Advertência',
	'Properies' : 'Propriedades',
	'Popup' : 'Popup',
	'Advanced' : 'Avançado',
	'Events' : 'Eventos',
	'Width' : 'Largura',
	'Height' : 'Altura',
	'Left'   : 'Esquerda',
	'Center' : 'Centralizado',
	'Right'  : 'Direita',
	'Border' : 'Borda',
	'Background' : 'Fundo',
	'Css class' : 'Classe CSS',
	'Css style' : 'Estilo CSS',
	'No' : 'Não',
	'Title' : 'Título',
	'Script direction' : 'Direção do script',
	'Language' : 'Idioma',
	'Charset' : 'Charset',
	'Not set' : 'Não configurado',
	'Left to right' : 'Esquerda para Direita',
	'Right to left' : 'Direita para Esquerda',
	'In this window' : 'Esta janela (_self)',
	'In new window (_blank)' : 'Em nova janela (_blank)',
	'In new parent window (_parent)' : 'Na janela Pai (_parent)',
	'In top frame (_top)' : 'Sem suporte a frames (_top)',
	'URL' : 'URL',
	'Open in' : 'Abrir em',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Esta operação está bloqueada em seu navegador. Utilice um atalho.',
	// format 
	'Heading 1' : 'Cabeçalho 1',
	'Heading 2' : 'Cabeçalho 2',
	'Heading 3' : 'Cabeçalho 3',
	'Heading 4' : 'Cabeçalho 4',
	'Heading 5' : 'Cabeçalho 5',
	'Heading 6' : 'Cabeçalho 6',
	'Paragraph' : 'Parágrafo',
	'Address' : 'Direção',
	'Preformatted' : 'Pré-formatado',
	// font size
	'Small (8pt)'   : 'Pequeno (8pt)',
	'Small (10px)'  : 'Pequeno (10px)',
	'Small (12pt)'  : 'Pequeno (12pt)',
	'Normal (14pt)' : 'Normal (14pt)',
	'Large (18pt)'  : 'Grande (18pt)',
	'Large (24pt)'  : 'Grande (24pt)',
	'Large (36pt)'  : 'Grande (36pt)',
	// bookmark
	'Bookmark name' : 'Nome do favoritos',
	// link
	'Link URL' : 'Link URL',
	'Target' : 'Alvo',
	'Open link in popup window' : 'Abrir vínculo en janela emergente',
	'Window name' : 'Nomw na janela',
	'Window size' : 'Tamanho na janela',
	'Window position' : 'Posição na janela',
	'Location bar' : 'Barra de dirección',
	'Menu bar' : 'Barra de Menu',
	'Toolbar' : 'Barra de ferramentas',
	'Scrollbars' : 'Barras de rolagem',
	'Status bar' : 'Barra de status',
	'Resizable' : 'Redimensionavel',
	'Depedent' : 'Dependente (Netscape)',
	'Add return false' : 'Adicionar (return false)',
	'Target MIME type' : 'Objeto de Tipo MIME',
	'Relationship page to target (rel)' : 'Relacionado a página para alvo(rel)',
	'Relationship target to page (rev)' : 'Relacionado a alvo para página (rev)',
	'Tab index' : 'Tab index',
	'Access key' : 'Tecla de acesso',
	// image
	'Size' : 'Tamanho',
	'Preview' : 'Visualizar',
	'Margins' : 'Margens',
	'Alt text' : 'Texto alternativo',
	'Image URL' : 'URL da imagem',
	// table
	'Spacing'       : 'Espaçamento',
	'Padding'       : 'Margem',
	'Rows'          : 'Linha',
	'Columns'       : 'Colunas',
	'Groups'        : 'Grupos',
	'Cells'         : 'Células',
	'Caption'       : 'Legenda',
	'Inner borders' : 'Bordas internas'	
}
})(jQuery);
js/i18n/elrte.en.js000060400000000532150714137430010012 0ustar00/*
 * This is dummy file and does nothing.
 * 
 * You do not need to include it for English localization.
 * 
 * Translators!
 * If you want to make new localization use 'elrte.YOUR_LANG.js' file
 * in this directory as template.
 * Please submit your localization by creating new issue:
 * http://elrte.org/redmine/projects/elrte/issues/new
 */
js/i18n/elrte.vi.js000060400000023323150714137430010031 0ustar00/*
 * Vietnamese translation
 * @author babycntt
 * @version 2011-02-01
 */
(function($) {
elRTE.prototype.i18Messages.vi = {
	'_translator'    : 'babycntt',
	'_translation'   : 'Vietnamese translation',
	'Source' : 'Mã nguồn',
	// panels names
	'Copy/Pase'      : 'Sao chép/Dán',
	'Undo/Redo'      : 'Khôi phục thao tác/Làm lại thao tác',
	'Text styles'    : 'Kiểu',
	'Colors'         : 'Màu sắc',
	'Alignment'      : 'Canh lề',
	'Indent/Outdent' : 'Đẩy sang phải/Đẩy sang trái',
	'Text format'    : 'Định dạng',
	'Lists'          : 'Danh sách',
	'Misc elements'  : 'Chức năng khác',
	'Links'          : 'Liên kết',
	'Images'         : 'Hình ảnh',
	'Media'          : 'Đa phương tiện',
	'Tables'         : 'Bảng',
	'File manager (elFinder)' : 'Quản lí tập tin',
	// buttons names
	'About this software'     : 'Thông tin về phần mềm',
	'Save'                    : 'Lưu',
	'Copy'                    : 'Sao chép',
	'Cut'                     : 'Cắt',
	'Paste'                   : 'Dán',
	'Paste only text'         : 'Chỉ dán chữ',
	'Paste formatted text'    : 'Dán theo định dạng văn bản',
	'Clean format'            : 'Xóa định dạng', 
	'Undo last action'        : 'Khôi phục thao tác',
	'Redo previous action'    : 'Làm lại thao tác',
	'Bold'                    : 'Đậm',
	'Italic'                  : 'Nghiêng',
	'Underline'               : 'Gạch chân',
	'Strikethrough'           : 'Gạch giữa từ',
	'Superscript'             : 'Chỉ số trên',
	'Subscript'               : 'Chỉ số dưới',
	'Align left'              : 'Canh trái',
	'Ailgn right'             : 'Canh phải',
	'Align center'            : 'Canh giữa',
	'Align full'              : 'Canh đều',
	'Font color'              : 'Màu chữ',
	'Background color'        : 'Màu nền',
	'Indent'                  : 'Đẩy sang phải',
	'Outdent'                 : 'Đẩy sang trái',
	'Format'                  : 'Định dạng',
	'Font size'               : 'Cỡ chữ',
	'Font'                    : 'Phông',
	'Ordered list'            : 'Xếp danh sách theo thứ tự',
	'Unordered list'          : 'Xếp danh sách không theo thứ tự',
	'Horizontal rule'         : 'Chèn đường phân cách ngang',
	'Blockquote'              : 'Khối trích dẫn',
	'Block element (DIV)'     : 'Tạo khối các thành phần (DIV)',
	'Link'                    : 'Chèn liên kết',
	'Delete link'             : 'Xóa liên kết',
	'Bookmark'                : 'Đánh dấu',
	'Image'                   : 'Chèn ảnh',
	'Table'                   : 'Chèn bảng',
	'Delete table'            : 'Xóa bảng',
	'Insert row before'       : 'Chèn hàng phía trước',
	'Insert row after'        : 'Chèn hàng phía sau',
	'Delete row'              : 'Xóa hàng',
	'Insert column before'    : 'Chèn cột phía trước',
	'Insert column after'     : 'Chèn cột phía sau',
	'Delete column'           : 'Xóa cột',
	'Merge table cells'       : 'Ghép ô',
	'Split table cell'        : 'Tách ô',
	'Toggle display document structure' : 'Xem cấu trúc của văn bản',
	'Table cell properties'   : 'Thuộc tính ô',
	'Table properties'        : 'Thuộc tính bảng',
	'Toggle full screen mode' : 'Xem toàn màn hình',
	'Open file manager'       : 'Quản lí tập tin',
	'Non breakable space'     : 'Non breakable space',
	'Stop element floating'   : 'Stop element floating',
	// dialogs
	'Warning'          : 'Cảnh báo',
	'Properies'        : 'Thuộc tính',
	'Popup'            : 'Popup',
	'Advanced'         : 'Nâng cao',
	'Events'           : 'Sự kiện',
	'Width'            : 'Rộng',
	'Height'           : 'Cao',
	'Left'             : 'Trái',
	'Center'           : 'Giữa',
	'Right'            : 'Phải',
	'Border'           : 'Đậm',
	'Background'       : 'Nền',
	'Css class'        : 'Css class',
	'Css style'        : 'Css style',
	'No'               : 'Không',
	'Title'            : 'Tiêu đề',
	'Script direction' : 'Script direction',
	'Language'         : 'Ngôn ngữ',
	'Charset'          : 'Charset',
	'Not set'          : 'Không thiết đặt',
	'Left to right'    : 'Trái qua phải',
	'Right to left'    : 'Phải qua trái',
	'In this window'   : 'Trong cửa sổ hiện tại',
	'In new window (_blank)'         : 'Trong cửa sổ mới (_blank)',
	'In new parent window (_parent)' : 'Trong cửa sổ con (_parent)',
	'In top frame (_top)'            : 'Trong khung cửa sổ đặt trên cùng (_top)',
	'URL'              : 'Đường dẫn',
	'Open in'          : 'Mở trong',
	'Open file manger' : 'Quản lí tập tin',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Tính năng này bị khóa trong trình duyệt của bạn vì lí do bảo mật. Dùng tổ hợp phím để thay thế.',
	// format 
	'Heading 1'     : 'Tiêu đề 1',
	'Heading 2'     : 'Tiêu đề 2',
	'Heading 3'     : 'Tiêu đề 3',
	'Heading 4'     : 'Tiêu đề 4',
	'Heading 5'     : 'Tiêu đề 5',
	'Heading 6'     : 'Tiêu đề 6',
	'Paragraph'     : 'Đoạn văn',
	'Address'       : 'Địa chỉ',
	'Preformatted'  : 'Chưa định dạng',
	// font size
	'Small (8pt)'   : 'Nhỏ (8pt)',
	'Small (10px)'  : 'Nhỏ (10px)',
	'Small (12pt)'  : 'Nhỏ (12pt)',
	'Normal (14pt)' : 'Bình thường (14pt)',
	'Large (18pt)'  : 'Lớn (18pt)',
	'Large (24pt)'  : 'Lớn (24pt)',
	'Large (36pt)'  : 'Lớn (36pt)',				
	// bookmark
	'Bookmark name' : 'Tên của thẻ làm dấu',
	// link
	'Link URL'         : 'Địa chỉ của liên kết',
	'Target'           : 'Mở trong',
	'Select bookmark'  : 'Chọn đánh dấu',
	'Open link in popup window' : 'Mở liên kết trong khung cửa sổ đặt trên cùng',
	'Window name'      : 'Tên cửa sổ',
	'Window size'      : 'Kích thước cửa sổ',
	'Window position'  : 'Vị trí cửa sổ',
	'Location bar'     : 'Hiện thanh định vị',
	'Menu bar'         : 'Hiện thanh menu',
	'Toolbar'          : 'Hiện thanh công cụ',
	'Scrollbars'       : 'Hiện thanh trượt',
	'Status bar'       : 'Hiện thanh trạng thái',
	'Resizable'        : 'Có thể điều chỉnh kích thước',
	'Depedent'         : 'Độc lập',
	'Add return false' : 'Add return false',
	'Target MIME type' : 'Target MIME type',
	'Relationship page to target (rel)' : 'Relationship page to target (rel)',
	'Relationship target to page (rev)' : 'Relationship target to page (rev)',
	'Tab index'        : 'Tab index',
	'Access key'       : 'Access key',
	// image
	'Size'             : 'Kích thước',
	'Preview'          : 'Xem trước',
	'Margins'          : 'Viền',
	'Alt text'         : 'Chú thích',
	'Image URL'        : 'Địa chỉ của ảnh',
	// table
	'Spacing'          : 'Khoảng cách',
	'Padding'          : 'Khoảng đệm',
	'Rows'             : 'Hàng',
	'Columns'          : 'Cột',
	'Groups'           : 'Nhóm',
	'Cells'            : 'Ô',
	'Caption'          : 'Tiêu đề',
	'Inner borders'    : 'Viền bên trong theo',
	// table cell
	'Table cell type'  : 'Kiểu ô',
	'Data'             : 'Dữ liệu',
	'Header'           : 'Tiêu đề',
	'Justify'          : 'Hiệu chỉnh',
	'Paddings'         : 'Khoảng đệm',
	'Apply to'         : 'Áp dụng với',
	'Current cell'     : 'Ô hiện tại',
	'All cells in row' : 'Tất cả ô trong một hàng',
	'All cells in column' : 'Tất cả ô trong một cột',
	'All cells in table' : 'Tất cả ô trong bảng',
	// about
	'About elRTE'                  : 'Giới thiệu về elRTE',
	'Version'                      : 'Phiên bản',
	'Licence'                      : 'Bản quyền',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE là trình soạn thảo mã nguồn mở viết bằng JavaScript dựa trên nền HTML.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'Mục đích chính của trình soạn thảo là hoạt động tốt với chữ và định dạng (HTML) trên trang web, blog, diễn đàn và những dịch vụ online khác.',
	'You can use it in any commercial or non-commercial projects.' : 'Bạn có thể sử dụng với các dự án thương mại hay phi lợi nhuận.',
	'Authors'                      : 'Tác giả',
	'Chief developer'              : 'Lập trình viên trưởng',
	'Developer, tech support'      : 'Lập trình, hỗ trợ kĩ thuật',
	'Developer'                    : 'Lập trình viên',
	'Interface designer'           : 'Thiết kế giao diện',
	'Spanish localization'         : 'Người dịch ra tiếng Tây Ban Nha',
	'Czech localization'           : 'Người dịch ra tiếng Cộng hòa Czech',
	'Japanese localization'        : 'Người dịch ra tiếng Nhật',
	'Latvian localization'         : 'Người dịch ra tiếng Latvia',
	'German localization'          : 'Người dịch ra tiếng Đức',
	'Ukranian localization'        : 'Người dịch ra tiếng U-crai-na',
	'Persian (farsi) localization' : 'Người dịch ra tiếng I-ran',
	'Arabic localization'          : 'Người dịch ra tiếng Ả-rập',
	'RTL support'                  : 'Hỗ trợ RTL',
	'French localization'          : 'Người dịch ra tiếng Pháp',
	'Dutch localization'           : 'Người dịch ra tiếng Đức',
	'Hungarian localization'       : 'Người dịch ra tiếng Hungary',
	'Polish localization'          : 'Người dịch ra tiếng Ba Lan',
	'Italian localization'         : 'Người dịch ra tiếng Ý',
	'Traditional Chinese localization' : 'Người dịch ra tiếng Trung Quốc',
	'For more information about this software visit the' : 'Để biết thêm thông tin, hãy vào',
	'elRTE website'                : 'website của elRTE'
}
})(jQuery);
js/i18n/elrte.ko.js000060400000021723150714137430010026 0ustar00/*
 * Korean translation
 * @author DominicKesler <DominicKesler@gmail.com>
 * @version 2010-10-13
 */
(function($) {
elRTE.prototype.i18Messages.ko = {
	'_translator'    : 'DominicKesler &lt;DominicKesler@gmail.com&gt;',
	'_translation'   : 'Korean translation',
	'Editor' : '편집기',
	'Source' : '소스보기',
	// panels names
	'Copy/Pase'      : '복사/붙여넣기',
	'Undo/Redo'      : '실행취소/다시실행',
	'Text styles'    : '글자 스타일',
	'Colors'         : '컬러',
	'Alignment'      : '정렬',
	'Indent/Outdent' : '들여쓰기/내어쓰기',
	'Text format'    : '글자 서식',
	'Lists'          : '목록',
	'Misc elements'  : '기타',
	'Links'          : '링크',
	'Images'         : '이미지',
	'Media'          : '미디어',
	'Tables'         : '테이블',
	'File manager (elFinder)' : '파일 관리자(elFinder)',
	// buttons names
	'About this software'     : '소프트웨어 설명',
	'Save'                    : '저장',
	'Copy'                    : '복사',
	'Cut'                     : '잘라내기',
	'Paste'                   : '붙여넣기',
	'Paste only text'         : '텍스트만 붙여넣기',
	'Paste formatted text'    : '텍스트 속성까지 붙여넣기',
	'Clean format'            : '서식 지우기', 
	'Undo last action'        : '실행취소',
	'Redo previous action'    : '다시실행',
	'Bold'                    : '굵게',
	'Italic'                  : '이탤릭',
	'Underline'               : '밑줄',
	'Strikethrough'           : '취소선',
	'Superscript'             : '위 첨자',
	'Subscript'               : '아래 첨자',
	'Align left'              : '왼쪽 정렬',
	'Ailgn right'             : '오른쪽 정렬',
	'Align center'            : '가운데 정렬',
	'Align full'              : '양쪽 정렬',
	'Font color'              : '글꼴 색',
	'Background color'        : '배경 색',
	'Indent'                  : '들여쓰기',
	'Outdent'                 : '내어쓰기',
	'Format'                  : '속성',
	'Font size'               : '글꼴 크기',
	'Font'                    : '글꼴',
	'Ordered list'            : '번호 매기기',
	'Unordered list'          : '기오 매기기',
	'Horizontal rule'         : '가로줄',
	'Blockquote'              : '인용구',
	'Block element (DIV)'     : '블럭요소(DIV)',
	'Link'                    : '링크',
	'Delete link'             : '링크 삭제',
	'Bookmark'                : '북마크',
	'Image'                   : '이미지',
	'Table'                   : '표',
	'Delete table'            : '표 삭제',
	'Insert row before'       : '앞에 행 삽입',
	'Insert row after'        : '뒤에 행 삽입',
	'Delete row'              : '현재 행 삭제',
	'Insert column before'    : '앞에 열 삽입',
	'Insert column after'     : '뒤에 열 삽입',
	'Delete column'           : '열 삭제',
	'Merge table cells'       : '셀 병합',
	'Split table cell'        : '셀 나눔',
	'Toggle display document structure' : '구성요소 보기',
	'Table cell properties'   : '표 셀 속성',
	'Table properties'        : '표 속성',
	'Toggle full screen mode' : '전체화면 모드(실행/취소)',
	'Open file manager'       : '파일 관리자 열기',
	'Non breakable space'     : '줄바꿈 없애기',
	'Stop element floating'   : '플로트 해제',
	// dialogs
	'Warning'          : '경고',
	'Properies'        : '속성',
	'Popup'            : '팝업',
	'Advanced'         : '고급',
	'Events'           : '이벤트',
	'Width'            : '폭',
	'Height'           : '높이',
	'Left'             : '왼쪽',
	'Center'           : '가운데',
	'Right'            : '오른쪽',
	'Border'           : '선',
	'Background'       : '배경',
	'Css class'        : 'CSS Class',
	'Css style'        : 'CSS Style',
	'No'               : 'No',
	'Title'            : '제목',
	'Script direction' : '문자 표시 방향',
	'Language'         : '언어',
	'Charset'          : '언어',
	'Not set'          : '설정안함',
	'Left to right'    : '왼쪽에서 오른쪽',
	'Right to left'    : '오른족에서 왼쪽',
	'In this window'   : '현재 창(_self)',
	'In new window (_blank)'         : '새 창(_blank)',
	'In new parent window (_parent)' : '새 부모창(_parent)',
	'In top frame (_top)'            : '최상위 프래임(_top)',
	'URL'              : 'URL',
	'Open in'          : 'Open in',
	'Open file manger' : '파일 관리자 열기',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : '이 기능은 현재 사용중인 브라우저의 보안설정으로 인하여 사용할 수 없습니다. 단축키를 이용하시기 바랍니다.',
	// format 
	'Heading 1'     : '제목 1',
	'Heading 2'     : '제목 2',
	'Heading 3'     : '제목 3',
	'Heading 4'     : '제목 4',
	'Heading 5'     : '제목 5',
	'Heading 6'     : '제목 6',
	'Paragraph'     : '단락',
	'Address'       : '주소',
	'Preformatted'  : '다른설정값',
	// font size
	'Small (8pt)'   : '가나다Abc(8pt)',
	'Small (10px)'  : '가나다Abc(10px)',
	'Small (12pt)'  : '가나다Abc(12pt)',
	'Normal (14pt)' : '가나다Abc(14pt)',
	'Large (18pt)'  : '가나다Abc(18pt)',
	'Large (24pt)'  : '가나다Abc(24pt)',
	'Large (36pt)'  : '가나다Abc(36pt)',				
	// bookmark
	'Bookmark name' : '북마크 이름',
	// link
	'Link URL'         : 'URL 주소',
	'Target'           : '타겟',
	'Select bookmark'  : '북마크 선택',
	'Open link in popup window' : '팝업창에서 링크열기',
	'Window name'      : '창 이름',
	'Window size'      : '창 크기',
	'Window position'  : '창 위치',
	'Location bar'     : '주소',
	'Menu bar'         : '메뉴',
	'Toolbar'          : '툴바',
	'Scrollbars'       : '스크롤바',
	'Status bar'       : '상태표시줄',
	'Resizable'        : '리사이즈가능',
	'Depedent'         : 'Depedent',
	'Add return false' : 'return false 추가',
	'Target MIME type' : 'MINE type 타겟',
	'Relationship page to target (rel)' : '페이지에서 대상 관계(rel)',
	'Relationship target to page (rev)' : '대상에서 페이지 관계(rev)',
	'Tab index'        : '탭 인덱스',
	'Access key'       : '실행키',
	// image
	'Size'             : '크기',
	'Preview'          : '미리보기',
	'Margins'          : '여백',
	'Alt text'         : '대체 글자',
	'Image URL'        : '이미지 URL',
	// table
	'Spacing'          : '셀 간격',
	'Padding'          : '셀 여백',
	'Rows'             : '행',
	'Columns'          : '열',
	'Groups'           : '그룹',
	'Cells'            : '셀',
	'Caption'          : '캡션',
	'Inner borders'    : '내부 선',
	// table cell
	'Table cell type'  : '표 셀 타입',
	'Data'             : '데이터',
	'Header'           : '제목',
	'Justify'          : '양쪽맞춤(Justify)',
	'Paddings'         : '여백',
	'Apply to'         : '적용',
	'Current cell'     : '현재 셀',
	'All cells in row' : '행의 모든 셀',
	'All cells in column' : '열의 모든 셀',
	'All cells in table' : '표의 모든 셀',
	// about
	'About elRTE'                  : 'eIRTE에 대하여',
	'Version'                      : '버전',
	'Licence'                      : '라이센스',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE는 JavaScript기반의 오픈소스 WYSIWYG HTML 편집기 입니다.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : '이 편집기의 주 목적은 사이트, 블로그, 포럼 및 기타 온라인 서비스에서 글자와 HTML형식의 입력을 쉽게 하도록 하는 것입니다.',
	'You can use it in any commercial or non-commercial projects.' : '상용, 비상용 상관없이 이용할 수 있습니다.',
	'Authors'                      : '저작자',
	'Chief developer'              : '수석 개발자',
	'Developer, tech support'      : '개발자, 기술지원',
	'Developer'                    : '개발자',
	'Interface designer'           : '인터페이스 디자이너',
	'Spanish localization'         : '스페인어 번역',
	'Czech localization'           : '체코어 번역',
	'Japanese localization'        : '일본어 번역',
	'Latvian localization'         : '라트비아어 번역',
	'German localization'          : '독일어 번역',
	'Ukranian localization'        : '우크라이나어 번역',
	'Persian (farsi) localization' : '페르시아어 번역',
	'Arabic localization'          : '아랍어 번역',
	'RTL support'                  : 'RTL 지원',
	'French localization'          : '프랑스어 번역',
	'Dutch localization'           : '네덜란드어 번역',
	'Hungarian localization'       : '헝가리어 번역',
	'Polish localization'          : '폴란드어 번역',
	'Italian localization'         : '이탈리아어 번역',
	'Traditional Chinese localization' : '중국어(번체) 번역',
	'For more information about this software visit the' : '이 소프트웨어의 더 많은 정보를 원하시면 elRTE 웹사이트를 방문해 주세요.',
	'elRTE website'                : 'elRTE 웹사이트'
}
})(jQuery);
js/i18n/elrte.pl.js000060400000013703150714137430010027 0ustar00/**
 * Polish translation
 * @author Andrzej Borowicz
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.pl = {
	'_translator'    : 'Andrzej Borowicz',
	'_translation'   : 'Polish translation',
	'Editor' : 'Edytor',
	'Source' : 'Kod źródłowy',
	// Panel Name
	'Copy/Pase'      : 'Kopiuj/Wklej',
	'Undo/Redo'      : 'Cofnij/Ponów',
	'Text styles'    : 'Style tekstowe',
	'Colors'         : 'Kolor',
	'Alignment'      : 'Wyrównanie',
	'Indent/Outdent' : 'Wcięcie / wysynięcie',
	'Text format'    : 'Format',
	'Lists'          : 'Lista',
	'Misc elements'  : 'Inne elementy',
	'Links'          : 'Link',
	'Images'         : 'Obraz',
	'Media'          : 'Pliki multimedialne',
	'Tables'         : 'Tabela',
	'File manager (elFinder)' : 'Menadżer plików (elFinder)',
	// button names
	'Save'                    : 'Zapisz',
	'Copy'                    : 'Wytnij',
	'Cut'                     : 'Kopiuj',
	'Paste'                   : 'Wklej',
	'Paste only text'         : 'Wklej tylko tekst',
	'Paste formatted text'    : 'Wklej tekst sformatowany',
	'Clean format'            : 'Wyczyść formaty', 
	'Undo last action'        : 'Cofnij',
	'Redo previous action'    : 'Ponów',
	'Bold'                    : 'Pogróbienie',
	'Italic'                  : 'Kursywa',
	'Underline'               : 'Podkreślenie',
	'Strikethrough'           : 'Przekreślenie',
	'Superscript'             : 'Index górny',
	'Subscript'               : 'index dolny',
	'Align left'              : 'Wyrównanie do lewej',
	'Ailgn right'             : 'Wyrównanie do prawej',
	'Align center'            : 'Wycentrowanie',
	'Align full'              : 'Wyjustowanie',
	'Font color'              : 'Kolor czcionki',
	'Background color'        : 'Kolor tła',
	'Indent'                  : 'Wcięcie', 
	'Outdent'                 : 'Wysunięcie', 
	'Format'                  : 'Format',
	'Font size'               : 'Rozmiar czcionki',
	'Font'                    : 'Czcionka',
	'Ordered list'            : 'Lista numerowana',
	'Unordered list'          : 'Lista',
	'Horizontal rule'         : 'Linia poziomae',
	'Blockquote'              : 'Cytat',
	'Block element (DIV)'     : 'Element blokowy (DIV)',
	'Link'                    : 'Link',
	'Delete link'             : 'Usuń link',
	'Bookmark'                : 'Wstaw/etytuj kotwicę',
	'Image'                   : 'Obraz',
	'Table'                   : 'Tabela',
	'Delete table'            : 'Skasuj Tabelę',
	'Insert row before'       : 'Wstaw wiers przed',
	'Insert row after'        : 'Wstaw wiers po',
	'Delete row'              : 'Skasuj wiersz',
	'Insert column before'    : 'Wstaw kolumnę Spalte przed',
	'Insert column after'     : 'Wstaw kolumnę po',
	'Delete column'           : 'Skasuj kolumnę',
	'Merge table cells'       : 'Połącz komórki',
	'Split table cell'        : 'Rozłącz komórki',
	'Toggle display document structure' : 'Pokaż bloki',
	'Table cell properties'   : 'Właściwości komórki',
	'Table properties'        : 'Właściwości tabeli',
	'Toggle full screen mode' : 'Pełny ekran',
	'Open file manager'       : 'Menadźer plików',
	'Non breakable space'     : 'Twarda spacja',
	'Stop element floating'   : 'Wyłącz otaczanie elementów',
	// dialogs
	'Warning' : 'Ostrzeżenie',
	'Properies' : 'Właściwości',
	'Popup' : 'okienko Pop-up',
	'Advanced' : 'Więcej',
	'Events' : 'Wydarzenia',
	'Width' : 'Szerokość',
	'Height' : 'Wysokość',
	'Left'   : 'Lewy',
	'Center' : 'Centrum',
	'Right'  : 'Prawy',
	'Border' : 'Ramka',
	'Background' : 'Kolor tła',
	'Css class' : 'klasa Css',
	'Css style' : 'styl Css',
	'No' : 'Nie',
	'Title' : 'Tytuł',
	'Script direction' : 'Komentarz sktyptu',
	'Language' : 'Język',
	'Charset' : 'Strona kodowa',
	'Not set' : 'nic',
	'Left to right' : 'Z lewej do prawej',
	'Right to left' : 'Z prawej do lewej',
	'In this window' : 'To samo okno (_self)',
	'In new window (_blank)' : 'Nowe okno (_blank)',
	'In new parent window (_parent)' : 'Okno nadrzędne (_parent)',
	'In top frame (_top)' : 'Górna ramka (_top)',
	'URL' : '',
	'Open in' : 'Otwórz w',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Ta operacja jest zabroniona w twojej przeglądarce z powodu zabezpieczeń. Pomimo to możesz używać klawiszy skrótów.',
	// format 
	'Heading 1' : 'Nagłówek 1',
	'Heading 2' : 'Nagłówek 2',
	'Heading 3' : 'Nagłówek 3',
	'Heading 4' : 'Nagłówek 4',
	'Heading 5' : 'Nagłówek 5',
	'Heading 6' : 'Nagłówek 6',	
	'Paragraph' : 'Paragraf',
	'Address' : 'Addresse',
	'Preformatted' : '',
	// font size
	'Small (8pt)'   : 'Mały (8pt)',
	'Small (10px)'  : 'Mały (10pt)',
	'Small (12pt)'  : 'Mały (12pt)',
	'Normal (14pt)' : 'Średni (14pt)',
	'Large (18pt)'  : 'Duży (18pt)',
	'Large (24pt)'  : 'Duży (24pt)',
	'Large (36pt)'  : 'Duży (36pt)',				
	// bookmark
	'Bookmark name' : 'Nazwa kotwicy',
	// link
	'Link URL' : '(URL)',
	'Target' : 'Cel',
	'Open link in popup window' : 'Otwórz link w nowym oknie',
	'URL' : '',
	'Window name' : 'Okienko Pop-up Nazwa',
	'Window size' : 'Rozmiar',
	'Window position' : 'Pozycja',
	'Location bar' : 'pasek adresu',
	'Menu bar' : 'Pasek menu',
	'Toolbar' : 'Pasek narzędzi',
	'Scrollbars' : 'Paski przewijania',
	'Status bar' : 'pasek statusy',
	'Resizable' : 'Zmiana rozmiaru okna',
	'Depedent' : 'Zależne (Netscape)',
	'Add return false' : 'dodaj (return false)',
	'Target MIME type' : 'MIME type',
	'Relationship page to target (rel)' : 'Zależnośc strony do celu (rel)',
	'Relationship target to page (rev)' : 'Zależnośc strony do strony (rev)',
	'Tab index' : 'Index tab',
	'Access key' : 'Klawisz dostepu',
	// image
	'Size' : 'Rozmiar',
	'Preview' : 'Podgląd',
	'Margins' : 'Marginesy',
	'Alt text' : 'Text alternatywny',
	'Image URL' : 'URL',
	// table
	'Spacing'       : 'Dystans (spacing)',
	'Padding'       : 'Dystans (padding)',
	'Rows'          : 'Wiersz',
	'Columns'       : 'Kolumna',
	'Groups'        : 'Grupa',
	'Cells'         : 'Komórki',
	'Caption'       : 'Legenda',
	'Inner borders' : 'Wewnętrzne ramki'
	
	
}
})(jQuery);
js/i18n/elrte.ru.js000060400000025721150714137430010045 0ustar00/*
 * Russian translation
 * @author Dmitry Levashov <dio@std42.ru>
 * @version 2010-09-20
 */
(function($) {
elRTE.prototype.i18Messages.ru = {
	'_translator'    : 'Dmitry (dio) Levashov &lt;dio@std42.ru&gt;',
	'_translation'   : 'Русский перевод',
	'Editor' : 'Редактор',
	'Source' : 'Исходник',
	// названия панелей
	'Copy/Pase'      : 'Копирование/Вставка',
	'Undo/Redo'      : 'Отмена/Повтор действия',
	'Text styles'    : 'Стили текста',
	'Colors'         : 'Цвета',
	'Alignment'      : 'Выравнивание',
	'Indent/Outdent' : 'Отступы',
	'Text format'    : 'Форматирование',
	'Lists'          : 'Списки',
	'Misc elements'  : 'Разные элементы',
	'Links'          : 'Ссылки',
	'Images'         : 'Изображения',
	'Media'          : 'Media файлы',
	'Tables'         : 'Таблицы',
	'File manager (elFinder)' : 'Файловый менеджер (elFinder)',
	// названия кнопок
	'About this software'     : 'О программе',
	'Save'                    : 'Сохранить',
	'Copy'                    : 'Копировать',
	'Cut'                     : 'Вырезать',
	'Paste'                   : 'Вставить',
	'Paste only text'         : 'Вставить только текст',
	'Paste formatted text'    : 'Вставить форматированый текст',
	'Clean format'            : 'Удалить форматирование', 
	'Undo last action'        : 'Отменить действие',
	'Redo previous action'    : 'Повторить действие ',
	'Bold'                    : 'Жирный',
	'Italic'                  : 'Курсив',
	'Underline'               : 'Подчеркнутый',
	'Strikethrough'           : 'Перечеркнутый',
	'Superscript'             : 'Надстрочный текст',
	'Subscript'               : 'Подстрочный текст',
	'Align left'              : 'Выровнять налево',
	'Ailgn right'             : 'Выровнять направо',
	'Align center'            : 'Выровнять по центру',
	'Align full'              : 'Выровнять по краям',
	'Font color'              : 'Цвет шрифта',
	'Background color'        : 'Цвет заливки',
	'Indent'                  : 'Увеличить отступ',
	'Outdent'                 : 'Уменьшить отступ',
	'Format'                  : 'Форматирование',
	'Font size'               : 'Размер шрифта',
	'Font'                    : 'Шрифт',
	'Ordered list'            : 'Нумерованый список',
	'Unordered list'          : 'Ненумерованый список',
	'Horizontal rule'         : 'Горизонтальная линия',
	'Blockquote'              : 'Цитата',
	'Block element (DIV)'     : 'Блочный элемент (DIV)',
	'Link'                    : 'Ссылка',
	'Delete link'             : 'Удалить ссылку',
	'Bookmark'                : 'Закладка',
	'Image'                   : 'Изображение',
	'Table'                   : 'Таблица',
	'Delete table'            : 'Удалить таблицу',
	'Insert row before'       : 'Вставить ряд до',
	'Insert row after'        : 'Вставить ряд после',
	'Delete row'              : 'Удалить ряд',
	'Insert column before'    : 'Вставить колонку до',
	'Insert column after'     : 'Вставить колонку после',
	'Delete column'           : 'Удалить колонку',
	'Merge table cells'       : 'Склеить ячейки',
	'Split table cell'        : 'Разделить ячейку',
	'Toggle display document structure' : 'Показать структуру документа/невидимые элементы',
	'Table cell properties'   : 'Свойство ячейки',
	'Table properties'        : 'Свойство таблицы',
	'Toggle full screen mode' : 'Во весь экран',
	'Open file manager'       : 'Открыть файловый менеджер',
	'Non breakable space'     : 'Неразрывный пробел',
	'Stop element floating'   : 'Отключить обтекание элементов текстом',
	// dialogs
	'Warning' : 'Внимание',
	'Properies' : 'Свойства',
	'Popup' : 'Новое окно',
	'Advanced' : 'Дополнительно',
	'Events' : 'События',
	'Width' : 'Ширина',
	'Height' : 'Высота',
	'Left'   : 'Слева',
	'Center' : 'По центру',
	'Right'  : 'Справа',
	'Border' : 'Бордюр',
	'Background' : 'Фон',
	'Css class' : 'Css класс',
	'Css style' : 'Css cтиль',
	'No' : 'Нет',
	'Title' : 'Заголовок',
	'Script direction' : 'Направление письма',
	'Language' : 'Язык',
	'Charset' : 'Кодировка',
	'Not set' : 'Не установлено',
	'Left to right' : 'Слево направо',
	'Right to left' : 'Справа налево',
	'In this window' : 'В этом окне',
	'In new window (_blank)' : 'В новом окне (_blank)',
	'In new parent window (_parent)' : 'В родительском окне (_parent)',
	'In top frame (_top)' : 'В верхнем фрейме (_top)',
	'URL' : '',
	'Open in' : 'Открыть',
	'Open file manger' : 'Открыть файловый менеджер',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Действие запрещено в вашем браузере по соображениям безопастности. Используйте сочетание клавиш',
	// format 
	'Heading 1' : 'Заголовок 1',
	'Heading 2' : 'Заголовок 2',
	'Heading 3' : 'Заголовок 3',
	'Heading 4' : 'Заголовок 4',
	'Heading 5' : 'Заголовок 5',
	'Heading 6' : 'Заголовок 6',	
	'Paragraph' : 'Параграф',
	'Address' : 'Адрес',
	'Preformatted' : '',
	// font size
	'Small (8pt)'   : 'Мелкий (8pt)',
	'Small (10px)'  : 'Маленький (10px)',
	'Small (12pt)'  : 'Небольшой (12pt)',
	'Normal (14pt)' : 'Обычный (14pt)',
	'Large (18pt)'  : 'Большой (18pt)',
	'Large (24pt)'  : 'Крупный (24pt)',
	'Large (36pt)'  : 'Огромный (36pt)',				
	// bookmark
	'Bookmark name' : 'Имя закладки',
	// link
	'Link URL' : 'Адрес ссылки (URL)',
	'Target' : 'Цель',
	'Select bookmark' : 'Выбрать закладку',
	'Open link in popup window' : 'Открыть ссылку во всплывающем окне',
	'URL' : '',
	'Window name' : 'Название окна',
	'Window size' : 'Размер окна',
	'Window position' : 'Позиция окна',
	'Location bar' : 'Панель локации',
	'Menu bar' : 'Панель меню',
	'Toolbar' : 'Панель инструментов',
	'Scrollbars' : 'Полосы прокрутки',
	'Status bar' : 'Строка состояния',
	'Resizable' : 'Изменение размера',
	'Depedent' : 'Зависимый (Netscape)',
	'Add return false' : 'Добавить (return false)',
	'Target MIME type' : 'MIME type цели',
	'Relationship page to target (rel)' : 'Отношение страницы к цели (rel)',
	'Relationship target to page (rev)' : 'Отношение цели к странице (rev)',
	'Tab index' : '',
	'Access key' : 'Клавиша доступа',
	// image
	'Size' : 'Размер',
	'Preview' : 'Предварительный просмотр',
	'Margins' : 'Отступы',
	'Alt text' : 'Описание (Alt)',
	'Image URL' : 'URL',
	// table
	'Spacing'       : 'Промежуток (spacing)',
	'Padding'       : 'Отступ (padding)',
	'Rows'          : 'Строки',
	'Columns'       : 'Колонки',
	'Groups'        : 'Группы',
	'Cells'         : 'Ячейки',
	'Caption'       : 'Заголовок таблицы',
	'Inner borders' : 'Внутренний бордюр',
	// table cell
	'Table cell type' : 'Тип ячейки',
	'Data' : 'Данные',
	'Header' : 'Заголовок',
	'Justify' : 'По краям',
	'Paddings' : 'Отступы',
	'Apply to' : 'Применить к',
	'Current cell' : 'Выбранная ячейка',
	'All cells in row' : 'Все ячейки в ряду',
	'All cells in column' : 'Все ячейки в столбце',
	'All cells in table' : 'Все ячейки таблицы',
	// about
	'About elRTE' : 'О редакторе elRTE',
	'Version' : 'Версия',
	'Licence' : 'Лицензия',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE - это свободный WYSIWYG редактор для сайтов и систем управления контентом (CMS), написанный на JavaScript.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'Основная цель редактора - максимально упростить работу с текстом и разметкой (HTML) на сайтах, блогах, форумах и прочих online сервисах.',
	'You can use it in any commercial or non-commercial projects.' : 'Вы можете использовать его в любых коммерческих и некоммерческих проектах.',
	'Authors' : 'Авторы',
	'Chief developer' : 'Ведущий разработчик',
	'Developer, tech support' : 'Разработчик, техническая поддержка',
	'Developer' : 'Разработчик',
	'Interface designer' : 'Дизайнер интерфейса',
	'Spanish localization' : 'Испанская локализация',
	'Czech localization' : 'Чешская локализация',
	'Japanese localization' : 'Японская локализация',
	'Latvian localization' : 'Латышская локализация',
	'German localization' : 'Немецкая локализация',
	'Ukranian localization' : 'Украинская локализация',
	'Persian (farsi) localization' : 'Персидская (фарси) локализация',
	'Arabic localization' : 'Арабская локализация',
	'RTL support' : 'Поддержка RTL',
	'French localization' : 'Французская локализация',
	'Dutch localization' : 'Голландская локализация',
	'Hungarian localization' : 'Венгерская локализация',
	'Polish localization' : 'Польская локализация',
	'Italian localization' : 'Итальянская локализация',
	'Traditional Chinese localization' : 'Китайская (традиционная) локализация',
	'For more information about this software visit the' : 'Подробная информация и форум тех. поддержки',
	'elRTE website' : 'на сайте elRTE' 
	
	
}
})(jQuery);
js/i18n/elrte.it.js000060400000014632150714137430010032 0ustar00/**
 * Italian translation
 * @author Ugo Punzolo <sadraczerouno@gmail.com>
 * @version 2010-09-20
 */
(function($) {
elRTE.prototype.i18Messages.it = {
	'_translator'    : 'Ugo Punzolo &lt;sadraczerouno@gmail.com&gt;',
	'_translation'   : 'Italian translation',
	'Editor' : 'Editor',
	'Source' : 'Codice Sorgente',
	// Panel Name
	'Copy/Pase'      : 'Copia/Incolla',
	'Undo/Redo'      : 'Annulla/Ripristina',
	'Text styles'    : 'Stile del testo',
	'Colors'         : 'Colori',
	'Alignment'      : 'Allineamento',
	'Indent/Outdent' : 'Aumenta/Riduci indentazione',
	'Text format'    : 'Formato del testo',
	'Lists'          : 'Liste',
	'Misc elements'  : 'Elementi vari',
	'Links'          : 'Collegamenti',
	'Images'         : 'Immagini',
	'Media'          : 'Multimedia',
	'Tables'         : 'Tabelle',
	'File manager (elFinder)' : 'File manager (elFinder)',
	// button names
	'Save'                    : 'Salva',
	'Copy'                    : 'Copia',
	'Cut'                     : 'Taglia',
	'Paste'                   : 'Incolla',
	'Paste only text'         : 'Incolla solo testo',
	'Paste formatted text'    : 'Incolla testo formattato',
	'Clean format'            : 'Pulisci formato',
	'Undo last action'        : 'Annulla ultima azione',
	'Redo previous action'    : 'Ripristina ultima azione',
	'Bold'                    : 'Neretto',
	'Italic'                  : 'Corsivo',
	'Underline'               : 'Sottolineato',
	'Strikethrough'           : 'Barrato',
	'Superscript'             : 'Indice',
	'Subscript'               : 'Pedice/Deponente',
	'Align left'              : 'Allinea a sinistra',
	'Ailgn right'             : 'Allinea a destra',
	'Align center'            : 'Centra',
	'Align full'              : 'Giustifica',
	'Font color'              : 'Colore del testo',
	'Background color'        : 'Colore di sfondo',
	'Indent'                  : 'Aumenta indentazione',
	'Outdent'                 : 'Riduci indentazione',
	'Format'                  : 'Formato',
	'Font size'               : 'Grandezza caratteri',
	'Font'                    : 'Carattere',
	'Ordered list'            : 'Lista ordinata',
	'Unordered list'          : 'Lista non ordinata',
	'Horizontal rule'         : 'Linea orizzontale',
	'Blockquote'              : 'Citazione',
	'Block element (DIV)'     : 'Blocco elemento (DIV)',
	'Link'                    : 'Collegamento',
	'Delete link'             : 'Elimina collegamento',
	'Bookmark'                : 'Segnalibro',
	'Image'                   : 'Immagine',
	'Table'                   : 'Tabella',
	'Delete table'            : 'Elimina tabella',
	'Insert row before'       : 'Inserisci riga sopra',
	'Insert row after'        : 'Inserisci riga sotto',
	'Delete row'              : 'Elimina riga',
	'Insert column before'    : 'Inserisci colonna a sinistra',
	'Insert column after'     : 'Inserisci colonna a destra',
	'Delete column'           : 'Elimina colonna',
	'Merge table cells'       : 'Unisci celle',
	'Split table cell'        : 'Separa celle',
	'Toggle display document structure' : 'Passa alla modalit&agrave; "visualizzazione struttura del documento"',
	'Table cell properties'   : 'Propriet&agrave; celle',
	'Table properties'        : 'Propriet&agrave; tabella',
	'Toggle full screen mode' : 'Passa alla modalit&agrave; "schermo intero"',
	'Open file manager'       : 'Apri il file manager',
	'Non breakable space'     : 'Spazio non divisibile',
	'Stop element floating'   : 'Blocca elemento fluttuante',
	// dialogs
	'Warning' : 'Attenzione',
	'Properies' : 'Propriet&agrave;',
	'Popup' : 'Popup',
	'Advanced' : 'Avanzate',
	'Events' : 'Eventi',
	'Width' : 'Larghezza',
	'Height' : 'Altezza',
	'Left'   : 'Sinistra',
	'Center' : 'Centro',
	'Right'  : 'Destra',
	'Border' : 'Bordo',
	'Background' : 'Sfondo',
	'Css class' : 'Classe CSS',
	'Css style' : 'Stile CSS',
	'No' : 'No',
	'Title' : 'Titolo',
	'Script direction' : 'Direzione dello script',
	'Language' : 'Lingua',
	'Charset' : 'Charset',
	'Not set' : 'Non settato',
	'Left to right' : 'Da sinistra a destra',
	'Right to left' : 'Da destra a sinistra',
	'In this window' : 'In questa finestra (_self)',
	'In new window (_blank)' : 'In una nuova finestra (_blank)',
	'In new parent window (_parent)' : 'In una nuova finestra madre (_parent)',
	'In top frame (_top)' : 'In alto al frame (_top)',
	'URL' : 'URL',
	'Open in' : 'Apri in',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Questa operazione &egrave; disabilitata nel tuo browser per motivi di sicurezza. Puoi comunque utilizzare un comando da tastiera.',
	// format 
	'Heading 1' : 'Intestazione 1',
	'Heading 2' : 'Intestazione 2',
	'Heading 3' : 'Intestazione 3',
	'Heading 4' : 'Intestazione 4',
	'Heading 5' : 'Intestazione 5',
	'Heading 6' : 'Intestazione 6',
	'Paragraph' : 'Paragrafo',
	'Address' : 'Indirizzo',
	'Preformatted' : 'Preformattato',
	// font size
	'Small (8pt)'   : 'Piccolo (8pt)',
	'Small (10px)'  : 'Piccolo (10px)',
	'Small (12pt)'  : 'Piccolo (12pt)',
	'Normal (14pt)' : 'Normale (14pt)',
	'Large (18pt)'  : 'Grande (18pt)',
	'Large (24pt)'  : 'Grande (24pt)',
	'Large (36pt)'  : 'Grande (36pt)',
	// bookmark
	'Bookmark name' : 'Nome del segnalibro',
	// link
	'Link URL' : 'URL del collegamento',
	'Target' : 'Target',
	'Open link in popup window' : 'Apri il link in una finestra popup',
	'Window name' : 'Nome della finestra',
	'Window size' : 'Dimensioni della finestra',
	'Window position' : 'Posizione della finestra',
	'Location bar' : 'Barra direzionale',
	'Menu bar' : 'Barra del menu',
	'Toolbar' : 'Barra degli strumenti',
	'Scrollbars' : 'Barra di scorrimento',
	'Status bar' : 'Barra di stato',
	'Resizable' : 'Ridimensionabile',
	'Depedent' : 'Dipendente (Netscape)',
	'Add return false' : 'Aggiungi condizione falsa (return false)',
	'Target MIME type' : 'Obiettivo del tipo di MIME (MIME type)',
	'Relationship page to target (rel)' : 'Dalla pagina correlata all\'obiettivo',
	'Relationship target to page (rev)' : 'Dall\'obiettivo alla pagina correlata',
	'Tab index' : 'Indice di tabulazione',
	'Access key' : 'Chiave di accesso',
	// image
	'Size' : 'Dimensione',
	'Preview' : 'Anteprima',
	'Margins' : 'Margini',
	'Alt text' : 'Testo alternativo',
	'Image URL' : 'URL dell\'immagine',
	// table
	'Spacing'       : 'Spaziatura (Spacing)',
	'Padding'       : 'Riempimento (Padding)',
	'Rows'          : 'Righe',
	'Columns'       : 'Colonne',
	'Groups'        : 'Gruppi',
	'Cells'         : 'Celle',
	'Caption'       : 'Didascalia',
	'Inner borders' : 'Bordi interni'
	
	
}
})(jQuery);
js/i18n/elrte.tr.js000060400000022021150714137430010032 0ustar00/**
 * Turkish translation
 * @author Özgür Çakırca <dijitalartist@gmail.com>
 * @version 2010-10-15
 */
(function($) {
elRTE.prototype.i18Messages.tr = {
	'_translator'    : 'Özgür Çakırca &lt;dijitalartist@gmail.com&gt;',
	'_translation'   : 'Turkish translation',
	'Editor' : 'Editör',
	'Source' : 'Kaynak Kodu',
	// panels names
	'Copy/Pase'      : 'Kopyala/Yapıştır',
	'Undo/Redo'      : 'Geri Al/Tekrarla',
	'Text styles'    : 'Yazı Stilleri',
	'Colors'         : 'Renkler',
	'Alignment'      : 'Hizalama',
	'Indent/Outdent' : 'Girinti/Girintiyi Azalt',
	'Text format'    : 'Yazı Biçimleri',
	'Lists'          : 'Liste',
	'Misc elements'  : 'Misc Elemanları',
	'Links'          : 'Linkler',
	'Images'         : 'Resimler',
	'Media'          : 'Medya',
	'Tables'         : 'Tablolar',
	'File manager (elFinder)' : '',
	// buttons names
	'About this software'     : 'Bu yazılım hakkında',
	'Save'                    : 'Kaydet',
	'Copy'                    : 'Kopyala',
	'Cut'                     : 'Kes',
	'Paste'                   : 'Yapıştır',
	'Paste only text'         : 'Yalnızca yazıyı yapıştır',
	'Paste formatted text'    : 'Yazı biçimini yapıştır',
	'Clean format'            : 'Biçimi temizle', 
	'Undo last action'        : 'Son eylemi geri al',
	'Redo previous action'    : 'Önceki eylemi geri dön',
	'Bold'                    : 'Kalın',
	'Italic'                  : 'İtalik',
	'Underline'               : 'Altı çizili',
	'Strikethrough'           : 'Üstü çizili',
	'Superscript'             : 'Üst simge',
	'Subscript'               : 'Alt simge',
	'Align left'              : 'Sola hizala',
	'Ailgn right'             : 'Sağa hizala',
	'Align center'            : 'Ortala',
	'Align full'              : 'İki yana yasla',
	'Font color'              : 'Yazı tipi rengi',
	'Background color'        : 'Arka plan rengi',
	'Indent'                  : 'Girintiyi artır',
	'Outdent'                 : 'Girintiyi azalt',
	'Format'                  : 'Biçim',
	'Font size'               : 'Yazı tipi boyutu',
	'Font'                    : 'Yazı tipi',
	'Ordered list'            : 'Numaralı Liste',
	'Unordered list'          : 'Simgeli Liste',
	'Horizontal rule'         : 'Yatay çizgi',
	'Blockquote'              : 'Blok oluştur',
	'Block element (DIV)'     : 'Blok öğe (DIV)',
	'Link'                    : 'Link ekle düzenle',
	'Delete link'             : 'Köprü kaldır',
	'Bookmark'                : 'Bağlantı ekle',
	'Image'                   : 'Resim',
	'Table'                   : 'Tablo ekle',
	'Delete table'            : 'Tablo sil',
	'Insert row before'       : 'Satır başına ekle',
	'Insert row after'        : 'Satır sonuna ekle',
	'Delete row'              : 'Satır sil',
	'Insert column before'    : 'Sütun başına ekle',
	'Insert column after'     : 'Sütun sonuna ekle',
	'Delete column'           : 'Sütun sil',
	'Merge table cells'       : 'Tablo hücrelerini birleştir',
	'Split table cell'        : 'Tablo hücrelerini ayır',
	'Toggle display document structure' : 'Belge yapısı görünümünü değiştir',
	'Table cell properties'   : 'Tablo hücresi özellikleri',
	'Table properties'        : 'Tablo özellikleri',
	'Toggle full screen mode' : 'Tam ekran moduna',
	'Open file manager'       : 'Dosya yöneticisini aç',
	'Non breakable space'     : 'Boş karakter ekle',
	'Stop element floating'   : 'Boşluk aldır (DIV)',
	// dialogs
	'Warning'          : 'Uyarı',
	'Properies'        : 'Özellik',
	'Popup'            : 'Açılır',
	'Advanced'         : 'Gelişmiş',
	'Events'           : 'Olaylar',
	'Width'            : 'Genişlik',
	'Height'           : 'Yükseklik',
	'Left'             : 'Sol',
	'Center'           : 'Merkez',
	'Right'            : 'Sağ',
	'Border'           : 'Kalınlık',
	'Background'       : 'Arkaplan',
	'Css class'        : 'Css sınıfı',
	'Css style'        : 'Css stili',
	'No'               : 'Hayır',
	'Title'            : 'Başlık',
	'Script direction' : 'Script yönü',
	'Language'         : 'Dil',
	'Charset'          : 'Karakter',
	'Not set'          : 'Ayarlanmamış',
	'Left to right'    : 'Soldan sağa',
	'Right to left'    : 'Sağdan sola',
	'In this window'   : 'Bu pencerede aç',
	'In new window (_blank)'         : 'Yeni pencerede aç (_blank)',
	'In new parent window (_parent)' : 'Yeni ana pencerede aç (_parent)',
	'In top frame (_top)'            : 'Üst çerçeve (_top)',
	'URL'              : 'URL',
	'Open in'          : 'Açık',
	'Open file manger' : 'Dosya yöneticisini aç',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Bu işlem güvenlik nedeni üzerinde tarayıcınızda devre dışıdır. yerine kısayol kullanın.',
	// format 
	'Heading 1'     : 'Başlık 1',
	'Heading 2'     : 'Başlık 2',
	'Heading 3'     : 'Başlık 3',
	'Heading 4'     : 'Başlık 4',
	'Heading 5'     : 'Başlık 5',
	'Heading 6'     : 'Başlık 6',
	'Paragraph'     : 'Paragraf',
	'Address'       : 'Adres',
	'Preformatted'  : 'Biçimlendirilmiş',
	// font size
	'Small (8pt)'   : 'Küçük (8pt)',
	'Small (10px)'  : 'Küçük (10pt)',
	'Small (12pt)'  : 'Küçük (12pt)',
	'Normal (14pt)' : 'Normal (14pt)',
	'Large (18pt)'  : 'Büyük (18pt)',
	'Large (24pt)'  : 'Büyük (24pt)',
	'Large (36pt)'  : 'Büyük (36pt)',				
	// bookmark
	'Bookmark name' : 'Çapa adı',
	// link
	'Link URL'         : 'Link URL',
	'Target'           : 'Hedef',
	'Select bookmark'  : 'Bağlantı Seç',
	'Open link in popup window' : 'Popup pencerede aç',
	'Window name'      : 'Pencere adı',
	'Window size'      : 'Pencere boyutu',
	'Window position'  : 'Pencere pozisyonu',
	'Location bar'     : 'Konum çubuğuna',
	'Menu bar'         : 'Menü çubuğu',
	'Toolbar'          : 'Araç çubuğu',
	'Scrollbars'       : 'Kaydırma',
	'Status bar'       : 'Durum çubuğu',
	'Resizable'        : 'Yeniden boyutlandır',
	'Depedent'         : 'Depedent',
	'Add return false' : 'Add return false',
	'Target MIME type' : 'Hedef MIME tipi',
	'Relationship page to target (rel)' : 'Hedef sayfa ilişkisi(rel)',
	'Relationship target to page (rev)' : 'Hedef sayfaya ilişkisi (rev)',
	'Tab index'        : 'Sekme dizini',
	'Access key'       : 'Erişim tuşu',
	// image
	'Size'             : 'Boyut',
	'Preview'          : 'Ön izleme',
	'Margins'          : 'Margins',
	'Alt text'         : 'Alt metni',
	'Image URL'        : 'Resim URLsi',
	// table
	'Spacing'          : 'Aralık',
	'Padding'          : '',
	'Rows'             : 'Satırları',
	'Columns'          : 'Sütunlar',
	'Groups'           : 'Gruplar',
	'Cells'            : 'Hücreler',
	'Caption'          : 'Başlık',
	'Inner borders'    : 'İç sınırları',
	// table cell
	'Table cell type'  : 'Tablo hücre tipi',
	'Data'             : 'Bilgi',
	'Header'           : 'Başlık',
	'Justify'          : 'Satır Uzunluğu',
	'Paddings'         : 'Başluk',
	'Apply to'         : 'Uygulamak için',
	'Current cell'     : 'Geçerli hücre',
	'All cells in row' : 'Satırdaki tüm hücreler',
	'All cells in column' : 'Sütundaki tüm hücreler',
	'All cells in table' : 'Tablodaki tüm hücreler',
	// about
	'About elRTE'                  : 'elRTE Hakkında',
	'Version'                      : 'Versiyon',
	'Licence'                      : 'Lisans',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE  açık kodlu WYSIWYG JavaScript tabanlı HTML düzenleyicisidir.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'Editör ana hedefi - metin ve biçimlendirme (HTML) siteleri, bloglar, forumlar ve diğer online hizmetlerine çalışmayı basitleştirir.',
	'You can use it in any commercial or non-commercial projects.' : 'Herhangi bir ticari ve ticari olmayan projelerde de kullanabilirsiniz.',
	'Authors'                      : 'Yazarlar',
	'Chief developer'              : 'Baş geliştiricisi',
	'Developer, tech support'      : 'Geliştirici, teknik destek',
	'Developer'                    : 'Geliştirici',
	'Interface designer'           : 'Interface designer',
	'Spanish localization'         : 'İspanyolca yerelleştirme',
	'Czech localization'           : 'Çek yerelleştirme',
	'Japanese localization'        : 'Japon yerelleştirme',
	'Latvian localization'         : 'Letonyalı yerelleştirme',
	'German localization'          : 'Alman yerelleştirme',
	'Ukranian localization'        : 'Ukrayna yerelleştirme',
	'Persian (farsi) localization' : 'Farsça (farsi) yerelleştirme',
	'Arabic localization'          : 'Arapça yerelleştirme',
	'RTL support'                  : 'RTL destek',
	'French localization'          : 'Fransız yerelleştirme',
	'Dutch localization'           : 'Hollandaca yerelleştirme',
	'Hungarian localization'       : 'Macar yerelleştirme',
	'Polish localization'          : 'Lehçe yerelleştirme',
	'Italian localization'         : 'İtalyan yerelleştirme',
	'Traditional Chinese localization' : 'Geleneksel Çin yerelleştirme',
	'For more information about this software visit the' : 'Bu yazılım hakkında daha fazla bilgi için ziyaret',
	'elRTE website'                : 'elRTE web sitesi'
}
})(jQuery);
js/i18n/elrte.hr.js000060400000022004150714137430010017 0ustar00/*
 * Croatian translation
 * @author Guerilla Team <info@guerilla.com.hr>
 * @version 2010-12-28
 */
(function($) {
elRTE.prototype.i18Messages.hr = {
	'_translator'    : 'Guerilla Team &lt;info@guerilla.com.hr&gt;',
	'_translation'   : 'Croatian translation',
	'Editor' : 'Urednik',
	'Source' : 'Izvor',
	// panels names
	'Copy/Pase'      : 'Kopiraj/Zalijepi',
	'Undo/Redo'      : 'Poništi/Ponovi',
	'Text styles'    : 'Stilovi teksta',
	'Colors'         : 'Boje',
	'Alignment'      : 'Poravnjavanje',
	'Indent/Outdent' : 'Uvući/Izvući',
	'Text format'    : 'Formatiranje teksta',
	'Lists'          : 'Liste',
	'Misc elements'  : 'Ostali elementi',
	'Links'          : 'Veze',
	'Images'         : 'Slike',
	'Media'          : 'Mediji',
	'Tables'         : 'Tablice',
	'File manager (elFinder)' : 'Upravitelj datoteka (elFinder)',
	// buttons names
	'About this software'     : 'O ovom softveru',
	'Save'                    : 'Spremi',
	'Copy'                    : 'Kopiraj',
	'Cut'                     : 'Izreži',
	'Paste'                   : 'Zalijepi',
	'Paste only text'         : 'Zalijepi samo tekst',
	'Paste formatted text'    : 'Zalijepi formatirani tekst',
	'Clean format'            : 'Čisti oblik', 
	'Undo last action'        : 'Poništi zadnju radnju',
	'Redo previous action'    : 'Ponovi prethodnu radnju',
	'Bold'                    : 'Podebljano',
	'Italic'                  : 'Kurziv',
	'Underline'               : 'Podcrtano',
	'Strikethrough'           : 'Precrtano',
	'Superscript'             : 'Natpis',
	'Subscript'               : 'Potpis',
	'Align left'              : 'Poravnaj lijevo',
	'Ailgn right'             : 'Poravnaj desno',
	'Align center'            : 'Poravnaj u sredinu',
	'Align full'              : 'Poravnaj potpuno',
	'Font color'              : 'Boja fonta',
	'Background color'        : 'Boja podloge',
	'Indent'                  : 'Uvući',
	'Outdent'                 : 'Izvući',
	'Format'                  : 'Format',
	'Font size'               : 'Veličina fonta',
	'Font'                    : 'Font',
	'Ordered list'            : 'Pobrojana lsita',
	'Unordered list'          : 'Nepobrojana lista',
	'Horizontal rule'         : 'Horizontalna linija',
	'Blockquote'              : 'Blok citat',
	'Block element (DIV)'     : 'Blok element (DIV)',
	'Link'                    : 'Veza',
	'Delete link'             : 'Brisanje veze',
	'Bookmark'                : 'Zabilješka',
	'Image'                   : 'Slika',
	'Table'                   : 'Tablica',
	'Delete table'            : 'Brisanje tablice',
	'Insert row before'       : 'Umetni redak prije',
	'Insert row after'        : 'Umetni redak poslije',
	'Delete row'              : 'Obriši redak',
	'Insert column before'    : 'Umetni stupac prije',
	'Insert column after'     : 'Umetni stupac poslije',
	'Delete column'           : 'Obriši stupac',
	'Merge table cells'       : 'Spoji ćelije tablice',
	'Split table cell'        : 'Razdvoji ćeliju tablice',
	'Toggle display document structure' : 'Uključi / isključi prikaz strukture dokumenta',
	'Table cell properties'   : 'Svojstva ćelije tablice',
	'Table properties'        : 'Svojstva tablice',
	'Toggle full screen mode' : 'Uključi / isključi cijeli zaslon',
	'Open file manager'       : 'Otvori upravitelj datoteka',
	'Non breakable space'     : 'Nelomljiv prostor',
	'Stop element floating'   : 'Zaustavi plutajući element',
	// dialogs
	'Warning'          : 'Upozorenje',
	'Properies'        : 'Svojstva',
	'Popup'            : 'Skočni prozor',
	'Advanced'         : 'Napredno',
	'Events'           : 'Događaji',
	'Width'            : 'Širina',
	'Height'           : 'Visina',
	'Left'             : 'Lijevo',
	'Center'           : 'Sredina',
	'Right'            : 'Desno',
	'Border'           : 'Okvir',
	'Background'       : 'Podloga',
	'Css class'        : 'Css razred',
	'Css style'        : 'Css stil',
	'No'               : 'Ne',
	'Title'            : 'Naslov',
	'Script direction' : 'Smjer skripte',
	'Language'         : 'Jezik',
	'Charset'          : 'Skup znakova',
	'Not set'          : 'Nije postavljen',
	'Left to right'    : 'S lijeva na desno',
	'Right to left'    : 'S desna na lijevo',
	'In this window'   : 'U ovom prozoru',
	'In new window (_blank)'         : 'U novom prozoru (_blank)',
	'In new parent window (_parent)' : 'U novom prozoru (_parent)',
	'In top frame (_top)'            : 'U gornjem okviru (_top)',
	'URL'              : 'URL',
	'Open in'          : 'Otvori u',
	'Open file manger' : 'Otvori upravitelj datoteka',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Ova operacija je onemogućena u vašem pregledniku zbog sigurnosnih razloga. Koristite prečac kao zamjenu.',
	// format 
	'Heading 1'     : 'Naslov 1',
	'Heading 2'     : 'Naslov 2',
	'Heading 3'     : 'Naslov 3',
	'Heading 4'     : 'Naslov 4',
	'Heading 5'     : 'Naslov 5',
	'Heading 6'     : 'Naslov 6',
	'Paragraph'     : 'Pasus',
	'Address'       : 'Adresa',
	'Preformatted'  : 'Formatiran',
	// font size
	'Small (8pt)'   : 'Mali (8pt)',
	'Small (10px)'  : 'Mali (10pt)',
	'Small (12pt)'  : 'Mali (12pt)',
	'Normal (14pt)' : 'Normalan (14pt)',
	'Large (18pt)'  : 'Veliku (18pt)',
	'Large (24pt)'  : 'Veliki (24pt)',
	'Large (36pt)'  : 'Veliki (36pt)',				
	// bookmark
	'Bookmark name' : 'Naziv zabilješke',
	// link
	'Link URL'         : 'Veza URL-a',
	'Target'           : 'Meta',
	'Select bookmark'  : 'Odaberi zabilješku',
	'Open link in popup window' : 'Otvori vezu u skočnom prozoru',
	'Window name'      : 'Naziv prozora',
	'Window size'      : 'Veličina prozora',
	'Window position'  : 'Pozicija prozora',
	'Location bar'     : 'Traka za lokaciju',
	'Menu bar'         : 'Izborna traka',
	'Toolbar'          : 'Traka s alatima',
	'Scrollbars'       : 'Scroll traka',
	'Status bar'       : 'Statusna traka',
	'Resizable'        : 'Promjenjiva veličina',
	'Depedent'         : 'Zavisan',
	'Add return false' : 'Dodaj "return false"',
	'Target MIME type' : 'Ciljaj MIME tip',
	'Relationship page to target (rel)' : 'Povezanost stranice s ciljem (rel)',
	'Relationship target to page (rev)' : 'Povezanost cilja sa stranicom (rev)',
	'Tab index'        : 'Početni tab',
	'Access key'       : 'Pristupni ključ',
	// image
	'Size'             : 'Veličina',
	'Preview'          : 'Pregledaj',
	'Margins'          : 'Margine',
	'Alt text'         : 'Alternativni tekst',
	'Image URL'        : 'URL slike',
	// table
	'Spacing'          : 'Razmak',
	'Padding'          : 'Ispunjavanje',
	'Rows'             : 'Redovi',
	'Columns'          : 'Stupci',
	'Groups'           : 'Skupine',
	'Cells'            : 'Ćelije',
	'Caption'          : 'Naslov',
	'Inner borders'    : 'Unutrašnji okviri',
	// table cell
	'Table cell type'  : 'Vrsta ćelije tablice',
	'Data'             : 'Podatak',
	'Header'           : 'Zaglavlje',
	'Justify'          : 'Obostrani poravnati',
	'Paddings'         : 'Ispunjavanja',
	'Apply to'         : 'Primjeni na',
	'Current cell'     : 'Trenutna ćelija',
	'All cells in row' : 'Sve ćelije u retku',
	'All cells in column' : 'Sve ćelije u stupcu',
	'All cells in table' : 'Sve ćelije u tablici',
	// about
	'About elRTE'                  : 'O elRTE',
	'Version'                      : 'Inačica',
	'Licence'                      : 'Licenca',
	'elRTE is an open-source JavaScript based WYSIWYG HTML-editor.' : 'elRTE je open-source JavaScript temeljen WYSIWYG HTML-urednik.',
	'Main goal of the editor - simplify work with text and formating (HTML) on sites, blogs, forums and other online services.' : 'Glavni cilj urednika - pojednostavniti rad s tekstom i formatiranje (HTML) na web stranicama, blogovima, forumima i drugim online servisima.',
	'You can use it in any commercial or non-commercial projects.' : 'Možete ga koristiti u bilo koje komercijalne ili nekomercijalne projekte.',
	'Authors'                      : 'Autori',
	'Chief developer'              : 'Glavni graditelj',
	'Developer, tech support'      : 'Graditelj, tehnička podrška',
	'Developer'                    : 'Graditelj',
	'Interface designer'           : 'Dizajner sučelja',
	'Spanish localization'         : 'Španjolska lokalizacija',
	'Czech localization'           : 'Češka  lokalizacija',
	'Japanese localization'        : 'Japanska lokalizacija',
	'Latvian localization'         : 'Letonska lokalizacija',
	'German localization'          : 'Njemačka lokalizacija',
	'Ukranian localization'        : 'Ukrajinska lokalizacija',
	'Persian (farsi) localization' : 'Perzijska (farsi) lokalizacija',
	'Arabic localization'          : 'Arapska lokalizacija',
	'RTL support'                  : 'RTL podrška',
	'French localization'          : 'Francuska lokalizacija',
	'Dutch localization'           : 'Nizizemska lokalizacija',
	'Hungarian localization'       : 'Mađarska lokalizacija',
	'Polish localization'          : 'Poljska lokalizacija',
	'Italian localization'         : 'Talijanska lokalizacija',
	'Traditional Chinese localization' : 'Tradicionalna kineska lokalizacija',
	'For more information about this software visit the' : 'Za više informacija o ovom softveru posjetite',
	'elRTE website'                : 'elRTE web stranica'
}
})(jQuery);
js/i18n/elrte.fr.js000060400000014421150714137430010021 0ustar00/**
 * French translation
 * @author Francois Mazerolle <fmaz008@gmail.com>
 * @version 2010-09-18
 */
(function($) {
elRTE.prototype.i18Messages.fr = {
	'_translator'    : 'Francois Mazerolle &lt;fmaz008@gmail.com&gt;',
	'_translation'   : 'French translation',
	'Editor' : 'Editeur',
	'Source' : 'Code Source',
	// Panel Name
	'Copy/Pase'      : 'Copier/Coller',
	'Undo/Redo'      : 'Annuler/Répéter',
	'Text styles'    : 'Styles de texte',
	'Colors'         : 'Couleurs',
	'Alignment'      : 'Alignement',
	'Indent/Outdent' : 'Augmenter/Diminuer l\'incrément',
	'Text format'    : 'Format de texte',
	'Lists'          : 'Listes',
	'Misc elements'  : 'Éléments divers',
	'Links'          : 'Liens',
	'Images'         : 'Images',
	'Media'          : 'Multimédia',
	'Tables'         : 'Tableaux',
	'File manager (elFinder)' : 'Gestionnaire de fichiers',
	// button names
	'Save'                    : 'Enregistrer',
	'Copy'                    : 'Copier',
	'Cut'                     : 'Couper',
	'Paste'                   : 'Coller',
	'Paste only text'         : 'Coller seulement le texte',
	'Paste formatted text'    : 'Coller le texte formaté',
	'Clean format'            : 'Effacer le formatage',
	'Undo last action'        : 'Annuler la dernière action',
	'Redo previous action'    : 'Répéter la dernière action',
	'Bold'                    : 'Gras',
	'Italic'                  : 'Italique',
	'Underline'               : 'Souligner',
	'Strikethrough'           : 'Barré',
	'Superscript'             : 'Exposant',
	'Subscript'               : 'Indice',
	'Align left'              : 'Aligner à gauche',
	'Ailgn right'             : 'Aligner à droite',
	'Align center'            : 'Centrer',
	'Align full'              : 'Justifier',
	'Font color'              : 'Couleur de texte',
	'Background color'        : 'Couleur d\'arrière plan',
	'Indent'                  : 'Aumenter la marge',
	'Outdent'                 : 'Réduire la marge',
	'Format'                  : 'Formater',
	'Font size'               : 'Taille de police',
	'Font'                    : 'Police',
	'Ordered list'            : 'Liste ordonnée',
	'Unordered list'          : 'Liste désordonnée',
	'Horizontal rule'         : 'Ligne horizontale',
	'Blockquote'              : 'Citation',
	'Block element (DIV)'     : 'Bloc élément (DIV)',
	'Link'                    : 'Lien',
	'Delete link'             : 'Supprimer le lien',
	'Bookmark'                : 'Marque page',
	'Image'                   : 'Image',
	'Table'                   : 'Tableau',
	'Delete table'            : 'Supprimer tableau',
	'Insert row before'       : 'Insérer une ligne avant',
	'Insert row after'        : 'Insérer une ligne après',
	'Delete row'              : 'Supprimer une ligne',
	'Insert column before'    : 'Insérer une colone avant',
	'Insert column after'     : 'Insérer une colone après',
	'Delete column'           : 'Supprimer une colone',
	'Merge table cells'       : 'Fusionner les cellules',
	'Split table cell'        : 'Diviser la cellule',
	'Toggle display document structure' : 'Alterner la vue du document',
	'Table cell properties'   : 'Propriété de la cellule',
	'Table properties'        : 'Propriété du tableau',
	'Toggle full screen mode' : 'Alterner la vue plein écran',
	'Open file manager'       : 'Ouvrir le gestionnaire de fichiers',
	'Non breakable space'     : 'Espace insécable',
	'Stop element floating'   : 'Interrompre le flottement de l\'élément',
	// dialogs
	'Warning' : 'Attention',
	'Properies' : 'Propriété',
	'Popup' : 'Nouvelle fenêtre',
	'Advanced' : 'Avancé',
	'Events' : 'Évènements',
	'Width' : 'Largeur',
	'Height' : 'Hauteur',
	'Left'   : 'Gauche',
	'Center' : 'Centre',
	'Right'  : 'Droite',
	'Border' : 'Bordure',
	'Background' : 'Arrière plan',
	'Css class' : 'Classe CSS',
	'Css style' : 'Style CSS',
	'No' : 'Non',
	'Title' : 'Titre',
	'Script direction' : 'Direction de script',
	'Language' : 'Langue',
	'Charset' : 'Jeu de caractères',
	'Not set' : 'No set',
	'Left to right' : 'Gauche à droite',
	'Right to left' : 'Droite à gauche',
	'In this window' : 'Dans cette fenêtre (_self)',
	'In new window (_blank)' : 'Dans une nouvelle fenêtre (_blank)',
	'In new parent window (_parent)' : 'Dans une nouvelle fenêtre parente (_parent)',
	'In top frame (_top)' : 'Dans le cadre maitre (_top)',
	'URL' : 'URL',
	'Open in' : 'Ouvrir dans',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'Cette opération est désactivée dans votre navigateur pour des raisons de sécurité. Utilisez le raccourci.',
	// format 
	'Heading 1' : 'Entête 1',
	'Heading 2' : 'Entête 2',
	'Heading 3' : 'Entête 3',
	'Heading 4' : 'Entête 4',
	'Heading 5' : 'Entête 5',
	'Heading 6' : 'Entête 6',
	'Paragraph' : 'Paragraphe',
	'Address' : 'Adresse',
	'Preformatted' : 'Préformaté',
	// font size
	'Small (8pt)'   : 'Petite (8pt)',
	'Small (10px)'  : 'Petite (10px)',
	'Small (12pt)'  : 'Petite (12pt)',
	'Normal (14pt)' : 'Normale (14pt)',
	'Large (18pt)'  : 'Grande (18pt)',
	'Large (24pt)'  : 'Grande (24pt)',
	'Large (36pt)'  : 'Grande (36pt)',
	// bookmark
	'Bookmark name' : 'Nom du favori',
	// link
	'Link URL' : 'Adresse du lien',
	'Target' : 'Cible',
	'Open link in popup window' : 'Ouvrir dans une nouvelle fenêtre',
	'Window name' : 'Nom de la fenêtre',
	'Window size' : 'Taille de la fenêtre',
	'Window position' : 'Position de la fenêtre',
	'Location bar' : 'Barre d\'adresse',
	'Menu bar' : 'Barre de menu',
	'Toolbar' : 'Barre d\'outils',
	'Scrollbars' : 'Barres de défillement',
	'Status bar' : 'Barre d\'état',
	'Resizable' : 'Redimensionable',
	'Depedent' : 'Dépendent (Netscape)',
	'Add return false' : 'Ajouter un retour négatif (return false)',
	'Target MIME type' : 'Type MIME cible',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index' : 'Index de tabulation',
	'Access key' : 'Tecla de acceso',
	// image
	'Size' : 'Taille',
	'Preview' : 'Prévisualisation',
	'Margins' : 'Marges',
	'Alt text' : 'Texte ALT',
	'Image URL' : 'URL de l\'image',
	// table
	'Spacing'       : 'Espace (Spacing)',
	'Padding'       : 'Marge intérieure (Padding)',
	'Rows'          : 'Lignes',
	'Columns'       : 'Colones',
	'Groups'        : 'Groupes',
	'Cells'         : 'Cellules',
	'Caption'       : 'Étiquette',
	'Inner borders' : 'Bordures intérieures'
	
	
}
})(jQuery);
js/i18n/elrte.ar.js000060400000015017150714137430010016 0ustar00/**
 * Arabic translation
 * @author tawfek daghistani <tawfekov@gmail.com>
 * @version 2010-09-21
 */
(function($) {
elRTE.prototype.i18Messages.ar = {
	'_translator'    : 'Tawfek Daghistani &lt;tawfekov@gmail.com&gt;',
	'_translation'   : 'Arabic translation',
	'Editor' : 'التصميم',
	'Source' : 'المصدر',
	// Panel Name
	'Copy/Pase'      : 'نسخ/لصق',
	'Undo/Redo'      : 'تراجع/تكرار',
	'Text styles'    : 'تنسيق النص',
	'Colors'         : 'الألوان',
	'Alignment'      : 'المحاذاة',
	'Indent/Outdent' : 'مسافة بادئة / مسافة خاتمة',
	'Text format'    : 'التنسيق',
	'Lists'          : 'قوائم',
	'Misc elements'  : 'عناصر متنوعة',
	'Links'          : 'رابط تشعبي',
	'Images'         : 'صورة',
	'Media'          : 'عنصر صوت أو فيديو',
	'Tables'         : 'جدول',
	'File manager (elFinder)' : 'مستعرض الملفات',
	// button names
	'Save'                    : 'حفظ',
	'Copy'                    : 'نسخ',
	'Cut'                     : 'قص',
	'Paste'                   : 'لصق',
	'Paste only text'         : 'لصق النصوص فقط',
	'Paste formatted text'    : 'لصق النصوص المنسقة',
	'Clean format'            : 'إزالة التنسيقات', 
	'Undo last action'        : 'التراجع عن أخر فعل',
	'Redo previous action'    : 'تكرار أخر فعل ',
	'Bold'                    : 'عريض',
	'Italic'                  : 'مائل',
	'Underline'               : 'تحته خط',
	'Strikethrough'           : 'يتوسطه خط',
	'Superscript'             : 'يعلوه خط',
	'Subscript'               : 'تحته خط',
	'Align left'              : 'محاذاة إلى اليسار',
	'Ailgn right'             : 'محاذاة إلى اليمين ',
	'Align center'            : 'محاذاة إلى المنتصف',
	'Align full'              : 'محاذاة بعرض الصفحة',
	'Font color'              : 'لون الخط',
	'Background color'        : 'لون الخلفية',
	'Indent'                  : 'مسافة بادئة', 
	'Outdent'                 : 'مسافة خاتمة', 
	'Format'                  : 'النتسيق',
	'Font size'               : 'قياس الخط',
	'Font'                    : 'الخط',
	'Ordered list'            : 'تعداد رقمي',
	'Unordered list'          : 'تعداد',
	'Horizontal rule'         : 'خط افقي',
	'Blockquote'              : 'اقتباس',
	'Block element (DIV)'     : 'اقتباس (DIV)',
	'Link'                    : 'رابط',
	'Delete link'             : 'حذف الرابط',
	'Bookmark'                : 'حفظ كعلامة',
	'Image'                   : 'صورة',
	'Table'                   : 'جدول',
	'Delete table'            : 'حذف الجدول',
	'Insert row before'       : 'إدراج الصف قبل ',
	'Insert row after'        : 'إدراج الصف بعده',
	'Delete row'              : 'حذف الصف',
	'Insert column before'    : 'إدراج عمود قبل ',
	'Insert column after'     : 'إدراج عمود بعد ',
	'Delete column'           : 'حذف العمود',
	'Merge table cells'       : 'دمج الخلايا',
	'Split table cell'        : 'تقسيم الخلية',
	'Toggle display document structure' : 'إخفاء/ إظهار ',
	'Table cell properties'   : 'خصائص الخلايا',
	'Table properties'        : 'خصائص الجدول',
	'Toggle full screen mode' : 'عرض بكامل الشاشة',
	'Open file manager'       : 'افتح مستعرض الملفات',
	'Non breakable space'     : '',
	'Stop element floating'   : '',
	// dialogs
	'Warning' : 'تنبيه',
	'Properies' : 'خصائص',
	'Popup' : 'نافذة منبثقة',
	'Advanced' : 'متقدم',
	'Events' : 'الأحداث',
	'Width' : 'العرض',
	'Height' : 'الارتفاع',
	'Left'   : 'اليسار',
	'Center' : 'المنتصف',
	'Right'  : 'اليمين',
	'Border' : 'حدود',
	'Background' : 'الخلفية',
	'Css class' : 'Css نمط',
	'Css style' : 'Css تنسيق',
	'No' : 'لا',
	'Title' : 'العنوان',
	'Script direction' : 'اتجاه النص',
	'Language' : 'اللغة',
	'Charset' : 'الترميز',
	'Not set' : 'غير محدد',
	'Left to right' : 'من اليسار إلى اليمين',
	'Right to left' : 'من اليمين إلى اليسار',
	'In this window' : '(_self)',
	'In new window (_blank)' : '(_blank)',
	'In new parent window (_parent)' : '(_parent)',
	'In top frame (_top)' : '(_top)',
	'URL' : '',
	'Open in' : '',
	// copy
	'This operation is disabled in your browser on security reason. Use shortcut instead.' : 'هذه العملية معطلة لأسباب أمنية , استخدم الاختصار بدلاً عنها',
	// format 
	'Heading 1' : 'عنوان رئيسي 1',
	'Heading 2' : 'عنوان رئيسي 2',
	'Heading 3' : 'عنوان رئيسي 3',
	'Heading 4' : 'عنوان رئيسي 4',
	'Heading 5' : 'عنوان رئيسي 5',
	'Heading 6' : 'عنوان رئيسي 6',	
	'Paragraph' : 'مقطع نصي ',
	'Address' : 'العنوان',
	'Preformatted' : '',
	// font size
	'Small (8pt)'   : '',
	'Small (10px)'  : '',
	'Small (12pt)'  : '',
	'Normal (14pt)' : '',
	'Large (18pt)'  : '',
	'Large (24pt)'  : '',
	'Large (36pt)'  : '',				
	// bookmark
	'Bookmark name' : 'اسم العلامة',
	// link
	'Link URL' : 'عنوان الارتباط التشعبي',
	'Target' : 'الهدف',
	'Open link in popup window' : 'افتح في نافذة صغيرة',
	'URL' : 'ارتباط',
	'Window name' : 'اسم النافذة',
	'Window size' : 'حجم النافذة',
	'Window position' : 'الموضع',
	'Location bar' : 'العنوان',
	'Menu bar' : 'شريط القوائم',
	'Toolbar' : 'قائمة الأدوات',
	'Scrollbars' : 'شريط التمرير',
	'Status bar' : 'شريط المعلومات',
	'Resizable' : 'متغير الحجم',
	'Depedent' : '',
	'Add return false' : 'إضافة (return false)',
	'Target MIME type' : 'MIME type',
	'Relationship page to target (rel)' : '',
	'Relationship target to page (rev)' : '',
	'Tab index' : '',
	'Access key' : 'زر اختصار',
	// image
	'Size' : 'الحجم',
	'Preview' : 'معاينة',
	'Margins' : '',
	'Alt text' : 'نص بديل',
	'Image URL' : 'رابط صورة',
	// table
	'Spacing'       : 'مسافات (spacing)',
	'Padding'       : 'الهامش (padding)',
	'Rows'          : 'الصفوف',
	'Columns'       : 'الأعمدة',
	'Groups'        : 'المجموعات',
	'Cells'         : 'خلايا',
	'Caption'       : 'العنوان',
	'Inner borders' : 'حدود داخلية'
}
})(jQuery);
js/jquery-1.6.1.min.js000060400000262316150714137430010273 0ustar00/*!
 * jQuery JavaScript Library v1.6.1
 * http://jquery.com/
 *
 * Copyright 2011, John Resig
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * Includes Sizzle.js
 * http://sizzlejs.com/
 * Copyright 2011, The Dojo Foundation
 * Released under the MIT, BSD, and GPL Licenses.
 *
 * Date: Thu May 12 15:04:36 2011 -0400
 */
(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!cj[a]){var b=f("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),c.body.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write("<!doctype><html><body></body></html>");b=cl.createElement(a),cl.body.appendChild(b),d=f.css(b,"display"),c.body.removeChild(ck)}cj[a]=d}return cj[a]}function cu(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function ct(){cq=b}function cs(){setTimeout(ct,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function ca(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function b_(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bF.test(a)?d(a,e):b_(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)b_(a+"["+e+"]",b[e],c,d);else d(a,b)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bU,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bQ),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bD(a,b,c){var d=b==="width"?bx:by,e=b==="width"?a.offsetWidth:a.offsetHeight;if(c==="border")return e;f.each(d,function(){c||(e-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?e+=parseFloat(f.css(a,"margin"+this))||0:e-=parseFloat(f.css(a,"border"+this+"Width"))||0});return e}function bn(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bm(a){f.nodeName(a,"input")?bl(a):a.getElementsByTagName&&f.grep(a.getElementsByTagName("input"),bl)}function bl(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bk(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bj(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bi(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bh(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function X(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(S.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function W(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function O(a,b){return(a&&a!=="*"?a+".":"")+b.replace(A,"`").replace(B,"&")}function N(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(y,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function L(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function F(){return!0}function E(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function H(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(H,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=d.userAgent,x,y,z,A=Object.prototype.toString,B=Object.prototype.hasOwnProperty,C=Array.prototype.push,D=Array.prototype.slice,E=String.prototype.trim,F=Array.prototype.indexOf,G={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.1",length:0,size:function(){return this.length},toArray:function(){return D.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?C.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),y.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(D.apply(this,arguments),"slice",D.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:C,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;y.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!y){y=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",z,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",z),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&H()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):G[A.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!B.call(a,"constructor")&&!B.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||B.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:E?function(a){return a==null?"":E.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?C.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(F)return F.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=D.call(arguments,2),g=function(){return a.apply(c,f.concat(D.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){G["[object "+b+"]"]=b.toLowerCase()}),x=e.uaMatch(w),x.browser&&(e.browser[x.browser]=!0,e.browser.version=x.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?z=function(){c.removeEventListener("DOMContentLoaded",z,!1),e.ready()}:c.attachEvent&&(z=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",z),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g](h)}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};f=c.createElement("select"),g=f.appendChild(c.createElement("option")),h=a.getElementsByTagName("input")[0],j={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},h.checked=!0,j.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,j.optDisabled=!g.disabled;try{delete a.test}catch(s){j.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function b(){j.noCloneEvent=!1,a.detachEvent("onclick",b)}),a.cloneNode(!0).fireEvent("onclick")),h=c.createElement("input"),h.value="t",h.setAttribute("type","radio"),j.radioValue=h.value==="t",h.setAttribute("checked","checked"),a.appendChild(h),k=c.createDocumentFragment(),k.appendChild(a.firstChild),j.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",l=c.createElement("body"),m={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"};for(q in m)l.style[q]=m[q];l.appendChild(a),b.insertBefore(l,b.firstChild),j.appendChecked=h.checked,j.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,j.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",j.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",n=a.getElementsByTagName("td"),r=n[0].offsetHeight===0,n[0].style.display="",n[1].style.display="none",j.reliableHiddenOffsets=r&&n[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(i=c.createElement("div"),i.style.width="0",i.style.marginRight="0",a.appendChild(i),j.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(i,null)||{marginRight:0}).marginRight,10)||0)===0),l.innerHTML="",b.removeChild(l);if(a.attachEvent)for(q in{submit:1,change:1,focusin:1})p="on"+q,r=p in a,r||(a.setAttribute(p,"return;"),r=typeof a[p]=="function"),j[q+"Bubbles"]=r;return j}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u=/\:/,v,w;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.addClass(a.call(this,b,c.attr("class")||""))});if(a&&typeof a=="string"){var b=(a||"").split(o);for(var c=0,d=this.length;c<d;c++){var e=this[c];if(e.nodeType===1)if(!e.className)e.className=a;else{var g=" "+e.className+" ",h=e.className;for(var i=0,j=b.length;i<j;i++)g.indexOf(" "+b[i]+" ")<0&&(h+=" "+b[i]);e.className=f.trim(h)}}}return this},removeClass:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.removeClass(a.call(this,b,c.attr("class")))});if(a&&typeof a=="string"||a===b){var c=(a||"").split(o);for(var d=0,e=this.length;d<e;d++){var g=this[d];if(g.nodeType===1&&g.className)if(a){var h=(" "+g.className+" ").replace(n," ");for(var i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){var d=f(this);d.toggleClass(a.call(this,c,d.attr("class"),b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;return(e.value||"").replace(p,"")}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);c=j&&f.attrFix[c]||c,i=f.attrHooks[c],i||(!t.test(c)||typeof d!="boolean"&&d!==b&&d.toLowerCase()!==c.toLowerCase()?v&&(f.nodeName(a,"form")||u.test(c))&&(i=v):i=w);if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j)return i.get(a,c);h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);c=i&&f.propFix[c]||c,h=f.propHooks[c];return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return a[f.propFix[c]||c]?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=b),a.setAttribute(c,c.toLowerCase()));return c}},f.attrHooks.value={get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return a.value},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=Object.prototype.hasOwnProperty,y=/\.(.*)$/,z=/^(?:textarea|input|select)$/i,A=/\./g,B=/ /g,C=/[^\w\s.|`]/g,D=function(a){return a.replace(C,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=E;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=E);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),D).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem
)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,O(a.origType,a.selector),f.extend({},a,{handler:N,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,O(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?F:E):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=F;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=F;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=F,this.stopPropagation()},isDefaultPrevented:E,isPropagationStopped:E,isImmediatePropagationStopped:E};var G=function(a){var b=a.relatedTarget;a.type=a.data;try{if(b&&b!==c&&!b.parentNode)return;while(b&&b!==this)b=b.parentNode;b!==this&&f.event.handle.apply(this,arguments)}catch(d){}},H=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?H:G,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?H:G)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&f(b).closest("form").length&&L("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&L("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var I,J=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},K=function(c){var d=c.target,e,g;if(!!z.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=J(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:K,beforedeactivate:K,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&K.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&K.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",J(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in I)f.event.add(this,c+".specialChange",I[c]);return z.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return z.test(this.nodeName)}},I=f.event.special.change.filters,I.focus=I.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var M={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||E,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=y.exec(h),k="",j&&(k=j[0],h=h.replace(y,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,M[h]?(a.push(M[h]+k),h=h+k):h=(M[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+O(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+O(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var P=/Until$/,Q=/^(?:parents|prevUntil|prevAll)/,R=/,/,S=/^.[^:#\[\.,]*$/,T=Array.prototype.slice,U=f.expr.match.POS,V={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(X(this,a,!1),"not",a)},filter:function(a){return this.pushStack(X(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=U.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=U.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(W(c[0])||W(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=T.call(arguments);P.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!V[a]?f.unique(e):e,(this.length>1||R.test(d))&&Q.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var Y=/ jQuery\d+="(?:\d+|null)"/g,Z=/^\s+/,$=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,_=/<([\w:]+)/,ba=/<tbody/i,bb=/<|&#?\w+;/,bc=/<(?:script|object|embed|option|style)/i,bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Y,""):null;if(typeof a=="string"&&!bc.test(a)&&(f.support.leadingWhitespace||!Z.test(a))&&!bg[(_.exec(a)||["",""])[1].toLowerCase()]){a=a.replace($,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bh(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bn)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i=b&&b[0]?b[0].ownerDocument||b[0]:c;a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!bc.test(a[0])&&(f.support.checkClone||!bd.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bj(a,d),e=bk(a),g=bk(d);for(h=0;e[h];++h)bj(e[h],g[h])}if(b){bi(a,d);if(c){e=bk(a),g=bk(d);for(h=0;e[h];++h)bi(e[h],g[h])}}return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||
b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!bb.test(k))k=b.createTextNode(k);else{k=k.replace($,"<$1></$2>");var l=(_.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=ba.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Z.test(k)&&o.insertBefore(b.createTextNode(Z.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bm(k[i]);else bm(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bo=/alpha\([^)]*\)/i,bp=/opacity=([^)]*)/,bq=/-([a-z])/ig,br=/([A-Z]|^ms)/g,bs=/^-?\d+(?:px)?$/i,bt=/^-?\d/,bu=/^[+\-]=/,bv=/[^+\-\.\de]+/g,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB,bC=function(a,b){return b.toUpperCase()};f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{zIndex:!0,fontWeight:!0,opacity:!0,zoom:!0,lineHeight:!0,widows:!0,orphans:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d;if(h==="number"&&isNaN(d)||d==null)return;h==="string"&&bu.test(d)&&(d=+d.replace(bv,"")+parseFloat(f.css(a,c))),h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]},camelCase:function(a){return a.replace(bq,bC)}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){a.offsetWidth!==0?e=bD(a,b,d):f.swap(a,bw,function(){e=bD(a,b,d)});if(e<=0){e=bz(a,b,b),e==="0px"&&bB&&(e=bB(a,b,b));if(e!=null)return e===""||e==="auto"?"0px":e}if(e<0||e==null){e=a.style[b];return e===""||e==="auto"?"0px":e}return typeof e=="string"?e:e+"px"}},set:function(a,b){if(!bs.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bp.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bo.test(g)?g.replace(bo,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,c){var d,e,g;c=c.replace(br,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bs.test(d)&&bt.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bE=/%20/g,bF=/\[\]$/,bG=/\r?\n/g,bH=/#.*$/,bI=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bJ=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bK=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bL=/^(?:GET|HEAD)$/,bM=/^\/\//,bN=/\?/,bO=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bP=/^(?:select|textarea)/i,bQ=/\s+/,bR=/([?&])_=[^&]*/,bS=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bT=f.fn.load,bU={},bV={},bW,bX;try{bW=e.href}catch(bY){bW=c.createElement("a"),bW.href="",bW=bW.href}bX=bS.exec(bW.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bT)return bT.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bO,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bP.test(this.nodeName)||bJ.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bG,"\r\n")}}):{name:b.name,value:c.replace(bG,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bW,isLocal:bK.test(bX[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bZ(bU),ajaxTransport:bZ(bV),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?ca(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=cb(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bI.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bH,"").replace(bM,bX[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bQ),d.crossDomain==null&&(r=bS.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bX[1]&&r[2]==bX[2]&&(r[3]||(r[1]==="http:"?80:443))==(bX[3]||(bX[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bU,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bL.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bN.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bR,"$1_="+x);d.url=y+(y===d.url?(bN.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bV,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bE,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq,cr=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cv(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cm.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=cn.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this),f.isFunction(d.old)&&d.old.call(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function h(a){return d.step(a)}var d=this,e=f.fx,g;this.startTime=cq||cs(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,h.elem=this.elem,h()&&f.timers.push(h)&&!co&&(cr?(co=1,g=function(){co&&(cr(g),e.tick())},cr(g)):co=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cq||cs(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(co),co=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){return this[0]?parseFloat(f.css(this[0],d,"padding")):null},f.fn["outer"+c]=function(a){return this[0]?parseFloat(f.css(this[0],d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);images/smileys/wink.png000060400000001442150714137430011156 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�]HTQ���
��H���2��(K�,4}�z(���"P���,L� 
�H‡|��b)A
˂�(
S*X�V%�r˯�׽ۜ��a5�ܝ3g�f���?�}�&;ʑ����84����-�.Q=76���8Gy4B�ʲ},޸=cQ|C����{��ﺇᡢ��GHr�Xw�_��0t�8+���u��V��#�x�|
ێ�(��Z��TU�/mH>�l�n���W��s��;��}����u����]KS���K�$�����1X�m
�훤�=ĈV���#Kݵ]M�P�ت�5��n���3p̎1k�r��:�f�i�U�ϛ…�G�B�O��UW� �z���WT\@��t9]��F�ƒ,�~ʙ�o�y�XA�fS�Dž&yN�cM�s��z��hة^u!T����#����~^��
K𧫫�΄1���c9ܒ��P�gEM�#�q���h$���9�cX}dgA�F��	y�+R�U�ĉ��x����X0�?g�2V������H0遂��`�2B�*��˟�,ܰ
��Cp��)1y�^4O&��A��/�/iP���� �?� 2i`��9e�
����oC.-���U�ӏԨ�dJ2�r�t-7�r<���q�IΒzO��[�}3y�:?���a�/�����i�1�$�Y���h�{���	��q�,�">RIQ<�%˞;ο+�4U�)p�IEND�B`�images/smileys/evilgrin.png000060400000001435150714137430012027 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�dS]HQ�fwv���/J˥�#� ���"�z�_2zI(�GJ,L�"|0�!"{P(##_�C�IJ-m5W�W�5ݙٹ�3��a��{��w��#�鼁Z#��€�}6���;p�b����-BGkV�)����	a��X���7nodɯD[��ƛ(�e����=�v���
�7k�3���8�F.6	��+�=;����U������3W>����#|�o��r�f�?����
`<ʃ��}�|�x͕���WL�9�$0��l�
}�6Jp%�`1�׻��s=(������M����2U:ʡء���r<x��L�Թ!$�����oU}����#��3	$�P`ө^�:`������;\V��v�{Z���?����	@"�";�8��DC�R���!��K���]�!�������w[δ F�;�J��ܤA�-����P�q�3T�"��zj�O�g��\1�44�z�����o��9.��Lj��|�!���Ż�<��#��%�^�Q���3���/���{6y�ʝ���
}��`2�0b��\��v�ag������Q�A)ǭ�֔��'q�`��Ɉ��V�akX��2��̔��~��lB=��&�X�mMQ���	�%2���:���5��A�o�H&iRdNV���l$��K�".?uJq�IEND�B`�images/smileys/tongue.png000060400000001464150714137430011513 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�mHQ�����-S�4�"��Q+����D��E"Q�TB�C�>0���"DdP��,�@��Ð>�B�@��j72u�v�ݙΝ�к���9�}�9�96�Y�G�5��6
\��ɣ��ԭ;́�X�4U8�^� /�Ӕ���y�
 �
�(h��ߣ��v'�Y�4O�NM�FfY
�;A>)ns��5��)4�o�W�a1%�PƘ"W�x�&o����P(ʹ�
�%�eG���l�P����K�M��D����s=Ii�yܙ�ڒ2|Ü�\
��JKHZ�����_C��.�7ŋ>�M�x�&��I�X����K��gx��w_�ӏSwe�a<�$���W<���f�t9x~� м�¼r��¼`��W�n�He5�o��&��d9P<K@�%"�#�8^I��D���O���H���b�ɽFbxs����hx�H�ކwo!(�\�ጝ�V~W8���8�+z��u�#.�ׇhk�9���q�槸󲱅5��-���U��V>�H��I��eA��������֩l�Wq�Sxų�^��G�7��M4�t?�Q�x�[6h�U\�^�,�_�?s����ܖ9���!� �^�Y�산�Wq�{��r�c�oR�U���Y��d���d��!C�>*��ltuS^�u�O&Y��7�pJ"E2CΉ�̔�s�;��9#f�"�7���t�9��Ր�k"���G�n%F���IEND�B`�images/smileys/surprised.png000060400000001414150714137430012225 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�[lLa��ݵhK�*�JH�{Ҕ'���
�O�@R�H��""�EU��Dyh����hI��R�n��nw��1sv�b���o��o�|�ȃ��ulʝ$~q�3��e�p��8N��*V8qB���YT
�����`�3�On���᥸�w2	�4y�e*�s��� 7k�r�l�D޻V��׸�X�����8�;s�F�WMϙ[�����[<�7�_����0�ΦtC1��U���ہ�9�p9���O�RTQ��S�V0z_�;g9�K�]'�U�kA����f2��	y�]
��Bc�]>w�8�
��%���X�Cod;��cGP��4�G&=�������g.]p��at����v�%�o#6 �	��J��h?�������ǫ������C<!8'=8�g�c��C}���b�38Q�(���w;��F�FzL� ��������˲��@��ԧ�W������7����_нF2����R9˗�zV���x�	֜f���G��9���=6K*��P�g�k\q�W�1}hn�*��-���3�M+-F�,��[�:�׸�[y�7Qd��lZ6�3'������d����=q"_b�ma��F���_�Id�h~c�9ٔ�&�L@�&��[kOq\�mJ��5�����~��δ=�9�`(!�� �IEND�B`�images/smileys/waii.png000060400000001421150714137430011134 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�[Ha�;�7�JW*��Š��.���C{	"��z�N	�AaQt��C/��BZ�PkeA=lۦdn�٘]��f����a�����w�����ɶ���q$�GcDӹ��8�����߮u��6i/]���K�CN�BH�@�8=��޻��g]�1:FH�6]����g��ǻI�	�m�5�|�j�0O��cY.�"�*;ō򝍜?z��X?�e��8�R˩]���'ЄhڌBj5�}���m���J*֢��2w�F��9ق_��b8��r�_���4nzeᆎ&���*vL���G��p�-��ַ�#6�˱R6�O�n�c�AMZ+.�ɼ���ؑ&����NO�05[sX�l"��n�EK$8{��=�"�i�h��4	�[P��?�푘�L�����	т2�9.>c^%�����@(�(S�qj ��d����6�Y�b��:௨���/�C*5z��Wj�V
'xU��&H|�5�l�RT���,tƚj�Qk�-�c,����,�6�;sQ)~�3��౦�Z �i���y����"��4��r8�2J򧨫�b�:V���U\�W���Ԫ�����j��.�b�d����no�41�_>��E��%�m�e� >�����ƳA���0���aڪ�qR"���m̲b�<�rVL��K����G�EUb�F�IEND�B`�images/smileys/grin.png000060400000001466150714137430011153 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�kHTQ���}�뫇��ETD�����@(
""*"�0$�H�(zPID~����@H���C`B����̷�9�mX
g.�����̙�c�5��c�W9�P0d�L��ל��T�RJ��Zc	yv�����H�����q�4a���͏i{q�Æ�<�K@�;W�{�"�,���	�%K�n_$�~�ێ�h�p&5���7jyW�{Rq�Q%�IѦ�x|���r�x9����EO���<o�:\�V��[X�w�Q���6�=��>MҒ,�i��E�ffec�ײ�p#uת	���H'���xr����av���բ�\���g��ۨ�k8[�/k��c�Vq��Mn���8�0�i&RZoD��ݓF�=$��IUg��di-����AiF��E⬈#ьv�e:�Wd�'!�ό��	 +r�p�����Q:�')& �
-Y�5^�ʯ������綈wYm����\�I]����چ"=�<�3Ѻ=aȍ��)�+��B�>=��n�Txs�RE�B?‹
a��꾕��W��JTOH���ZX|@>Mu��i�?��x͋
R������]�ķ�%�ˮ���
rc#}^�6}��,��O]�l���&�i�[ٱv)U3�,RRt{��r�.r8l10}=v�\z�����1�%�/�{�ci���{��I�n��D>k��q�e�O�N��2�K{�s�%�{Y>N:�IEND�B`�images/smileys/happy.png000060400000001470150714137430011330 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�[HTQ��9gf+/eWӢ�H�.X=DVAQ�e7h �@1�(�(���C/�P���VB1eFAd!�VF��NZ�̜�[�LZ������k����]�c�*l���Ƈ�
�<��ɝ
g9<��ҿc���-v�ƅ�w2k�vH����`_[|T��ek�i�&r�iR��e��I1�
C��Ã������b,+Dp�v���}g�r�:_:�`[6��s5~.쯤��C�͚���-7JcŁ;PJ������,�6(��KN�`D�g'�.m���5����e�m!P�T!��nɢ(}�
����q��:�ڔW�bElL���/�L)-cv5�s���T���<	&�/��U���)��"�B�
�pq��l\���4���h�$8%�{�A]U�hH7	[K�WF%.2�b)�,����5|�
�hF�����z�G�c�EF�u0��m�8B9D��ȏno֚md�i`��4�S$AY���뗨�+
�U�<�����}������쨨#�c2�η�t��u�[�x͋��!R���T�]S=����ި��xW�[��|��_�4^���#e�������=���<z�擜���P�hbټ0V4����4�ǯyħI,�T�7-���t7�)H#�ج"u30�ߢ4��?QC�p~N�Lb��j�p|z;D~o\F�4�7D}A9�e�]�����,C|�n�=i:��i����=Ih±��IEND�B`�images/smileys/unhappy.png000060400000001412150714137430011667 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�[HTQ��sf����(S
��b�D�/)$YQea	�"E�P�[EAeJQd=��	aQ��1�4�K�i6����̘��,6�_�Z��k���=?�u#B�ʼn!�&��_�Ѹ��r
�Pa�^Բ���.ڇks	$/4"n�����y���-����<��c�l6<�'.3�L���>gJ�%2`�j�pW<�,��T�~
���YZy����79W�޲��ן�~�O��~�nZG��"^ިc�E4S�:sF�l��PBa��
-'3/�>����kC1��=�%�n_��z4ʑ4w��&*O���)���$�bLw1�\Gc�w����� 2ބ�<U�.�N�;��1x�kwo�g�<g�Y�����L,:p��OIJ���*�&���
h}
�`���/&lN\\���]$�	a^�.{]�ָ�\�
��.|-�Kՠ�ա��R��&�ڟ����:gg��m�+N������Lz�]+Ӊ�yy�)���?
�>›W�>W�'�#|T�y��R��_��Q_J��dB@���V�W��+��<�����Aj�?�	ن;k	ဍ�_�`���U\��z�Ry����se�ߞõT������%B2`�/��X��n�ꚹ'�������jN.[D�܂#^A�����
���^�[%�;�M�O�e/|ο�#�*�1IEND�B`�images/smileys/smile.png000060400000001423150714137430011316 0ustar00�PNG


IHDR�atEXtSoftwareAdobe ImageReadyq�e<�IDATx�d�[Ha�;{-P\sk�)�	=E+�(R*(�Az�"�n	�Y��AE�[tC�l$ݠ��E���h�f��6��o���3�|��s��c�x|�FC�"a�"!	�\Q�ʅ�H�&	���'GY����ma����!
�@��u��{ױ:X��8w��6M�ʒ�gм�II'�`�dmWh���<�Ua)%`SF\��h�t��^�B4�s�_MU�)�.+��B��"6�㙯֟�9�\Cc޲�"�쟴u��x�~�C�ԟ���Y�c;Y��	D
HL.f�·≗�k��Ѥ��9���C-�;������E���o�u��&�����
�`
�x��8�9lă��9L�Ŧ������/����K��{��R����Rj#:�>?��!�<�&����̈́�O[o�Mn�"��ޒl����i�›�|%�>'t����Yt�Q���S�U�C�.�^R 4J�`�Gqv67<��~�E'Ă�~�fyI�^���r��=�qڇ���Ƣ�0�+����d3��M��%���A�U&����f�S�a�L7<#��43�r3�����C���T*�Y���r��Σ!g���,;v���q�"������7�,鑿�I"S�7rȓ�f�!�9�2S��wn���d>*�Ә�rOQ���NͲ����OC��.�IEND�B`�images/pagebreak.gif000060400000000066150714137430010424 0ustar00GIF89a�������!�,
D����o�\��)A;images/media-rutube.png000060400000004612150714137430011106 0ustar00�PNG


IHDR{6���tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:D1D6F379B78B11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:D1D6F37AB78B11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:D1D6F377B78B11DFB6ECBB5655C95056" stRef:documentID="xmp.did:D1D6F378B78B11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��`PLTE�����������Ĵ�����   jjj���nnn���yyy�����㙙�uuu���qqq���}}}���������������������fff���AAA���#��� tRNS�������������������������������\\�fIDATx�ę�v�(�Q�
�xI�-w���$��a��Ӗ��0���'ɫ�mX*/���%{��AB�U��b��1b�1
|J�?`�!LI����y^K)���)Œ�U
��y�
Ϳ����d�-��=��{쁎����-v`FA0j��bx�$?L`G�������@7�To�6��N��ၽ����	�y�K��/��F,�I�DFNƱ3R��%$Q�;�b��tf˻�˨�㯼���k9���l<�ٟ�>O����2�4�]��,y���IՄڞ]=��H@�Ol4i(���i$u��~7MtrR��!Kbya�} >��n�u���n�y3�έ�_��3�)�}��\�
�;\_�){Fwz��^��s�w�}d7B�.�K�2�@���//���R�Ʊ�R��>`��&�3��=h`��r�̫v����ش�͹B���v-�llDcG,�@v��������ul�w�6����B���\+E�hX��P�IJ!��fZktTk�f�˿Z;v��C��(�vy��ב���;��g�Bv6���H�C���b�N�\)����8��������ɬ�l݋Y�Nk�P3�xm``�05���Q�p:�9�%e������3��v6ZS]2���F�9���.t��QU�dZ�������3�M�N�@bt���>` }�RN�&l^r8:?��k�Z�Va7p��+��Hޫ�7�l,P2�i1��s��pM�]�g,���a�.�4���2��'-�I�K���0O�Q�(T;����V��>���t�&%��*�R^�&�q�bQ����D�|�. GxɁ�8���,�H�Eᆘ}�œ�:`6g/���G�b�n?�=�^�Z���a>�49_}�Y���GӶ=_9�"6��K��v����3���^�R�J9�j��	�����Œ[�upr�3Dt��^S,��,Ծ��e�8v�`��n�J�S70���f��U5��������z<�k��=�Xs
�C�/��T����_=�	��A/ٯ��xF�e�ͳK�I�0�#[��f�����f���������2����`o�.\5�ḁ<�=\@HS�]��}�<��m��.병?���(W�	�Ggő�+���[���T'�x#��{������}۳��%�l��}xJ�w�k#D�oߊ��߁D�GVJ����U�s���ݭ�"h��-]�.��ju�'Ep"��Z��b��_cȞ�&+S�)6ݍ��W����祘k�0�������c/|Fb�s�]����5��oo�`k�k?��ѯޟ�[B�����??����p٧��������-V�/���-�O�.�1>O��zIEND�B`�images/media-flash.png000060400000004006150714137430010672 0ustar00�PNG


IHDR@@����tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:4A13F56EB78D11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:4A13F56FB78D11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:4A13F56CB78D11DFB6ECBB5655C95056" stRef:documentID="xmp.did:4A13F56DB78D11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>5��l`PLTEUUUAAA��ȭ�����$$$222===000���555666...,,,888HHHLLLJJJYYYwwwEEEPPP***������RRRNNNCCC(((:::ggg���H."XIDATx�|V뚫 ���h��*�����t�|��?;��$@�l��Yl�����0i��cL)%��i�b3T�̋j�@�P���-�⾴��B+h>7�!K\
�s�����+X^�$��]|؁k!d0<���$��!���@�����?�q�|���(�c����L�‚��c^���xg�u�9V��п�s����c���_Y�(�m)�f���YW�`
.e$��ٖ,� ��?���&�m�nǸ#�Z?��o�����e	~*0��Ɉ��5�mN����Zpi�?�@�r��\�ȍ����]U��S�P����`��ߑ9(��(D'!�~�4|��+G������9�_�@��,s�u�oTܯP�tg'��L����ld`�NJ����
$p�;r�?�� ���pl8Ƥp�nγ2��S��ە�K�̫�A��|~#����7�mo��WF��$-н
:�6� 	8�6�B#�u���``X�g��M�u7L�f��&�&`DdW�Q J�:����%�T��(���K�n^5�bͿ��<�EP��='*R�M���+�P��.��r'����<�rw���h
\;񐳿JWE� �3��]������ll�?B�
��C�.��(���bq���%�v<��v��o��	>t}6�)<��0t-�<�,R��/�ˢ�}y�?Ehfp}�a������6 8`�@�!Drp����?��i����	X��J	,0.�U5��~���_��ȔSBy��,���Y���Q�M�:�+S�(�E�Oɰ�'���
���q�������utXKǏ�H!�y�ۥ��م�!��
�)��G+�SGN�!�A��ҩ�����'��v�~��j]���9�78���!*�T�8g�QǺ�=���g4����tx6>̷��<Z>�q�-�N�/����h8�/!>T��=,��*�q�0^��k�c�O�CIEND�B`�images/media-quicktime.png000060400000005117150714137430011574 0ustar00�PNG


IHDR@@����tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:D1D6F37DB78B11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:D1D6F37EB78B11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:D1D6F37BB78B11DFB6ECBB5655C95056" stRef:documentID="xmp.did:D1D6F37CB78B11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>TU `PLTE������������������kkk}}}BBB������������������yyy������SSS���[[[������������ddd������uuuqqq������x�� tRNS�������������������������������\\�+IDATxڌ��v� E�1x����I�����9i;y!@<�Kl�g<�u���L�����H+���<���+���(m�˾��0L�0,��
F�j���*ˇ}��c��>�y�ʪ����Px�0F�9��i_�Jѯ�]V�4y��\0��W�E�v��+�jg�bmSB4M�?�
ژ���j5^	Rv|�0!��FZ�c�0ej^u�Gm+i4+C�Ԝ+�4|�t#�����C�.�<8�!c��F ���v���:Ds=����*����4M��Hk9���e�0���xP:
%�&�hB�r�;d�U�0U+d����c�8!��멆5��iO{"��8*�ت��z_kW8���ϛ���[S�}O)±V�O�a��]z��'|~�.t��@r(���T�#��u�|8�v�2��e�YT��v�z�@��/��́��LBV�
N�3w~�/�ba@}��\:���ӟ�9�=>'���肴[L'���~}�2�(�;B���πr��r�Uߤ�K���H`�S]�Y����B�
0�Ro g}%�2`ݗ���o�!)�a4	 �[�A~L�����H)�I(4�@��_�.�ϳ#w@�u ���{�O����?�#�0�d�3��򮏗����R
�>�_1�D���}�AO��g/��	�՜Ĭe���K���c|}? M�Z5��$zE=��|N���s��S�Д�8��X��k���&*X�����ɶ��K'iB��m��9�J�\/�ӯyD�Н�7}��@���v��{jF�7Iy`�����<h�&F��`�Dqu�?�pa}�&����������;ɏ�t�K+='oܫ3��p[�Vz�H�/�&�v����1o}��Nd����ߡ��ف�ga_�F�*��O}o�"��X�4�G��V�	���`��.OLno�����"&��i^��T�`�?�vy���	@�r�'SG!����J�5�V�ʧ	Pl��/�ݎ�%Bn�׽��<�o;f�6kNJ'�����]&�����ο�Iv/^��庍	���gj3V�G}]�:c����
.ւ#�n��O�x8`�ĕ��AW���$앫g+�<�MWc\
��^�Q�3��NW<,f�7ox�������c�>�&<{W��$S�V,�+��fҦm_�Q/CD�HR�O����ؑDH=�'���U8�zX��g�J��Ɂ"�p�C�0�T��5�W&xy$��n���Q#��j�7�^r�l5�j��#.Ýv_ȡD׏N����U�]���q��O�o�v��?����w[
��?>�;O���F�B�.N��x�7�(Ɖ9s1��w��2%s״�-�告�"�ü�#^��W�w��UL�,|ivǼV錅�fg�\
K�ʣ��E�O�s-
�;ऋ"*�K!?󳱮�&j�W<�c2��S�V�tJ��Nj�*?��k>��������6%.$�$G~o��n{��3��"n��-��byIEND�B`�images/google-maps.png000060400000003727150714137430010743 0ustar00�PNG


IHDR�%�"�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:4A13F56AB78D11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:4A13F56BB78D11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:4A13F568B78D11DFB6ECBB5655C95056" stRef:documentID="xmp.did:4A13F569B78D11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>��4�PLTE���nnn��Ա��777TTT������߆ItRNS�������ރ�YIDATx�̘�� ���?�m��n��4ڤQ_G��}�2f��(�1�]�!*w�\���/�8�W�Kbq�8q!���jw�k�]3�^��DKY������v���-k�vi�܋�[1�'��/$�tܟEV��b+�7&� ;���
�p侱��y�_3�'�kӂk�o-�w
���\�
fM��4�#�x$�[BǸ:��n�p��spP�R㲍�٬�?�ƪ���B���z��EJ{˂ߦ��~煌�ㅢy�J����J52��Լw���*y���
^��r�Ӎ�٣�m�-�[$�-�Zh�ĝJ.Z7@��q��1:���z��W�<�-(��L]��O�����sIl#o���p]\��{�p�`2Dgs�:�������U��.c�C�h���b��q�&g�=} ����8�.����Zg}�pl5�q���.�%v�x��R��6�@�t{�˱הt�m���)d[}���{���Z�U.<f�r�O�q-v�w��ϸ���F����J(�@ue�s�OTZTc�J�j����.
�#u۶�#l��3.Gć��@����;RD�u���/f5���ǸG��a����
E�Au�2�r\ƞ_p�m��s�D"r,�V��塺|[Ͳ�S�r�n�ȌE`Z�d�O9#��-%��}�9'�C����ø��5uVގ���Ǯ�q��2�Jv6��YM5�΋�����V�ib�{Ԏ~���Sa��Jz
��ҿ$�O�SF���ůp='K$���II��zy��d:�(5��ƚNG�"R�nje�N�gh-%���p='�‘��H.qd�?��ia�}��M(e�Dj���ՋE�Q�[�B�NE�Sw��Ԅ@y��ݞ�~y�ct� �C����	z�W���O���g'��Q��N=o�c�Tej��I�6�8�������4�Aۧp��OWY[��W����^�j��@���q������v���F���i?�;3���O��җ#�CJ�IEND�B`�images/media-vimeo.png000060400000002735150714137430010723 0ustar00�PNG


IHDR�%�1�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:27BE26C8B78C11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:27BE26C9B78C11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:27BE26C6B78C11DFB6ECBB5655C95056" stRef:documentID="xmp.did:27BE26C7B78C11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�vPLTEooo��������etRNS���@*��)IDATx��W���0����{46-'�ԋ4iI(�7��q��)N�_D��7`��x�p_��7Ґ��F_^��ٙ���o�ӯ1�i��7�v<U
��hf�H���bqX�o�=�T=}�2�p�
��($�_t�2P=���T��^�uNcCW��_u����|#����� �0бf0�(L�A�4�1Q3rP����[�>A�Z�A)��-����&z�.B.8��K(%�jX��`C��S�U���@SO=�b|��N���@����JɄh�PgK �R��H�ND��W�9��0�(>�h��o}�+��y�|�U+,�l��PK.=���9����;VQ�T��1j��}����h�����
;��]�.�ks�a�Z��j���mM'���9G2t��\��ξ�ϩ��'�f�mU/\�܋���_Z�o@עi��ʨ�����V��X��tס�,�X��L�fL�n�5�'�Ű�������΀ͯ�s��N��O6����ޱ�t����>�iIEND�B`�images/media-winmedia.png000060400000004621150714137430011375 0ustar00�PNG


IHDR@>���]tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:CEF64421B78C11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:CEF64422B78C11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:CEF6441FB78C11DFB6ECBB5655C95056" stRef:documentID="xmp.did:CEF64420B78C11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�j�TPLTE���999���JJJ��ij�������������SSS���\\\������|||���ddd���������kkk���ttt������������etRNS������������������������������}IDATxڌ����*�	��,�����
��L�$e<�M�tK�7��9�~�3g�y��?�l;T�(ݸ2��4�]S�����+��u��JU|����߀�ۻ,PZ����#b��8~Y�L�HU�"�=����}H��C�%�S������t8�d�)s��C����
�J��&�=�1�d�;���Na0���#�o*�VE�&��9�/��N�2 ��w��)��_�����r�sE�8da_�U���^�0��$ړxW���3�I�,�9�Y:ɉ��0� �ã�o\�� �;-~�Y��
�@�}7�x`�N.4��)[.�w���	���)�W��ݰF��!e�3�:�����uAD�%dj�mC��-�?�^)�?Q,��:{�7
��	�V._`��?F�`0�u��m
@�?x�<
WrֿB(����+����|���|FA`0�`��`��$��6�y�Bs9c�0�t*�mۂ<G �,�֔R�!�`2`������O��h^���4AB��{�7�À��e悏/M>�c�Hx����6���=�8?3\���eYu�Dr�lv7r�R��q�8O�J"�q�hY:^�P8�AE�zd�$a�8�喢؏KD8t#��0�i�x�Q�@_K���"�n8�E�?Y%Xi`��2x�C�=	/Vu���@�{���:n�a��:���^vk�⎐V�,��4J��-�<�G�w���2�r�$�^%���GŲ�Uq����Ln!��D����܃!�b_�<��5��:��v�?A����.��p�7�SfN��fQ�)V���Q�	!�?:�eO	j7@.]�q���q�H�x�3�ެՌOV��TC �إ�a�M� ���t���G�E�x�A!����PnA��!S�bϺ��
�]���X�ꕺv�d @\j�l~�Mf'�d��%�!'{-��V�G{��.4rU��I>�r#��;��)Np�쀸4x�j)I��sV�G�2?cPw�6zm�H‡�"?�-��k+VNl040�'��c�-��,��e�x� ѭW.��>e�tiOSkh��t�7��Y�b�36y�3��H���@��ʬTn�j�Z�������[����+Mv�ݿS@�u��j�.�3�VRn�P��"�Ąmv��N�O�=�4JC���/R1	��Ǖs��i��rH�G�iʩ�}�)�v��M�X�dܠ��A���h:Co9l��&���)�;^�~,-���|�ĸ0A+�/>���.8�a<�qږqhg5�[6\�\�?^����D	�[����~��^<!ap�^V�x�벦��|�'�@�߹�.[�IEND�B`�images/elrte-toolbar.png000060400000067140150714137430011303 0ustar00�PNG


IHDR�7r�YtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:C11844BFB78411DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:C11844C0B78411DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:C11844BDB78411DFB6ECBB5655C95056" stRef:documentID="xmp.did:C11844BEB78411DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>CҒ�j�IDATx��]|G�g�\�!!!A�;���>\
wh(���]
ŝ�ݥ�'� h����~3{���#��%@(��e��s�3���?��A�4p�8p��
$�8p�8p�#�8p�8p�GX9p�8p�GX9p�8p��?��={��]�6�����S;�~~:� W9?�l�S���>�#	 ��i
(
҄x&�+���^��0	�����j ����(z��ξ��.�q���x���fI{o��ٴi������-��{[�h�}�3g���}l���z�C�q��#�`칃���W��`��Ǖ�x��i��^`J�����s���[χ��e\96�LD���8��&��r��������4E�B���bȪXD�d��ѱYU��~�w��${t�FS"Q�T��v~�G~�����}
k���iUQꀕK�����P<Q(��f����{7>>~���H��׼y�&�U��f_
� ���8�C�I�!;�6�ĥl�>�^����
����0��T<_AAdKq�R�Z>L&�5S��%�
�P*Crš�쌕����#���Oh#%����P$P��g"���#�:;����Q��o�;v�#��|�K@(��=J�2�*�*�ĉ�\�}���8|c�1�?r�#��G}�R�ɀq\qV�ȕw`��긆���Ѯ�y�"���P��ۢ��-�JX��Ð�'�X��� ���3���%`�'��	w/k1i]����>Jy��
NHX��
�/<��1l�YެxBBB�5k�188���1c�/]�4���M�V�v�)YYYk��@�!s*R��na*�Z�����+I���y�CkW�ÂŅR�/b�M�/�A�!k��K���B�ZL� �J!;;���k����VD?��{i�W��\� �Oy��<�p�oq_���[5���
��ֶ��Bȃm�^���F�|�Fո�\$sɒ%��a)r��,C�1(=ٟ*�r�|̪U��q�y��lٲ�NNN,y6--m�ȑ#5���%�j�v�1�~ބ�%ȵ,�i6h�c����`���z��^$�T{_Pht�j�{�6�:*V4�g�D�
vSj�s��O�8�qp��0�����������O�H��qr�PX���ޖDa<ӻ�C��蘲s�NG��e�Z��w�_��@�a������Vе��!��7��B��LK{),�W��r���H�p�
4��暍5[ز�=�8`�0�ا�Id��x�W�-ZZ�例\���'��lz�T5��"��v�]
4���œ�6"�1��M�4�$I�$*d�H(�y��
�y����iOo�́{�j{6��{�?
�a��l-[|�
+�����.�‘%�J,ruue�*t���ښiX�+qģ��q��_49�.]xEEe�������
���@$a�d2S���O?9���m�������-1��C��л/C$�
r�!<�I!�%�W��dX3g�ԿBa�V�T��]��y
�������������Qx�QY7��.^�����c���Hw��u�a���f�l�8<�~�8L�8�>��7�a�Gs÷���н{w��;:�ï�t��D�uBߠt�DeE�4V5�1���=�}OC��Y�^Q�k�Xٕ+G�A�/�|�F�J�ƭ�浳˴	S�ǼN�t��ep�ө���&q��U��b1��$[}����ڻ]����'	��Ծ{~���0%���pມ���<�C�<���-T��P�����c�|�=����)/,��(��
'��K��X�}�89|yܺuk �z���7��~K�	g��65�sH��*�E>�
}6���g�/4���*#YL���x�ӏ�0&��P����4o����	���Gx��޽����y��ߕ�n��]��Vk��0)ՐJ�!�>��֮�i�h�ш��dN1�2,ȱ���6�%�R��2�My�y0$�φ��mP�O�I�Z��c��Y��}O�8�mKj�u�b�=x��o�6&�fiYo޼9
	��J�(�}rȐ!�׭[�޴iS{-Y�D��*L��.�*P*%���R�B�[=�T��ң�����\�;���U��W��3��(�!s����;�k�J�=dE���(rQ���� �����v|-�H�9���ӧ��mP	8�cJn�*.<���֖!�y�8�PuJ{���_����#xk1D�z�*�]C���=Qö՛~(�*貪)���VT��00a�η�����ү�FHC�fNx���DR��a��݇�����B?|����2ࣅ��
�����~v��F�/>���2�i����=kf�>D�E���u���H�4
�T�
�3�{"зmA΢���ɲ��m�����U�$���oh=�.OhG�jeBV�@t���82�AO:w04�HO5I�M�l�������v\c��|��>�QX�6ń�B����
a%��B�P��
%xL�I�9��k��C�"p���kR?�ˆ���JS�/�]����5�(ˮ���7}+��0)�:�/��@�d�����i�Cu�Iz��[be�8�o>���iN��_qj����g��������۱ȑlzl�h|y���O�{��v?�ԩSY�������ی7n�

�\�dI>���/�DT���J�t5
}P\�F������6�J��c
��oQ��Tq��f�ъ�-+�����Z����$�wJ|&�*JNN.;`��|���gϮh�(�[�����;w@��q�$"�(�z��nԤi��s�֛4!0� ��?g�,$���QA��r�F~�گ
CV�"�4�ȱ)��c�-Mam��Y��\�Jj�>�$O�4�����ޡ�:��$vXr��!����T
����Ô/��tϕ�cH��)�`��L��۷�W�]�ti���ԸTdJE�~����&>�Z��Rj���aj>S;���,�����z|^E�z+͟G�߾|W
�j��g��}T���-�'/�z�6�z��ݍ��Б��o?�&Mn|]�	A`�j�A�RZ�T�P�0��P�H���GGG�p�pU�ގL�g��a�����M��2S���G�@(2��ŋ�T&�l�U���aX���x}
�d���%��#��w��Z��Uq��Us�*��f�+Flll>��O������%&��!�����(���
?%%�I퀈)�4&�e.�k{k! V$�xOjR���8EC��3��cF|v�5Ta�� �d߅��@��锎�V�?j[���r[EˀR��qk�P�C
�ze[�*��5_�i�)��}A�x<=Ro�9�uα�O��ux˵d�)'�|�w&�~E>�Eg�T6���v>~�#Y��6��
<+��P�����cY���h��pT(��y�Q�~X@��	 ���}�Bڋ2yf����f+[�cKL{˚2J����Ò�~Za�CѰ�����it���(�>��?g3�}�?e��m��_~Qm���J�����-^�M��>=whT�f�r]u���ئ�����~��k���J�+�A��AT1BCC�#9d*'	M�4���5���ȓ�bŊ�(��#��۷o�ݻ���y!"�3�T�,�,(BйrI�J*�03�-��ڻ�~,����g�Ix�D��Gkh�|��H�ϕ�O�>�ާ��^ٯ��H�����Cijtk�3g�T������ԨQ�r�ň�	�mDo��Y˿9�~�|�J�i�fmy�4f�2h��x#,Qҙ��"�<3l�YTGG�9���>Mӛۊ��N`���
��%¤�7����aёL��n�ĺ��Մ�7n�&//�>-[�lx��&NNN!��̖s���H�Pəp,ıs]x$	�94<K�Q֘ngHUа��q���J�C��%�ώk� ��ij��UZLg�#��U�Y�'�5�Pp���#G�
�1J����j{
�F������T:�]�EUvfw%�]�~c�?�nV�dI�����
I$^N�4�J@3l�����bc�w�ȕr����̶���,%�)&䅆As+;�	"&iii�:H��~��@D�d�iT����sȒ�b	���UK
-&�Ʀ���O|����;J��P��s}�\��-р���b5���U�g�w���U�y��3�)�
�����v�i״�����*�{�Ҩ�;�r5�m M1�r*AJzs��t��G!��q�(��IS
DV��B~��5(��!+����A�
�N��U`[v<��ǜ(��3�V�u$�=��!
���������J��%�������Z8�Z$tΐ*\�ee'��S2�ir�4g��>�
�P=�n��f��x���
f���tO1�,��ܸ!�&V�Ν��W��:�/y&HJ�)�#@H(���l��M R!�phC
�u�����Z�����d��N��&���N�@����H
5*z���Ssp�{�޽sF�o�a��gi����jZ-�d5�]\}�vI��P��g�[�O���'S�7n�^.��>x�`�D"��SRR<޽{��GkܟQ�Ҋ�d�i���%H��k�Z�p���@���O=��P(��)"��geCělx��
jTH��P��*z��\�Hۺ��KҲ�Ť[���h��࢚"� 4Zq�s����W{6k�:��[L�cy����ӦNؠa}���5�=��###��޽[���۷{#�2�A�_�����;����wHG>?O_�ޤi뷻vl\��9��pV��D5��{2B����&��Q,�$��
*�*�ȸ���&�4�۠�*�a!Q�UeG7�\�[�Ms��_U�6t/_K_��8�.]�����3�z��nw��-��8������̴x�(�1�BB�J��Z��5ic��4�M�����4)�q@e7{��/��x>6	��bx��#����E�Œ��Fd56-��17�:^B>�g/�n�$!>'���0BQ�a�����л�;;[<&Sό�Q����*��_�T��nhz��{��jj!������Q ��u_{��e��馒L-�)�N�#���Y<==�RRRRS˩>�$I�&3��|V�z����i%
����1��e,#���nR�
b[D�l�ީ1���n�i�c�F0�����Sh	k��%��l�(�/d�'"�|j���Q3���f�P(mE���@E�Fߣ��@��/X9�k��հj��	���4�_��C�DW����ԃ��5Ӏ~(���^��H��W��%�����d��BZ�n�C��H���N�e�s
S�,��i�6({o�e�6U�A����T���ƌ���=�Y�CXBb́����KCM~{z��y�nZ�*$�sP�J�lj�Eǘ���V����Kr��3�4���<��������kƯ�d����a�g�N�Ye�1��i#m�
$��1Cx�{ll@,pB�ɸ�W�����I۱�˦��|Zt��w�M��cqF������ÉH`��	�#t}���?����^�z���e������槐+W����Ħd��G�P�^=x3���R�Xh,4,��J�I΅į���჉�+Yh�Be-P�Α����돥�	�����۷�־}�q}+}�
u+=�K`υ���:�0���S�ޢ�����{#Y��;wl�j�*صkW9oo�9U�Tyٺu�*U�yM�4�ntG!��F��2O�1�g�&-'=|�PP�R�Y�MŠ�M��,%t'�1�
�����J%a�I0���Za>L\��8sk�N��Ƚ�Ӛ�w`�YK�筦����8q�3f�T�����+VX<��l�J,XP�\�1j+��h��4�2��$D�А'���"F#��xLY�Œ�Sd��S�-;��T���p����,Q�D ��D�x�������ғ�P?&��B�0E�j�YY�xB�ʒ2 E<r����`��[�c�ʖ.E�x�2�-�8��O�.d��%:�:<�uFJJ�f�@�|"�����UPY��b�9�E��%�����&���=�qY1���dee�s=��}�wkFF�{Oc�����Ƣ���]�׬��d��಄U��Y�dr5(�o��h��$Z	�x���EX�k���^�t`L^TKi|��2���
��)/�RĀ*���t�`��γ��k2�ܼ�e��p��Z#������}x?կ,��~3���uf�+]���y�U��U
��k���kcQ;ᐡH����VL���� �QLw-��ZiS'h����Z���A8,`�up�N4����hU�r�A��<��M{i�`SP��D>	�K�Y��@
U ��1�3~SleηLi[o�aʉ��5le�m&���~��^�G�8}tqb?S㌄�
EGG����j��%�:�J}��}G�����Tԗ��l�B�7%��x54<`IA�a�ƾ����3��#�.�o�͆''�`Q�֪Uk�իW�P6	�cx���k@�^p��g����0�NE";��+�_�:��@�P+{��M˔é�x�˔гMI]Wۢ�;��L����в�'T�s(z��^觙�-.�j>
����E<�5����o�
�ϵF��mŊU�0<���(���[c�!�Râߜ�ń��c�F۴�T�-�p��=֮]�T���$�ݿ���M������ˆ��C�(|�i8���,xjۢE�	'N��Z�lY���ªRS:ƈE
B3t�Ѻ�Q+������p,tȕ�eVV�ӎ6kU�u��I��aW�d�y�-XX��sP�KyG���u�G$�Θ?>S���ߏ�̜=�AL����͟��	W3B�Wm�4#�8O�	�Vb�4�"DH
q� �ǃ'?+DV�Шrq��-��µ��A,6���,ČF=y�Jm_��N\2M��jV@KKO� �x��~�|p<.Ö�n$O�
֜5�M��<<�ϫ���۸�P�aom��+��hJlģ��ϓE��@?��U1q]fJ]Т.��9di��
+�F�͜��j��1��0!ND�_Xd��4�8��g���<�DTK�t���"��y�5$gX�Jh
�^��H<_@�J�3�5��(�Ue��.&E�y�:�e-x�P�ѽH��G�}�-#����2�rjȩ:�4��2׈�j�1a�F��13?eVC�ߩ��?}-���0�c93H|�S��1�7���aд��a�P���R�5&�W���~�I\ƕ�#Ȑ�X��%D���,�.v�rjVցh��X�fu��H�FA�)S��f[[<u�[��	�V���1�f�nD6y��k��A�.�aр-+o�0�'��M�
Y]�@�_H��폁l�I�mZq緩�+��x��!��.2��_#N���ff�][�|�.����`�R�'�+��L�ޕJ��HK����s�]z�sÚ՚^�
n<HϤ���\�ɘ�~non�7nܸ��{7�$�4ay
k���
t�����3VQ�)�K6�wvz�S�]�2Eoi�_��T�5��R2�2$V<�]��w�}�^��Iи��HU�-'��X[�U�7Ԙ���+�|b`���c�ڳ����ݠkS>Ш�%H��K��5@����d
��M�c,Z~Q�<ԩS�Y/�TF"���g5�DB���8XS�c�Lِj�K�_&�[����fl�qM��e����JE[���Wݠ����ϯ0g+��x07��h\�)�s]s�j]F&�|�"1�G٣���x~)�ӏ��w�����m��4��*���E5�~��f�*شB�.�c�҉�C�x�13�@h�����G<8�v]��8�T�8��
���@1�
p�E*��\���iY5^`�!Y��3������M[1}K�Ʋ���9{�΅��5�1��|��T�Rt��``��9��
U֟���7o����u�(��N�����ݕp ݔpXª]`�9NjF!�1
�	�<94i^
ł&6�@�	�����:��阼"��|(ܥ�愇ލ�K������Rmx��_y�)��Sc"�簲b�Ny}�����k�3��!�_���lbk�� ��a1aE�-D�"ǻ)��*���>�t�rVg�0|`�%^��R!���Ѥ2�4�y�V���#��\V3��G~؏G
��������qs7�]���S֙ݯ�Y?u,�n�M%��	yeHs�(\5��J��w]ʋ`c'����i<"g
a�M�1�>(Q��Z''G+l~׹^p�֐I|��bI�x/�٪�ٳg�Я�f�$lʫ�*�
֪�%�w��n�ۀ"n�4��}Y�O���*���
�1�� /?K�5�d�zM���]cV;��X�,�U��#dU<;\Ҥj��>����^CZ�E�’L�Ov���G��y�U���'�f'��THOL�H����.]��{�c9kTqA�ĴE�1�;o�n��Z�����k;'O�E}�\�m�^&f�
� �V¼�!кF1�\�2r���,P�(x�
�JE!K*�����Z
�h'��
�)j�z$zv��mR�ӝN��*��S�6����0c{*�9��
g�L��[�p>$� �6m�02\Æ
�X�bF��$vu�jU��9��<	�����;B��4Pd��]n3y��Ո���={f����-l���(��_����:�Q�V1{��ӛ����>�"��j���t�̖9�&������j_��<{-���!�ǯ�P�<m&�$o�{���'��]�ߊɎ�c�^����$H^�g�Y1�ƭ15� ��(�Z�5��+<jVo�3�E�4�$3AF� ��#�yŃ�h孂�7yp?�9��*�
`�p(�eO�t�t��X�K��#�m�5�sp����ܚ}�IJP�b���d<��Z$�߆�T\��9��9�~���?]����|T^�}����d���;՚�9�[� ��fOQQQx���(�69��ILL<��O|�ޯ*&��6k�7���}_�=:ff����.��>�;B��X m³�m�z��[y_�h�%�f
�����*�J���Z$��� ��J�մ\3`昙KV)��0�S&���{���
C<�4b���oS����p���,Yi��R��H^`:���2.�ހ�bT�د���!C˕��lggo��RtkT�l�=Q���0�,��d��Dfm!��٬�R�u�(���݄ K)Iw"�"�"��בG=��� W��X[#�?��r��4Fؚa�>�.��kU-I��7�D3�<|�#��S\�@�X�ԥ�Ce���[_�R^bY=w��y}^�:u�E͵v�����#x��C›�%ZJ|�L��kf0�/����ܢծrr���tB��k,8�y�r��%�E�@�АtAMА%��L���r����0�y�"wq�Ц}��T҃f����x]Aԟ%!>:vU츐�D����`�L	�d��� =G�����k��xM��ƍ�J�Zel`Lw!D�S0m+&�*�|��(`�Ԛ�X��b%��yw�>�9��!�����N�����
1j��J��ئT���cc��J��
b�ؒD��
I|��2��Nȧ�2��ƌ�d,j���3�1�����Nd;!9x�mMc�r~��_Fp�
�쾰��a3	��*F���jf���Ԕ�E�µ�2O��+f�h�f�.�=���+½g1r��<*:�fc}���/Ye�'���W^mM�K�IMIY#O?�]�h�u~R�+-矞�6aѫ����A9�xPWsZ�~x�D/ii��ش��e�Y���Tr��k�¹�Րb��"��R%�W��c~�8ls�ְk;�5��$K[3�e�K���]e��wV66l㣹i�jX��ɓ~�66���-&����A.�#��w�A�"�VP���dke��([���DN!f@��v`*�&5G�T�Z&��3f�X�v5���
��ȏ2�c�c�����/ѯ�|�h��ĸ��ݗ���v�ϕ��$�S���C֜����� (�=ӧ���:���>���z���L���J� ����k�?C���jZ
�B�jH$�ILo֙UU���&�m�F���? ��uyWuV2$�?	.BM�ςG��>��u_^�d��kęw��o�|���7�Z�=���܉z8��N��0���B�Zu �Qk8�d"���ԍH�����pc�Ek���Ą����9::J*W��KOOO<r楝�kI��Ͷ/��`�5�Nm|�&������1
�����dd�T1��u�4y�]�+Ԋx8�T��$7��PCT��otb1i����K�$(p�
r��'o����#����Xþ+!����,��`��D�b�V�ZP�fM]x���lٲ�Y�S,�\Dp����f2��lْٶq۶�0lYzsWܚd���'�mr��)������j�fwv��o���0
ޟ�6������3�q5u�n[�(���.�JH����+���z�^��%e�;�ֽ>E��~7�u�*��=�Μ-�H����+ˬ�Șn1I��
s`�<¿�Y3D���Nja/`l��0��/����,��GdּdÚ°gɚ���	<��Ѭ��/��2[����<�X`85��
���u�<b����<{�-`�ϖ��Ҁ��qoA�D�������9����a5��@��67�Z�kn�m�V���!�\��.>���R��6���SB�RY	�?��+[�N�L� �PJ5E)a�ɒA\Ŧ2���D?�J0���H��`R�2w|�dr�m�f��l��+S�5�PdV�N����gFB�jX��$.F<_���A��� o7�M�v@���e���^�̛Nj�๫G�<��/�:�4k�F\/1�|��>O��c�[�>6ل�!��r�#�{����1��V����g)
�e��>�4#��ȑJ�,�R�"Ȋx�^�^٣�J/+~$�\�����$�F�M�����ް���vWt>&Ee1Y��ݻwu|����I��ड़S��,[G�HX����ɗ.[�o�3��83�����gT�u�goS@��h��3�>p�e-Y��fw�z��dx�v���,��9���5:�sƝw��Z~���N S�!�f�I�ưr�J8t�t���mI�U]�"Dhm����P�\�v
�W�������~�
�r�&����?J8v+�YSf���P�ti�s�<z��!j?�b����oa��	/��)����&�͛7�4v��/*ʷz	k�L��q�'�q��P�dl�9�7�I�p�?!�='�аb
���U:RlL�YҚ�>T�o�mE]�f���Il�(�n)lw����~<�/�Pe�����w�0#�y�N�Â]�W�H?��Rj�>�#�3�i�G����p�ːҨŝr��>T�?�vz{�b���WA�U��U�5t���KkV�q�z|Osށ (̸r��
���g��'O��_ZW�ؼy��D��@���)S����, ���T�
���L�7�|ȉ�Z����ڰ֖�T��a�>w�'�b��&�+���WT��+L����ۗ�EJtt��t i� ![uX�7�r�g&Y�lm&;�;W�u!R([�K�|A��;Ƽ�YL�F2�9�U��{��a?K�%��@Ͳ� -Z޵85Ei�ڗ�4�@d�;n�s6h6#����Lf�4��5��o3��]�M�g)�l0��O
4��Q�/�U�����Q�AC���4]��m�
���Ƥ4�Ye�gϞ��_���,��N�.�xp+��p����Uq,��8�oȐ!/֭[g�6*�����ڷy������o<g_�}12�7��ТNY�H�|��;��ޑ�J�J>�kY��������.4nܬ�֣r��E�{���
DD���ٳ�…�A�dLX�{���?�B��ـW�sV�܌����_��Ky�aJ_+���a�6l�H�B.��3g��w1x�,|=��bP�H�"\J4RO�8!��ւʳ���/��~�y�iG�)�jx��A�W'sC&d���(U�5>}����hJ�D�5���6m�y�{B����;�B�@Ա_UQ��q�L�iX�����c~�),l��u�Y=͈����[���3o�BU�}A������β���k��>��j���[�|?��Cl=A�;��'��#��v�%�@���LV�;p�&�l�2,���R�!��������e���Ad�	"���{^Ӭ��s��&Y?��y���)^_�_a�%�W�nlaM�B�WM�Q�&�^%���#�
H<��o>��p���B�ݜӱ�DH4
�O�>8j�ЍԳ~��"Gm�1��,L�+�9���(�mm��@%ÆO؀T*��(�ՠH{������'
���	�����w�No��e�<
�]��|�~�ԙ(e_������P�G
֌��k�ّ+�l
hWQ�s�Rp��[��g�b�z�C���� h�l��y}U�hK�>ӫ��e�ϑO*TY�x�l�ءV5��[�e���)S��W3`��$��-`ͱ{�Ν�'O�4�\�Ӛ3���I�7'���ھ���;w2�<�������v���W8}fu�������`�k��|X!�6t},�-���S_�L�W�_�>W}�8����[H������Q[����播�%(�Hf!*�o��MXq�SE�O��d��ژ���M
�Ĭ>.�j��)�Z�0q��@��-���!�l��&��Q6��WG.4��[��e�����D��M}*Xaj���8��S�4k<��Y�wqZ�f����%��ɢFN��'!j�!����Mb�?
AAA�SSS�X��E;��Kͼ��*Cj��+�]R��M�Pl:u�����aڑΔ�X٥Q�"e|�@$�L��T��y"l:��uĭ�{�/,����3$$dm��
$���-���8�I�w)��
$x:[����hǃ��R!�m�~,Я�3l�)�Uە0bu"3�Є���	6OC��F�b�b�Fp�T/���<in�={��]�6���a���+���V��~��ÇQe�ߔJUG�$�MX(�5$dj5uݻ+b��!|���i��
�	t�p~ƿ�/a~�q���4��;�O�w�v��
�ȏE��w6l��������@�!��!x��5�+���j�A��={ڤ��y?~<��ҧɈ�%�<^�}�*�/���q*5�
@��޺~�K^~(?Q�N�0gРAC5���0��+�.�
�r�4��]c�BB��f�'B��`�S��V���0sk�K��7���C��;��
�3��C͖D�O��ƍ�<'����M#��r�#��)a�������+\����i�&p�ˣ�Pp��O�K}GiU_w~M_2E��8�X�$U.\�С��{^敟�������ۘ�_��s6/'3Y���t�6�y�ej�����zݢ�š_���͙����!!!�c�n8q+I��K�HvLt�_Z�!p�'�~�[�	t��=�h����3���-��V8p�}�\p�+�=�ʡ��~~�=��]۷���ϩ�[D
	��Y�	o��W�&���X�FcR &Y��:;�k׮̊���5D=}��6P�je�����!  ���u��{�4A�b(��+j�N=��çe��d]����X8hРa���rm68p}��5--ͷw���=<d�0WhV]�&��ÒGlެ�h�x��_�&�J��p۶m�VB�6��1���OGd��I8t�:t �9s:w��lw�Q��˜��/fF�Ok���+g�,'�Ѱ��flO�9a��S&N<�V8p�8������4���C��\���b/(�E�D����PV#����#S�fD���7@bcm[���JD��nN���S�F�ƮʀNg��	��-bZ>����C���蝐#�H8vI
�禼�|p]�V-��@f���V8p�8p�FkxDD�O
�9�3^�j�R�����Rx#҈��K9"�a/(�Jp�w��е[Wغe+��;P/��@'D@ՠR���/x���%�;q
�$
5��k	8[IᇲJ(�@���K>ɇVu%P����0����*\�x��P(�l��"ā\g�)p��8p�C���{I�aU	Pr��k��L��	;wk��=")F�x�V^P޿4�i��Xr�2�v�$�m�l��R�Z�������	hR^��	�#�����h�:w�k�oCNv�$�}\�N�{��@�*�

������B����J5�V1�{9�ʁ8p����;��3&�������;��@�M?��۷o!''��� %%HU
q$�R����Է�;���o��k;{{��̄���2�ch�$�]�

�;�R��3.69_��օM8m8p��o]���	�{[?!���9|�n��-{���(�{[����n�f�� 
��cSbG{���++1������P�$eJ���V�gh�.��dܫ�1>x�%�̻w����+P(�:b˂��"�<|�zX�`T�U��K$6f�^�-�ʑ�“�\^p����C,m8	�\��]����>�WX�`4dfZ�
���G;��ua�}���-e�Z�Y2+�s��z��M�ׯT�����f
sRM�v��]
g�`�Ԗ�k�����G���C��L�@�c)=L!v:���i)�B�¢!4\
)r�\�\GX9|�gL�[�|�o���1�!m�2�q���g���HȻ<���
�@�
Q;|}qz;nT���8�n�J+�J4h�w[�?�<aJ���3q/}}NW��`�V��w��}M|�m��=ps^7�R��RP+(HNO`���!?����'��Ы��e�Ըϝ��IR�at�r] �uЎ�����.S%���^����RE�Ձ�@��<U��8­٧��ޭ���K�WZ}0���JFA݊\X�
�r�.L�64KX�U�`���0'�;�޽�iS'C��e[2�dVV43���K
~]?u��W��f�b����1�:ԷA!jɪc��h����RL�j5fmM��?���ϯ�_a�J�0a�T*P( ��'��@]>{Kq_7�!{1Y�VD�2tt$��W�OU�[ޖ�UR�T[���1���j�{pG��	�7��}��q�!O���VQu�ttծi�!د�O��ž0���u�jմ�{�]Q1+�8l{8������J��-}+-)�o:5�x6�T�j�ZR5�<T���}O��ִ������[i�WQ퐓�;���{�w��ǿ#Ŧ�yO��n��C3!��W(i�ZI��Z��L���g�����>����΁�s���r�v�w���9��Eq~)86�F�i�U�H�HDK�r��[��[�ɓ'餤$�e�\,�Y��	j6�����<y�흻������лF�V����m����r5�H��#n�^�[�,�`��%��\F�G`Y�e��@-�`e�q�HL{˚2��Ïχ%�t$��CѰ���B��7�`�g�;�����W�6x���a���ߪ�>��^V���1�p8LooX��_aE�J�{���
�*8�Pz����"�g�D����iƌ齆�5��]P�{!*��8����ۮ���tB^(��kK'N����}��1ca��{��$�L^�;B���`F�T�}�6,_���<rq)D��'F]�&#�����B�ƯN��8��vNG��|�$�:~�x]�D��{B�Xb��؝?���H�g��KAqf$�v`�E���V���򷝎	��a R9���jtD��e��UF*�d��*�Xn9����-�lF�����blu�Cd������׻��*�:����]�ُ�#�X]�.������Ä"U{�]�*`S�j�IȌ{��.�禥,l:S5�ܰQc����E�zAZF�F�2��dt��9:: a�8:�2y��p>Jn_W���{)W�/�֢�z��T�*��f�3LӢ�3~���z�6���֙�602m��#���ܤ�֭�i��E���q})8ϲF�`�9_��b�|*��������)�0Ec��իW���d����d$��x��ÇE�&�YW���=:b�n���mL���l�l=~���$��n_���셮C~���V�+���*�q��A\�=X>�T�4��ŠF]!��<�oIJ+�{�UV�w�
@�aJ�����;�6�q|���~/����H?[�_*��QW��	[�(ӪA�}Lg̝��᠙�Ɵ�ë=��x������&/
Ԉ��ɀW�R]�ݶmHl$�h�"8w�,\�y�#������&-����/0�i�4�����ҡY
�lIBNqi<������ž�aYp�'8�ܳ{�L�(��Sn�p
$J�2��&BҥY�?�x�O��%p��V"��\����K�?����)r��tx��|e��w���ѯ�/¤�7�V}��0�����GA���…��Qc>�{�d;���Cy���� �.]jr�/6��%�����޽��藔yDq�e�����	��y����l:#����_S2NT\v�K��!*J�]II��g��V:�5^���	�@)⁒=ADCE��ɷ&�="��<?��O3�f
+'��'&�i��0r�5���КL��Ϛ�Z���r+!U�LD.�x�
�{a[3�d��o��ɩ��]O_�7�K$��g�>��g�IXZZ�lP:��f$�����ʫ��L��c&pU�|P�gG��5�5/$&�%0G�!��3�{{�˴�D��n��1��D�����qЎk����T�\Ͱ�@wlE��^�4s��ȂƜN���I�
�B��0G������
*T���=[[��f�������n>��3�٦��6p�B~���n�yG����ؕj({����%�,Ie�גV,\�TJ�5�F�ʚ,���S�5��鳰��ѷ�7J;9�V�x��W{s�j���"�c��mv+]�^���E"�c�a�G��f^ߖ�_a֨#4Zqξ,��IL�m=1��r��q^/X�l|���]�Hs�Zb��숎�0m���,��f����-��P��Ic�ڹ-S~�D>�����y�6P)�
��P?ySԫ�����*nEf�Դ=>�"1�)��
~^7�oK�֭+�4��*V�ʸk�G.��V��ǜG|�kY�^��*���4����@�0a�%#��~2�l�|�B#�gΜ9cJЗ��v䶰����dP�L
���:H3������ZͪF�Zv8H"Wa��_To�K�o5�x|b~A��;���ANNNn�F��y�����(ʇ�(��?�v�Z�+
���Ƴ��j�Y�3k�m.�ٷ~
g	1v��ٌÃ,��[���(sӊFa��FI�<�u��X� %}(#|�	s��
�ύ�]�����DZ��Zo�[�zv�O�R͆�����@��j�Q�j)"3H�LE
�uI(�n�d��idz�Ѵ�9��v�u%ʫ�7�X����D|�)iP�(P�(�=7o�0��8h�ɒ�"��V����gQA�G/�'T9�̆U�#aY����0��S���Xө�d�7�P��I]�Z�,��zQ5)&�[EϞ0��<	��=_\{Z7mȐU9J��RHM}k���c&p�%?+ܓZ?s�{&����V��`1ų����9t�<��W�����iV9^�M鴓�0��f��y+).���Z��	�(3��1���n�\�t�������5_���#u���}�l��„,���,m5�|p�/_\\\�ԩS�c��I9�w���c�����g̘�����,e�5���A������9J�5�^�Ys�ď�'����{��Ԙ��Dz��v���������g'��?�^,yeωаⱿ���	��”�5U�;�]9���y֑�<���mtn�Z?��q5�k��Ip�)kl'���~ߒI���9Y�uˋ��
I��T�@$��;�Cr�Ȅ�ĸ�l�!�Í��*~�3
O�0}k*^2.i��f�=�aZ`�A�A(2u5++�����';�rZ*Ji@^��ub�$�I���,P
�2%���9���;ߴK+V�=;�f�VL
�I�*Z������ґ%%��f�����.0�7iv�Ń�e�LP��Y������.��������nkA��q������J���e���i]�e'�F��c� ��"y��p�Z,�����G��8
�(�|����a�g>ERYKH�� ����X�z�O�^����0S~�4lF0J�-�6*�q䅨u�~~�ֿ��\����OO����2��*�!"��� �û��}�.@#)���m���Z�	e�O���w�O�Y��l�1��)��N
��
��d�� F�$�SU�hP�D.�ȿU�_?��R�q)��1㬠Pb3�F�h��g�֠z�Zӑ����h��';ޜ~�-�Z����@�[Zj:�����6�G�P�/��ok�Bۖ͠k))�ÒN�����H���4�
��	\�^�����j�`�����j֠���|]xFm2hIJ�����T��T��	�H�龭W_HC尻�=s�Or��ZOR�2ל��G�b�L�0��qQt��1&_�~��dL�
>�1�������m�e����*�����Xfޙ)��e�c�~����`<��r�~u-!uyhSY��:��\B���T���]`�@�� �7x�d�@�}�Fmd~�����.<\uak���[,x���G}��R����i��}_c����G�2Vg����I�H��C�`-O�Q#Gt�u�HD$��v6|�7'�dy�	3��@ߎB�;���9��/^��'N ��0�=��#7��E�c�\΀V�Dг��t�	㠜9:dP����t���H?S	���[qg~9	k����j���>؊%���J���B��<��*ؖ�"��
�z�"z��/Qjz��:#��^L­���Y���ê��Ǻo�T�y?�Ԁe
�d�i5%֨��_�I�'���W
�K�����!=�Q�Ek��;"��͛7�H�d&�Z��"�D^s��5��jX?7)Ƥ��Fv����eK��	X�=�ț�F����z���x�鰂��8wE����o]��2���5��
��P�,�hV�~D�k�'!�H��Y���U���W��UM1��R���d�P�,��|�x�xk�C嗰���D|�5�N�(�Tu�QC�����"�zBt�i��~����ܣ_g1��n\�W.r�b���ͻ ,�%to�LͿ��;Ԏm[C�2�*&����p�ٱ\{`�����D"x��XgW��1���$@��65Fxl=�T
T���25y�
�{�>Q�/4W��h���V]��c�A�W����|:7�LN9���I½t9�O	�0����c��@���,�i��l��b�
�Hp��ƨ�<�			P�T)PE\gJ�������߸aÆA����`8�1�z��}�٫�ژ�]*�>a�k�*{̯��K��Ѹ����5�V�Gc|m����:��U,{�MǮ2�m$���S����)�G��T�B�ԭ����蠆k�a�n����K@��з����ñ��P�beX�j�?~gΜ�9��@�:ΰh�=�y�����Ǩ)%Lޘ�*:��_Dp��5��K�E�pss���T��$�O�T�_beEى�"���'��`Iz?�Q<JH����}x|"�3�s	��X��RD,�<~ّ��`������u�i=~'���Ȓ?�Ѭz���T{{F�=��9$�7E��^��^vv���'O�!�,d#..�y�SZU<�l�%��Z������쀿���DN'l��b�!�F�'�MbL��`�g~~`jm����43œ����f0:mn��'����2鴥_�|��"��c��̸�>���`Lt�HRs`��9��C�!Q5(Sς�_m����na���GZ�
5`���Z��Ǝ&�{�%��&)$�/�u/]̪M\�2
�8ZE�[�=p�6��Tj����UU��`���h~@�ߖ����4��U+2�����z�.�FFC�M�V�Zf�+̳`�^�@�TR��!�G�D�Ç��Ъh&"��ǁM0��v���sM�|||��R����)m�e�u�2͊gTM��	�x޾}g�E�_UגN;
��v�ko�'�Li[��������):���R�6'�ݺ�A��`@e[o���ix��'7O͏Ǹ(w��ө����V����o*��S�@�ڵ!11j���[�J$�Dw�DX11�׶}nm�H��%�/�+�I�>�|�Y�����
�0�{��x��0���a�;�;�3(G����L��zLV����o��sߒI0CZ�x����8ְ�s���@�R�'L�U�3�^.�TA[�A �A��
�ɓ'L����&�yC�!1	��͙�B��~=j4D��F��=	(�7d– G���	�ţм�9ptp���o���9�s�V�q������7�_`�f�I0�D��(�G9
��P�46���pY��x]�̔<I�(<����y�T�(n��Q��DD#(%%e4����뀋�o��������(��bLL��w4QL�"&*b,EĆ�Q��h��F��D�b/DT,��H��p���+���^AI��g?{̖��;�}�ySK�Y�}?�Gj�d���(���l�r<��A���7=��-f�%n'&	������֭K:0<��� R2�=y�䤖kV�L�$F�:��Đ"M�����+�wZ��	�e���}��"v-C�C�G�wc��_bU-�*���~�M����4��F_9���vP��G��`�������f\F%] ��"h��KDs�mߣ�\r���i�S���_��Ei�T\��5����x��܂`x�Q<����h��'K��yROd%Ê�|kGaC!�|`��"����*�,#�
<?�$����A�_���&��?/��{a�W_��sn?�����Y~p���\R��%w��
82�)���|�s�|{���K�js�4	�|����M䠿q=�)�����c�V�lpU��y�jK�ם�'�d�b�����3�)�HG�UۻԷH��5�g'e.��c����re%6�{�7��yA��y��6
�X|BW9؊��![ft_멮e[���6��fau�f=�2ȫ��.���9z�%��>С��ye����G�ܦ���1����9�8�,8�����0���p}���'�v�0g�fn�%���Q�a�7_���C��<�_�_ʦ���A��aj���L�l����[��;�>���
͛���-[�޳q0����âѶ���:��M��J#�%�'�%�g�!�R�h�I"U7}�I,�D�5&&�#�t�bo�xb^��9��-=$ߓ�R�q��2��Q��9?o�����?�5Pg&8'.3Z`������Aֵ�RLZMt	a�|ã;��dv�ؑ���W�v�����cccۛ�LL��
	�jf�����b)��.�Ez��ҊK���?�{�MHH����79�{K�]s[o9*�g��E_M�t����S=���)��@j��2�Jr�j�dn� ��5w拆�v0lxؗ
N�X(
K�$��z�'���-0R�l�+�YV�H�4���rA(�#�}�g<yo���6�/��KX�W'a���_o�Vך�J}�������|K�1gKJ�Ņ:��V�K��Q(�2���gB��zP"-���d�r+~�%g�����%.0(p4��##G��6m�@������3�h+���qQ�w<�*�\M�[6f�&��BX�,���6t�NC���Z�y��D8����;���|S���\�xh^?�6�	5��2'�B.k�5�Z^��J=PT3(
[��M"����@�o�hދKY�
��ڞ
�6�
�c�y� �A�8�m��gYՌ\� ��l�Dʚ� K��0�Yo��:�=��N�n�RA�3v`1<��bQU�7�{pyρ-����#Y��mHOMV�/�Ĵ
�;�٪����uZ	\��Ѹ�qp��!8v�y�ζ0�?�.CDt6���yУG�ҥH��:r�޽E聃�H���v�t�
\F�LyS�۷�@JJ2��|?���w_8'�~��m��#�FX+�T�<wt
"�����1!�/��/&�]�,��\/���EY�r��V�ɶɂ.e�3�����[@�z�Ctt�r�8z�Z�p��M/_�dq0����ógϸ�%+�ќ�:gU���F[W��`��>�������ý���[>u��u�+����)B�Q��"g���$
��(�t�b���Ԝ~����¢�?�e��3��:?V����jZX�1�`^�i�\]]��`]�	D���2_�
!��5Hzz�6�v����D�Mj&$=K�:�,�٭1H^c���py57��1�ɠ����NI+D��r����G�Z��0�^sX-х�thm;&�E~zNZ�δ�DD�Y��I̻!�-hn�h=�Ý�|�LS�멞
��b"���nXt�5��}��dC���´��i�l����� F<�����.��f��DqkG�.Z��d]��9�I��V��q�o(Ma�S�qQ�k��|K��Ad/Q����3F4a��/u'����
(]�[�F�C{���7{��h?Яt��w��X1+�WW��0Ю�oi�%���dk~GLԸ�Ur0�P�H�B
j��z�e����k�PY���1.���)��+ϲ���j.�x@��ĜR�
�O�Iu�璡ص����6�WS���"���n�Ǝ�)S�g{�,˲ʒ��$���ҹ��� ���t�m�{�Cu[����ᇰ4x��!�&L�î�K��@A.��_� �x���ŋ!00��~3�����Add$�}*��;�u�Be���!$d��I���
�e
R��,X�=l
�`o�:��I*n{���G��N�Ph��e�L&�X����}��m�~����</'3k��s��4��3��Vt_��A���3�'烝�rsdȽ{�ʸ���#��Z'l�{���ŋ��f8'&��8p
~w</��27x�&��Ӏ�K5��N��UF���)K|�����I�@�~��`�]6�w�|&4�~���?��d�DҫTt�����N��ދ%��3�$#'G��ի��͚5��� ���
�-5 �]��̬�2xY!��n��
Dg&\m��Kpv�k[gx�
��V6�$dP��
4naVVR0s�i�N�>�����t���θn%d�k�d�p��dR�,���ԩp�e:���c%��E��Z������ԴB��+aX�tJ����B�̚�6��^�rl�$�K{Y�M�7�)o�}��N?�P��#�V� 6l�A6.Me:%�"�+9��=�G��R+p�8Ȃ(�\�H�+����)�o��xJ�:�c����Tܞ��.E�[�ɩL�ȫ�$�_r�݆�א��ʄr}u��V�`�QC����5ԵO�|T�{�i5�,s�\�p�|�_�c���X[X1���<)v�p��FZ�a��|�~_�h�F���(���(;rY��.
���iڴ)�'Mzz}@P�ێ9ՠUc��	j
�
̀��/�n��o,�K�s�`��3��ٳ0{�l��lذBCC��?�$S�G����Ԁ1�"8c/f��kt/�`�E���%��&���>^���+B���Tt^�D�PN�����d�)9��z�ĉ.�1&��K.�C._�ldʺ���-�19�.��1iE��D"�����+�͛7��5�����'g�q��sU�z�R�aK	q��v��0�рV��ҹ@N
'�{\_9�P�%����HR��"�XM�h�5����� ����lI�t�Y$$†8䈳u6�J�Ó�D�vn���M�Zz���7��Ag����ςƃlI&�U�є����),�d�>|�4�o�A��w�����>�����`�p9�����C��F���|Y^�A��1�&�l�>4�`��2���.3lO;�� 9�,���
��o~ ,��i���E	��yA��eA�Ѻ�[4���ޱK��)��
���n��=�4�`���7��:d����q-�y�)��╓Vz���:2{ϐ�w�;k+����ҪJVϴv�Z��,���fU�_`�b޴T�4h!�F!���vὋ���̻y�*�Lp!���=�����)qq��}�s���:���;tj%�襎�Qu�`d/3�����J���g���f޼yp�,�"�f3w�\�h�_���
!hs���!7������PYY��
`��<��9
|��%0p�6���_�e�bX��w#��x2�Ɛ�RM����[a&���1jХbTN1Y�ã��=0Q�%��M���0��u�&-��Q}#�K�fݵow���޵��6#!M�{�~n���~�镖��=O����n5��Q1,�̮��<��⽙ٲ8A=Du��R�̎B��9��&�9=��Γ��:��楮�?�K�G���TA��:��@fb)4V�|�0���9t�Gg6@�8-��Rй��2��o��=8��E�8���"�F��c��P\��R����������0���'�e��_���}��ߨ�ՃƉ��K]����CiXq�H���?����:F�R3�<�YF�a�Wji��0)�R�4L�z�H�v ��R�:�s�kQB4���HE�8���:�9j��N�D���B""�]/��޴�K�4��TgYk�6�Y��_���HAZD���l]��U���@���<��"pYhƢB�K�4��#��u�b;g�L<m��%U5B0&��~���4e�Ȼ���-D�WC=��J˝#[��d
Ud��Y����u��I�{��Q[t}mi�����&M�Ϧ�����4x���Ԃ��P�{�X�g�7଍o C\:�ϕ�h��.Ȗ
rss#��gU��w���K�6��`K�r��6
  \�H
C,
�;w��_�0Z�@A���ˊ�����j*��I�K1ދ>�
y|��Ed���Zn�e;H�y�*���В���ѮG��'�x��7@��[���{�n�z�y�!�^�z"��Ofv�>�>5������B��	�lO����xQ�O����%:9�>�S?\]ma�_x�hF̲�7s��}A����[�����x���\��Pc�@�^�@TNj�~t&RbO�w_P��i���|�ܓ�hٲ>x�v�>��[��*��Ծ]+��H�;vl�DV�5��y��L)�i�)%�?�2�����讫M�W��<�T�u>��3��G���o�p=֔ÅD`9��K׀8�`�r�*�Z5Ef�:��1N9P��뒟����,F8�~��V'p�!�Qs�ſ'�+Kb9�����|�ݾ>~���8:�nw��^�*m��e�i
nv�_si��A2=2�L�y�����j�Y��߈�N��r�Ok�'e8B�7BT�Kp�F�|8eՅ��aĠt��e������[�3�nӆ�{yyAt�Q�������M��
k�w{4o�)dd�ø�p�6?u��ߖ�1"��ybX��W~,���qc�`��]Yr*���"̿�����߆�,ޅȪo���I��da%_og�λ���{�
����+lm����׵���Ņ���v%:�usr$+c;Ð���'X!����A?���,�d_�g���'1�t;�gi?u)���
≔����r����&��V:�jDDDl��D_w6x S�u�]��1;c
�د#���ࣷ�aUx�y�����F��Y�fs��Z����2���Q���]Qۦ8��m�g��6**FWb|:0;F���O���{�c[�[����Ǩ�`1�+d�k�{_Ȃ)�6]�5c�g(���j�2�~_��jk�<;(h�Ա=�`�$x�������b�6��k/2M������ݺu#sV?���=z&M�Dt+<�uܸq/�\�w�9%��
�[]�&���W�L윟�� 2�7���VJXi�R%1`��{5z��/��f����,s�y��p��&C��@p�Y�P��$���S$,���8��2��7��K���/�XEk�j;>�]��~�����mQ4��k����JT��7?�I�Arxޛ&t��o!_��RP�Z�e	�m{�ȑ��c���Px���������Ǡ�lrrr;//�F88*�{���� �˖A�2e2�ZzF �>�_&%��ڹ�ېv���l]?��#xxx���������������?�Gx�y���Iÿ��W))p-�"��C��+?gOZZ�Waaa����CRR	4��]����ȑ�f0?:_�V��;Xoo2�6nX������)a��������������URh����@"Y�X�^�"���ԩC��a��Y��k��S��H$��F�x<O�7G�� �V











��}��RPPPPPPPPPPPPPP�JAAAAAAAAAAAAQ�����4�IEND�B`�images/outline-div.png000060400000000342150714137430010756 0ustar00�PNG


IHDR	MisRGB���bKGD�������	pHYs��tIME�
8�x�EtEXtCommentCreated with GIMPW�=IDAT(�c<s�9�	��r5�d�$�n�l.A�����T|��Lװ���q�ĀK�@x�Y�^IEND�B`�images/outline-p.png000060400000000337150714137430010437 0ustar00�PNG


IHDR
���sRGB���bKGD�������	pHYs��tIME�
62��XytEXtCommentCreated with GIMPW�:IDAT�cd```8s�.�����f�1��40B�\
0A,h���n`��Ҭ`§�(�?��j3IEND�B`�images/media-youtube.png000060400000003244150714137430011274 0ustar00�PNG


IHDRh,�
�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:CEF64425B78C11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:CEF64426B78C11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:CEF64423B78C11DFB6ECBB5655C95056" stRef:documentID="xmp.did:CEF64424B78C11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?><.w�0PLTErrr%%%���zzzVVV������fffHHH���������������������E�TtRNS����������JO��IDATx��؉v� Pd����j6|mO;�$(ڹ�j��P���a�¡�CȁB'�/C5g�:��E�Ⱥ]�NAR��;�..{����T:P��\���2Q)�i��Ҧ��'�6^�7���>=�S���Uk=7�[�O�F9���
7*�ڡ��m���%���|�To��_lm�'P���:P�
��`�Z���7�ȩ���]*�AQ�M1!��ݧP��Q�h���C���c�Y�ށe�4uZ
��Z��Zng������w;d��%�8�6�F�P����D����ZJ��mt�{B���Œ��S%9K�R� 	�?v���;�%,��wY�_t���{�&Ue�j6�{!�PÔ��s�,�'!촴�$nW��V��@x3i��{�L@T���R�@�ЎЂPP���o������U�3�=�fv_
�����9�"��C��UOBzD%�l�Y�ҏ�^5��A�4D�����e�|9��%�@�!�����4���gP������L�pҢftܠ�i�܈7Oh~	ɬ��$�� y�
j�f�ǐ��€�
�\˪e	��kTm�F%/�2��>�#h;Է}<.�q=>%%׷]�y)��PI6tVp�Rل+`9���鵷���Ǡ<
�t�I�-���WK�.:�/�z�J�]�oC��Ƨ���N������D�}^����IEND�B`�images/pixel.gif000060400000000053150714137430007620 0ustar00GIF89a�������!�
,L;images/media-realaudio.png000060400000003111150714137430011536 0ustar00�PNG


IHDR@@����tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:CEF6441DB78C11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:CEF6441EB78C11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:27BE26CEB78C11DFB6ECBB5655C95056" stRef:documentID="xmp.did:CEF6441CB78C11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>:�wDPLTE000NNN���qqq��ҧ������b%tRNS�������ރ�Y�IDATxڴ���� E����1M5w=V�X�2B��}�Ф���R�]�U��;YL5�j�tf�B�F�Q4 ��Ե�q��F�O��Ō/��z߀�$��/k�#���'�
�]}U��4���BLR�F_����G9��@ͬ}�oJ�|
�
�jc�o"��&B��F���nx4@�$�n�F��-:z��]��"R�E{�ݸ�]�F��J�@vY���
�˒π�KG�� "
��;.���An	�`��z1h����O	�K�\?���%Q�p$��{Hs�G;<�/���,�m��K< �wU�DIQ@��f)����h%txPK�=�&q����Mbņ��^���&̀����ّ��T_���\��ʉ�8.����ۿ'�:B���
2�Ψ���]P�'���'@���>�e�\v<h�>�L}�kڷr��u-�?~�m�+��:Rz	�y[Т�/
�1e��x�c5!��~U��nD6o���0ˍ�[,L�%:oƤN�`�C>�=O��ҽU��Vœ�Z�8�Çy���5l�h��)@s)O@ER�H�`VZl"<��X�3S�=\=:/l�R'��}����G-2N��IEND�B`�images/media-director.png000060400000003733150714137430011416 0ustar00�PNG


IHDR@@����tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:4A13F572B78D11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:7EA22E12B78D11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:4A13F570B78D11DFB6ECBB5655C95056" stRef:documentID="xmp.did:4A13F571B78D11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�|.�ZPLTE���111666���:::===UUUZZZQQQAAA������iiiIII������aaaEEEyyyMMM]]]eeeuuu���mmmqqq~~~���,,,�����/V�IDATxڤ���� EAy� j|D���ovM���ծ�^����2-�grY�e6�m�qlm�Aڐ�׼1�i}��ؒ�<툘Y�]�!���a�gR��Lq�^��r�G�����hm��A�������N����>W>m��'M��7�O&�
$\2M�w��l�GA|���\ބ�z�u^`�<?��g^�e�sN�����b�� ��<`n9��О�G)�ZH;A!�	|�u�	i0$��Y���a�v!� ��eY�M��T���Ekw�*���?h���Q���Y��g'r\�Ѿ�?	��+J8:(�ۮC���7�F�ç�a�
��jX��Ox/p�ߡ���a�Z��\-��@�8:!�a����J���&#��aZ��L�ИӨ��<��>.�QE�-��^���R���X�^�<̜�NK�30�^Hb�PX�3��A�ldo�D*`/E§UZ�t��nv�Q@�t*�i���v���P�ZNA�]G�(  ^'��S�:+�1����������y- ��  �>� ƻ"@Y'������.�"8B�ѭ���]��	kB���������)�º�a�V���/\Ag�qa��iͫW������vor�u}��`^��8�DE)J|6�	KB?E�7��
���6
T�qvb}#hp���h�scU�F�r�AI���w���J4Vp�mI��cd��yyT�A��mùeV@OqDa(����O
4�ͱY���8�nG�7C�D����	3�K�%�'N�3��&n1�.J���Z�<f�Q��I��^T�x@'x���	����&8��p�y�GxFo�&���M�
�u��N�'.��dR�T��p�w]�Ҏ,n�׽>Y+�B�=g'K�F�n�[i�o�~
�n`s��_����R��c��{пg������
�`�&�~�v^��l��?�*�@��uIEND�B`�images/iframe.png000060400000005202150714137430007762 0ustar00�PNG


IHDR�&nԿRsRGB���bKGD�������	pHYs��tIME�
)v�*`tEXtCommentCreated with GIMPW�	�IDATx��i�U��#;�,.1�!��Z!F$1ʰNFLi�(�1
1�$��
��!A҉&Y������	�Q>��DA��"0,N>�~��z��a�q�U�ޫ{N�{�9�?�Ow�)R�H�"E�)r����U-ʀ��Q�_Ͷ���A@/��8l��D��T
R�	���w��|�J�EU��]"���+"�RUH�z��/e	��a`�� ��b�ʧzK�W���+$�p��y��<CD�y����+$ْ� W?�)ʐcj���T
R��<v��֓@a�Dd�ȧ��T
R�	����0��}�""�J��݁k�w�~f�3x8U�a(ȇ?��������iNQkwU�+j��
�~,����P�޹�Ga�:����,��T����T�-���_j5IT�kF�~5<P�S]9��諪oYޮUgU��u��h?�K���LS�}�Oi푭:E'A��6γ�����f"���Y�F�q��k��Ddm��4�..���^`;P�
,���qN�g��f��E@`P�f��g>��*p�����8����ߙ"�/����
�.�G�O�ݷ�Y"�Q�v'�Z��Xbd��i%��&ʀ�<Ep"��Ddw�lU��I��-曢{q�Ɲ�b�<��٭u@���+d���1NjΝ�+�b����O�\ؙu�_Dދ�'%��ݯ~���јz��m������(IT�������3`��h��$I�V�l��w�ڄ�Y,"Ůrp���+�����ig��oeO���׀+b��e�E3�%�Ɣ�t���-������f`ey�y+�e`<�C�1�x���z�T���.�zr����<ECK�#g�&/T�6��ð�`���:n��S>����4S⁀v��t��s��k�̭v^ke;��v��
�}و��`��,��/d��X&�v��x3k�����rU]dq���U����<��!��ٙ�}
,����d���sTu7𧐪��a"rLU����~�P�}^{?�~���}�g+~6CEĭ$ϙY2%@�6I��|tf��i|w^��5aӤ��Eds¹���S������Tu!0AD6��N���Uu>��&��e�O��㾤���y3�|��s���P�d]�İo�}^Q~�G�3X��N�)!2�Eb{�~?��p����z�kG,��Uu��vNLU��@���v /�1"�#K��������Ę�S���+_h��1��<F��F��
9Cd[�l�k��	�q{��F��oda�?�1F�����Uu��vJbnm���0QD�˙��va��-�#"��S�(�yr�:0�<N��{r�q�"��f[�o���!Um��1U�pY����hU����w�Ƽ�S?.I��pc."�u
�����l���d�]7�|���Q��N�V����{Tu�����,� �|�hf��g�Ig�NC
��m�!��'�m��V���6w�N���$�
<�:�40�U�
09}�B��Ɖ
�)����L�<��xN�$�,��yF�Q3�
x��'I,�Z��]�,C�,
q����1R'g��'i��Z�ͧ�)�z�y>ۙ--qRcjj^�s���C�8A�́��mPb�?e8>����.U�	L͂8_����/������^I��IT�N�nN�I2�Xd䈌��Z�Dd0XU/7�d������U�#�'g0I���mȥ�]��NRgn�:q}p���H@�s�?��)��$>��ɡHD։�@�'N�XMp�*Tu��М��RVy�$�	�`
��A���ʼn��!GU����9�C��@�� �^�D�\D��<�S:��+Tu�b��m��j �^����Y����E�[�U��1�h细�]Q�U�d�����ׁ�D��:ɍQ��D�6πw��L��Fȷ"��>W�eQU�a硞"Rr������uO[�p�����y�p"�aIv�9Db�)��c�P�\[?sق�C�d��L!Nr�!r;��qbַ�m�1�W�TD�����b��R3�����W�\cd������76%�A�V��$3�������Cdw�d��>��ʌ���;Kl�U�'��`��'G(
��d����#���=�U��ҋҐ��D��%�'S���&��C��EȽ<��=.٦� ��:�n����ݼ�ȱ&[z�UW���觪�Y��9�鋀?x�} �l;`���W����q�gp��#��81��8�\~�����/�x
��T�Oc�
ᄻ?�=1�4��_{.f��ގ�(f�_��m	�o��cu��ǜ�뭣}U��|�����F٧3N~�.`����I\��=͆�mfX#o���K�d\fY
H?��z�<h����{��n��������F�U�H�"E�)R�H�"E��B�����NIEND�B`�images/loading.gif000060400000002377150714137430010127 0ustar00GIF89a�������&&&��似���̪���������������������������������ظ�����ppp���hhhFFFHHH222������PPP666���VVV���!�
!�NETSCAPE2.0,�@�pHL<�á
Ĩt��W�`��4S退-k�\J%<��f4c`𸜛	GyXg{wQo�X	 h�Dd�
a�eTy�vkyBVevCp�y��C
yFp�QpGpP�CpHp�ͫpIp��pJ�����e��֝X��ϧ���e	��p	�X����%��ia6�Ž�'_S�jt�EY�<��m@�zh��*AY ���I8�ظq��J6c����N8/%��f�s��	!�
!,W@���H���d`��@I$sJDCө!�N]�2�1 ��a0�(@�����j��W!~�!���v� ����	�A!�
!,	Y��0Ԉ���apL&	��		MӀD��!�!��� �.���\�����n�A|!�!��B�C|GvsCA!�
!,Y��p(\�G�8@�a� DC��qUP��A�D+�/��A\i$Jx@�~4�{�z!
C��K�z��h�{WWCA!�
!,	T��0T���PpAl�!��8
��ȓ-�C`\]bςy=e�g5��0`�W��!R�zkIBh�P!]FA!�
!,Y��`8L���#�8�$���D��M5T�
ېEz�l�Р��C��`��P,�yz�zO
��O��U�[�a!	A!�
!,	Y��АC�@p�P�K�
Z��K�� B�gzRAB�#�`Ǹ��B��>�B�!	�
B�!�BvGur
GA!�
!,X��pH,(�q�9XP�2T�D�K�%f��P�G�C P�~@�D@X��Ć�۩S~S	�
S!��u~�!����A;images/yandex-maps.png000060400000003203150714137430010744 0ustar00�PNG


IHDR_=��E�tEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop CS5 Macintosh" xmpMM:InstanceID="xmp.iid:27BE26CCB78C11DFB6ECBB5655C95056" xmpMM:DocumentID="xmp.did:27BE26CDB78C11DFB6ECBB5655C95056"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:27BE26CAB78C11DFB6ECBB5655C95056" stRef:documentID="xmp.did:27BE26CBB78C11DFB6ECBB5655C95056"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>S>cPLTE�����������Ԫ��


ttt�����7�tRNS�������ރ�Y�IDATx�엉n� �}���/�8�$�d����R;!������ˍD���<�n[���=|R����W���U������#����TS�=|��c|b����S>��j)������6� ;R�j	�A����k�f>�����._Uz1�5ʨ��6>�'|�y���S��uP�eb�/��������a�ca���|��
 ~
���U�f���[�k4�@|NV+����/�_�yP�1;M�����j�;O���v����?��Oc�P94���t�w�钏��K���;�m��U��	E��mO��q�r}��m:^�)��C�
<tn��1w��u��Nji��o��Z�!��n���_e��%~eJ�$��/�Y���-[D4��~��_�<���O�e���CD���تSŸ���	��`{�n�u�b�"��F���8?%j[Z��+~Y���l��1��&H���S4��3��l:?'��~�>2o{[o xw?��ߞ��~�i~?NUv�n����Z�v�;���P*�o����j�s��k���7f����"��~�j>p>hU`۸O�꾨��`�eQZE{��<�^��8�7o�b������h�8�po|3z�?+�t!.��k.��G�?���p�:?F|�7�Cj�y̯1S����͏��o��ߎ����o�?���Q&�~��`��~h:��IEND�B`�css/elrte-inner.css000060400000005315150714137430010277 0ustar00
body.el-rte-rtl, body.el-rte-rtl * { direction:rtl; } 

body.el-rte-structure blockquote   { border:1px dotted #ccc; }
body.el-rte-structure span         { outline:1px solid #ccc; }
body.el-rte-structure table        { border:1px dotted #aaa; }
body.el-rte-structure caption,
body.el-rte-structure td, 
body.el-rte-structure th           { border:1px dotted #ccc; }

body.el-rte-structure p            {
	background-image:url(../images/outline-p.png);
	background-repeat:no-repeat;
	background-position:right top;
	border:1px dotted #99ccff; }
body.el-rte-structure div          {
	background-image:url(../images/outline-div.png);
	background-repeat:no-repeat;
	background-position:right top;
	border:1px dotted #aaa;
}

body.el-rte-structure a.elrte-anchor {
	display:inline-block;
	vertical-align:baseline;
	width:12px; 
	height:12px; 
	border:1px dotted #ccc;
	background: url('../images/elrte-toolbar.png') -564px -8px no-repeat;
}

img                 { cursor: default; }
img.elrte-webkit-hl { outline:1px dashed #777; }

.elrtebm { }

.elrte-media-x-shockwave-flash,
.elrte-media-quicktime,
.elrte-media-x-director,
.elrte-media-x-mplayer2,
.elrte-media-x-pn-realaudio-plugin,
.elrte-media-youtube,
.elrte-media-rutube,
.elrte-media-vimeo,
.elrte-yandex-maps,
.elrte-google-maps,
.elrte-iframe,
.elrte-media {
	border:1px solid #ccc;
	background:#eee url(../images/media-flash.png) center center no-repeat;
}

.elrte-media-x-shockwave-flash     { background-image:url(../images/media-flash.png); }
.elrte-media-youtube               { background-image:url(../images/media-youtube.png); }
.elrte-media-vimeo                 { background-image:url(../images/media-vimeo.png); }
.elrte-media-rutube                { background-image:url(../images/media-rutube.png); }
.elrte-media-quicktime             { background-image:url(../images/media-quicktime.png); }
.elrte-media-x-director            { background-image:url(../images/media-director.png); }
.elrte-media-x-mplayer2            { background-image:url(../images/media-winmedia.png); }
.elrte-media-x-pn-realaudio-plugin { background-image:url(../images/media-realaudio.png); }

.elrte-yandex-maps                 { background-image:url(../images/yandex-maps.png); }
.elrte-google-maps                 { background-image:url(../images/google-maps.png); display: block; }

.elrte-iframe                      { background-image:url(../images/iframe.png); }

.elrte-pagebreak {
	display:block;
	clear:both;
	width:100%;
	height:7px;
	outline:1px dotted #777;
	outline-left:none;
	outline-right:none;
	background:transparent url(../images/pagebreak.gif) center center no-repeat;
}

.elrte-pagebreak:after {
  content: ".";
  display: block;
  font-size:0;
  height: 0;
  clear: both;
  visibility: hidden;
}
css/elrte.min.css000060400000027742150714137430007760 0ustar00@charset "UTF-8";/*!
 * elRTE WYSIWYG HTML-editor
 * Version 1.3 (2011-06-23)
 * http://elrte.org
 *
 * Copyright 2009-2011, Studio 42 Ltd.
 * Licensed under a 3 clauses BSD license
 */ a{outline:0}
.clearfix:after{content:".";display:block;font-size:0;height:0;clear:both;visibility:hidden}
.clearfix{display:block}
.rounded-2{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}
.rounded-3{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}
.rounded-4{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}
.rounded-5{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}
.rounded-6{-moz-border-radius:6px;-webkit-border-radius:5px;border-radius:6px}
.rounded-7{-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px}
.rounded-left-3{-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px}
.rounded-bottom-7{-moz-border-radius-bottomleft:7px;-moz-border-radius-bottomright:7px;-webkit-border-bottom-left-radius:7px;-webkit-border-bottom-right-radius:7px;border-bottom-left-radius:7px;border-bottom-right-radius:7px}
.ui-widget{font-size:.9em}
.ui-dialog .ui-dialog-buttonpane button{padding:.1em .6em .2em .6em}
.el-colorpicker{width:16px;height:16px;border:1px solid #ccc;position:relative;cursor:default}
.el-palette{width:182px;border:1px solid #ccc;background:#fff;padding:3px 2px 3px 3px;z-index:99000;position:absolute;top:16px;left:0}
.el-palette .color{float:left;width:14px;height:14px;line-height:1px;border-top:1px solid #eee;border-left:1px solid #eee}
.el-palette .panel{border-top:1px solid #ccc;margin-top:7px;padding:5px 3px 5px 3px}
.el-palette .panel .preview{float:right;width:18px;height:18px;border:1px solid #ccc}
.el-palette .panel input{border:1px solid #ccc}
.ui-widget .el-dialogform{padding:5px 3px}
.ui-widget .el-dialogform-rtl{direction:rtl}
.ui-widget .el-dialogform-rtl .ui-tabs-nav li{float:right}
.el-dialogform div.tab:hover{background:transparent}
.ui-dialog .ui-dialog-title,.ui-dialog .ui-dialog-content{font-size:.9em}
.ui-tabs .ui-tabs-nav li a{padding:.2em .7em}
.el-dialogform .tab{padding:5px 0 12px 0;border:0}
.el-dialogform .separator{border-top:1px solid #ccc;margin:5px 2px}
.el-dialogform table{width:100%;border:0}
.el-dialogform table td{padding:2px}
.el-dialogform input,.el-dialogform textarea{border:1px solid #ccc}
.el-dialogform select{padding:0}
.el-dialogform .spinner{background:url(../images/loading.gif) 50% 50% no-repeat;text-align:center;width:150px;height:50px;margin:10px auto;padding-top:33px;font-weight:bold}
.el-dialogform-error{background:#fee;color:#f00;border:2px #844 solid;padding:10px;margin-bottom:1em 0}
.el-dialogform-message{background:#efe;color:#040;border:2px #484 solid;padding:10px;margin-bottom:1em 0}
.el-dialogform table td .el-borderselect table{width:auto}
.el-dialogform table td .el-borderselect table td{padding-left:0;padding-right:2px}
.el-paddinginput{display:block;white-space:nowrap}
.el-paddinginput input{margin:0 1px 0 0;border:1px solid #ccc}
.el-paddinginput select{padding:0}
.el-select{height:17px;width:110px;border:1px solid #ccc;cursor:default;position:relative}
.el-select.hover{background-color:#eee}
.el-select label{height:17px;line-height:17px;padding:0 5px;margin:0 12px 0 0;display:block;white-space:nowrap;overflow:hidden;background:#fff;border-right:1px solid #ccc}
.el-select .list{border:1px solid #ccc;display:block;position:absolute;overflow:auto;background:#fff;z-index:1000}
.el-select .list div{position:relative;padding:3px 25px 3px 7px;border-bottom:1px solid #eee}
.el-select .list .hover{background:#efefef}
.el-select .list .active{background-color:#c3dbef}
.el-select .list div *{padding:0;margin:0;border:0;white-space:nowrap;display:block}
.el-rte{font-family:Trebuchet MS,Verdana,Geneva,sans-serif;overflow:hidden}
.el-rte.el-fullscreen{position:absolute;width:99%;top:0;left:0;margin:0;z-index:10}
.elrte-swf-placeholder{width:1px;background:url('../images/swf.png') 0 0 no-repeat}
.elrtetesturl{color:red;background-image:url(../images/pixel.gif)}
.el-rte .toolbar{background-color:#eee;padding:3px 7px 2px 7px;border:1px solid #ccc;white-space:normal}
.el-rte-rtl .toolbar{direction:rtl}
.el-rte .toolbar ul{position:relative;display:inline-block;display:-moz-inline-stack;display:inline-block;vertical-align:top;zoom:1;*display:inline;margin:0;list-style:none;padding:0 2px 0 5px;background:url('../images/elrte-toolbar.png') -934px -2px no-repeat}
.el-rte .toolbar ul.first{background:transparent;padding-left:0}
.el-rte .toolbar ul li{display:inline-block;display:-moz-inline-stack;display:inline-block;height:22px;width:22px;vertical-align:top;zoom:1;*display:inline;margin:1px 1px;padding:0;background:url('../images/elrte-toolbar.png') no-repeat;border:1px solid #ccc;z-index:100}
.el-rte .toolbar ul li.hover{border:1px solid #54b9bf}
.el-rte .toolbar ul li.active{background-color:#c3dbef;border:1px solid #fff}
.el-rte .toolbar ul li.disabled{opacity:alpha(0.3);opacity:.3;filter:Alpha(Opacity=30)}
.el-rte .toolbar ul li.about{background-position:-829px -5px}
.el-rte .toolbar ul li.save{background-position:-30px -2px}
.el-rte .toolbar ul li.new{background-position:-55px -2px}
.el-rte .toolbar ul li.copy{background-position:-78px -2px}
.el-rte .toolbar ul li.css{background-position:-801px -5px}
.el-rte .toolbar ul li.cut{background-position:-104px -2px}
.el-rte .toolbar ul li.paste{background-position:-128px -2px}
.el-rte .toolbar ul li.pastetext{background-position:-534px -2px}
.el-rte .toolbar ul li.pasteformattext{background-position:-154px -2px}
.el-rte .toolbar ul li.removeformat{background-position:-180px -2px}
.el-rte .toolbar ul li.docstructure{background-position:-712px -4px}
.el-rte .toolbar ul li.undo{background-position:-205px -2px}
.el-rte .toolbar ul li.redo{background-position:-230px -2px}
.el-rte .toolbar ul li.bold{background-position:-252px -2px}
.el-rte .toolbar ul li.italic{background-position:-270px -2px}
.el-rte .toolbar ul li.underline{background-position:-290px -2px}
.el-rte .toolbar ul li.strikethrough{background-position:-149px -29px}
.el-rte .toolbar ul li.subscript{background-position:-54px -29px}
.el-rte .toolbar ul li.superscript{background-position:-76px -29px}
.el-rte .toolbar ul li.justifyleft{background-position:-311px -2px}
.el-rte .toolbar ul li.justifycenter{background-position:-335px -2px}
.el-rte .toolbar ul li.justifyright{background-position:-360px -2px}
.el-rte .toolbar ul li.justifyfull{background-position:-174px -29px}
.el-rte .toolbar ul li.insertunorderedlist{background-position:-100px -29px}
.el-rte .toolbar ul li.insertorderedlist{background-position:-124px -29px}
.el-rte .toolbar ul li.outdent{background-position:-6px -29px}
.el-rte .toolbar ul li.indent{background-position:-32px -29px}
.el-rte .toolbar ul li.blockquote{background-position:-220px -30px}
.el-rte .toolbar ul li.div{background-position:-655px -29px}
.el-rte .toolbar ul li.stopfloat{background-position:-771px -5px}
.el-rte .toolbar ul li.nbsp{background-position:-580px -2px}
.el-rte .toolbar ul li.forecolor{background-position:-372px -30px}
.el-rte .toolbar ul li.hilitecolor{background-position:-395px -30px}
.el-rte .toolbar ul li.link{background-position:-244px -29px}
.el-rte .toolbar ul li.unlink{background-position:-270px -29px}
.el-rte .toolbar ul li.anchor{background-position:-296px -30px}
.el-rte .toolbar ul li.image{background-position:-384px -2px}
.el-rte .toolbar ul li.flash{background-position:-410px -2px}
.el-rte .toolbar ul li.file{background-position:-436px -3px}
.el-rte .toolbar ul li.table{background-position:-421px -30px}
.el-rte .toolbar ul li.tableprops{background-position:-602px -29px}
.el-rte .toolbar ul li.tbcellprops{background-position:-806px -27px}
.el-rte .toolbar ul li.tablerm{background-position:-461px -2px}
.el-rte .toolbar ul li.tbrowbefore{background-position:-683px -4px}
.el-rte .toolbar ul li.tbrowafter{background-position:-654px -4px}
.el-rte .toolbar ul li.tbrowrm{background-position:-500px -30px}
.el-rte .toolbar ul li.tbcolbefore{background-position:-741px -27px}
.el-rte .toolbar ul li.tbcolafter{background-position:-772px -27px}
.el-rte .toolbar ul li.tbcolrm{background-position:-526px -30px}
.el-rte .toolbar ul li.tbcellsmerge{background-position:-552px -30px}
.el-rte .toolbar ul li.tbcellsplit{background-position:-629px -29px}
.el-rte .toolbar ul li.smiley{background-position:-322px -29px}
.el-rte .toolbar ul li.spec-text{background-position:-487px -2px}
.el-rte .toolbar ul li.print{background-position:-509px -2px}
.el-rte .toolbar ul li.horizontalrule{background-position:-199px -29px}
.el-rte .toolbar ul li.fullscreen{background-position:-348px -30px}
.el-rte .toolbar ul li.elfinder{background-position:-436px -2px}
.el-rte .toolbar ul li.ltr{background-position:-855px -27px}
.el-rte .toolbar ul li.rtl{background-position:-855px -3px}
.el-rte .toolbar ul li.pagebreak{background-position:-711px -28px}
.el-rte .workzone{border:1px solid #eee;border-top:0;height:400px;overflow:hidden}
.el-rte.small .workzone{min-height:250px}
.el-rte textarea{width:100%;height:100%;border:0;zoom:1;padding:0;outline:0}
.el-rte.small textarea{min-height:250px}
.el-rte iframe{width:100%;height:400px;display:block;outline:0;border:0 solid;padding:0;margin:0;background:#fff}
.el-rte.small iframe{min-height:250px}
.el-rte .statusbar{height:21px;padding:0 9px;font:11px/21px 'monaco','andale mono','lucida console',monospace;background-color:#eee;border-top:1px solid #ccc;border-top:0}
.el-rte-rtl .statusbar{direction:rtl}
.el-rte .tabsbar{display:block}
.el-rte .tabsbar .tab{float:left;margin-right:2px;padding:6px 17px;font-size:.82em;font-weight:bold;color:#777;text-align:center;border:1px solid #eee;border-top:0;background:#fff;cursor:default}
.el-rte .tabsbar div.active{background:#eee;color:#444}
.el-rte-rtl .tabsbar .tab{float:right}
.el-rte .toolbar ul li.el-select{height:22px;width:120px;border:1px solid #ccc;font-size:.82em;cursor:default;background-position:-475px -30px}
.el-rte .toolbar ul li.el-select.hover{background-color:#fefefe}
.el-rte .toolbar ul li.el-select label{height:19px;padding:3px 5px 0 5px;float:none;width:96px}
.el-rte-paste-input{width:99%;height:250px;border:1px solid #ccc;padding:0;margin:0;outline:0}
.el-rte .toolbar ul li div.color-indicator{width:18px;height:4px;margin:16px 0 2px 2px;background-color:#000}
.el-rte-rtl .toolbar ul li div.color-indicator{margin:16px 2px 2px 0}
.el-rte .toolbar .panel-format{z-index:10}
.el-palette{top:20px}
.el-dialogform,.el-dialogform td{font-size:.9em}
.el-dialogform select{font-size:.9em}
.ui-dialog .ui-dialog-buttonpane{padding:.4em,1em}
.ui-dialog .ui-dialog-buttonpane button{margin:.3em .4em .1em 0;font-size:.9em}
.ui-dialog .ui-dialog-titlebar{padding:.3em 1em .3em}
.el-dialogform label{display:block}
.el-dialogform label input{margin-right:2px}
.el-dialogform iframe.el-rte-preview{width:100%;height:235px;margin:0;padding:0;outline:0;border:0}
.el-dialogform fieldset{border:1px solid #ccc;padding:0}
.el-dialogform fieldset legend{font-size:.9em;padding:.1em .5em;margin:0 0 5px 1em;border:1px solid #ccc;background-color:#eee}
.el-dialogform p{padding:.2em .3em}
.el-dialogform h3{color:#555;padding:1.2em 0 0 0;margin:0;font-size:1.2em}
.el-dialogform h4{color:#555;font-size:1em;padding:0;margin:3px 9px}
.elrte-logo{width:48px;height:46px;float:left;margin:.5em 1em;background:url('../images/elrte-toolbar.png') -880px -7px no-repeat}
.elrte-ver{font-size:.9em;padding-left:.7em}
.elrte-copy{font-size:.9em;padding-left:.3em}
table.elrte-authors{margin-bottom:1em}
table.elrte-authors td{border-bottom:1px solid #eee}
.el-borderselect table{margin:0}
.el-borderselect table td{padding:0 2px 0 0;vertical-align:middle}
.el-borderselect input{margin:0;border:1px solid #ccc}
.el-paddinginput{display:block;white-space:nowrap}
.el-paddinginput input{margin:0 1px 0 0;border:1px solid #ccc}
.el-paddinginput select{padding:0}
.el-rte-smiley{margin:5px}
.elrte-image-src-fm .ui-state-default{float:right}
.el-dialogform-rtl .elrte-image-src-fm .ui-state-default{float:left}
.elrte-image-preview{font-size:.7em;overflow:auto;height:240px;width:480px}css/elrte.full.css000060400000036701150714137430010132 0ustar00/*!
 * elRTE WYSIWYG HTML-editor
 * Version 1.3 (2011-06-23)
 * http://elrte.org
 *
 * Copyright 2009-2011, Studio 42 Ltd.
 * Licensed under a 3 clauses BSD license
 */

@charset "UTF-8";
a { outline: none; }

/*************  clearfix  **********************/

.clearfix:after {
  content: ".";
  display: block;
  font-size:0;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix { display: block; }

.rounded-2 { -moz-border-radius: 2px; -webkit-border-radius: 2px; border-radius: 2px; }
.rounded-3 { -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
.rounded-4 { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; }
.rounded-5 { -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
.rounded-6 { -moz-border-radius: 6px; -webkit-border-radius: 5px; border-radius: 6px; }
.rounded-7 { -moz-border-radius: 7px; -webkit-border-radius: 7px; border-radius: 7px; }
.rounded-left-3 { -moz-border-radius-topleft: 3px; -webkit-border-top-left-radius: 3px; -moz-border-radius-bottomleft: 3px; -webkit-border-bottom-left-radius: 3px; }
.rounded-bottom-7 { -moz-border-radius-bottomleft:7px; -moz-border-radius-bottomright:7px; -webkit-border-bottom-left-radius: 7px;-webkit-border-bottom-right-radius: 7px; border-bottom-left-radius: 7px; border-bottom-right-radius: 7px;}	


.ui-widget { font-size:.9em;}
.ui-dialog .ui-dialog-buttonpane button { padding: .1em .6em .2em .6em; }

/* colorpicker "button" */
.el-colorpicker {
	width  : 16px;
	height : 16px;
	border:1px solid #ccc;
	position:relative;
	cursor:default;
}

/* colors palette */
.el-palette {
	width: 182px;
	border:1px solid #ccc;
	background:#fff;
	padding:3px 2px 3px 3px;
	z-index:99000; /* fight with ui.dialog 0_o */
	position:absolute;
	top:16px;
	left:0;
}

/* color cell in palette */
.el-palette .color {
	float:left;
	width:14px;
	height:14px;
	line-height:1px;
	border-top: 1px solid #eee;
	border-left:1px solid #eee;
}

/* side below color cells */
.el-palette .panel {
	border-top:1px solid #ccc;
	margin-top:7px;
	padding:5px 3px 5px 3px;
}

/* "window" with selected color */
.el-palette .panel .preview {
	float:right;
	width:18px;
	height:18px;
	border:1px solid #ccc;
}

/* color value text field */
.el-palette .panel input {
	border:1px solid #ccc;
}
/* dialog container */
.ui-widget .el-dialogform {
	padding:5px 3px;

}

.ui-widget .el-dialogform-rtl {
	direction: rtl;
}

.ui-widget .el-dialogform-rtl .ui-tabs-nav li {
	float:right;
}

.el-dialogform div.tab:hover { background:transparent; }
.ui-dialog .ui-dialog-title, .ui-dialog .ui-dialog-content {
	font-size:.9em;
}

/* tabs nav */
.ui-tabs .ui-tabs-nav li a {
	padding:.2em .7em;
}

/* tab container */
.el-dialogform .tab {
	padding:5px 0 12px 0;
	border:none;
}
/* line separator */
.el-dialogform .separator {
	border-top:1px solid #ccc;
	margin: 5px 2px;
}

/* table in dialog or in tab */
.el-dialogform table {
	width:100%;
	border: none;
}

.el-dialogform  table td {
	padding: 2px;
}

.el-dialogform input, .el-dialogform textarea {
	border:1px solid #ccc;
}

.el-dialogform select {
	padding:0;
/*	font-size:11px;*/
}

.el-dialogform .spinner {
	background:url(../images/loading.gif) 50% 50% no-repeat;
	text-align:center;
	width:150px;
	height:50px;
	margin:10px auto;
	padding-top:33px;
	font-weight:bold;
}
.el-dialogform-error {
	background: #fee; color:#ff0000; border: 2px #844 solid; padding: 10px; margin-bottom: 1em 0;
	
}
.el-dialogform-message {
	background: #efe; color: #040; border: 2px #484 solid; padding: 10px; margin-bottom: 1em 0;
}


.el-dialogform  table td .el-borderselect table {
	width:auto;
}

.el-dialogform  table td .el-borderselect table td {
	padding-left :0;
	padding-right:2px;
}
.el-paddinginput {
	display: block;
	white-space: nowrap;
}
.el-paddinginput input {
	margin :0 1px 0 0;
	border:1px solid #ccc;
}
.el-paddinginput select {
	padding:0;
}/* container for elselect */
.el-select {
	height:17px;
	width : 110px;
	border:1px solid #ccc;
	cursor: default;
	position:relative;
}
.el-select.hover {
	background-color:#eee;
}

/* selected element */
.el-select label {
	height:17px;
	line-height:17px;
/*	font-size:.92em;*/
	padding: 0 5px;
	margin: 0 12px 0 0;
	display:block;
	white-space:nowrap;
	overflow:hidden;
	background: #fff;
	border-right:1px solid #ccc;
}
/* drop-down list */
.el-select .list {
	border:1px solid #ccc;
	display:block;
	position:absolute;
	overflow:auto;
	background:#fff;
	z-index:1000;
/*	height:1610px*/
}
/* drop-down list item */
.el-select .list div {
	position:relative;
	padding:3px 25px 3px 7px;
	border-bottom:1px solid #eee;
}
/* drop-down list item hovered */
.el-select .list .hover {
	background:#efefef;
}
/* drop-down list item selected */
.el-select .list .active {
	background-color:#c3dbef;
}
/* any elements in drop-down list item */
.el-select .list div * {
	padding:0;
	margin:0;
	border:none;
	white-space:nowrap;
	display:block;
}
/*  контейнер */
.el-rte { 
	font-family: Trebuchet MS, Verdana, Geneva,sans-serif;
	overflow:hidden;
/*	border:1px solid #aaa;*/
}
.el-rte.el-fullscreen {
	position:absolute;
	width:99%;
/*	height:100%;*/
	top:0;
	left:0;
	margin:0;
	z-index:10;
}

.elrte-swf-placeholder {
	width:1px;
	background: url('../images/swf.png') 0 0 no-repeat;	
}

/* style to detect images url */
/*.el-rte */
.elrtetesturl { color:red; background-image:url(../images/pixel.gif);}

/* панель инструментов */
.el-rte .toolbar {  background-color:#eee; padding:3px 7px 2px 7px; border:1px solid #ccc; white-space:normal; }

.el-rte-rtl .toolbar { direction: rtl; }

/* панель кнопок */
.el-rte .toolbar ul {
	position:relative;
	display:inline-block; 
	display: -moz-inline-stack;
    display: inline-block;
    vertical-align: top;
    zoom: 1;
    *display: inline;
	margin:0;
	list-style:none;
	padding:0 2px 0 5px;
	background: url('../images/elrte-toolbar.png') -934px -2px no-repeat;	
}
/* первая панель кнопок */
.el-rte .toolbar ul.first {
	background:transparent;
	padding-left:0;
}
/* кнопка */
.el-rte .toolbar ul li {
	display:inline-block; 
	display: -moz-inline-stack;
    display: inline-block;
	height:22px; 
	width:22px;
    vertical-align: top;
    zoom: 1;
    *display: inline;
	margin:1px 1px;
	padding:0; /* Joomla 1.6 compat */
	background:url('../images/elrte-toolbar.png') no-repeat; 
	border:1px solid #ccc;	
	z-index:100;

}
/* активная и подсвеченная и неактивная кнопка */
.el-rte .toolbar ul li.hover    { border:1px solid #54b9bf; }
.el-rte .toolbar ul li.active   { background-color:#c3dbef; border:1px solid #fff; }
.el-rte .toolbar ul li.disabled { opacity:alpha(0.3); opacity: 0.3; filter:Alpha(Opacity=30);}
/*  кнопки  */
.el-rte .toolbar ul li.about               {background-position:-829px -5px;}
.el-rte .toolbar ul li.save                {background-position:-30px -2px;}
.el-rte .toolbar ul li.new                 {background-position:-55px -2px}
.el-rte .toolbar ul li.copy                {background-position:-78px -2px}
.el-rte .toolbar ul li.css                 {background-position:-801px -5px}
.el-rte .toolbar ul li.cut                 {background-position:-104px -2px}
.el-rte .toolbar ul li.paste               {background-position:-128px -2px}
.el-rte .toolbar ul li.pastetext           {background-position:-534px -2px}
.el-rte .toolbar ul li.pasteformattext     {background-position:-154px -2px}
.el-rte .toolbar ul li.removeformat        {background-position:-180px -2px}
.el-rte .toolbar ul li.docstructure        {background-position:-712px -4px}  
.el-rte .toolbar ul li.undo                {background-position:-205px -2px}
.el-rte .toolbar ul li.redo                {background-position:-230px -2px}
.el-rte .toolbar ul li.bold                {background-position:-252px -2px; }
.el-rte .toolbar ul li.italic              {background-position:-270px -2px;}
.el-rte .toolbar ul li.underline           {background-position:-290px -2px; }
.el-rte .toolbar ul li.strikethrough       {background-position:-149px -29px}
.el-rte .toolbar ul li.subscript           {background-position:-54px -29px}
.el-rte .toolbar ul li.superscript         {background-position:-76px -29px}
.el-rte .toolbar ul li.justifyleft         {background-position:-311px -2px}
.el-rte .toolbar ul li.justifycenter       {background-position:-335px -2px}
.el-rte .toolbar ul li.justifyright        {background-position:-360px -2px}
.el-rte .toolbar ul li.justifyfull         {background-position:-174px -29px}
.el-rte .toolbar ul li.insertunorderedlist {background-position:-100px -29px}
.el-rte .toolbar ul li.insertorderedlist   {background-position:-124px -29px}
.el-rte .toolbar ul li.outdent             {background-position:-6px   -29px}
.el-rte .toolbar ul li.indent              {background-position:-32px  -29px}
.el-rte .toolbar ul li.blockquote          {background-position:-220px -30px}
.el-rte .toolbar ul li.div                 {background-position:-655px -29px}
.el-rte .toolbar ul li.stopfloat           {background-position:-771px -5px}  
.el-rte .toolbar ul li.nbsp                {background-position:-580px -2px} 
.el-rte .toolbar ul li.forecolor           {background-position:-372px -30px}
.el-rte .toolbar ul li.hilitecolor         {background-position:-395px -30px}
.el-rte .toolbar ul li.link                {background-position:-244px -29px}
.el-rte .toolbar ul li.unlink              {background-position:-270px -29px}
.el-rte .toolbar ul li.anchor              {background-position:-296px -30px} 
.el-rte .toolbar ul li.image               {background-position:-384px -2px}
.el-rte .toolbar ul li.flash               {background-position:-410px -2px}
.el-rte .toolbar ul li.file                {background-position:-436px -3px}
.el-rte .toolbar ul li.table               {background-position:-421px -30px}
.el-rte .toolbar ul li.tableprops          {background-position:-602px -29px}
.el-rte .toolbar ul li.tbcellprops         {background-position:-806px -27px}
.el-rte .toolbar ul li.tablerm             {background-position:-461px -2px}
.el-rte .toolbar ul li.tbrowbefore         {background-position:-683px -4px}
.el-rte .toolbar ul li.tbrowafter          {background-position:-654px -4px}
.el-rte .toolbar ul li.tbrowrm             {background-position:-500px -30px}
.el-rte .toolbar ul li.tbcolbefore         {background-position:-741px -27px}
.el-rte .toolbar ul li.tbcolafter          {background-position:-772px -27px}
.el-rte .toolbar ul li.tbcolrm             {background-position:-526px -30px}
.el-rte .toolbar ul li.tbcellsmerge        {background-position:-552px -30px}
.el-rte .toolbar ul li.tbcellsplit         {background-position:-629px -29px}
.el-rte .toolbar ul li.smiley              {background-position:-322px -29px}
.el-rte .toolbar ul li.spec-text           {background-position:-487px -2px}
.el-rte .toolbar ul li.print               {background-position:-509px -2px}
.el-rte .toolbar ul li.horizontalrule      {background-position:-199px -29px}
.el-rte .toolbar ul li.fullscreen          {background-position:-348px -30px}  
.el-rte .toolbar ul li.elfinder            {background-position:-436px -2px}
.el-rte .toolbar ul li.ltr                 {background-position:-855px -27px}  
.el-rte .toolbar ul li.rtl                 {background-position:-855px -3px} 
.el-rte .toolbar ul li.pagebreak           {background-position:-711px -28px}  


/* рабочая зона (обертка над iframe) */
.el-rte .workzone { border:1px solid #eee; border-top:none; height:400px; overflow:hidden; }
.el-rte.small .workzone { min-height:250px; }

/* source code */
.el-rte textarea  { width:100%; height:100%; border:none; zoom:1; padding:0; outline:none; }
.el-rte.small textarea  { min-height:250px;}
/* редактор */
.el-rte iframe    { 
	width: 100%; 
	height:400px; 
	display:block;
	outline:none; 
	border:0 solid; 
	padding:0; 
	margin:0;
	background:#fff; 

}
.el-rte.small iframe  { min-height:250px;}

/* панель статуса (путь) */
.el-rte .statusbar {
	height: 21px;
	padding: 0 9px;
	font: 11px/21px 'monaco', 'andale mono', 'lucida console', monospace;
	background-color:#eee;
	border-top:1px solid #ccc;	
	border-top:none;
}

.el-rte-rtl .statusbar {
	direction:rtl;
/*	text-align:right;*/
}

/* табы */
.el-rte .tabsbar { display: block;  }
.el-rte .tabsbar .tab {
	float:left;  
	margin-right:2px; 
	padding: 6px 17px;
	font-size: .82em; 
	font-weight:bold;
	color:#777;
	text-align:center;  
	border:1px solid #eee;
	border-top:none;
	background: #fff;
	cursor: default;
}
.el-rte .tabsbar div.active { background: #eee; color:#444; }
.el-rte-rtl .tabsbar .tab  { float:right; }

/* выпадающие меню */
/* container for elselect */
.el-rte .toolbar ul li.el-select {
	height:22px;
	width : 120px;
	border:1px solid #ccc;
	font-size:.82em;
	cursor: default;
	background-position:-475px -30px;
}

.el-rte .toolbar ul li.el-select.hover {
	background-color:#fefefe;
}

.el-rte .toolbar ul li.el-select label {
	height:19px;
	padding: 3px 5px 0 5px;
	float:none; /* Joomla 1.6 compat */
	width:96px; /* Joomla 1.6 compat */
}

/* textarea & iframe в диплогах вставки текста */
.el-rte-paste-input {
	width : 99%;
	height: 250px;
	border: 1px solid #ccc;
	padding:0;
	margin:0;
	outline:none;
}
/* индикатор выбраного цвета на кнопке */
.el-rte .toolbar ul li div.color-indicator {
	width:18px;
	height:4px;
	margin:16px 0 2px 2px;
	background-color: #000;
}
.el-rte-rtl .toolbar ul li div.color-indicator {
	margin:16px 2px 2px 0;
}
.el-rte .toolbar .panel-format { z-index: 10; }

/* colors palette */
.el-palette { top:20px; }

.el-dialogform, .el-dialogform td       { font-size:.9em; }
.el-dialogform select                   { font-size:.9em;}
.ui-dialog .ui-dialog-buttonpane        { padding: .4em, 1em;}
.ui-dialog .ui-dialog-buttonpane button { margin: .3em .4em .1em 0; font-size:.9em;}
.ui-dialog .ui-dialog-titlebar          { padding: .3em 1em .3em;   }
/*.ui-dialog-buttonset { padding:0; background-color:#333;}*/
/* диалоговые окна */
.el-dialogform label       { display:block; }
.el-dialogform label input { margin-right:2px; }
.el-dialogform iframe.el-rte-preview {
	width : 100%;
	height : 235px;
	margin:0;
	padding:0;
	outline:none;
	border:none;
}
.el-dialogform fieldset {
	border:1px solid #ccc;
	padding : 0;
}
.el-dialogform fieldset legend {
	font-size:.9em;
	padding: .1em .5em;
	margin: 0 0 5px 1em;
	border:1px solid #ccc;
	background-color: #eee;
}
.el-dialogform p  { padding:.2em .3em;}
.el-dialogform h3 { color:#555; padding:1.2em 0 0 0; margin:0; font-size:1.2em; }
.el-dialogform h4 { color:#555;font-size:1em; padding:0; margin: 3px 9px; }

.elrte-logo { 
	width:48px; 
	height:46px;
	float:left; 
	margin:.5em 1em;
	background:url('../images/elrte-toolbar.png') -880px -7px no-repeat;
}
.elrte-ver  { font-size:.9em; padding-left:.7em; }
.elrte-copy { font-size:.9em; padding-left:.3em; }
table.elrte-authors    { margin-bottom:1em; }
table.elrte-authors td { border-bottom:1px solid #eee; }

/* widgets */
.el-borderselect {}
.el-borderselect table      {  margin:0; }
.el-borderselect table td   { padding : 0 2px 0 0; vertical-align:middle; }
.el-borderselect input      { margin:0;  border:1px solid #ccc; }

.el-paddinginput        { display: block; white-space: nowrap; }
.el-paddinginput input  { margin :0 1px 0 0; border:1px solid #ccc; }
.el-paddinginput select { padding:0; }

.el-rte-smiley { margin:5px; }

.elrte-image-src-fm .ui-state-default {
	float:right;
}
.el-dialogform-rtl .elrte-image-src-fm .ui-state-default { float:left;}

.elrte-image-preview {
	font-size:.7em;
	overflow:auto;
	height:240px;
	width:480px;
}

css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png000060400000000167150714137430016274 0ustar00�PNG


IHDR�oX
�>IDAT8���1
�0Cџ��� �$�C�B���}1@)e_ƅ�`I8�-�%c�M0�����)�"
�
�LIEND�B`�css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png000060400000000145150714137430020142 0ustar00�PNG


IHDRdG,Z`,IDAT�cx���&�!D���J�qш��/��Cc
;��:*C��OIEND�B`�css/smoothness/images/ui-icons_cd0a0a_256x240.png000060400000010421150714137430015360 0ustar00�PNG


IHDR��IJ��PLTE�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�FcNtRNS2P���."Tp@f`� <BHJZ&0R,�4���j���8D��|�������(��$�
��b���lߝF>n~�hh�H��IDATx��]�b۶�H�儒-{i�ZK:g�lk�n��-��tI��q�q?  E�$�dK>$�>�;������P�Z����s�V��h!�Sy��0E�0}H�)-���tk��o�ܪKp�\R�Ϡ ��.�E�7��
�)�*V;~�Pe��
Bx�*�,=$z��Dؾ���� ��J����Ҹٻ����9�{ ��������Ǹ�Hp�qW@��"2'���B��[�$�� @T��i�H�/��b٥9�6�!�X�Hq`DE��*R����
HV!�%�����;�������"����
�i��]�dddddddd�����4y���5 ��	�Rb�@(�8���Cd��Ū�ݡ�,�@T�@i���b�rq0a�lX!�������p��e�,	��=4bW �{�
5���Ƭhu~�(�Q�^@���3�=��"�b��5XC@J����C�����T��7��6�������q_����5��@,r	šɩ�D�)�T�|�O��@�
ON-ՙ��	�������[n@��R���X�Im�݋(���F �@�?��=0��puL��;g$��@6η��
�K`�>п� @h գ�KV�n�"a�"���%l�@.v�$/��U^��G�:#`�`�� �u��TtK��~�ŋ�Z��5T���%�k�x�����������k��]\*�Q��
,҇���B��44�OXK�|�y��g���+_M�(�lоE�O���
 V$�T1BX���b�-�|?@ �f��B�Xr�%'@ҹA\�I��J,}��BBc��\V
��r����h(�]tI��^���}���o�צo�S3�	";��ʙ���b}��"߰	��){b$�������Gwwݾ����������a���b"��)���T@p��F_er6JvШ���"m�ޭ�M-��d7��6��x����˰6ӥ;��/����`>KrP\��_���^u�1%��O�T�M���.�}���Q3���.Nس��}��)���>����-�w�`���a�����+sy$���t���)�N�bFFFF�Be�j��nN��Vn4��,��A*��X��*��5��>��P���G��a��3	�{�oB�
�&<�L[���Nc.���ö�i=�`�Q@�d���
͆I��.I��l�`\t�[< �Cit�48��4�-r���+��f��쑱�B��CB ��MH�	i����y}���>���rx����p|z�;B��Ǐ;�b�u��r���c�K����4t��z��1�G~����`���ؚ��K��|	̔>��ۡ��O$�����~
�Ao)���0pzz
�}i�����`;AD�����m8n:�cf�A@s7�����L��� Z�/..�����h8�o��r?
�
�N��9��3B��~o_��'`��o���pO-��
:�TG�	L;��7���]`���B���%�˛>��*wT���pM��0H�}&t����^1��'Oq�r'�2P�͡��+�z,tIW''|en������=dzg��R�m�[N�S�t�K{��҉m���ؓV�t�6���ҲR`����ζN�&}�B	U��(�r<�qȁVyr�rA**��دzg6�D#��	�����YP�`�����v���s���~(�z�Ml�e�|u���Q�a�*}�+T��
�����R��Xc"+*�N�l�N�hc�Ft�<N+;-}�،Xtٕ$��à^��|uv���*��~�'E�_�5���1�q�s�*�R�`�OΒ��9�#x4�4�9�#�������WHۏ����Z��)]0�`p�<��ߝ��N��oY{�4�7��6�ǹ�>�ۗ&��������1%�Q''���?�l��׸�+&�r{�j�N�಻���4�)���`�N狌�.��߭�� ���ǣ������������)q	�2�?���n�3H�b��`�}� ����.`�������pqY1�e_b����u�7��e+N�_F����(�D�T��,���L}LL�r��mP5��|��x芥1�c���x DAb������`��M(��7���NED�~<v\	%,�ߚ/����p���R��~/^����l��np�
��7t����0_���0���l4�����_����b�0�MWΦj�m����б�Ɏ�l
|re����
�ȫ`B-����v.i��Ro�x}�
�)����%#`�Ђ�R5C���A�2su���a���sYy3��=jaeoI�7�~�.�plA��΃�
`O��)��	^�>��Mz�	�+4���BXd.��Mz��v͈������P�d8�p��<6?��8�N��*x����.��6ڍ6G����F�Z�����)���O���	!��l�S�s���h����ss�N�p8�`'�0�/<����s���}�.�@Ǩ�s�7ξ�O۟V�D���a5��a�v��]������m1��+���3��y�6�۠���>@�u50��P�s����5��1=��=�p�� *��KV�ҫ܂�����ݻc$N�4�(�X�r2###c-��賟L���δ�>��]���5�.�s���Ys�1��f0�;�'̨��Y�g銛�{�@9��	���`aC(��=%b�o�2��=���n��1�	j��B��o��S$n���#���m����=i��0�c���������i9�}�oI��	���q�T��]�W%.��(��؅�]z�\�x�
f��"]o��'u�䫵�t�k{�v;A��C3ֆw��w�R_#��X��(x��ҋ/q%��W��������hp��k_I�X���'b��/fX��K�i�"#####�QCL�i��2t��
���5���L0
����Qi�H�2;y�T�Ook;ע�ٶ`��R��Ng{z�y�!�Kx�����m�?A(v��U�~���mL�(`o/!n���mX��-{�v����[�� d�w�=�n「�������sdw��z��n�(��}O�y�~����m�
���?XU�;,���V'+��V�&�J�R��Z]᧭�:����zC'��-߆����@�y
�4���u���`Vۓw��ъ#��zP@Q�
N>2/��{�\o)����W���~a�3xL�w
:_Q�;��=p�ּ�dt���\'8�����~3�SRP���6��y+�������X�����Q�*��޺r
����̗ѭ*��޺r
g��l�/�\U^��u�$����|mb��Vn����w�\V��|���D�͊NVN���y��7�������k<;��/�E}?E*dzg�O ���~���g��/9��6����f
c�D}%��g$�Q�G�7�o��)����UJ���o�,O@�0߾Q(����;�b����w����:5�	�N�wR��N5�I�y'K�?}��:9�m��ֽ��*���@f�@jU9�m���ҫ���Í�{����$�ؗ�}��dF���p��|%!DdF��>����}G��{���@FFFFFFƦQܞH �
�����3
��u	���M�o�����~�vy�}�m�wz<�7���nP9�r�Wk���u=����|��_�n����z쿳}@���IX�n�����?��s<uPIEND�B`�css/smoothness/images/ui-icons_222222_256x240.png000060400000010421150714137430015063 0ustar00�PNG


IHDR��IJ��PLTE$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$$"$�ÈNtRNS2P���."Tp@f`� <BHJZ&0R,�4���j���8D��|�������(��$�
��b���lߝF>n~�hh�H��IDATx��]�b۶�H�儒-{i�ZK:g�lk�n��-��tI��q�q?  E�$�dK>$�>�;������P�Z����s�V��h!�Sy��0E�0}H�)-���tk��o�ܪKp�\R�Ϡ ��.�E�7��
�)�*V;~�Pe��
Bx�*�,=$z��Dؾ���� ��J����Ҹٻ����9�{ ��������Ǹ�Hp�qW@��"2'���B��[�$�� @T��i�H�/��b٥9�6�!�X�Hq`DE��*R����
HV!�%�����;�������"����
�i��]�dddddddd�����4y���5 ��	�Rb�@(�8���Cd��Ū�ݡ�,�@T�@i���b�rq0a�lX!�������p��e�,	��=4bW �{�
5���Ƭhu~�(�Q�^@���3�=��"�b��5XC@J����C�����T��7��6�������q_����5��@,r	šɩ�D�)�T�|�O��@�
ON-ՙ��	�������[n@��R���X�Im�݋(���F �@�?��=0��puL��;g$��@6η��
�K`�>п� @h գ�KV�n�"a�"���%l�@.v�$/��U^��G�:#`�`�� �u��TtK��~�ŋ�Z��5T���%�k�x�����������k��]\*�Q��
,҇���B��44�OXK�|�y��g���+_M�(�lоE�O���
 V$�T1BX���b�-�|?@ �f��B�Xr�%'@ҹA\�I��J,}��BBc��\V
��r����h(�]tI��^���}���o�צo�S3�	";��ʙ���b}��"߰	��){b$�������Gwwݾ����������a���b"��)���T@p��F_er6JvШ���"m�ޭ�M-��d7��6��x����˰6ӥ;��/����`>KrP\��_���^u�1%��O�T�M���.�}���Q3���.Nس��}��)���>����-�w�`���a�����+sy$���t���)�N�bFFFF�Be�j��nN��Vn4��,��A*��X��*��5��>��P���G��a��3	�{�oB�
�&<�L[���Nc.���ö�i=�`�Q@�d���
͆I��.I��l�`\t�[< �Cit�48��4�-r���+��f��쑱�B��CB ��MH�	i����y}���>���rx����p|z�;B��Ǐ;�b�u��r���c�K����4t��z��1�G~����`���ؚ��K��|	̔>��ۡ��O$�����~
�Ao)���0pzz
�}i�����`;AD�����m8n:�cf�A@s7�����L��� Z�/..�����h8�o��r?
�
�N��9��3B��~o_��'`��o���pO-��
:�TG�	L;��7���]`���B���%�˛>��*wT���pM��0H�}&t����^1��'Oq�r'�2P�͡��+�z,tIW''|en������=dzg��R�m�[N�S�t�K{��҉m���ؓV�t�6���ҲR`����ζN�&}�B	U��(�r<�qȁVyr�rA**��دzg6�D#��	�����YP�`�����v���s���~(�z�Ml�e�|u���Q�a�*}�+T��
�����R��Xc"+*�N�l�N�hc�Ft�<N+;-}�،Xtٕ$��à^��|uv���*��~�'E�_�5���1�q�s�*�R�`�OΒ��9�#x4�4�9�#�������WHۏ����Z��)]0�`p�<��ߝ��N��oY{�4�7��6�ǹ�>�ۗ&��������1%�Q''���?�l��׸�+&�r{�j�N�಻���4�)���`�N狌�.��߭�� ���ǣ������������)q	�2�?���n�3H�b��`�}� ����.`�������pqY1�e_b����u�7��e+N�_F����(�D�T��,���L}LL�r��mP5��|��x芥1�c���x DAb������`��M(��7���NED�~<v\	%,�ߚ/����p���R��~/^����l��np�
��7t����0_���0���l4�����_����b�0�MWΦj�m����б�Ɏ�l
|re����
�ȫ`B-����v.i��Ro�x}�
�)����%#`�Ђ�R5C���A�2su���a���sYy3��=jaeoI�7�~�.�plA��΃�
`O��)��	^�>��Mz�	�+4���BXd.��Mz��v͈������P�d8�p��<6?��8�N��*x����.��6ڍ6G����F�Z�����)���O���	!��l�S�s���h����ss�N�p8�`'�0�/<����s���}�.�@Ǩ�s�7ξ�O۟V�D���a5��a�v��]������m1��+���3��y�6�۠���>@�u50��P�s����5��1=��=�p�� *��KV�ҫ܂�����ݻc$N�4�(�X�r2###c-��賟L���δ�>��]���5�.�s���Ys�1��f0�;�'̨��Y�g銛�{�@9��	���`aC(��=%b�o�2��=���n��1�	j��B��o��S$n���#���m����=i��0�c���������i9�}�oI��	���q�T��]�W%.��(��؅�]z�\�x�
f��"]o��'u�䫵�t�k{�v;A��C3ֆw��w�R_#��X��(x��ҋ/q%��W��������hp��k_I�X���'b��/fX��K�i�"#####�QCL�i��2t��
���5���L0
����Qi�H�2;y�T�Ook;ע�ٶ`��R��Ng{z�y�!�Kx�����m�?A(v��U�~���mL�(`o/!n���mX��-{�v����[�� d�w�=�n「�������sdw��z��n�(��}O�y�~����m�
���?XU�;,���V'+��V�&�J�R��Z]᧭�:����zC'��-߆����@�y
�4���u���`Vۓw��ъ#��zP@Q�
N>2/��{�\o)����W���~a�3xL�w
:_Q�;��=p�ּ�dt���\'8�����~3�SRP���6��y+�������X�����Q�*��޺r
����̗ѭ*��޺r
g��l�/�\U^��u�$����|mb��Vn����w�\V��|���D�͊NVN���y��7�������k<;��/�E}?E*dzg�O ���~���g��/9��6����f
c�D}%��g$�Q�G�7�o��)����UJ���o�,O@�0߾Q(����;�b����w����:5�	�N�wR��N5�I�y'K�?}��:9�m��ֽ��*���@f�@jU9�m���ҫ���Í�{����$�ؗ�}��dF���p��|%!DdF��>����}G��{���@FFFFFFƦQܞH �
�����3
��u	���M�o�����~�vy�}�m�wz<�7���nP9�r�Wk���u=����|��_�n����z쿳}@���IX�n�����?��s<uPIEND�B`�css/smoothness/images/ui-bg_glass_75_dadada_1x400.png000060400000000237150714137430016335 0ustar00�PNG


IHDR�_:MfIDAT8���K
� E��������v"tEvr�$����v!I;03QJ9��͵5�C�ZpT���E�Q��D�S-������<���¤?/q\	
�IEND�B`�css/smoothness/images/ui-icons_888888_256x240.png000060400000010421150714137430015127 0ustar00�PNG


IHDR��IJ��PLTE����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ƁONtRNS2P���."Tp@f`� <BHJZ&0R,�4���j���8D��|�������(��$�
��b���lߝF>n~�hh�H��IDATx��]�b۶�H�儒-{i�ZK:g�lk�n��-��tI��q�q?  E�$�dK>$�>�;������P�Z����s�V��h!�Sy��0E�0}H�)-���tk��o�ܪKp�\R�Ϡ ��.�E�7��
�)�*V;~�Pe��
Bx�*�,=$z��Dؾ���� ��J����Ҹٻ����9�{ ��������Ǹ�Hp�qW@��"2'���B��[�$�� @T��i�H�/��b٥9�6�!�X�Hq`DE��*R����
HV!�%�����;�������"����
�i��]�dddddddd�����4y���5 ��	�Rb�@(�8���Cd��Ū�ݡ�,�@T�@i���b�rq0a�lX!�������p��e�,	��=4bW �{�
5���Ƭhu~�(�Q�^@���3�=��"�b��5XC@J����C�����T��7��6�������q_����5��@,r	šɩ�D�)�T�|�O��@�
ON-ՙ��	�������[n@��R���X�Im�݋(���F �@�?��=0��puL��;g$��@6η��
�K`�>п� @h գ�KV�n�"a�"���%l�@.v�$/��U^��G�:#`�`�� �u��TtK��~�ŋ�Z��5T���%�k�x�����������k��]\*�Q��
,҇���B��44�OXK�|�y��g���+_M�(�lоE�O���
 V$�T1BX���b�-�|?@ �f��B�Xr�%'@ҹA\�I��J,}��BBc��\V
��r����h(�]tI��^���}���o�צo�S3�	";��ʙ���b}��"߰	��){b$�������Gwwݾ����������a���b"��)���T@p��F_er6JvШ���"m�ޭ�M-��d7��6��x����˰6ӥ;��/����`>KrP\��_���^u�1%��O�T�M���.�}���Q3���.Nس��}��)���>����-�w�`���a�����+sy$���t���)�N�bFFFF�Be�j��nN��Vn4��,��A*��X��*��5��>��P���G��a��3	�{�oB�
�&<�L[���Nc.���ö�i=�`�Q@�d���
͆I��.I��l�`\t�[< �Cit�48��4�-r���+��f��쑱�B��CB ��MH�	i����y}���>���rx����p|z�;B��Ǐ;�b�u��r���c�K����4t��z��1�G~����`���ؚ��K��|	̔>��ۡ��O$�����~
�Ao)���0pzz
�}i�����`;AD�����m8n:�cf�A@s7�����L��� Z�/..�����h8�o��r?
�
�N��9��3B��~o_��'`��o���pO-��
:�TG�	L;��7���]`���B���%�˛>��*wT���pM��0H�}&t����^1��'Oq�r'�2P�͡��+�z,tIW''|en������=dzg��R�m�[N�S�t�K{��҉m���ؓV�t�6���ҲR`����ζN�&}�B	U��(�r<�qȁVyr�rA**��دzg6�D#��	�����YP�`�����v���s���~(�z�Ml�e�|u���Q�a�*}�+T��
�����R��Xc"+*�N�l�N�hc�Ft�<N+;-}�،Xtٕ$��à^��|uv���*��~�'E�_�5���1�q�s�*�R�`�OΒ��9�#x4�4�9�#�������WHۏ����Z��)]0�`p�<��ߝ��N��oY{�4�7��6�ǹ�>�ۗ&��������1%�Q''���?�l��׸�+&�r{�j�N�಻���4�)���`�N狌�.��߭�� ���ǣ������������)q	�2�?���n�3H�b��`�}� ����.`�������pqY1�e_b����u�7��e+N�_F����(�D�T��,���L}LL�r��mP5��|��x芥1�c���x DAb������`��M(��7���NED�~<v\	%,�ߚ/����p���R��~/^����l��np�
��7t����0_���0���l4�����_����b�0�MWΦj�m����б�Ɏ�l
|re����
�ȫ`B-����v.i��Ro�x}�
�)����%#`�Ђ�R5C���A�2su���a���sYy3��=jaeoI�7�~�.�plA��΃�
`O��)��	^�>��Mz�	�+4���BXd.��Mz��v͈������P�d8�p��<6?��8�N��*x����.��6ڍ6G����F�Z�����)���O���	!��l�S�s���h����ss�N�p8�`'�0�/<����s���}�.�@Ǩ�s�7ξ�O۟V�D���a5��a�v��]������m1��+���3��y�6�۠���>@�u50��P�s����5��1=��=�p�� *��KV�ҫ܂�����ݻc$N�4�(�X�r2###c-��賟L���δ�>��]���5�.�s���Ys�1��f0�;�'̨��Y�g銛�{�@9��	���`aC(��=%b�o�2��=���n��1�	j��B��o��S$n���#���m����=i��0�c���������i9�}�oI��	���q�T��]�W%.��(��؅�]z�\�x�
f��"]o��'u�䫵�t�k{�v;A��C3ֆw��w�R_#��X��(x��ҋ/q%��W��������hp��k_I�X���'b��/fX��K�i�"#####�QCL�i��2t��
���5���L0
����Qi�H�2;y�T�Ook;ע�ٶ`��R��Ng{z�y�!�Kx�����m�?A(v��U�~���mL�(`o/!n���mX��-{�v����[�� d�w�=�n「�������sdw��z��n�(��}O�y�~����m�
���?XU�;,���V'+��V�&�J�R��Z]᧭�:����zC'��-߆����@�y
�4���u���`Vۓw��ъ#��zP@Q�
N>2/��{�\o)����W���~a�3xL�w
:_Q�;��=p�ּ�dt���\'8�����~3�SRP���6��y+�������X�����Q�*��޺r
����̗ѭ*��޺r
g��l�/�\U^��u�$����|mb��Vn����w�\V��|���D�͊NVN���y��7�������k<;��/�E}?E*dzg�O ���~���g��/9��6����f
c�D}%��g$�Q�G�7�o��)����UJ���o�,O@�0߾Q(����;�b����w����:5�	�N�wR��N5�I�y'K�?}��:9�m��ֽ��*���@f�@jU9�m���ҫ���Í�{����$�ؗ�}��dF���p��|%!DdF��>����}G��{���@FFFFFFƦQܞH �
�����3
��u	���M�o�����~�vy�}�m�wz<�7���nP9�r�Wk���u=����|��_�n����z쿳}@���IX�n�����?��s<uPIEND�B`�css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png000060400000000151150714137430016354 0ustar00�PNG


IHDR�oX
�0IDAT8���! �����+	��̼��J�HR)�[lk�=O_��(�<`�
H�"�IEND�B`�css/smoothness/images/ui-icons_454545_256x240.png000060400000010421150714137430015102 0ustar00�PNG


IHDR��IJ��PLTEDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDDFDm�:NtRNS2P���."Tp@f`� <BHJZ&0R,�4���j���8D��|�������(��$�
��b���lߝF>n~�hh�H��IDATx��]�b۶�H�儒-{i�ZK:g�lk�n��-��tI��q�q?  E�$�dK>$�>�;������P�Z����s�V��h!�Sy��0E�0}H�)-���tk��o�ܪKp�\R�Ϡ ��.�E�7��
�)�*V;~�Pe��
Bx�*�,=$z��Dؾ���� ��J����Ҹٻ����9�{ ��������Ǹ�Hp�qW@��"2'���B��[�$�� @T��i�H�/��b٥9�6�!�X�Hq`DE��*R����
HV!�%�����;�������"����
�i��]�dddddddd�����4y���5 ��	�Rb�@(�8���Cd��Ū�ݡ�,�@T�@i���b�rq0a�lX!�������p��e�,	��=4bW �{�
5���Ƭhu~�(�Q�^@���3�=��"�b��5XC@J����C�����T��7��6�������q_����5��@,r	šɩ�D�)�T�|�O��@�
ON-ՙ��	�������[n@��R���X�Im�݋(���F �@�?��=0��puL��;g$��@6η��
�K`�>п� @h գ�KV�n�"a�"���%l�@.v�$/��U^��G�:#`�`�� �u��TtK��~�ŋ�Z��5T���%�k�x�����������k��]\*�Q��
,҇���B��44�OXK�|�y��g���+_M�(�lоE�O���
 V$�T1BX���b�-�|?@ �f��B�Xr�%'@ҹA\�I��J,}��BBc��\V
��r����h(�]tI��^���}���o�צo�S3�	";��ʙ���b}��"߰	��){b$�������Gwwݾ����������a���b"��)���T@p��F_er6JvШ���"m�ޭ�M-��d7��6��x����˰6ӥ;��/����`>KrP\��_���^u�1%��O�T�M���.�}���Q3���.Nس��}��)���>����-�w�`���a�����+sy$���t���)�N�bFFFF�Be�j��nN��Vn4��,��A*��X��*��5��>��P���G��a��3	�{�oB�
�&<�L[���Nc.���ö�i=�`�Q@�d���
͆I��.I��l�`\t�[< �Cit�48��4�-r���+��f��쑱�B��CB ��MH�	i����y}���>���rx����p|z�;B��Ǐ;�b�u��r���c�K����4t��z��1�G~����`���ؚ��K��|	̔>��ۡ��O$�����~
�Ao)���0pzz
�}i�����`;AD�����m8n:�cf�A@s7�����L��� Z�/..�����h8�o��r?
�
�N��9��3B��~o_��'`��o���pO-��
:�TG�	L;��7���]`���B���%�˛>��*wT���pM��0H�}&t����^1��'Oq�r'�2P�͡��+�z,tIW''|en������=dzg��R�m�[N�S�t�K{��҉m���ؓV�t�6���ҲR`����ζN�&}�B	U��(�r<�qȁVyr�rA**��دzg6�D#��	�����YP�`�����v���s���~(�z�Ml�e�|u���Q�a�*}�+T��
�����R��Xc"+*�N�l�N�hc�Ft�<N+;-}�،Xtٕ$��à^��|uv���*��~�'E�_�5���1�q�s�*�R�`�OΒ��9�#x4�4�9�#�������WHۏ����Z��)]0�`p�<��ߝ��N��oY{�4�7��6�ǹ�>�ۗ&��������1%�Q''���?�l��׸�+&�r{�j�N�಻���4�)���`�N狌�.��߭�� ���ǣ������������)q	�2�?���n�3H�b��`�}� ����.`�������pqY1�e_b����u�7��e+N�_F����(�D�T��,���L}LL�r��mP5��|��x芥1�c���x DAb������`��M(��7���NED�~<v\	%,�ߚ/����p���R��~/^����l��np�
��7t����0_���0���l4�����_����b�0�MWΦj�m����б�Ɏ�l
|re����
�ȫ`B-����v.i��Ro�x}�
�)����%#`�Ђ�R5C���A�2su���a���sYy3��=jaeoI�7�~�.�plA��΃�
`O��)��	^�>��Mz�	�+4���BXd.��Mz��v͈������P�d8�p��<6?��8�N��*x����.��6ڍ6G����F�Z�����)���O���	!��l�S�s���h����ss�N�p8�`'�0�/<����s���}�.�@Ǩ�s�7ξ�O۟V�D���a5��a�v��]������m1��+���3��y�6�۠���>@�u50��P�s����5��1=��=�p�� *��KV�ҫ܂�����ݻc$N�4�(�X�r2###c-��賟L���δ�>��]���5�.�s���Ys�1��f0�;�'̨��Y�g銛�{�@9��	���`aC(��=%b�o�2��=���n��1�	j��B��o��S$n���#���m����=i��0�c���������i9�}�oI��	���q�T��]�W%.��(��؅�]z�\�x�
f��"]o��'u�䫵�t�k{�v;A��C3ֆw��w�R_#��X��(x��ҋ/q%��W��������hp��k_I�X���'b��/fX��K�i�"#####�QCL�i��2t��
���5���L0
����Qi�H�2;y�T�Ook;ע�ٶ`��R��Ng{z�y�!�Kx�����m�?A(v��U�~���mL�(`o/!n���mX��-{�v����[�� d�w�=�n「�������sdw��z��n�(��}O�y�~����m�
���?XU�;,���V'+��V�&�J�R��Z]᧭�:����zC'��-߆����@�y
�4���u���`Vۓw��ъ#��zP@Q�
N>2/��{�\o)����W���~a�3xL�w
:_Q�;��=p�ּ�dt���\'8�����~3�SRP���6��y+�������X�����Q�*��޺r
����̗ѭ*��޺r
g��l�/�\U^��u�$����|mb��Vn����w�\V��|���D�͊NVN���y��7�������k<;��/�E}?E*dzg�O ���~���g��/9��6����f
c�D}%��g$�Q�G�7�o��)����UJ���o�,O@�0߾Q(����;�b����w����:5�	�N�wR��N5�I�y'K�?}��:9�m��ֽ��*���@f�@jU9�m���ҫ���Í�{����$�ؗ�}��dF���p��|%!DdF��>����}G��{���@FFFFFFƦQܞH �
�����3
��u	���M�o�����~�vy�}�m�wz<�7���nP9�r�Wk���u=����|��_�n����z쿳}@���IX�n�����?��s<uPIEND�B`�css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png000060400000000170150714137430016271 0ustar00�PNG


IHDR�oX
�?IDAT8���1
�0Bѯ��l��`�6C�s��<]�:����[��&�B�A	��e7�l�QJ��ŜQY�*IEND�B`�css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png000060400000000264150714137430016125 0ustar00�PNG


IHDR(d�drz{IDATh���1� 1���7Y$t���3�;_�TUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTUAUPTüŝc�)IEND�B`�css/smoothness/images/ui-icons_2e83ff_256x240.png000060400000010421150714137430015325 0ustar00�PNG


IHDR��IJ��PLTE,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��,��ˬ�MNtRNS2P���."Tp@f`� <BHJZ&0R,�4���j���8D��|�������(��$�
��b���lߝF>n~�hh�H��IDATx��]�b۶�H�儒-{i�ZK:g�lk�n��-��tI��q�q?  E�$�dK>$�>�;������P�Z����s�V��h!�Sy��0E�0}H�)-���tk��o�ܪKp�\R�Ϡ ��.�E�7��
�)�*V;~�Pe��
Bx�*�,=$z��Dؾ���� ��J����Ҹٻ����9�{ ��������Ǹ�Hp�qW@��"2'���B��[�$�� @T��i�H�/��b٥9�6�!�X�Hq`DE��*R����
HV!�%�����;�������"����
�i��]�dddddddd�����4y���5 ��	�Rb�@(�8���Cd��Ū�ݡ�,�@T�@i���b�rq0a�lX!�������p��e�,	��=4bW �{�
5���Ƭhu~�(�Q�^@���3�=��"�b��5XC@J����C�����T��7��6�������q_����5��@,r	šɩ�D�)�T�|�O��@�
ON-ՙ��	�������[n@��R���X�Im�݋(���F �@�?��=0��puL��;g$��@6η��
�K`�>п� @h գ�KV�n�"a�"���%l�@.v�$/��U^��G�:#`�`�� �u��TtK��~�ŋ�Z��5T���%�k�x�����������k��]\*�Q��
,҇���B��44�OXK�|�y��g���+_M�(�lоE�O���
 V$�T1BX���b�-�|?@ �f��B�Xr�%'@ҹA\�I��J,}��BBc��\V
��r����h(�]tI��^���}���o�צo�S3�	";��ʙ���b}��"߰	��){b$�������Gwwݾ����������a���b"��)���T@p��F_er6JvШ���"m�ޭ�M-��d7��6��x����˰6ӥ;��/����`>KrP\��_���^u�1%��O�T�M���.�}���Q3���.Nس��}��)���>����-�w�`���a�����+sy$���t���)�N�bFFFF�Be�j��nN��Vn4��,��A*��X��*��5��>��P���G��a��3	�{�oB�
�&<�L[���Nc.���ö�i=�`�Q@�d���
͆I��.I��l�`\t�[< �Cit�48��4�-r���+��f��쑱�B��CB ��MH�	i����y}���>���rx����p|z�;B��Ǐ;�b�u��r���c�K����4t��z��1�G~����`���ؚ��K��|	̔>��ۡ��O$�����~
�Ao)���0pzz
�}i�����`;AD�����m8n:�cf�A@s7�����L��� Z�/..�����h8�o��r?
�
�N��9��3B��~o_��'`��o���pO-��
:�TG�	L;��7���]`���B���%�˛>��*wT���pM��0H�}&t����^1��'Oq�r'�2P�͡��+�z,tIW''|en������=dzg��R�m�[N�S�t�K{��҉m���ؓV�t�6���ҲR`����ζN�&}�B	U��(�r<�qȁVyr�rA**��دzg6�D#��	�����YP�`�����v���s���~(�z�Ml�e�|u���Q�a�*}�+T��
�����R��Xc"+*�N�l�N�hc�Ft�<N+;-}�،Xtٕ$��à^��|uv���*��~�'E�_�5���1�q�s�*�R�`�OΒ��9�#x4�4�9�#�������WHۏ����Z��)]0�`p�<��ߝ��N��oY{�4�7��6�ǹ�>�ۗ&��������1%�Q''���?�l��׸�+&�r{�j�N�಻���4�)���`�N狌�.��߭�� ���ǣ������������)q	�2�?���n�3H�b��`�}� ����.`�������pqY1�e_b����u�7��e+N�_F����(�D�T��,���L}LL�r��mP5��|��x芥1�c���x DAb������`��M(��7���NED�~<v\	%,�ߚ/����p���R��~/^����l��np�
��7t����0_���0���l4�����_����b�0�MWΦj�m����б�Ɏ�l
|re����
�ȫ`B-����v.i��Ro�x}�
�)����%#`�Ђ�R5C���A�2su���a���sYy3��=jaeoI�7�~�.�plA��΃�
`O��)��	^�>��Mz�	�+4���BXd.��Mz��v͈������P�d8�p��<6?��8�N��*x����.��6ڍ6G����F�Z�����)���O���	!��l�S�s���h����ss�N�p8�`'�0�/<����s���}�.�@Ǩ�s�7ξ�O۟V�D���a5��a�v��]������m1��+���3��y�6�۠���>@�u50��P�s����5��1=��=�p�� *��KV�ҫ܂�����ݻc$N�4�(�X�r2###c-��賟L���δ�>��]���5�.�s���Ys�1��f0�;�'̨��Y�g銛�{�@9��	���`aC(��=%b�o�2��=���n��1�	j��B��o��S$n���#���m����=i��0�c���������i9�}�oI��	���q�T��]�W%.��(��؅�]z�\�x�
f��"]o��'u�䫵�t�k{�v;A��C3ֆw��w�R_#��X��(x��ҋ/q%��W��������hp��k_I�X���'b��/fX��K�i�"#####�QCL�i��2t��
���5���L0
����Qi�H�2;y�T�Ook;ע�ٶ`��R��Ng{z�y�!�Kx�����m�?A(v��U�~���mL�(`o/!n���mX��-{�v����[�� d�w�=�n「�������sdw��z��n�(��}O�y�~����m�
���?XU�;,���V'+��V�&�J�R��Z]᧭�:����zC'��-߆����@�y
�4���u���`Vۓw��ъ#��zP@Q�
N>2/��{�\o)����W���~a�3xL�w
:_Q�;��=p�ּ�dt���\'8�����~3�SRP���6��y+�������X�����Q�*��޺r
����̗ѭ*��޺r
g��l�/�\U^��u�$����|mb��Vn����w�\V��|���D�͊NVN���y��7�������k<;��/�E}?E*dzg�O ���~���g��/9��6����f
c�D}%��g$�Q�G�7�o��)����UJ���o�,O@�0߾Q(����;�b����w����:5�	�N�wR��N5�I�y'K�?}��:9�m��ֽ��*���@f�@jU9�m���ҫ���Í�{����$�ؗ�}��dF���p��|%!DdF��>����}G��{���@FFFFFFƦQܞH �
�����3
��u	���M�o�����~�vy�}�m�wz<�7���nP9�r�Wk���u=����|��_�n����z쿳}@���IX�n�����?��s<uPIEND�B`�css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png000060400000000156150714137430016137 0ustar00�PNG


IHDR�oX
�5IDAT8���1
 �����y�U�X��H�a��@�[�{UU�u@��7���	��D�FIEND�B`�css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png000060400000000262150714137430016255 0ustar00�PNG


IHDR(d�drzyIDATh���1� �R��	7��(Ț�����V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	V��`%X	Vj��)2�NIEND�B`�css/smoothness/jquery-ui-1.8.13.custom.css000060400000102643150714137430014250 0ustar00/*
 * jQuery UI CSS Framework 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Theming/API
 */

/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }


/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }


/* Icons
----------------------------------*/

/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }


/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/*
 * jQuery UI CSS Framework 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Theming/API
 *
 * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
 */


/* Component containers
----------------------------------*/
.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; }
.ui-widget .ui-widget { font-size: 1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; }
.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; }
.ui-widget-content a { color: #222222; }
.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
.ui-widget-header a { color: #222222; }

/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
.ui-widget :active { outline: none; }

/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; }
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }

/* Icons
----------------------------------*/

/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }

/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-off { background-position: -96px -144px; }
.ui-icon-radio-on { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }


/* Misc visuals
----------------------------------*/

/* Corner radius */
.ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; }
.ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
.ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
.ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
.ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
.ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
.ui-corner-right {  -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
.ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
.ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; }

/* Overlays */
.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/*
 * jQuery UI Resizable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Resizable#theming
 */
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;
	/* http://bugs.jqueryui.com/ticket/7233
	 - Resizable: resizable handles fail to work in IE if transparent and content overlaps
	*/
	background-image:url(data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=);
}
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*
 * jQuery UI Selectable 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Selectable#theming
 */
.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
/*
 * jQuery UI Accordion 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Accordion#theming
 */
/* IE/Win - Fix animation bug - #4615 */
.ui-accordion { width: 100%; }
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
.ui-accordion .ui-accordion-li-fix { display: inline; }
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
.ui-accordion .ui-accordion-content-active { display: block; }
/*
 * jQuery UI Autocomplete 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Autocomplete#theming
 */
.ui-autocomplete { position: absolute; cursor: default; }	

/* workarounds */
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */

/*
 * jQuery UI Menu 1.8.13
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Menu#theming
 */
.ui-menu {
	list-style:none;
	padding: 2px;
	margin: 0;
	display:block;
	float: left;
}
.ui-menu .ui-menu {
	margin-top: -3px;
}
.ui-menu .ui-menu-item {
	margin:0;
	padding: 0;
	zoom: 1;
	float: left;
	clear: left;
	width: 100%;
}
.ui-menu .ui-menu-item a {
	text-decoration:none;
	display:block;
	padding:.2em .4em;
	line-height:1.5;
	zoom:1;
}
.ui-menu .ui-menu-item a.ui-state-hover,
.ui-menu .ui-menu-item a.ui-state-active {
	font-weight: normal;
	margin: -1px;
}
/*
 * jQuery UI Button 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Button#theming
 */
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
.ui-button-icons-only { width: 3.4em; } 
button.ui-button-icons-only { width: 3.7em; } 

/*button text element */
.ui-button .ui-button-text { display: block; line-height: 1.4;  }
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
/* no icon support for input elements, provide padding by default */
input.ui-button { padding: .4em 1em; }

/*button icon element(s) */
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }

/*button sets*/
.ui-buttonset { margin-right: 7px; }
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }

/* workarounds */
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
/*
 * jQuery UI Dialog 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Dialog#theming
 */
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative;  }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } 
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }
/*
 * jQuery UI Slider 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Slider#theming
 */
.ui-slider { position: relative; text-align: left; }
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }

.ui-slider-horizontal { height: .8em; }
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
.ui-slider-horizontal .ui-slider-range-max { right: 0; }

.ui-slider-vertical { width: .8em; height: 100px; }
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
.ui-slider-vertical .ui-slider-range-max { top: 0; }/*
 * jQuery UI Tabs 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Tabs#theming
 */
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }
/*
 * jQuery UI Datepicker 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Datepicker#theming
 */
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month, 
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi { width:auto; }
.ui-datepicker-multi .ui-datepicker-group { float:left; }
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:both; width:100%; }

/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }

/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
    display: none; /*sorry for IE5*/
    display/**/: block; /*sorry for IE5*/
    position: absolute; /*must have*/
    z-index: -1; /*must have*/
    filter: mask(); /*must have*/
    top: -4px; /*must have*/
    left: -4px; /*must have*/
    width: 200px; /*must have*/
    height: 200px; /*must have*/
}/*
 * jQuery UI Progressbar 1.8.13
 *
 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Progressbar#theming
 */
.ui-progressbar { height:2em; text-align: left; }
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }