right-rails 1.0.9 → 1.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +13 -0
- data/public/javascripts/right/billboard-src.js +544 -0
- data/public/javascripts/right/billboard.js +17 -0
- data/public/javascripts/right/dialog-src.js +738 -0
- data/public/javascripts/right/dialog.js +21 -0
- data/public/javascripts/right/i18n/de.js +16 -0
- data/public/javascripts/right/i18n/es.js +16 -0
- data/public/javascripts/right/i18n/fi.js +16 -0
- data/public/javascripts/right/i18n/fr.js +16 -0
- data/public/javascripts/right/i18n/hu.js +16 -0
- data/public/javascripts/right/i18n/it.js +16 -0
- data/public/javascripts/right/i18n/jp.js +15 -0
- data/public/javascripts/right/i18n/nl.js +14 -0
- data/public/javascripts/right/i18n/pt-br.js +14 -0
- data/public/javascripts/right/i18n/ru.js +14 -0
- data/public/javascripts/right/i18n/ua.js +14 -1
- data/public/javascripts/right/lightbox-src.js +2 -2
- data/public/javascripts/right/lightbox.js +2 -2
- data/public/javascripts/right/sortable-src.js +52 -30
- data/public/javascripts/right/sortable.js +8 -8
- data/public/javascripts/right/table-src.js +167 -0
- data/public/javascripts/right/table.js +9 -0
- data/public/javascripts/right-src.js +3 -1
- metadata +10 -4
@@ -0,0 +1,21 @@
|
|
1
|
+
/**
|
2
|
+
* Standard dialog widget for RightJS
|
3
|
+
* http://rightjs.org/ui/dialog
|
4
|
+
*
|
5
|
+
* Copyright (C) 2010 Nikolay Nemshilov
|
6
|
+
*/
|
7
|
+
var Dialog=RightJS.Dialog=function(d){var h=d.$,n=d.$w,g=d.$E,i=d.Class,j=d.Object,l=new d.Wrapper(d.Element,{initialize:function(a,c){this.$super("div",c);this._.innerHTML=a;this.addClass("rui-button");this.on("selectstart","stopEvent")},disable:function(){return this.addClass("rui-button-disabled")},enable:function(){return this.removeClass("rui-button-disabled")},disabled:function(){return this.hasClass("rui-button-disabled")},enabled:function(){return!this.disabled()},fire:function(){this.enabled()&&
|
8
|
+
this.$super.apply(this,arguments);return this}}),o=new d.Wrapper(d.Element,{initialize:function(a){this.$super("div",{"class":"rui-spinner"});this.dots=[];for(var c=0;c<(a||4);c++)this.dots.push(new d.Element("div"));this.dots[0].addClass("glowing");this.insert(this.dots);d(this.shift).bind(this).periodical(300)},shift:function(){if(this.visible()){var a=this.dots.pop();this.dots.unshift(a);this.insert(a,"top")}}}),b=new (function(a,c){if(!c){c=a;a="DIV"}var f=new d.Wrapper(d.Element.Wrappers[a]||
|
9
|
+
d.Element,{initialize:function(k,e){this.key=k;var m=[{"class":"rui-"+k}];this instanceof d.Input||this instanceof d.Form||m.unshift(a);this.$super.apply(this,m);if(d.isString(e))e=d.$(e);if(e instanceof d.Element){this._=e._;if("$listeners"in e)e.$listeners=e.$listeners;e={}}this.setOptions(e,this);return this},setOptions:function(k,e){e=e||this;d.Options.setOptions.call(this,d.Object.merge(k,eval("("+(e.get("data-"+this.key)||"{}")+")")));return this}});f=new d.Wrapper(f,c);d.Observer.createShortcuts(f.prototype,
|
10
|
+
f.EVENTS||[]);return f})({extend:{version:"2.0.0",EVENTS:n("ok cancel help expand collapse resize load"),Options:{lockScreen:true,draggable:true,closeable:true,expandable:false,showHelp:false,showIcon:null,title:null,html:null,url:null},i18n:{Ok:"Ok",Close:"Close",Cancel:"Cancel",Help:"Help",Expand:"Expand",Collapse:"Collapse",Alert:"Warning!",Confirm:"Confirm",Prompt:"Enter"},current:false,dragged:false},initialize:function(a){this.$super("dialog",a).append(this.head=new b.Head(this),this.body=new b.Body(this),
|
11
|
+
this.foot=new b.Foot(this)).onCancel(this.hide);this.locker=g("div",{"class":"rui-screen-locker"});this.options.title&&this.title(this.options.title);this.options.html&&this.html(this.options.html);this.options.url&&this.load(this.options.url)},show:function(){this.options.lockScreen&&this.locker.insertTo(document.body);this.insertTo(document.body).resize();return b.current=this},hide:function(){this.locker.remove();this.remove();b.current=false;return this},resize:function(){arguments.length&&this.$super.apply(this,
|
12
|
+
arguments);var a=this.size(),c=h(window).size();if(this.expanded){a.x=c.x-20;a.y=c.y-10;this.$super.call(this,a)}this.setStyle({top:(c.y-a.y)/2+h(window).scrolls().y+"px",left:(c.x-a.x-16)/2+"px"});return this.fire("resize")},title:function(a){if(arguments.length){this.head.title.html(a);return this}else return this.head.title.html()},update:function(a){this.body.update(a);return this.resize()},html:function(){return arguments.length?this.$super.apply(this,arguments):this.body.html()},load:function(a,
|
13
|
+
c){this.show();this.body.load(a,c);return this},expand:function(){if(!this.expanded){this._prevSize=this.size();this.resize({x:h(window).size().x-20,y:h(window).size().y-10});this.expanded=true;this.fire("expand")}return this},collapse:function(){if(this.expanded){this.expanded=false;this.resize(this._prevSize);this.fire("collapse")}return this}});b.Head=new i(Element,{initialize:function(a){this.dialog=a;this.options=a.options;this.$super("div",{"class":"rui-dialog-head"});this.append(this.icon=
|
14
|
+
g("div",{"class":"icon"}),this.title=g("div",{"class":"title",html:" "}),this.tools=g("div",{"class":"tools"}));this.fsButton=g("div",{"class":"expand",html:"≡",title:b.i18n.Expand}).onClick(function(){if(a.expanded){a.collapse();this.html("≡").set("title",b.i18n.Expand)}else{a.expand();this.html("_").set("title",b.i18n.Collapse)}});this.closeButton=g("div",{"class":"close",html:"×",title:b.i18n.Close}).onClick(function(){a.fire("cancel")});this.options.expandable&&this.tools.insert(this.fsButton);
|
15
|
+
this.options.closeable&&this.tools.insert(this.closeButton);this.on({selectstart:function(c){c.stop()},mousedown:this.dragStart});this.options.draggable||this.dialog.addClass("rui-dialog-nodrag")},dragStart:function(a){if(this.options.draggable&&!a.find("div.tools div")){var c=this.dialog.dimensions(),f=a.position();this.xDiff=c.left-f.x;this.yDiff=c.top-f.y;this.maxX=h(window).size().x-c.width-20;this.dlgStyle=this.dialog.get("style");b.dragged=this.dialog;a.stop()}},dragMove:function(a){var c=a.position();
|
16
|
+
a=c.x+this.xDiff;c=c.y+this.yDiff;if(a<0)a=0;else if(a>this.maxX)a=this.maxX;if(c<0)c=0;this.dlgStyle.top=c+"px";this.dlgStyle.left=a+"px"},dragStop:function(){b.dragged=false}});b.Body=new i(Element,{initialize:function(a){this.dialog=a;this.options=a.options;this.$super("div",{"class":"rui-dialog-body"});this.locker=g("div",{"class":"rui-dialog-body-locker"}).insert(new o)},load:function(a,c){this.insert(this.locker,"top");this.xhr=(new Xhr(a,j.merge({method:"get"},c))).onComplete(d(function(f){this.update(f.text);
|
17
|
+
this.dialog.resize().fire("load")}).bind(this)).send();return this},update:function(a){this.$super(a);this.options.showIcon&&this.insert('<div class="rui-dialog-body-icon">'+this.options.showIcon+"</div>","top");return this}});b.Foot=new i(Element,{initialize:function(a){this.$super("div",{"class":"rui-dialog-foot"});this.dialog=a;a.okButton=(new l(b.i18n.Ok,{"class":"ok"})).onClick(function(){a.fire("ok")});a.helpButton=(new l(b.i18n.Help,{"class":"help"})).onClick(function(){a.fire("help")});a.cancelButton=
|
18
|
+
(new l(b.i18n.Cancel,{"class":"cancel"})).onClick(function(){a.fire("cancel")});a.options.showHelp&&this.insert(a.helpButton);a.options.closeable&&this.insert(a.cancelButton);this.insert(a.okButton)}});b.Alert=new i(b,{initialize:function(a){a=j.merge({showIcon:"!",title:b.i18n.Alert},a);this.$super(a);this.addClass("rui-dialog-alert");this.on("ok","hide")}});b.Confirm=new i(b,{initialize:function(a){a=j.merge({showIcon:"?",title:b.i18n.Confirm},a);this.$super(a);this.addClass("rui-dialog-confirm");
|
19
|
+
this.on("ok","hide")}});b.Prompt=new i(b,{initialize:function(a){a=j.merge({showIcon:"➥",title:b.i18n.Prompt,label:b.i18n.Prompt},a);this.$super(a);this.addClass("rui-dialog-prompt");this.html([g("label",{html:this.options.label}),this.input=new d.Input(this.options.input||{})]);this.input.get("type")!=="textarea"&&this.input.onKeydown(d(function(c){c.keyCode===13&&this.fire("ok")}).bind(this))},show:function(){this.$super.apply(this,arguments);this.input.select();return this}});h(document).on({keydown:function(a){if(a.keyCode===
|
20
|
+
27&&b.current)b.current.options.closeable&&b.current.fire("cancel");else if(a.keyCode===13&&b.current)if(!(b.current instanceof b.Prompt)){a.stop();b.current.fire("ok")}},mousemove:function(a){b.dragged&&b.dragged.head.dragMove(a)},mouseup:function(a){b.dragged&&b.dragged.head.dragStop(a)}});h(window).onResize(function(){b.current&&b.current.resize()});document.write('<style type="text/css"> *.rui-button{display:inline-block; *display:inline; *zoom:1;height:1em;line-height:1em;margin:0;padding:.2em .5em;text-align:center;border:1px solid #CCC;border-radius:.2em;-moz-border-radius:.2em;-webkit-border-radius:.2em;cursor:pointer;color:#333;background-color:#FFF;user-select:none;-moz-user-select:none;-webkit-user-select:none} *.rui-button:hover{color:#111;border-color:#999;background-color:#DDD;box-shadow:#888 0 0 .1em;-moz-box-shadow:#888 0 0 .1em;-webkit-box-shadow:#888 0 0 .1em} *.rui-button:active{color:#000;border-color:#777;text-indent:1px;box-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none} *.rui-button-disabled, *.rui-button-disabled:hover, *.rui-button-disabled:active{color:#888;background:#DDD;border-color:#CCC;cursor:default;text-indent:0;box-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none}div.rui-spinner,div.rui-spinner div{margin:0;padding:0;border:none;background:none;list-style:none;font-weight:normal;float:none;display:inline-block; *display:inline; *zoom:1;border-radius:.12em;-moz-border-radius:.12em;-webkit-border-radius:.12em}div.rui-spinner{text-align:center;white-space:nowrap;background:#EEE;border:1px solid #DDD;height:1.2em;padding:0 .2em}div.rui-spinner div{width:.4em;height:70%;background:#BBB;margin-left:1px}div.rui-spinner div:first-child{margin-left:0}div.rui-spinner div.glowing{background:#777}div.rui-screen-locker{position:fixed;top:0;left:0;width:100%;height:100%;margin:0;padding:0;background:#000;opacity:.5;filter:alpha(opacity=50);z-index:99999;cursor:default}div.rui-dialog{position:absolute;z-index:99999;background:white;margin:0;padding:0;padding-top:2.5em;padding-bottom:2.8em;border-radius:.35em;-moz-border-radius:.35em;-webkit-border-radius:.35em;border:1px solid #ccc}div.rui-dialog-body{min-width:20em;min-height:4.5em;margin:0;padding:0 1em;height:100%;overflow:auto;position:relative}div.rui-dialog-body-locker{position:absolute;z-index:9999;left:0;top:0;width:100%;height:100%;text-align:center;opacity:.6;filter:alpha(opacity=60)}div.rui-dialog-body-locker div.rui-spinner{border:none;background:none;font-size:150%;margin-top:8%}div.rui-dialog-body-icon{float:left;background:#eee;font-size:360%;font-family:Arial;border:2px solid gray;border-radius:.1em;-moz-border-radius:.1em;-webkit-border-radius:.1em;width:1em;line-height:1em;text-align:center;margin-right:.2em;margin-top:.05em;cursor:default;user-select:none;-moz-user-select:none;-webkit-user-select:none}div.rui-dialog-head{position:absolute;top:0;left:0;margin:0;padding:0;width:100%;line-height:2em;background:#ccc;border-radius:.35em;-moz-border-radius:.35em;-webkit-border-radius:.35em;border-bottom-left-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;cursor:move;user-select:none;-moz-user-select:none;-webkit-user-select:none}div.rui-dialog-head div.icon{float:left;height:1.4em;width:1.4em;margin-left:1em;margin-top:.3em;margin-right:.3em;display:none}div.rui-dialog-head div.title{margin-left:1em;color:#444}div.rui-dialog-head div.tools{position:absolute;right:.3em;top:.3em}div.rui-dialog-head div.tools div{float:left;width:1.4em;line-height:1.4em;text-align:center;margin-left:.15em;cursor:pointer;background:#aaa;border-radius:.2em;-moz-border-radius:.2em;-webkit-border-radius:.2em;font-family:Verdana;opacity:.6;filter:alpha(opacity=60)}div.rui-dialog-head div.tools div:hover{opacity:1;filter:alpha(opacity=100);box-shadow:#444 0 0 .1em;-moz-box-shadow:#444 0 0 .1em;-webkit-box-shadow:#444 0 0 .1em}div.rui-dialog-head div.tools div.close:hover{background:#daa}div.rui-dialog-nodrag div.rui-dialog-head{cursor:default}div.rui-dialog-foot{position:absolute;bottom:0;left:0;width:100%;text-align:right}div.rui-dialog-foot div.rui-button{margin:.6em 1em;background:#eee;width:4em}div.rui-dialog-foot div.help{float:left}div.rui-dialog-foot div.cancel{margin-right:-.5em}div.rui-dialog-foot div.ok:hover{background-color:#ded}div.rui-dialog-foot div.cancel:hover{background-color:#ecc}div.rui-dialog-alert div.rui-dialog-foot{text-align:center}div.rui-dialog-alert div.rui-dialog-foot div.cancel{display:none}div.rui-dialog-alert div.rui-dialog-body-icon{color:brown;background:#FEE;border-color:brown}div.rui-dialog-confirm div.rui-dialog-body-icon{color:#44A;background:#EEF;border-color:#44a}div.rui-dialog-prompt div.rui-dialog-body-icon{color:#333}div.rui-dialog-prompt div.rui-dialog-body label{display:block;font-weight:bold;font-size:120%;color:#444;margin-bottom:.5em}div.rui-dialog-prompt div.rui-dialog-body input,div.rui-dialog-prompt div.rui-dialog-body textarea{border:1px solid #aaa;font-size:1em;display:block;width:16em;margin:0;padding:.2em;margin-left:4.7em;border-radius:.2em;-moz-border-radius:.2em;-webkit-border-radius:.2em;outline:none}div.rui-dialog-prompt div.rui-dialog-body textarea{width:24em;height:8em}</style>');
|
21
|
+
return b}(RightJS);
|
@@ -40,3 +40,19 @@ if (self.Colorpicker) {
|
|
40
40
|
Done: 'Erledigt'
|
41
41
|
});
|
42
42
|
}
|
43
|
+
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Ok',
|
47
|
+
Close: 'Close',
|
48
|
+
Cancel: 'Cancel',
|
49
|
+
Help: 'Help',
|
50
|
+
Expand: 'Expand',
|
51
|
+
Collapse: 'Collapse',
|
52
|
+
|
53
|
+
Alert: 'Warning!',
|
54
|
+
Confirm: 'Confirm',
|
55
|
+
Prompt: 'Enter'
|
56
|
+
})
|
57
|
+
}
|
58
|
+
|
@@ -40,3 +40,19 @@ if (self.Colorpicker) {
|
|
40
40
|
Done: 'Hecho'
|
41
41
|
});
|
42
42
|
}
|
43
|
+
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Ok',
|
47
|
+
Close: 'Cerrar',
|
48
|
+
Cancel: 'Cancelar',
|
49
|
+
Help: 'Ayuda',
|
50
|
+
Expand: 'Expandir',
|
51
|
+
Collapse: 'Plegar',
|
52
|
+
|
53
|
+
Alert: 'Aviso!',
|
54
|
+
Confirm: 'Confirmar',
|
55
|
+
Prompt: 'Entrar'
|
56
|
+
})
|
57
|
+
}
|
58
|
+
|
@@ -41,3 +41,19 @@ if (self.Colorpicker) {
|
|
41
41
|
Done: 'OK'
|
42
42
|
});
|
43
43
|
}
|
44
|
+
|
45
|
+
if (self.Dialog) {
|
46
|
+
$ext(Dialog.i18n, {
|
47
|
+
Ok: 'Ok',
|
48
|
+
Close: 'Close',
|
49
|
+
Cancel: 'Cancel',
|
50
|
+
Help: 'Help',
|
51
|
+
Expand: 'Expand',
|
52
|
+
Collapse: 'Collapse',
|
53
|
+
|
54
|
+
Alert: 'Warning!',
|
55
|
+
Confirm: 'Confirm',
|
56
|
+
Prompt: 'Enter'
|
57
|
+
})
|
58
|
+
}
|
59
|
+
|
@@ -40,3 +40,19 @@ if (self.Colorpicker) {
|
|
40
40
|
Done: 'Fait'
|
41
41
|
});
|
42
42
|
}
|
43
|
+
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Ok',
|
47
|
+
Close: 'Close',
|
48
|
+
Cancel: 'Cancel',
|
49
|
+
Help: 'Help',
|
50
|
+
Expand: 'Expand',
|
51
|
+
Collapse: 'Collapse',
|
52
|
+
|
53
|
+
Alert: 'Warning!',
|
54
|
+
Confirm: 'Confirm',
|
55
|
+
Prompt: 'Enter'
|
56
|
+
})
|
57
|
+
}
|
58
|
+
|
@@ -47,3 +47,19 @@ if (self.Colorpicker) {
|
|
47
47
|
Done: 'Kész'
|
48
48
|
});
|
49
49
|
}
|
50
|
+
|
51
|
+
if (self.Dialog) {
|
52
|
+
$ext(Dialog.i18n, {
|
53
|
+
Ok: 'Ok',
|
54
|
+
Close: 'Close',
|
55
|
+
Cancel: 'Cancel',
|
56
|
+
Help: 'Help',
|
57
|
+
Expand: 'Expand',
|
58
|
+
Collapse: 'Collapse',
|
59
|
+
|
60
|
+
Alert: 'Warning!',
|
61
|
+
Confirm: 'Confirm',
|
62
|
+
Prompt: 'Enter'
|
63
|
+
})
|
64
|
+
}
|
65
|
+
|
@@ -40,3 +40,19 @@ if (self.Colorpicker) {
|
|
40
40
|
Done: 'Fatto'
|
41
41
|
});
|
42
42
|
}
|
43
|
+
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Ok',
|
47
|
+
Close: 'Close',
|
48
|
+
Cancel: 'Cancel',
|
49
|
+
Help: 'Help',
|
50
|
+
Expand: 'Expand',
|
51
|
+
Collapse: 'Collapse',
|
52
|
+
|
53
|
+
Alert: 'Warning!',
|
54
|
+
Confirm: 'Confirm',
|
55
|
+
Prompt: 'Enter'
|
56
|
+
})
|
57
|
+
}
|
58
|
+
|
@@ -45,3 +45,18 @@ if (self.Colorpicker) {
|
|
45
45
|
});
|
46
46
|
}
|
47
47
|
|
48
|
+
if (self.Dialog) {
|
49
|
+
$ext(Dialog.i18n, {
|
50
|
+
Ok: 'Ok',
|
51
|
+
Close: 'Close',
|
52
|
+
Cancel: 'Cancel',
|
53
|
+
Help: 'Help',
|
54
|
+
Expand: 'Expand',
|
55
|
+
Collapse: 'Collapse',
|
56
|
+
|
57
|
+
Alert: 'Warning!',
|
58
|
+
Confirm: 'Confirm',
|
59
|
+
Prompt: 'Enter'
|
60
|
+
})
|
61
|
+
}
|
62
|
+
|
@@ -41,3 +41,17 @@ if (self.Colorpicker) {
|
|
41
41
|
});
|
42
42
|
}
|
43
43
|
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Ok',
|
47
|
+
Close: 'Close',
|
48
|
+
Cancel: 'Cancel',
|
49
|
+
Help: 'Help',
|
50
|
+
Expand: 'Expand',
|
51
|
+
Collapse: 'Collapse',
|
52
|
+
|
53
|
+
Alert: 'Warning!',
|
54
|
+
Confirm: 'Confirm',
|
55
|
+
Prompt: 'Enter'
|
56
|
+
})
|
57
|
+
}
|
@@ -41,3 +41,17 @@ if (self.Colorpicker) {
|
|
41
41
|
});
|
42
42
|
}
|
43
43
|
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Ok',
|
47
|
+
Close: 'Fechar',
|
48
|
+
Cancel: 'Cancelar',
|
49
|
+
Help: 'Ajuda',
|
50
|
+
Expand: 'Maximizar',
|
51
|
+
Collapse: 'Minimizar',
|
52
|
+
|
53
|
+
Alert: 'Atenção!',
|
54
|
+
Confirm: 'Confirmar',
|
55
|
+
Prompt: 'Editar'
|
56
|
+
});
|
57
|
+
}
|
@@ -41,3 +41,17 @@ if (self.Colorpicker) {
|
|
41
41
|
});
|
42
42
|
}
|
43
43
|
|
44
|
+
if (self.Dialog) {
|
45
|
+
$ext(Dialog.i18n, {
|
46
|
+
Ok: 'Готово',
|
47
|
+
Close: 'Закрыть',
|
48
|
+
Cancel: 'Отмена',
|
49
|
+
Help: 'Помощь',
|
50
|
+
Expand: 'Во все окно',
|
51
|
+
Collapse: 'Обычный размер',
|
52
|
+
|
53
|
+
Alert: 'Внимание!',
|
54
|
+
Confirm: 'Подтверждение',
|
55
|
+
Prompt: 'Ввод данных'
|
56
|
+
});
|
57
|
+
}
|
@@ -8,7 +8,7 @@ if (self.Calendar) {
|
|
8
8
|
$ext(Calendar.Options, {
|
9
9
|
firstDay: 0
|
10
10
|
});
|
11
|
-
|
11
|
+
|
12
12
|
$ext(Calendar.i18n, {
|
13
13
|
Done: 'Гаразд',
|
14
14
|
Now: 'Зараз',
|
@@ -46,3 +46,16 @@ if (self.Colorpicker) {
|
|
46
46
|
});
|
47
47
|
}
|
48
48
|
|
49
|
+
if (self.Dialog) {
|
50
|
+
$ext(Dialog.i18n, {
|
51
|
+
Ok: 'Гаразд',
|
52
|
+
Close: 'Сховати',
|
53
|
+
Cancel: 'Сховати',
|
54
|
+
Help: 'Помощь',
|
55
|
+
Expand: 'Во все окно',
|
56
|
+
Collapse: 'Обычный размер',
|
57
|
+
Alert: 'Внимание!',
|
58
|
+
Confirm: 'Подтверждение',
|
59
|
+
Prompt: 'Ввод данных'
|
60
|
+
});
|
61
|
+
}
|
@@ -175,7 +175,7 @@ var Spinner = new RightJS.Wrapper(RightJS.Element, {
|
|
175
175
|
var Lightbox = new Widget({
|
176
176
|
|
177
177
|
extend: {
|
178
|
-
version: '2.0.
|
178
|
+
version: '2.0.4',
|
179
179
|
|
180
180
|
EVENTS: $w('show hide load'),
|
181
181
|
|
@@ -888,7 +888,7 @@ $(window).on({
|
|
888
888
|
});
|
889
889
|
|
890
890
|
|
891
|
-
document.write("<style type=\"text/css\">div.rui-spinner,div.rui-spinner div{margin:0;padding:0;border:none;background:none;list-style:none;font-weight:normal;float:none;display:inline-block; *display:inline; *zoom:1;border-radius:.12em;-moz-border-radius:.12em;-webkit-border-radius:.12em}div.rui-spinner{text-align:center;white-space:nowrap;background:#EEE;border:1px solid #DDD;height:1.2em;padding:0 .2em}div.rui-spinner div{width:.4em;height:70%;background:#BBB;margin-left:1px}div.rui-spinner div:first-child{margin-left:0}div.rui-spinner div.glowing{background:#777}div.rui-lightbox{position:fixed;top:0;left:0;
|
891
|
+
document.write("<style type=\"text/css\">div.rui-spinner,div.rui-spinner div{margin:0;padding:0;border:none;background:none;list-style:none;font-weight:normal;float:none;display:inline-block; *display:inline; *zoom:1;border-radius:.12em;-moz-border-radius:.12em;-webkit-border-radius:.12em}div.rui-spinner{text-align:center;white-space:nowrap;background:#EEE;border:1px solid #DDD;height:1.2em;padding:0 .2em}div.rui-spinner div{width:.4em;height:70%;background:#BBB;margin-left:1px}div.rui-spinner div:first-child{margin-left:0}div.rui-spinner div.glowing{background:#777}div.rui-lightbox{position:fixed;top:0;left:0;float:none;width:100%;height:100%;margin:0;padding:0;background:none;border:none;text-align:center;z-index:9999;z-index/*\\**/:auto\\9;}div.rui-lightbox-locker{position:absolute;top:0px;left:0px;width:100%;height:100%;background-color:#000;opacity:0.8;filter:alpha(opacity=80);cursor:default;z-index/*\\**/:9990\\9;}div.rui-lightbox-dialog{display:inline-block; *display:inline; *zoom:1;position:relative;text-align:left;z-index/*\\**/:9999\\9;}div.rui-lightbox-title{height:1.2em;margin-bottom:.1em;white-space:nowrap;color:#DDD;font-weight:bold;font-size:1.6em;font-family:Helvetica}div.rui-lightbox-body{background-color:#FFF;padding:1em;border-radius:.5em;-moz-border-radius:.5em;-webkit-border-radius:.5em}div.rui-lightbox-body-inner{position:relative}div.rui-lightbox-scroller{overflow:hidden}div.rui-lightbox-content{display:inline-block; *display:inline; *zoom:1;min-height:10em;min-width:10em;_height:10em;_width:10em}div.rui-lightbox-body-locker{background-color:white;position:absolute;left:0px;top:0px;width:100%;height:100%;opacity:0;filter:alpha(opacity=0)}div.rui-lightbox-body-locker div.rui-spinner{position:absolute;right:0;bottom:0;border:none;background:none;font-size:150%}div.rui-lightbox-navigation{color:#888;font-size:160%;font-family:Arial;height:1em;user-select:none;-moz-user-select:none;-webkit-user-select:none}div.rui-lightbox-navigation div{cursor:pointer;position:absolute}div.rui-lightbox-navigation div:hover{color:white}div.rui-lightbox-navigation div.next{left:2em}div.rui-lightbox-navigation div.close{right:0}div.rui-lightbox-image div.rui-lightbox-body,div.rui-lightbox-media div.rui-lightbox-body{padding:0;border:1px solid #777;border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px}div.rui-lightbox-image div.rui-lightbox-content,div.rui-lightbox-media div.rui-lightbox-content{min-height:12em;min-width:12em;_height:12em;_width:12em}div.rui-lightbox-image div.rui-lightbox-content img{vertical-align:middle}div.rui-lightbox-image div.rui-lightbox-body,div.rui-lightbox-image div.rui-lightbox-body-locker,div.rui-lightbox-media div.rui-lightbox-body,div.rui-lightbox-media div.rui-lightbox-body-locker{background-color:#D8D8D8}div.rui-lightbox-image div.rui-lightbox-body-locker div.rui-spinner,div.rui-lightbox-media div.rui-lightbox-body-locker div.rui-spinner{bottom:.5em;right:.5em}</style>");
|
892
892
|
|
893
893
|
return Lightbox;
|
894
894
|
})(document, RightJS);
|
@@ -6,7 +6,7 @@
|
|
6
6
|
*/
|
7
7
|
var Lightbox=RightJS.Lightbox=function(p,d){var q=d.$,r=d.$$,u=d.$w,h=d.$E,v=d.$ext,w=d.Xhr,x=d.Class,y=d.Object,s=d.Wrapper,j=d.Element,i=d.Browser;i.IE6=i.OLD&&navigator.userAgent.indexOf("MSIE 6")>0;var z=new d.Wrapper(d.Element,{initialize:function(a){this.$super("div",{"class":"rui-spinner"});this.dots=[];for(var b=0;b<(a||4);b++)this.dots.push(new d.Element("div"));this.dots[0].addClass("glowing");this.insert(this.dots);d(this.shift).bind(this).periodical(300)},shift:function(){if(this.visible()){var a=
|
8
8
|
this.dots.pop();this.dots.unshift(a);this.insert(a,"top")}}}),f=new (function(a,b){if(!b){b=a;a="DIV"}var c=new d.Wrapper(d.Element.Wrappers[a]||d.Element,{initialize:function(e,g){this.key=e;var k=[{"class":"rui-"+e}];this instanceof d.Input||this instanceof d.Form||k.unshift(a);this.$super.apply(this,k);if(d.isString(g))g=d.$(g);if(g instanceof d.Element){this._=g._;if("$listeners"in g)g.$listeners=g.$listeners;g={}}this.setOptions(g,this);return this},setOptions:function(e,g){g=g||this;d.Options.setOptions.call(this,
|
9
|
-
d.Object.merge(e,eval("("+(g.get("data-"+this.key)||"{}")+")")));return this}});c=new d.Wrapper(c,b);d.Observer.createShortcuts(c.prototype,c.EVENTS||[]);return c})({extend:{version:"2.0.
|
9
|
+
d.Object.merge(e,eval("("+(g.get("data-"+this.key)||"{}")+")")));return this}});c=new d.Wrapper(c,b);d.Observer.createShortcuts(c.prototype,c.EVENTS||[]);return c})({extend:{version:"2.0.4",EVENTS:u("show hide load"),Options:{fxName:"fade",fxDuration:300,group:null,hideOnEsc:true,hideOnOutClick:true,showCloseButton:true,cssRule:"a[data-lightbox]",mediaWidth:425,mediaHeight:350},i18n:{Close:"Close",Prev:"Previous Image",Next:"Next Image"},Images:/\.(jpg|jpeg|gif|png|bmp)/,Medias:[[/(http:\/\/.*?youtube\.[a-z]+)\/watch\?v=([^&]+)/,
|
10
10
|
"$1/v/$2","swf"],[/(http:\/\/video.google.com)\/videoplay\?docid=([^&]+)/,"$1/googleplayer.swf?docId=$2","swf"],[/(http:\/\/vimeo\.[a-z]+)\/([0-9]+).*?/,"$1/moogaloop.swf?clip_id=$2","swf"]]},initialize:function(a,b){this.$super("lightbox",{}).setOptions(a,b).insert([this.locker=new A(this.options),this.dialog=new B(this.options)]).on({close:this._close,next:this._next,prev:this._prev})},setOptions:function(a,b){this.$super(a,b);if(b){var c=b.get("rel");if(c&&(c=c.match(/lightbox\[(.+?)\]/)))this.options.group=
|
11
11
|
c[1]}return this},setTitle:function(a){this.dialog.setTitle(a);return this},show:function(a){return this._showAnd(function(){this.dialog.show(a,!a)})},hide:function(){f.current=null;return this.$super(this.options.fxName,{duration:this.options.fxDuration/3,onFinish:d(function(){this.fire("hide");this.remove()}).bind(this)})},load:function(a,b){return this._showAnd(function(){this.dialog.load(a,b)})},resize:function(a){this.dialog.resize(a);return this},_close:function(a){a.stop();this.hide()},_prev:function(a){a.stop();
|
12
12
|
l.prev()},_next:function(a){a.stop();l.next()},_showAnd:function(a){if(f.current!==this){f.current=this;r("div.rui-lightbox").each("remove");this.insertTo(p.body);this.dialog.show("",true);if(i.OLD){this.reposition();j.prototype.show.call(this);a.call(this)}else{this.setStyle("display:none");j.prototype.show.call(this,this.options.fxName,{duration:this.options.fxDuration/2,onFinish:d(function(){a.call(this);this.fire("show")}).bind(this)})}}else a.call(this);return this},reposition:function(){if(i.IE6){var a=
|
@@ -20,5 +20,5 @@ isImage:function(a,b){if(a.match(f.Images)){var c=this.img=h("img")._;c.onload=f
|
|
20
20
|
f.current.options:f.Options;e=' width="'+e.mediaWidth+'" height="'+e.mediaHeight+'"';return'<object classid="clsid:'+c[b][0]+'" codebase="'+c[b][1]+'"'+e+'><param name="src" value="'+a+'" /><embed src="'+a+'" type="'+c[b][2]+'"'+e+" /></object>"}}),l={show:function(a,b){if(a.options.group){this.dialog=a;this.links=this.find(a.options.group);this.link=this.links.first(function(g){return g.get("href")===b});var c=this.links.indexOf(this.link),e=this.links.length;a.prevLink[e&&c>0?"show":"hide"]();a.nextLink[e&&
|
21
21
|
c<e-1?"show":"hide"]()}else this.dialog=null},prev:function(){if(this.dialog&&!this.timer){var a=this.links[this.links.indexOf(this.link)-1];if(a){this.dialog.load(a);this.timeout()}}},next:function(){if(this.dialog&&!this.timer){var a=this.links[this.links.indexOf(this.link)+1];if(a){this.dialog.load(a);this.timeout()}}},find:function(a){return r("a").filter(function(b){var c=b.get("data-lightbox");b=b.get("rel");return c&&eval("("+c+")").group===a||b&&b.indexOf("lightbox["+a+"]")>-1})},timeout:function(){this.timer=
|
22
22
|
d(function(){l.timer=null}).delay(300)}};q(p).on({click:function(a){var b=a.find(f.Options.cssRule)||a.find("a[rel^=lightbox]");if(b){a.stop();(new f({},b)).load(b)}},mousewheel:function(a){if(f.current){var b=a.target;if(!b.parent("div.rui-lightbox-content")||b.getStyle("overflow")==="visible")a.stop();f.current.fire((a._.detail||-a._.wheelDelta)<0?"prev":"next")}},keydown:function(a){var b=f.current,c={27:"close",33:"prev",37:"prev",38:"prev",39:"next",40:"next",34:"next"}[a.keyCode];if(b&&c)if(c!==
|
23
|
-
"close"||b.options.hideOnEsc){a.stop();b.fire(c)}}});q(window).on({resize:function(){if(f.current){f.current.reposition();f.current.dialog.resize()}},scroll:function(){f.current&&i.IE6&&f.current.reposition()}});p.write('<style type="text/css">div.rui-spinner,div.rui-spinner div{margin:0;padding:0;border:none;background:none;list-style:none;font-weight:normal;float:none;display:inline-block; *display:inline; *zoom:1;border-radius:.12em;-moz-border-radius:.12em;-webkit-border-radius:.12em}div.rui-spinner{text-align:center;white-space:nowrap;background:#EEE;border:1px solid #DDD;height:1.2em;padding:0 .2em}div.rui-spinner div{width:.4em;height:70%;background:#BBB;margin-left:1px}div.rui-spinner div:first-child{margin-left:0}div.rui-spinner div.glowing{background:#777}div.rui-lightbox{position:fixed;top:0;left:0;
|
23
|
+
"close"||b.options.hideOnEsc){a.stop();b.fire(c)}}});q(window).on({resize:function(){if(f.current){f.current.reposition();f.current.dialog.resize()}},scroll:function(){f.current&&i.IE6&&f.current.reposition()}});p.write('<style type="text/css">div.rui-spinner,div.rui-spinner div{margin:0;padding:0;border:none;background:none;list-style:none;font-weight:normal;float:none;display:inline-block; *display:inline; *zoom:1;border-radius:.12em;-moz-border-radius:.12em;-webkit-border-radius:.12em}div.rui-spinner{text-align:center;white-space:nowrap;background:#EEE;border:1px solid #DDD;height:1.2em;padding:0 .2em}div.rui-spinner div{width:.4em;height:70%;background:#BBB;margin-left:1px}div.rui-spinner div:first-child{margin-left:0}div.rui-spinner div.glowing{background:#777}div.rui-lightbox{position:fixed;top:0;left:0;float:none;width:100%;height:100%;margin:0;padding:0;background:none;border:none;text-align:center;z-index:9999;z-index/*\\**/:auto\\9;}div.rui-lightbox-locker{position:absolute;top:0px;left:0px;width:100%;height:100%;background-color:#000;opacity:0.8;filter:alpha(opacity=80);cursor:default;z-index/*\\**/:9990\\9;}div.rui-lightbox-dialog{display:inline-block; *display:inline; *zoom:1;position:relative;text-align:left;z-index/*\\**/:9999\\9;}div.rui-lightbox-title{height:1.2em;margin-bottom:.1em;white-space:nowrap;color:#DDD;font-weight:bold;font-size:1.6em;font-family:Helvetica}div.rui-lightbox-body{background-color:#FFF;padding:1em;border-radius:.5em;-moz-border-radius:.5em;-webkit-border-radius:.5em}div.rui-lightbox-body-inner{position:relative}div.rui-lightbox-scroller{overflow:hidden}div.rui-lightbox-content{display:inline-block; *display:inline; *zoom:1;min-height:10em;min-width:10em;_height:10em;_width:10em}div.rui-lightbox-body-locker{background-color:white;position:absolute;left:0px;top:0px;width:100%;height:100%;opacity:0;filter:alpha(opacity=0)}div.rui-lightbox-body-locker div.rui-spinner{position:absolute;right:0;bottom:0;border:none;background:none;font-size:150%}div.rui-lightbox-navigation{color:#888;font-size:160%;font-family:Arial;height:1em;user-select:none;-moz-user-select:none;-webkit-user-select:none}div.rui-lightbox-navigation div{cursor:pointer;position:absolute}div.rui-lightbox-navigation div:hover{color:white}div.rui-lightbox-navigation div.next{left:2em}div.rui-lightbox-navigation div.close{right:0}div.rui-lightbox-image div.rui-lightbox-body,div.rui-lightbox-media div.rui-lightbox-body{padding:0;border:1px solid #777;border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px}div.rui-lightbox-image div.rui-lightbox-content,div.rui-lightbox-media div.rui-lightbox-content{min-height:12em;min-width:12em;_height:12em;_width:12em}div.rui-lightbox-image div.rui-lightbox-content img{vertical-align:middle}div.rui-lightbox-image div.rui-lightbox-body,div.rui-lightbox-image div.rui-lightbox-body-locker,div.rui-lightbox-media div.rui-lightbox-body,div.rui-lightbox-media div.rui-lightbox-body-locker{background-color:#D8D8D8}div.rui-lightbox-image div.rui-lightbox-body-locker div.rui-spinner,div.rui-lightbox-media div.rui-lightbox-body-locker div.rui-spinner{bottom:.5em;right:.5em}</style>');
|
24
24
|
return f}(document,RightJS);
|
@@ -125,7 +125,7 @@ var Sortable = new Widget('UL', {
|
|
125
125
|
extend: {
|
126
126
|
version: '2.0.0',
|
127
127
|
|
128
|
-
EVENTS: $w('change'),
|
128
|
+
EVENTS: $w('start change finish'),
|
129
129
|
|
130
130
|
Options: {
|
131
131
|
url: null, // the Xhr requests url address, might contain the '%{id}' placeholder
|
@@ -141,10 +141,27 @@ var Sortable = new Widget('UL', {
|
|
141
141
|
accept: null, // a reference or a list of references to the other sortables between which you can drag the items
|
142
142
|
minLength: 1, // minimum number of items on the list when the feature works
|
143
143
|
|
144
|
+
itemCss: 'li', // the draggable item's css rule
|
145
|
+
handleCss: 'li', // the draggables handle element css rule
|
146
|
+
|
144
147
|
cssRule: '*[data-sortable]' // css-rule for automatically initializable sortables
|
145
148
|
},
|
146
149
|
|
147
|
-
current: false // a reference to the currently active sortable
|
150
|
+
current: false, // a reference to the currently active sortable
|
151
|
+
|
152
|
+
/**
|
153
|
+
* Typecasting the list element for Sortable
|
154
|
+
*
|
155
|
+
* @param Element list
|
156
|
+
* @return Sortable list
|
157
|
+
*/
|
158
|
+
cast: function(element) {
|
159
|
+
element = $(element._);
|
160
|
+
if (!(element instanceof Sortable)) {
|
161
|
+
element = new Sortable(element);
|
162
|
+
}
|
163
|
+
return element;
|
164
|
+
}
|
148
165
|
},
|
149
166
|
|
150
167
|
/**
|
@@ -158,7 +175,7 @@ var Sortable = new Widget('UL', {
|
|
158
175
|
this.$super('sortable', element)
|
159
176
|
.setOptions(options)
|
160
177
|
.addClass('rui-sortable')
|
161
|
-
.on('
|
178
|
+
.on('finish', this._tryXhr)
|
162
179
|
.on('selectstart', 'stopEvent'); // disable select under IE
|
163
180
|
},
|
164
181
|
|
@@ -183,20 +200,26 @@ var Sortable = new Widget('UL', {
|
|
183
200
|
return this;
|
184
201
|
},
|
185
202
|
|
203
|
+
// returns a list of draggable items
|
204
|
+
items: function() {
|
205
|
+
return this.children(this.options.itemCss);
|
206
|
+
},
|
207
|
+
|
186
208
|
// protected
|
187
209
|
|
188
210
|
// starts the drag
|
189
211
|
startDrag: function(event) {
|
190
212
|
// don't let to drag out the last item
|
191
|
-
if (this.
|
213
|
+
if (this.items().length <= this.options.minLength) { return; }
|
192
214
|
|
193
215
|
// trying to find the list-item upon which the user pressed the mouse
|
194
|
-
var
|
195
|
-
|
216
|
+
var item = event.find(this.options.itemCss),
|
217
|
+
handle = event.find(this.options.handleCss);
|
196
218
|
|
197
|
-
if (item) {
|
198
|
-
this._initDrag(item,
|
219
|
+
if (item && handle) {
|
220
|
+
this._initDrag(item, event.position());
|
199
221
|
Sortable.current = this;
|
222
|
+
this.fire('start', this._evOpts(event));
|
200
223
|
}
|
201
224
|
},
|
202
225
|
|
@@ -229,32 +252,35 @@ var Sortable = new Widget('UL', {
|
|
229
252
|
item.insert(this.item, item.prevSiblings().include(this.item) ? 'after' : 'before');
|
230
253
|
this._findSuspects();
|
231
254
|
|
232
|
-
|
233
|
-
var list = item.parent();
|
234
|
-
|
235
|
-
if (!(list instanceof Sortable)) {
|
236
|
-
list = new Sortable(list);
|
237
|
-
}
|
238
|
-
|
239
|
-
this.fire('change', {
|
240
|
-
list: list,
|
241
|
-
item: this.item,
|
242
|
-
index: list.children().indexOf(this.item)
|
243
|
-
});
|
255
|
+
this.fire('change', this._evOpts(event, item));
|
244
256
|
}
|
245
257
|
},
|
246
258
|
|
247
259
|
// finalizes the drag
|
248
|
-
finishDrag: function() {
|
260
|
+
finishDrag: function(event) {
|
249
261
|
if (this.itemClone) {
|
250
262
|
this.itemClone.remove();
|
251
263
|
this.item.setStyle('visibility:visible');
|
252
264
|
}
|
253
265
|
Sortable.current = false;
|
266
|
+
this.fire('finish', this._evOpts(event));
|
267
|
+
},
|
268
|
+
|
269
|
+
// returns the event options
|
270
|
+
_evOpts: function(event, item) {
|
271
|
+
item = item || this.item;
|
272
|
+
var list = Sortable.cast(item.parent());
|
273
|
+
|
274
|
+
return {
|
275
|
+
list: list,
|
276
|
+
item: item,
|
277
|
+
event: event,
|
278
|
+
index: list.items().indexOf(item)
|
279
|
+
};
|
254
280
|
},
|
255
281
|
|
256
282
|
_initDrag: function(item, event_pos) {
|
257
|
-
var dims
|
283
|
+
var dims = this.dimensions(), item_dims = item.dimensions();
|
258
284
|
|
259
285
|
// creating the draggable clone
|
260
286
|
var clone = item.clone().setStyle({
|
@@ -292,7 +318,7 @@ var Sortable = new Widget('UL', {
|
|
292
318
|
_findSuspects: function() {
|
293
319
|
var suspects = this.suspects = R([]), item = this.item, clone = this.itemClone;
|
294
320
|
this.options.accept.each(function(list) {
|
295
|
-
list.
|
321
|
+
Sortable.cast(list).items().each(function(element) {
|
296
322
|
if (element !== item && element !== clone) {
|
297
323
|
var dims = element.dimensions();
|
298
324
|
|
@@ -360,11 +386,7 @@ $(document).on({
|
|
360
386
|
var element = event.find(Sortable.Options.cssRule+",*.rui-sortable");
|
361
387
|
|
362
388
|
if (element) {
|
363
|
-
|
364
|
-
element = new Sortable(element);
|
365
|
-
}
|
366
|
-
|
367
|
-
element.startDrag(event);
|
389
|
+
Sortable.cast(element).startDrag(event);
|
368
390
|
}
|
369
391
|
},
|
370
392
|
|
@@ -374,9 +396,9 @@ $(document).on({
|
|
374
396
|
}
|
375
397
|
},
|
376
398
|
|
377
|
-
mouseup: function() {
|
399
|
+
mouseup: function(event) {
|
378
400
|
if (Sortable.current) {
|
379
|
-
Sortable.current.finishDrag();
|
401
|
+
Sortable.current.finishDrag(event);
|
380
402
|
}
|
381
403
|
}
|
382
404
|
});
|
@@ -6,11 +6,11 @@
|
|
6
6
|
*
|
7
7
|
* Copyright (C) 2009-2010 Nikolay Nemshilov
|
8
8
|
*/
|
9
|
-
var Sortable=RightJS.Sortable=function(l,f){var j=f.$,
|
10
|
-
|
11
|
-
this._tryXhr).on("selectstart","stopEvent")},setOptions:function(a,b){this.$super(a,b);a=this.options;var
|
12
|
-
g=d+this.cloneHeight;
|
13
|
-
this.item.setStyle("visibility:visible")}h.current=false},_initDrag:function(a,b){this.dimensions();var
|
14
|
-
this.yRDiff=b.y-e.position().y;this._findSuspects()},_findSuspects:function(){var a=this.suspects=f([]),b=this.item,
|
15
|
-
params:{}},this.options.Xhr);e=e.get("id")||"";if(this.options.parseId&&e)e=(e.match(/\d+/)||[""])[0];if(b.include("%{id}"))b=b.replace("%{id}",e);else
|
16
|
-
h.current.finishDrag()}});j(window).onBlur(function(){h.current&&h.current.finishDrag()});l.write('<style type="text/css">.rui-sortable{user-select:none;-moz-user-select:none;-webkit-user-select:none}</style>');return h}(document,RightJS);
|
9
|
+
var Sortable=RightJS.Sortable=function(l,f){var j=f.$,n=f.$w,o=f.isString,p=f.isArray,k=f.Object,h=new (function(a,b){if(!b){b=a;a="DIV"}var c=new f.Wrapper(f.Element.Wrappers[a]||f.Element,{initialize:function(e,d){this.key=e;var g=[{"class":"rui-"+e}];this instanceof f.Input||this instanceof f.Form||g.unshift(a);this.$super.apply(this,g);if(f.isString(d))d=f.$(d);if(d instanceof f.Element){this._=d._;if("$listeners"in d)d.$listeners=d.$listeners;d={}}this.setOptions(d,this);return this},setOptions:function(e,
|
10
|
+
d){d=d||this;f.Options.setOptions.call(this,f.Object.merge(e,eval("("+(d.get("data-"+this.key)||"{}")+")")));return this}});c=new f.Wrapper(c,b);f.Observer.createShortcuts(c.prototype,c.EVENTS||[]);return c})("UL",{extend:{version:"2.0.0",EVENTS:n("start change finish"),Options:{url:null,method:"put",Xhr:{},idParam:"id",posParam:"position",parseId:true,dragClass:"dragging",accept:null,minLength:1,itemCss:"li",handleCss:"li",cssRule:"*[data-sortable]"},current:false,cast:function(a){a=j(a._);a instanceof
|
11
|
+
h||(a=new h(a));return a}},initialize:function(a,b){this.$super("sortable",a).setOptions(b).addClass("rui-sortable").on("finish",this._tryXhr).on("selectstart","stopEvent")},setOptions:function(a,b){this.$super(a,b);a=this.options;var c=a.accept||[];p(c)||(c=[c]);a.accept=f([this].concat(c)).map(j).uniq();return this},items:function(){return this.children(this.options.itemCss)},startDrag:function(a){if(!(this.items().length<=this.options.minLength)){var b=a.find(this.options.itemCss),c=a.find(this.options.handleCss);
|
12
|
+
if(b&&c){this._initDrag(b,a.position());h.current=this;this.fire("start",this._evOpts(a))}}},moveItem:function(a){var b=a.position(),c=this.itemClone._.style,e=b.y-this.yRDiff,d=b.x-this.xRDiff,g=d+this.cloneWidth,m=e+this.cloneHeight;c.top=b.y-this.yDiff+"px";c.left=b.x-this.xDiff+"px";if(b=this.suspects.first(function(i){return(e>i.top&&e<i.topHalf||m<i.bottom&&m>i.topHalf)&&(d>i.left&&d<i.leftHalf||g<i.right&&g>i.leftHalf)})){c=b.item;c.insert(this.item,c.prevSiblings().include(this.item)?"after":
|
13
|
+
"before");this._findSuspects();this.fire("change",this._evOpts(a,c))}},finishDrag:function(a){if(this.itemClone){this.itemClone.remove();this.item.setStyle("visibility:visible")}h.current=false;this.fire("finish",this._evOpts(a))},_evOpts:function(a,b){b=b||this.item;var c=h.cast(b.parent());return{list:c,item:b,event:a,index:c.items().indexOf(b)}},_initDrag:function(a,b){this.dimensions();var c=a.dimensions(),e=a.clone().setStyle({margin:0,zIndex:9999,position:"absolute",top:"0px",left:"0px"}).addClass(this.options.dragClass).insertTo(this).setHeight(this.cloneHeight=
|
14
|
+
c.height).setWidth(this.cloneWidth=c.width),d=e.position(),g=c.left-d.x;c=c.top-d.y;e.moveTo(g,c);this.item=a.setStyle("visibility:hidden");this.itemClone=e;this.xDiff=b.x-g;this.yDiff=b.y-c;this.xRDiff=b.x-e.position().x;this.yRDiff=b.y-e.position().y;this._findSuspects()},_findSuspects:function(){var a=this.suspects=f([]),b=this.item,c=this.itemClone;this.options.accept.each(function(e){h.cast(e).items().each(function(d){if(d!==b&&d!==c){var g=d.dimensions();a.push({item:d,top:g.top,left:g.left,
|
15
|
+
right:g.left+g.width,bottom:g.top+g.height,topHalf:g.top+g.height/2,leftHalf:g.left+g.width/2})}})})},_tryXhr:function(a){if(this.options.url){var b=f(this.options.url),c={},e=a.item;a=a.index+1;var d=k.merge({method:this.options.method,params:{}},this.options.Xhr);e=e.get("id")||"";if(this.options.parseId&&e)e=(e.match(/\d+/)||[""])[0];if(b.include("%{id}"))b=b.replace("%{id}",e);else c[this.options.idParam]=e;c[this.options.posParam]=a;if(o(d.params))d.params+="&"+k.toQueryString(c);else d.params=
|
16
|
+
k.merge(d.params,c);f.Xhr.load(b,d)}}});j(l).on({mousedown:function(a){var b=a.find(h.Options.cssRule+",*.rui-sortable");b&&h.cast(b).startDrag(a)},mousemove:function(a){h.current&&h.current.moveItem(a)},mouseup:function(a){h.current&&h.current.finishDrag(a)}});j(window).onBlur(function(){h.current&&h.current.finishDrag()});l.write('<style type="text/css">.rui-sortable{user-select:none;-moz-user-select:none;-webkit-user-select:none}</style>');return h}(document,RightJS);
|