mirror of
https://gitee.com/ShopeX/OMS
synced 2026-04-04 22:36:52 +08:00
22 lines
9.7 KiB
JavaScript
22 lines
9.7 KiB
JavaScript
|
|
|
|
(function(){var a,c=function(){if(a)return a;var b="";$H({WM:["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],aN:["#f00","#f90","#ff0","#0f0","#0ff","#00f","#90f","#f0f"],XM:["#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d0e0e3","#cfe2f3","#d9d2e9","#ead1dc","#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#9fc5e8","#b4a7d6","#d5a6bd","#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6fa8dc","#8e7cc3","#c27ba0","#cc0000","#e69138","#f1c232","#6aa84f","#45818e","#3d85c6","#674ea7","#a64d79",
|
|
"#990000","#b45f06","#bf9000","#38761d","#134f5c","#0b5394","#351c75","#741b47","#660000","#783f04","#7f6000","#274e13","#0c343d","#073763","#20124d","#4c1130"]}).each(function(d){b+='<div class="goog-palette"><table cellspacing="0" cellpadding="0" class="goog-palette-table"><tbody class="goog-palette-body">';d.each(function(f,e){var h=f.hexToRgb();if(e==0)b+='<tr class="goog-palette-row">';b+='<td class="goog-palette-cell"><div title="'+h+'" style="background-color: '+h+';" class="goog-palette-colorswatch"/></td>';
|
|
if((e+1)%8==0)b+=e+1==d.length?"</tr>":'</tr><tr class="goog-palette-row">'});b+="</tbody></table></div>"});return a=b};GoogColorPicker=new Class({Implements:[Events,Options],options:{onSelect:Class.empty,onShow:Class.empty,offsets:{x:10,y:10}},initialize:function(b,d){this.setOptions(d);this.el=$(b);this.showing=false;var f=this;this.el.addEvents({click:function(e){f.showPanel(e)},mouseleave:function(){f.selecting=false;f.blurEl()},mouseenter:function(){f.selecting=true}})},onSelect:function(b,d){this.fireEvent("select",
|
|
[d,b,this.el]);this.selecting=false;this.hidePanel()},blurEl:function(){this.hd=this.hidePanel.delay(850,this)},position:function(b){var d=window.getSize(),f=window.getScroll(),e={x:this.gcp_panel.offsetWidth,y:this.gcp_panel.offsetHeight},h={x:"left",y:"top"},g;for(g in h){var j=b.page[g]+this.options.offsets[g];if(j+e[g]-f[g]>d[g])j=b.page[g]-this.options.offsets[g]-e[g];this.gcp_panel.setStyle(h[g],j)}},hidePanel:function(){this.selecting||this.gcp_panel&&this.gcp_panel.setStyle("visibility","hidden")},
|
|
showPanel:function(b){var d=this,f=this.el.uid||$uid(this.el);if(!$("gcp_panel"+f)){var e=this.gcp_panel=$("gcp_panel"+f)||(new Element("div",{id:"gcp_panel"+f,"class":"goog-palette-panel"})).setHTML(c()).inject(document.body);e.addEvents({mousemove:function(){d.selecting=true},mouseleave:function(){d.selecting=false;d.blurEl()}});$ES(".goog-palette-cell",e).addEvents({mouseover:function(){this.addClass("goog-palette-cell-hover")},mouseleave:function(){this.removeClass("goog-palette-cell-hover")},
|
|
click:function(){var h=this.getElement(".goog-palette-colorswatch").get("title"),g=h.rgbToHex();d.onSelect(h,g)}})}this.position(b);this.fireEvent("show",this.el,this);$(b.target).store("associate",e);this.gcp_panel.setStyle("visibility","visible")}})})();function getContent(a){return $(a).getParent(".dialogContent")||$(a).getParent(".content-main")||document.body}
|
|
var DatePickers=new Class({Implements:[Events,Options],options:{onShow:function(a){a.setStyle("visibility","visible")},onHide:function(a){a.setStyle("visibility","hidden").setStyle("left",-300)},showDelay:100,hideDelay:100,className:"x-calendar",offsets:{x:0,y:20},dateformat:"-",days:["SUN","MON","TUE","WED","THU","FIR","STA"],months:LANG_Datepicker.months,weekFirstDay:1},initialize:function(){var a=Array.link(arguments,{options:Object.type,elements:$defined});this.setOptions(a.options||null);this.lock=
|
|
false;this.datepicker=(new Element("div")).addEvents({mouseover:function(){this.lock=true}.bind(this),mouseout:function(){this.lock=false}.bind(this)}).inject(document.body);this.options.className&&this.datepicker.addClass(this.options.className);(new Element("div",{"class":"x-datepicker-top"})).inject(this.datepicker);this.container=(new Element("div",{"class":"x-datepicker"})).inject(this.datepicker).addEvent("click",function(c){c.stopPropagation()});(new Element("div",{"class":"x-datepicker-bottom"})).inject(this.datepicker);
|
|
this.datepicker.setStyles({position:"absolute",top:0,left:0,visibility:"hidden",zIndex:65535});if(a.elements){a.elements.each(function(c){c.store("bindColorPicker",true)});this.attach(a.elements)}},attach:function(a){$$(a).each(function(c){var b=c.retrieve("datepicker:dateformat",c.get("accept"));if(!b){b=this.options.dateformat;c.store("datepicker:dateformat",b)}var d=c.retrieve("datepicker:datevalue",c.get("value"));if(!d){d=this.format(new Date,b);c.store("datepicker:datevalue",d)}c.store("datepicker:current",
|
|
this.unformat(d,b));b=c.retrieve("datepicker:focus",this.elementFocus.bindWithEvent(this,c));d=c.retrieve("datepicker:blur",this.elementBlur.bindWithEvent(this,c));c.addEvents({focus:b,blur:d});c.store("datepicker:native",c.get("accept"));c.erase("dateformat")},this);return this},detach:function(a){$$(a).each(function(c){c.removeEvent("onfocus",c.retrieve("datepicker:focus")||$empty);c.removeEvent("onblur",c.retrieve("datepicker:blur")||$empty);c.eliminate("datepicker:focus").eliminate("datepicker:blur");
|
|
var b=c.retrieve("datepicker:native");b&&c.set("dateformat",b)});return this},elementFocus:function(a,c){if(!this.datepicker.retrieve("injected")){this.datepicker.inject(document.body);this.datepicker.store("injected",true)}this.el=c;var b=c.retrieve("datepicker:current");this.curFullYear=b[0];this.curMonth=b[1];this.curDate=b[2];this.build();this.timer=$clear(this.timer);this.timer=this.show.delay(this.options.showDelay,this);this.position({page:c.getPosition()})},elementChange:function(){if(this.el.get("real")){var a=
|
|
new Date;if(new Date(this.curFullYear,this.curMonth,this.curDate)<new Date(a.getFullYear(),a.getMonth(),a.getDate()))return alert(LANG_Datepicker.dateerror)}this.el.store("datepicker:current",[this.curFullYear,this.curMonth,this.curDate]);this.el.set("value",this.format(new Date(this.curFullYear,this.curMonth,this.curDate),this.el.retrieve("datepicker:dateformat")));$clear(this.timer);this.timer=this.hide.delay(this.options.hideDelay,this)},elementBlur:function(){if(!this.lock){$clear(this.timer);
|
|
this.timer=this.hide.delay(this.options.hideDelay,this)}},position:function(a){var c=window.getSize(),b=window.getScroll(),d={x:this.datepicker.offsetWidth,y:this.datepicker.offsetHeight},f={x:"left",y:"top"},e;for(e in f){var h=a.page[e]+this.options.offsets[e];if(h+d[e]-b[e]>c[e])h=a.page[e]-this.options.offsets[e]-d[e];this.datepicker.setStyle(f[e],h)}},show:function(){this.fireEvent("show",this.datepicker)},hide:function(){this.fireEvent("hide",this.datepicker)},build:function(){$A(this.container.childNodes).each(Element.dispose);
|
|
var a=(new Element("table")).set({cellpadding:"0",cellspacing:"0"}).inject(this.container);this.caption().inject(a);this.thead().inject(a);this.tbody().inject(a)},navigate:function(a,c){switch(a){case "m":var b=this.curMonth+c;if(b<0||b==12){this.curMonth=b<0?11:0;this.navigate("y",c)}else this.curMonth=b;break;case "y":this.curFullYear+=c}this.el.store("datepicker:current",[this.curFullYear,this.curMonth,this.curDate]);this.el.focus()},caption:function(){var a={prev:{month:true,year:true},next:{month:true,
|
|
year:true}},c=new Element("caption"),b=(new Element("a")).addClass("prev").appendText("<"),d=(new Element("a")).addClass("next").appendText(">"),f=(new Element("span")).addClass("year").inject(c);a.prev.year&&b.clone().addEvent("click",function(){this.navigate("y",-1)}.bind(this)).inject(f);(new Element("span")).set("text",this.curFullYear).addEvent("mousewheel",function(e){e.stop();this.navigate("y",e.wheel<0?-1:1);this.build()}.bind(this)).inject(f);a.next.year&&d.clone().addEvent("click",function(){this.navigate("y",
|
|
1)}.bind(this)).inject(f);f=(new Element("span")).addClass("month").inject(c);a.prev.month&&b.clone().addEvent("click",function(){this.navigate("m",-1)}.bind(this)).inject(f);(new Element("span")).set("text",this.options.months[this.curMonth]).addEvent("mousewheel",function(e){e.stop();this.navigate("m",e.wheel<0?-1:1);this.build()}.bind(this)).inject(f);a.next.month&&d.clone().addEvent("click",function(){this.navigate("m",1)}.bind(this)).inject(f);return c},thead:function(){var a=new Element("thead"),
|
|
c=(new Element("tr")).inject(a);for(i=0;i<7;i++)(new Element("th")).set("text",this.options.days[(this.options.weekFirstDay+i)%7].substr(0,3)).inject(c);return a},tbody:function(){var a=new Date(this.curFullYear,this.curMonth,1),c=(a.getDay()-this.options.weekFirstDay+7)%7,b=(new Date(this.curFullYear,this.curMonth+1,0)).getDate(),d=(new Date(this.curFullYear,this.curMonth,0)).getDate();a=this.el.get("value")?this.unformat(this.el.get("value"),this.el.retrieve("datepicker:dateformat")):false;var f=
|
|
(new Date(a[0],a[1],a[2])).getTime();a=new Date;a=(new Date(a.getFullYear(),a.getMonth(),a.getDate())).getTime();var e=new Element("tbody");e.addEvent("mousewheel",function(k){k.stop();this.navigate("m",k.wheel<0?-1:1);this.build()}.bind(this));for(var h=1;h<43;h++){if((h-1)%7==0)tr=(new Element("tr")).inject(e);var g=(new Element("td")).inject(tr),j=h-c,l=new Date(this.curFullYear,this.curMonth,j);if(j<1){j=d+j;g.addClass("inactive")}else if(j>b){j-=b;g.addClass("inactive")}else{if(l.getTime()==
|
|
f)g.addClass("hilite");else l.getTime()==a&&g.addClass("today");g.addEvents({click:function(k){this.curDate=k;this.elementChange()}.bind(this,j),mouseover:function(k){k.addClass("hilite")}.bind(this,g),mouseout:function(k,m){m.getTime()!=f&&k.removeClass("hilite")}.bind(this,[g,l])}).addClass("active")}g.set("text",j)}return e},unformat:function(a,c){var b=a.split(c),d=Array(3);if(b.length<3||!b[0]||!b[1]||!b[2])return[(new Date).getFullYear(),(new Date).getMonth(),(new Date).getDate()];d[0]=b[0].toInt();
|
|
d[1]=b[1].toInt()-1;d[2]=b[2].toInt();return d},format:function(a,c){if(a){var b=a.getDate();a.getDay();var d=a.getMonth()+1;return[a.getFullYear()+"",d,b].join(c)}else return""}});Element.extend({makeCalable:function(a){if(!this.retrieve("bindColorPicker"))return new DatePickers([this],a)}}); |