Changeset 5692
- Timestamp:
- 03/06/08 18:30:57 (9 months ago)
- Files:
-
- spinelz/trunk/compress/javascripts/spinelz/spinelz_for_rubricks.js (modified) (2 diffs)
- spinelz/trunk/compress/javascripts/spinelz/window.js (modified) (2 diffs)
- spinelz/trunk/compress/javascripts/spinelz_lib/spinelz_util.js (modified) (15 diffs)
- spinelz/trunk/compress/javascripts/spinelz_lib/spinelz_util_for_rubricks.js (modified) (15 diffs)
- spinelz/trunk/src/javascripts/spinelz/window.js (modified) (2 diffs)
- spinelz/trunk/src/javascripts/spinelz_lib/spinelz_util.js (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
spinelz/trunk/compress/javascripts/spinelz/spinelz_for_rubricks.js
r5691 r5692 5446 5446 this.opening=true; 5447 5447 Element.show(this.element); 5448 if(this.options.modal &&!UserAgent.isMac()){5449 Modal.mask(this.element,{zIndex:_20} );5448 if(this.options.modal){ 5449 Modal.mask(this.element,{zIndex:_20},UserAgent.isMac()); 5450 5450 }else{ 5451 5451 this.setWindowZindex(_20); … … 5475 5475 } 5476 5476 if(this.options.modal){ 5477 Modal.unmask( );5477 Modal.unmask(UserAgent.isMac()); 5478 5478 } 5479 5479 this.options.endClose(this); spinelz/trunk/compress/javascripts/spinelz/window.js
r5605 r5692 195 195 this.opening=true; 196 196 Element.show(this.element); 197 if(this.options.modal &&!UserAgent.isMac()){198 Modal.mask(this.element,{zIndex:_20} );197 if(this.options.modal){ 198 Modal.mask(this.element,{zIndex:_20},UserAgent.isMac()); 199 199 }else{ 200 200 this.setWindowZindex(_20); … … 224 224 } 225 225 if(this.options.modal){ 226 Modal.unmask( );226 Modal.unmask(UserAgent.isMac()); 227 227 } 228 228 this.options.endClose(this); spinelz/trunk/compress/javascripts/spinelz_lib/spinelz_util.js
r5578 r5692 472 472 return _a1; 473 473 }}; 474 var Modal={maskId:"modalMask",maskClass:"modal_mask",maskClassIE:"modal_mask_ie",element:null,snaps:null,listener:null,resizeListener:null,cover:null,excepteds:null,maskCallbacks:[],unmaskCallbacks:[],count:0,tabKey:9,mask:function(_a2 ){475 this._mask.callAfterLoading(this,_a2 );474 var Modal={maskId:"modalMask",maskClass:"modal_mask",maskClassIE:"modal_mask_ie",element:null,snaps:null,listener:null,resizeListener:null,cover:null,excepteds:null,maskCallbacks:[],unmaskCallbacks:[],count:0,tabKey:9,mask:function(_a2,_a3,_a4){ 475 this._mask.callAfterLoading(this,_a2,_a3,_a4); 476 476 this._control_tab_key(); 477 },unmask:function( ){478 this._unmask( );477 },unmask:function(_a5){ 478 this._unmask(_a5); 479 479 this._control_tab_key(); 480 480 },unmaskAll:function(){ 481 481 var max=10; 482 var _a 4=0;483 while(this._isMasked()&&(_a 4<max)){482 var _a7=0; 483 while(this._isMasked()&&(_a7<max)){ 484 484 this._unmask(); 485 _a 4++;485 _a7++; 486 486 } 487 487 this._control_tab_key(); 488 },addMaskCallback:function(_a 5){488 },addMaskCallback:function(_a8){ 489 489 if(!this.maskCallbacks.any(function(c){ 490 return c==_a 5;490 return c==_a8; 491 491 })){ 492 this.maskCallbacks.push(_a 5);493 } 494 },removeMaskCallback:function(_a 7){492 this.maskCallbacks.push(_a8); 493 } 494 },removeMaskCallback:function(_aa){ 495 495 this.maskCallbacks=this.maskCallbacks.reject(function(c){ 496 return c==_a 7;496 return c==_aa; 497 497 }); 498 498 },clearMaskCallback:function(){ 499 499 this.maskCallbacks=[]; 500 },addUnmaskCallback:function(_a 9){500 },addUnmaskCallback:function(_ac){ 501 501 if(!this.unmaskCallbacks.any(function(c){ 502 return c==_a 9;502 return c==_ac; 503 503 })){ 504 this.unmaskCallbacks.push(_a 9);505 } 506 },removeUnmaskCallback:function(_a b){504 this.unmaskCallbacks.push(_ac); 505 } 506 },removeUnmaskCallback:function(_ae){ 507 507 this.unmaskCallbacks=this.unmaskCallbacks.reject(function(c){ 508 return c==_a b;508 return c==_ae; 509 509 }); 510 510 },clearUnmaskCallback:function(){ 511 511 this.unmaskCallbacks=[]; 512 },_mask:function(_ad){ 513 var _ae=Object.extend({cssPrefix:"custom_",zIndex:null},arguments[1]||{}); 512 },_mask:function(_b0){ 513 var _b1=Object.extend({cssPrefix:"custom_",zIndex:null},arguments[1]||{}); 514 var _b2=arguments[2]; 514 515 if(Modal.element){ 515 Modal._snap(_ ad);516 Modal._snap(_b0); 516 517 Modal._rebuildMask(); 517 518 }else{ 518 519 Modal.snaps=[]; 519 520 Modal.excepteds=[]; 520 Modal._buildMask(_ ae.cssPrefix);521 Modal._buildMask(_b1.cssPrefix); 521 522 Modal.cover=new IECover(Modal.element,{transparent:true}); 522 523 } 523 Modal._setZindex(_ad,_ae.zIndex); 524 if(_b2){ 525 document.body.style.overflow="hidden"; 526 Element.setStyle(Modal.element,{position:"absolute"}); 527 } 528 Modal._setZindex(_b0,_b1.zIndex); 524 529 Modal._setFullSize(); 525 if(!Modal.hasExcepted(_ ad)){526 Modal.excepteds.push(_ ad);530 if(!Modal.hasExcepted(_b0)){ 531 Modal.excepteds.push(_b0); 527 532 } 528 533 this.count++; 529 this.maskCallbacks.each(function(_ af){530 _ af(_ad);531 }); 532 },_unmask:function( ){534 this.maskCallbacks.each(function(_b3){ 535 _b3(_b0); 536 }); 537 },_unmask:function(_b4){ 533 538 if(Modal.element){ 534 539 if(Modal.snaps.length==0){ … … 538 543 Element.remove(Modal.element); 539 544 Modal.element=null; 545 if(_b4){ 546 document.body.style.overflow="visible"; 547 } 540 548 }else{ 541 549 Element.setStyle(Modal.element,{zIndex:Modal.snaps.pop()}); … … 544 552 } 545 553 this.count++; 546 this.unmaskCallbacks.each(function(_b 0){547 _b 0();554 this.unmaskCallbacks.each(function(_b5){ 555 _b5(); 548 556 }); 549 557 },_addEvent:function(){ … … 559 567 },_isMasked:function(){ 560 568 return Modal.element&&Element.visible(Modal.element); 561 },_snap:function(_b 1){562 var _b 2=Element.getStyle(Modal.element,"zIndex");563 if(_b 2&&Modal._isMasked()&&!Modal.hasExcepted(_b1)){564 Modal.snaps.push(_b 2);565 } 566 },_setZindex:function(_b 3,_b4){567 _b 4=ZindexManager.getIndex(_b4);568 Element.setStyle(Modal.element,{zIndex:_b 4});569 _b 3=Element.makePositioned($(_b3));570 Element.setStyle(_b 3,{zIndex:++_b4});569 },_snap:function(_b6){ 570 var _b7=Element.getStyle(Modal.element,"zIndex"); 571 if(_b7&&Modal._isMasked()&&!Modal.hasExcepted(_b6)){ 572 Modal.snaps.push(_b7); 573 } 574 },_setZindex:function(_b8,_b9){ 575 _b9=ZindexManager.getIndex(_b9); 576 Element.setStyle(Modal.element,{zIndex:_b9}); 577 _b8=Element.makePositioned($(_b8)); 578 Element.setStyle(_b8,{zIndex:++_b9}); 571 579 },_setFullSize:function(){ 572 580 Modal.element.setStyle({width:Element.getWindowWidth()+"px",height:Element.getWindowHeight()+"px"}); … … 574 582 Modal.cover.resetSize(); 575 583 } 576 },_buildMask:function(_b 5){577 var _b 6=Builder.node("div",{id:Modal.maskId});578 Modal._setClassNames(_b 6,_b5);579 document.body.appendChild(_b 6);580 Modal.element=_b 6;584 },_buildMask:function(_ba){ 585 var _bb=Builder.node("div",{id:Modal.maskId}); 586 Modal._setClassNames(_bb,_ba); 587 document.body.appendChild(_bb); 588 Modal.element=_bb; 581 589 Modal._addEvent(); 582 },_setClassNames:function(_b 7,_b8){583 var _b 9=(UserAgent.isIE())?Modal.maskClassIE:Modal.maskClass;584 Element.addClassName(_b 7,_b9);585 Element.addClassName(_b 7,_b8+_b9);590 },_setClassNames:function(_bc,_bd){ 591 var _be=(UserAgent.isIE())?Modal.maskClassIE:Modal.maskClass; 592 Element.addClassName(_bc,_be); 593 Element.addClassName(_bc,_bd+_be); 586 594 },_rebuildMask:function(){ 587 595 document.body.appendChild(Modal.element); … … 594 602 return src.spinelzMaskResult; 595 603 } 596 var _ bb=false;597 var _ bc=this.excepteds.last();598 var _ bd=src;599 if(_ bc&&Element.descendantOf(src,_bc)){600 _ bb=true;601 }else{ 602 var _ be=Element.getStyle(Modal.element,"zIndex");603 var _ bf=null;604 var _c0=false; 605 var _c1=this.excepteds.last(); 606 var _c2=src; 607 if(_c1&&Element.descendantOf(src,_c1)){ 608 _c0=true; 609 }else{ 610 var _c3=Element.getStyle(Modal.element,"zIndex"); 611 var _c4=null; 604 612 while((src=src.parentNode)&&src!=document.body){ 605 if(src.style&&(_ bf=Element.getStyle(src,"zIndex"))){606 _ bb=(_bf>_be);613 if(src.style&&(_c4=Element.getStyle(src,"zIndex"))){ 614 _c0=(_c4>_c3); 607 615 break; 608 616 } 609 617 } 610 618 } 611 _ bd.spinelzMaskCount=this.count;612 _ bd.spinelzMaskResult=_bb;613 return _ bb;614 },_handleEvent:function(_c 0){615 var src=Event.element(_c 0);616 if(!(Modal._isOutOfModal(src)||(_c 0.keyCode&&(_c0.keyCode==this.tabKey)))){617 Event.stop(_c 0);618 } 619 },_onResize:function(_c 2){619 _c2.spinelzMaskCount=this.count; 620 _c2.spinelzMaskResult=_c0; 621 return _c0; 622 },_handleEvent:function(_c5){ 623 var src=Event.element(_c5); 624 if(!(Modal._isOutOfModal(src)||(_c5.keyCode&&(_c5.keyCode==this.tabKey)))){ 625 Event.stop(_c5); 626 } 627 },_onResize:function(_c7){ 620 628 Modal._setFullSize(); 621 },hasExcepted:function(_c 3){622 return (Modal.excepteds||[]).any(function(_c 4){623 return _c 4.id==_c3.id;624 }); 625 },_control_tab_key:function(_c 5){626 if(!_c 5){627 _c 5=$A(document.body.getElementsByTagName("form"));628 } 629 _c 5.each(function(_c6){630 if(!Modal._isOutOfModal(_c 6)){631 Form.getElements(_c 6).each(function(el){629 },hasExcepted:function(_c8){ 630 return (Modal.excepteds||[]).any(function(_c9){ 631 return _c9.id==_c8.id; 632 }); 633 },_control_tab_key:function(_ca){ 634 if(!_ca){ 635 _ca=$A(document.body.getElementsByTagName("form")); 636 } 637 _ca.each(function(_cb){ 638 if(!Modal._isOutOfModal(_cb)){ 639 Form.getElements(_cb).each(function(el){ 632 640 el.tabIndex=-1; 633 641 }); 634 642 }else{ 635 Form.getElements(_c 6).each(function(el){643 Form.getElements(_cb).each(function(el){ 636 644 el.tabIndex=null; 637 645 }); … … 641 649 var IECover=Class.create(); 642 650 IECover.src="javascript:false;"; 643 IECover.prototype={idSuffix:"iecover",initialize:function(_c 9){651 IECover.prototype={idSuffix:"iecover",initialize:function(_ce){ 644 652 this.options=Object.extend({transparent:false,padding:0},arguments[1]||{}); 645 653 if(document.all){ 646 _c 9=$(_c9);647 this.id=_c 9.id.appendSuffix(this.idSuffix);648 this._build(_c 9);654 _ce=$(_ce); 655 this.id=_ce.id.appendSuffix(this.idSuffix); 656 this._build(_ce); 649 657 this.resetSize(); 650 658 } 651 659 },resetSize:function(){ 652 660 if(this.element){ 653 var _c a=this.element.parentNode;654 var _ cb=this.options.padding;655 this.element.width=_c a.offsetWidth-_cb+"px";656 this.element.height=Element.getHeight(_c a)-_cb+"px";657 } 658 },_build:function(_ cc){659 var _ cd=this.options.padding/2;660 var _ ce={position:"absolute",top:_cd+"px",left:_cd+"px"};661 var _cf=this.element.parentNode; 662 var _d0=this.options.padding; 663 this.element.width=_cf.offsetWidth-_d0+"px"; 664 this.element.height=Element.getHeight(_cf)-_d0+"px"; 665 } 666 },_build:function(_d1){ 667 var _d2=this.options.padding/2; 668 var _d3={position:"absolute",top:_d2+"px",left:_d2+"px"}; 661 669 if(this.options.transparent){ 662 _ ce.filter="alpha(opacity=0)";663 } 664 if(_ cc.buildedIECover&&$(this.id)){670 _d3.filter="alpha(opacity=0)"; 671 } 672 if(_d1.buildedIECover&&$(this.id)){ 665 673 this.element=$(this.id); 666 674 }else{ 667 675 this.element=Builder.node("iframe",{src:IECover.src,id:this.id,frameborder:0}); 668 676 } 669 Element.setStyle(this.element,_ ce);670 var _ cf=Element.down(_cc,0);671 if(_ cf){672 Element.makePositioned(_ cf);673 } 674 _ cc.insertBefore(this.element,_cc.firstChild);675 _ cc.buildedIECover=true;677 Element.setStyle(this.element,_d3); 678 var _d4=Element.down(_d1,0); 679 if(_d4){ 680 Element.makePositioned(_d4); 681 } 682 _d1.insertBefore(this.element,_d1.firstChild); 683 _d1.buildedIECover=true; 676 684 }}; 677 685 var UserAgent={getUserAgent:function(){ … … 688 696 var ShortcutManager=Class.create(); 689 697 ShortcutManager.prototype={initialize:function(){ 690 var _d 0={detectKeyup:false,initialStarted:true,preventDefault:true};691 this.options=Object.extend(_d 0,arguments[0]||{});698 var _d5={detectKeyup:false,initialStarted:true,preventDefault:true}; 699 this.options=Object.extend(_d5,arguments[0]||{}); 692 700 this.keydownListener=this.eventKeydown.bindAsEventListener(this); 693 701 if(this.options.detectKeyup){ … … 715 723 Event.observe(document,"keyup",this.keyupListener); 716 724 } 717 },add:function(c1,c2,_d 3){725 },add:function(c1,c2,_d8){ 718 726 if(c1.constructor==Array){ 719 var _d 4=this;720 c1.each(function(_d 5){721 _d 4._add_or_remove_function(_d5[0],_d5[1],_d3);722 }); 723 }else{ 724 this._add_or_remove_function(c1,c2,_d 3);727 var _d9=this; 728 c1.each(function(_da){ 729 _d9._add_or_remove_function(_da[0],_da[1],_d8); 730 }); 731 }else{ 732 this._add_or_remove_function(c1,c2,_d8); 725 733 } 726 734 },destroy:function(){ … … 729 737 Event.stopObserving(document,"keyup",this.keyupListener); 730 738 } 731 },eventKeydown:function(_d 6){739 },eventKeydown:function(_db){ 732 740 if(this.executable){ 733 var _d 7;741 var _dc; 734 742 var key=""; 735 _d 6=_d6||window.event;736 if(_d 6.keyCode){737 if(_d 6.altKey){743 _db=_db||window.event; 744 if(_db.keyCode){ 745 if(_db.altKey){ 738 746 key+="a"; 739 747 } 740 if(_d 6.ctrlKey){748 if(_db.ctrlKey){ 741 749 key+="c"; 742 750 } 743 if(_d 6.shiftKey){751 if(_db.shiftKey){ 744 752 key+="s"; 745 753 } … … 747 755 key="n"; 748 756 } 749 _d 7=this._mergeNumKey(_d6.keyCode);750 if(this.keydownFunc[key][_d 7]){751 this.keydownFunc[key][_d 7]();757 _dc=this._mergeNumKey(_db.keyCode); 758 if(this.keydownFunc[key][_dc]){ 759 this.keydownFunc[key][_dc](); 752 760 if(this.options.preventDefault){ 753 Event.stop(_d 6);754 } 755 } 756 } 757 } 758 },eventKeyup:function(_d 9){761 Event.stop(_db); 762 } 763 } 764 } 765 } 766 },eventKeyup:function(_de){ 759 767 if(this.executable){ 760 var _d a;761 _d 9=_d9||window.event;762 if(_d 9.keyCode){763 _d a=this._mergeNumKey(_d9.keyCode);764 if(this.keyupFunc[_d a]){765 this.keyupFunc[_d a]();768 var _df; 769 _de=_de||window.event; 770 if(_de.keyCode){ 771 _df=this._mergeNumKey(_de.keyCode); 772 if(this.keyupFunc[_df]){ 773 this.keyupFunc[_df](); 766 774 if(this.options.preventDefault){ 767 Event.stop(_d 9);768 } 769 } 770 } 771 } 772 },remove:function(_ db){773 this._add_or_remove_function(_ db);775 Event.stop(_de); 776 } 777 } 778 } 779 } 780 },remove:function(_e0){ 781 this._add_or_remove_function(_e0); 774 782 },start:function(){ 775 783 this.executable=true; 776 784 },stop:function(){ 777 785 this.executable=false; 778 },_add_or_remove_function:function(_ dc,_dd,_de){779 var _ df;780 var _e 0=new Array();781 var _e 1=this;782 $A(_ dc.toLowerCase().split("+")).each(function(key){786 },_add_or_remove_function:function(_e1,_e2,_e3){ 787 var _e4; 788 var _e5=new Array(); 789 var _e6=this; 790 $A(_e1.toLowerCase().split("+")).each(function(key){ 783 791 if(key=="alt"){ 784 _e 0.push("a");792 _e5.push("a"); 785 793 }else{ 786 794 if(key=="ctrl"){ 787 _e 0.push("c");795 _e5.push("c"); 788 796 }else{ 789 797 if(key=="shift"){ 790 _e 0.push("s");791 }else{ 792 _ df=_e1.keyCode[key];793 } 794 } 795 } 796 }); 797 var key=_e 0.sortBy(function(_e4,_e5){798 return _e 4;798 _e5.push("s"); 799 }else{ 800 _e4=_e6.keyCode[key]; 801 } 802 } 803 } 804 }); 805 var key=_e5.sortBy(function(_e9,_ea){ 806 return _e9; 799 807 }).join(""); 800 808 if(key==""){ 801 809 key="n"; 802 810 } 803 if(_ dd){804 if(_ de){805 this.keyupFunc[_ df]=_dd;806 }else{ 807 this.keydownFunc[key][_ df]=_dd;808 } 809 }else{ 810 if(_ de){811 this.keyupFunc[_ df]=null;812 }else{ 813 this.keydownFunc[key][_ df]=null;814 } 815 } 816 },_mergeNumKey:function(_e 6){817 return (this.numKeys[_e 6])?this.numKeys[_e6]:_e6;811 if(_e2){ 812 if(_e3){ 813 this.keyupFunc[_e4]=_e2; 814 }else{ 815 this.keydownFunc[key][_e4]=_e2; 816 } 817 }else{ 818 if(_e3){ 819 this.keyupFunc[_e4]=null; 820 }else{ 821 this.keydownFunc[key][_e4]=null; 822 } 823 } 824 },_mergeNumKey:function(_eb){ 825 return (this.numKeys[_eb])?this.numKeys[_eb]:_eb; 818 826 }}; 819 827 Function.prototype.callAfterLoading=function(){ 820 var _e 7=$A(arguments);821 var _e 8=this;822 var _e 9=_e7.shift()||this;828 var _ec=$A(arguments); 829 var _ed=this; 830 var _ee=_ec.shift()||this; 823 831 if(UserAgent.isIE()&&(document.readyState!="complete")){ 824 832 Event.observe(window,"load",function(){ 825 _e 8.apply(_e9,_e7);826 }); 827 }else{ 828 this.apply(_e 9,_e7);833 _ed.apply(_ee,_ec); 834 }); 835 }else{ 836 this.apply(_ee,_ec); 829 837 } 830 838 }; … … 841 849 document.body.focus(); 842 850 } 843 },concat:function(_e a,_eb){844 var _ ec={};845 _ eb.each(function(_ed){846 _ ec[_ed]=_ea.appendSuffix(_ed);847 }); 848 return _ ec;849 },getId:function(_ ee){850 _ ee=_ee||"";851 return _ ee.appendSuffix(++SpinelzUtil.idCount);852 },toAttriteString:function(_ ef,_f0){853 var _f 1=_ef.map(function(_f2){854 return _f 2.key+"='"+_f2.value+"'";851 },concat:function(_ef,_f0){ 852 var _f1={}; 853 _f0.each(function(_f2){ 854 _f1[_f2]=_ef.appendSuffix(_f2); 855 }); 856 return _f1; 857 },getId:function(_f3){ 858 _f3=_f3||""; 859 return _f3.appendSuffix(++SpinelzUtil.idCount); 860 },toAttriteString:function(_f4,_f5){ 861 var _f6=_f4.map(function(_f7){ 862 return _f7.key+"='"+_f7.value+"'"; 855 863 }).join(" "); 856 if(_f 0&&(_f1.length>0)){857 _f 1=" "+_f1;858 } 859 return _f 1;860 },_redrawForIE:function(_f 3){864 if(_f5&&(_f6.length>0)){ 865 _f6=" "+_f6; 866 } 867 return _f6; 868 },_redrawForIE:function(_f8){ 861 869 if(UserAgent.isIE()){ 862 _f 3=$(_f3);863 if(_f 3){870 _f8=$(_f8); 871 if(_f8){ 864 872 setTimeout(function(){ 865 Element.classNames(_f 3).set("dummy");873 Element.classNames(_f8).set("dummy"); 866 874 },200); 867 875 } … … 874 882 }); 875 883 } 876 var $A=Array.from=function(_f 4){877 if(!_f 4){884 var $A=Array.from=function(_f9){ 885 if(!_f9){ 878 886 return []; 879 887 } 880 if(_f 4.toArray){881 return _f 4.toArray();882 }else{ 883 var _f 5=[];884 for(var i=0,len=_f 4.length;i<len;i++){885 _f 5.push(_f4[i]);886 } 887 return _f 5;888 if(_f9.toArray){ 889 return _f9.toArray(); 890 }else{ 891 var _fa=[]; 892 for(var i=0,len=_f9.length;i<len;i++){ 893 _fa.push(_f9[i]); 894 } 895 return _fa; 888 896 } 889 897 }; 890 898 var Color=Class.create(); 891 Color.prototype={initialize:function(_f 8){892 this.color=this.parse(_f 8);893 },toHex:function(_f 9){894 _f 9=_f9||this.color;895 return _f 9.invoke("toColorPart");899 Color.prototype={initialize:function(_fd){ 900 this.color=this.parse(_fd); 901 },toHex:function(_fe){ 902 _fe=_fe||this.color; 903 return _fe.invoke("toColorPart"); 896 904 },invert:function(){ 897 905 return this.toCssStyle(this.color.map(function(c){ 898 906 return 255-c; 899 907 })); 900 },toCssStyle:function(_ fb){901 _ fb=_fb||this.color;902 return "#"+this.toHex(_ fb).join("");903 },parse:function(_ fc){904 _ fc=_fc||this.color;905 if(_ fc.match(/rgb\(\d+,\s*\d+,\s*\d+\)/)){906 return _ fc.match(/\d+/g).map(function(c){908 },toCssStyle:function(_100){ 909 _100=_100||this.color; 910 return "#"+this.toHex(_100).join(""); 911 },parse:function(_101){ 912 _101=_101||this.color; 913 if(_101.match(/rgb\(\d+,\s*\d+,\s*\d+\)/)){ 914 return _101.match(/\d+/g).map(function(c){ 907 915 return parseInt(c,10); 908 916 }); 909 917 }else{ 910 if(_ fc.match(/#[a-fA-F0-9]{6}/)){911 return _ fc.match(/([a-fA-F0-9]){2}/g).map(function(c){918 if(_101.match(/#[a-fA-F0-9]{6}/)){ 919 return _101.match(/([a-fA-F0-9]){2}/g).map(function(c){ 912 920 return parseInt(c,16); 913 921 }); 914 922 } 915 923 } 916 throw "parse error: "+_ fc;924 throw "parse error: "+_101; 917 925 }}; 918 926 var DebugConsole={_active:false,_basetime:null,_messages:null,activate:function(){ 919 927 this._active=true; 920 },dump:function(_ ff){921 _ ff=_ff||{};922 switch(_ ff.type){928 },dump:function(_104){ 929 _104=_104||{}; 930 switch(_104.type){ 923 931 case "alert": 924 932 this._dump_alert(); … … 931 939 break; 932 940 case "update": 933 this._dump_update(_ ff.target);941 this._dump_update(_104.target); 934 942 break; 935 943 default: … … 950 958 this._messages=[]; 951 959 } 952 },log:function(_10 0){960 },log:function(_105){ 953 961 if(this._active){ 954 var _10 1=("00000000"+(new Date()-this._basetime)).slice(-8);955 this._messages.push(_10 1+" : "+_100);962 var _106=("00000000"+(new Date()-this._basetime)).slice(-8); 963 this._messages.push(_106+" : "+_105); 956 964 } 957 965 },_dump_alert:function(){ 958 this._messages.each(function(_10 2){959 alert(_10 2);966 this._messages.each(function(_107){ 967 alert(_107); 960 968 }); 961 969 },_dump_clipboard:function(){ 962 970 var dump=""; 963 this._messages.each(function(_10 4){964 dump+=_10 4+"\n";971 this._messages.each(function(_109){ 972 dump+=_109+"\n"; 965 973 }); 966 974 clipboardData.setData("Text",dump); 967 975 },_dump_console:function(){ 968 this._messages.each(function(_10 5){969 console.log(_10 5);970 }); 971 },_dump_update:function(_10 6){976 this._messages.each(function(_10a){ 977 console.log(_10a); 978 }); 979 },_dump_update:function(_10b){ 972 980 var html=""; 973 this._messages.each(function(_10 8){974 html+="<p>"+_10 8+"</p>";975 }); 976 Element.update(_10 6,html);981 this._messages.each(function(_10d){ 982 html+="<p>"+_10d+"</p>"; 983 }); 984 Element.update(_10b,html); 977 985 }}; 978 986 spinelz/trunk/compress/javascripts/spinelz_lib/spinelz_util_for_rubricks.js
r5578 r5692 5138 5138 return _a1; 5139 5139 }}; 5140 var Modal={maskId:"modalMask",maskClass:"modal_mask",maskClassIE:"modal_mask_ie",element:null,snaps:null,listener:null,resizeListener:null,cover:null,excepteds:null,maskCallbacks:[],unmaskCallbacks:[],count:0,tabKey:9,mask:function(_a2 ){5141 this._mask.callAfterLoading(this,_a2 );5140 var Modal={maskId:"modalMask",maskClass:"modal_mask",maskClassIE:"modal_mask_ie",element:null,snaps:null,listener:null,resizeListener:null,cover:null,excepteds:null,maskCallbacks:[],unmaskCallbacks:[],count:0,tabKey:9,mask:function(_a2,_a3,_a4){ 5141 this._mask.callAfterLoading(this,_a2,_a3,_a4); 5142 5142 this._control_tab_key(); 5143 },unmask:function( ){5144 this._unmask( );5143 },unmask:function(_a5){ 5144 this._unmask(_a5); 5145 5145 this._control_tab_key(); 5146 5146 },unmaskAll:function(){ 5147 5147 var max=10; 5148 var _a 4=0;5149 while(this._isMasked()&&(_a 4<max)){5148 var _a7=0; 5149 while(this._isMasked()&&(_a7<max)){ 5150 5150 this._unmask(); 5151 _a 4++;5151 _a7++; 5152 5152 } 5153 5153 this._control_tab_key(); 5154 },addMaskCallback:function(_a 5){5154 },addMaskCallback:function(_a8){ 5155 5155 if(!this.maskCallbacks.any(function(c){ 5156 return c==_a 5;5156 return c==_a8; 5157 5157 })){ 5158 this.maskCallbacks.push(_a 5);5159 } 5160 },removeMaskCallback:function(_a 7){5158 this.maskCallbacks.push(_a8); 5159 } 5160 },removeMaskCallback:function(_aa){ 5161 5161 this.maskCallbacks=this.maskCallbacks.reject(function(c){ 5162 return c==_a 7;5162 return c==_aa; 5163 5163 }); 5164 5164 },clearMaskCallback:function(){ 5165 5165 this.maskCallbacks=[]; 5166 },addUnmaskCallback:function(_a 9){5166 },addUnmaskCallback:function(_ac){ 5167 5167 if(!this.unmaskCallbacks.any(function(c){ 5168 return c==_a 9;5168 return c==_ac; 5169 5169 })){ 5170 this.unmaskCallbacks.push(_a 9);5171 } 5172 },removeUnmaskCallback:function(_a b){5170 this.unmaskCallbacks.push(_ac); 5171 } 5172 },removeUnmaskCallback:function(_ae){ 5173 5173 this.unmaskCallbacks=this.unmaskCallbacks.reject(function(c){ 5174 return c==_a b;5174 return c==_ae; 5175 5175 }); 5176 5176 },clearUnmaskCallback:function(){ 5177 5177 this.unmaskCallbacks=[]; 5178 },_mask:function(_ad){ 5179 var _ae=Object.extend({cssPrefix:"custom_",zIndex:null},arguments[1]||{}); 5178 },_mask:function(_b0){ 5179 var _b1=Object.extend({cssPrefix:"custom_",zIndex:null},arguments[1]||{}); 5180 var _b2=arguments[2]; 5180 5181 if(Modal.element){ 5181 Modal._snap(_ ad);5182 Modal._snap(_b0); 5182 5183 Modal._rebuildMask(); 5183 5184 }else{ 5184 5185 Modal.snaps=[]; 5185 5186 Modal.excepteds=[]; 5186 Modal._buildMask(_ ae.cssPrefix);5187 Modal._buildMask(_b1.cssPrefix); 5187 5188 Modal.cover=new IECover(Modal.element,{transparent:true}); 5188 5189 } 5189 Modal._setZindex(_ad,_ae.zIndex); 5190 if(_b2){ 5191 document.body.style.overflow="hidden"; 5192 Element.setStyle(Modal.element,{position:"absolute"}); 5193 } 5194 Modal._setZindex(_b0,_b1.zIndex); 5190 5195 Modal._setFullSize(); 5191 if(!Modal.hasExcepted(_ ad)){5192 Modal.excepteds.push(_ ad);5196 if(!Modal.hasExcepted(_b0)){ 5197 Modal.excepteds.push(_b0); 5193 5198 } 5194 5199 this.count++; 5195 this.maskCallbacks.each(function(_ af){5196 _ af(_ad);5197 }); 5198 },_unmask:function( ){5200 this.maskCallbacks.each(function(_b3){ 5201 _b3(_b0); 5202 }); 5203 },_unmask:function(_b4){ 5199 5204 if(Modal.element){ 5200 5205 if(Modal.snaps.length==0){ … … 5204 5209 Element.remove(Modal.element); 5205 5210 Modal.element=null; 5211 if(_b4){ 5212 document.body.style.overflow="visible"; 5213 } 5206 5214 }else{ 5207 5215 Element.setStyle(Modal.element,{zIndex:Modal.snaps.pop()}); … … 5210 5218 } 5211 5219 this.count++; 5212 this.unmaskCallbacks.each(function(_b 0){5213 _b 0();5220 this.unmaskCallbacks.each(function(_b5){ 5221 _b5(); 5214 5222 }); 5215 5223 },_addEvent:function(){ … … 5225 5233 },_isMasked:function(){ 5226 5234 return Modal.element&&Element.visible(Modal.element); 5227 },_snap:function(_b 1){5228 var _b 2=Element.getStyle(Modal.element,"zIndex");5229 if(_b 2&&Modal._isMasked()&&!Modal.hasExcepted(_b1)){5230 Modal.snaps.push(_b 2);5231 } 5232 },_setZindex:function(_b 3,_b4){5233 _b 4=ZindexManager.getIndex(_b4);5234 Element.setStyle(Modal.element,{zIndex:_b 4});5235 _b 3=Element.makePositioned($(_b3));5236 Element.setStyle(_b 3,{zIndex:++_b4});5235 },_snap:function(_b6){ 5236 var _b7=Element.getStyle(Modal.element,"zIndex"); 5237 if(_b7&&Modal._isMasked()&&!Modal.hasExcepted(_b6)){ 5238 Modal.snaps.push(_b7); 5239 } 5240 },_setZindex:function(_b8,_b9){ 5241 _b9=ZindexManager.getIndex(_b9); 5242 Element.setStyle(Modal.element,{zIndex:_b9}); 5243 _b8=Element.makePositioned($(_b8)); 5244 Element.setStyle(_b8,{zIndex:++_b9}); 5237 5245 },_setFullSize:function(){ 5238 5246 Modal.element.setStyle({width:Element.getWindowWidth()+"px",height:Element.getWindowHeight()+"px"}); … … 5240 5248 Modal.cover.resetSize(); 5241 5249 } 5242 },_buildMask:function(_b 5){5243 var _b 6=Builder.node("div",{id:Modal.maskId});5244 Modal._setClassNames(_b 6,_b5);5245 document.body.appendChild(_b 6);5246 Modal.element=_b 6;5250 },_buildMask:function(_ba){ 5251 var _bb=Builder.node("div",{id:Modal.maskId}); 5252 Modal._setClassNames(_bb,_ba); 5253 document.body.appendChild(_bb); 5254 Modal.element=_bb; 5247 5255 Modal._addEvent(); 5248 },_setClassNames:function(_b 7,_b8){5249 var _b 9=(UserAgent.isIE())?Modal.maskClassIE:Modal.maskClass;5250 Element.addClassName(_b 7,_b9);5251 Element.addClassName(_b 7,_b8+_b9);5256 },_setClassNames:function(_bc,_bd){ 5257 var _be=(UserAgent.isIE())?Modal.maskClassIE:Modal.maskClass; 5258 Element.addClassName(_bc,_be); 5259 Element.addClassName(_bc,_bd+_be); 5252 5260 },_rebuildMask:function(){ 5253 5261 document.body.appendChild(Modal.element); … … 5260 5268 return src.spinelzMaskResult; 5261 5269 } 5262 var _ bb=false;5263 var _ bc=this.excepteds.last();5264 var _ bd=src;5265 if(_ bc&&Element.descendantOf(src,_bc)){5266 _ bb=true;5267 }else{ 5268 var _ be=Element.getStyle(Modal.element,"zIndex");5269 var _ bf=null;5270 var _c0=false; 5271 var _c1=this.excepteds.last(); 5272 var _c2=src; 5273 if(_c1&&Element.descendantOf(src,_c1)){ 5274 _c0=true; 5275 }else{ 5276 var _c3=Element.getStyle(Modal.element,"zIndex"); 5277 var _c4=null; 5270 5278 while((src=src.parentNode)&&src!=document.body){ 5271 if(src.style&&(_ bf=Element.getStyle(src,"zIndex"))){5272 _ bb=(_bf>_be);5279 if(src.style&&(_c4=Element.getStyle(src,"zIndex"))){ 5280 _c0=(_c4>_c3); 5273 5281 break; 5274 5282 } 5275 5283 } 5276 5284 } 5277 _ bd.spinelzMaskCount=this.count;5278 _ bd.spinelzMaskResult=_bb;5279 return _ bb;5280 },_handleEvent:function(_c 0){5281 var src=Event.element(_c 0);5282 if(!(Modal._isOutOfModal(src)||(_c 0.keyCode&&(_c0.keyCode==this.tabKey)))){5283 Event.stop(_c 0);5284 } 5285 },_onResize:function(_c 2){5285 _c2.spinelzMaskCount=this.count; 5286 _c2.spinelzMaskResult=_c0; 5287 return _c0; 5288 },_handleEvent:function(_c5){ 5289 var src=Event.element(_c5); 5290 if(!(Modal._isOutOfModal(src)||(_c5.keyCode&&(_c5.keyCode==this.tabKey)))){ 5291 Event.stop(_c5); 5292 } 5293 },_onResize:function(_c7){ 5286 5294 Modal._setFullSize(); 5287 },hasExcepted:function(_c 3){5288 return (Modal.excepteds||[]).any(function(_c 4){5289 return _c 4.id==_c3.id;5290 }); 5291 },_control_tab_key:function(_c 5){5292 if(!_c 5){5293 _c 5=$A(document.body.getElementsByTagName("form"));5294 } 5295 _c 5.each(function(_c6){5296 if(!Modal._isOutOfModal(_c 6)){5297 Form.getElements(_c 6).each(function(el){5295 },hasExcepted:function(_c8){ 5296 return (Modal.excepteds||[]).any(function(_c9){ 5297 return _c9.id==_c8.id; 5298 }); 5299 },_control_tab_key:function(_ca){ 5300 if(!_ca){ 5301 _ca=$A(document.body.getElementsByTagName("form")); 5302 } 5303 _ca.each(function(_cb){ 5304 if(!Modal._isOutOfModal(_cb)){ 5305 Form.getElements(_cb).each(function(el){ 5298 5306 el.tabIndex=-1; 5299 5307 }); 5300 5308 }else{ 5301 Form.getElements(_c 6).each(function(el){5309 Form.getElements(_cb).each(function(el){ 5302 5310 el.tabIndex=null; 5303 5311 }); … … 5307 5315 var IECover=Class.create(); 5308 5316 IECover.src="javascript:false;"; 5309 IECover.prototype={idSuffix:"iecover",initialize:function(_c 9){5317 IECover.prototype={idSuffix:"iecover",initialize:function(_ce){ 5310 5318 this.options=Object.extend({transparent:false,padding:0},arguments[1]||{}); 5311 5319 if(document.all){ 5312 _c 9=$(_c9);5313 this.id=_c 9.id.appendSuffix(this.idSuffix);5314 this._build(_c 9);5320 _ce=$(_ce); 5321 this.id=_ce.id.appendSuffix(this.idSuffix); 5322 this._build(_ce); 5315 5323 this.resetSize(); 5316 5324 } 5317 5325 },resetSize:function(){ 5318 5326 if(this.element){ 5319 var _c a=this.element.parentNode;5320 var _ cb=this.options.padding;5321 this.element.width=_c a.offsetWidth-_cb+"px";5322 this.element.height=Element.getHeight(_c a)-_cb+"px";5323 } 5324 },_build:function(_ cc){5325 var _ cd=this.options.padding/2;5326 var _ ce={position:"absolute",top:_cd+"px",left:_cd+"px"};5327 var _cf=this.element.parentNode; 5328 var _d0=this.options.padding; 5329 this.element.width=_cf.offsetWidth-_d0+"px"; 5330 this.element.height=Element.getHeight(_cf)-_d0+"px"; 5331 } 5332 },_build:function(_d1){ 5333 var _d2=this.options.padding/2; 5334 var _d3={position:"absolute",top:_d2+"px",left:_d2+"px"}; 5327 5335 if(this.options.transparent){ 5328 _ ce.filter="alpha(opacity=0)";5329 } 5330 if(_ cc.buildedIECover&&$(this.id)){5336 _d3.filter="alpha(opacity=0)"; 5337 } 5338 if(_d1.buildedIECover&&$(this.id)){ 5331 5339 this.element=$(this.id); 5332 5340 }else{ 5333 5341 this.element=Builder.node("iframe",{src:IECover.src,id:this.id,frameborder:0}); 5334 5342 } 5335 Element.setStyle(this.element,_ ce);5336 var _ cf=Element.down(_cc,0);5337 if(_ cf){5338 Element.makePositioned(_ cf);5339 } 5340 _ cc.insertBefore(this.element,_cc.firstChild);5341 _ cc.buildedIECover=true;5343 Element.setStyle(this.element,_d3); 5344 var _d4=Element.down(_d1,0); 5345 if(_d4){ 5346 Element.makePositioned(_d4); 5347 } 5348 _d1.insertBefore(this.element,_d1.firstChild); 5349 _d1.buildedIECover=true; 5342 5350 }}; 5343 5351 var UserAgent={getUserAgent:function(){ … … 5354 5362 var ShortcutManager=Class.create(); 5355 5363 ShortcutManager.prototype={initialize:function(){ 5356 var _d 0={detectKeyup:false,initialStarted:true,preventDefault:true};5357 this.options=Object.extend(_d 0,arguments[0]||{});5364 var _d5={detectKeyup:false,initialStarted:true,preventDefault:true}; 5365 this.options=Object.extend(_d5,arguments[0]||{}); 5358 5366 this.keydownListener=this.eventKeydown.bindAsEventListener(this); 5359 5367 if(this.options.detectKeyup){ … … 5381 5389 Event.observe(document,"keyup",this.keyupListener); 5382 5390 } 5383 },add:function(c1,c2,_d 3){5391 },add:function(c1,c2,_d8){ 5384 5392 if(c1.constructor==Array){ 5385 var _d 4=this;5386 c1.each(function(_d 5){5387 _d 4._add_or_remove_function(_d5[0],_d5[1],_d3);5388 }); 5389 }else{ 5390 this._add_or_remove_function(c1,c2,_d 3);5393 var _d9=this; 5394 c1.each(function(_da){ 5395 _d9._add_or_remove_function(_da[0],_da[1],_d8); 5396 }); 5397 }else{ 5398 this._add_or_remove_function(c1,c2,_d8); 5391 5399 } 5392 5400 },destroy:function(){ … … 5395 5403 Event.stopObserving(document,"keyup",this.keyupListener); 5396 5404 } 5397 },eventKeydown:function(_d 6){5405 },eventKeydown:function(_db){ 5398 5406 if(this.executable){ 5399 var _d 7;5407 var _dc; 5400 5408 var key=""; 5401 _d 6=_d6||window.event;5402 if(_d 6.keyCode){5403 if(_d 6.altKey){5409 _db=_db||window.event; 5410 if(_db.keyCode){ 5411 if(_db.altKey){ 5404 5412 key+="a"; 5405 5413 } 5406 if(_d 6.ctrlKey){5414 if(_db.ctrlKey){ 5407 5415 key+="c"; 5408 5416 } 5409 if(_d 6.shiftKey){5417 if(_db.shiftKey){ 5410 5418 key+="s"; 5411 5419 } … … 5413 5421 key="n"; 5414 5422 } 5415 _d 7=this._mergeNumKey(_d6.keyCode);5416 if(this.keydownFunc[key][_d 7]){5417 this.keydownFunc[key][_d 7]();5423 _dc=this._mergeNumKey(_db.keyCode); 5424 if(this.keydownFunc[key][_dc]){ 5425 this.keydownFunc[key][_dc](); 5418 5426 if(this.options.preventDefault){ 5419 Event.stop(_d 6);5420 } 5421 } 5422 } 5423 } 5424 },eventKeyup:function(_d 9){5427 Event.stop(_db); 5428 } 5429 } 5430 } 5431 } 5432 },eventKeyup:function(_de){ 5425 5433 if(this.executable){ 5426 var _d a;5427 _d 9=_d9||window.event;5428 if(_d 9.keyCode){5429 _d a=this._mergeNumKey(_d9.keyCode);5430 if(this.keyupFunc[_d a]){5431 this.keyupFunc[_d a]();5434 var _df; 5435 _de=_de||window.event; 5436 if(_de.keyCode){ 5437 _df=this._mergeNumKey(_de.keyCode); 5438 if(this.keyupFunc[_df]){ 5439 this.keyupFunc[_df](); 5432 5440 if(this.options.preventDefault){ 5433 Event.stop(_d 9);5434 } 5435 } 5436 } 5437 } 5438 },remove:function(_ db){5439 this._add_or_remove_function(_ db);5441 Event.stop(_de); 5442 } 5443 } 5444 } 5445 } 5446 },remove:function(_e0){ 5447 this._add_or_remove_function(_e0); 5440 5448 },start:function(){ 5441 5449 this.executable=true; 5442 5450 },stop:function(){ 5443 5451 this.executable=false; 5444 },_add_or_remove_function:function(_ dc,_dd,_de){5445 var _ df;5446 var _e 0=new Array();5447 var _e 1=this;5448 $A(_ dc.toLowerCase().split("+")).each(function(key){5452 },_add_or_remove_function:function(_e1,_e2,_e3){ 5453 var _e4; 5454 var _e5=new Array(); 5455 var _e6=this; 5456 $A(_e1.toLowerCase().split("+")).each(function(key){ 5449 5457 if(key=="alt"){ 5450 _e 0.push("a");5458 _e5.push("a"); 5451 5459 }else{ 5452 5460 if(key=="ctrl"){ 5453 _e 0.push("c");5461 _e5.push("c"); 5454 5462 }else{ 5455 5463 if(key=="shift"){ 5456 _e 0.push("s");5457 }else{ 5458 _ df=_e1.keyCode[key];5459 } 5460 } 5461 } 5462 }); 5463 var key=_e 0.sortBy(function(_e4,_e5){5464 return _e 4;5464 _e5.push("s"); 5465 }else{ 5466 _e4=_e6.keyCode[key]; 5467 } 5468 } 5469 } 5470 }); 5471 var key=_e5.sortBy(function(_e9,_ea){ 5472 return _e9; 5465 5473 }).join(""); 5466 5474 if(
