transit 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +19 -11
- data/app/assets/images/transit/icon24x24.png +0 -0
- data/app/assets/images/transit/icon24x24_files.png +0 -0
- data/app/assets/images/transit/jplayer.swf +0 -0
- data/app/assets/images/transit/uploadify.swf +0 -0
- data/app/assets/images/transit/video_player.swf +0 -0
- data/app/assets/javascripts/jqtools/expose.js +224 -0
- data/app/assets/javascripts/jqtools/flashembed.js +300 -0
- data/app/assets/javascripts/jqtools/overlay.js +294 -0
- data/app/assets/javascripts/jqtools/scrollable.js +3 -0
- data/app/assets/javascripts/jqtools/scrollable/autoscroll.js +81 -0
- data/app/assets/javascripts/jqtools/scrollable/base.js +335 -0
- data/app/assets/javascripts/jqtools/scrollable/navigator.js +139 -0
- data/app/assets/javascripts/jqtools/validator.js +590 -0
- data/app/assets/javascripts/jqueryui/accordion.js +611 -0
- data/app/assets/javascripts/jqueryui/autocomplete.js +612 -0
- data/app/assets/javascripts/jqueryui/button.js +388 -0
- data/app/assets/javascripts/jqueryui/core.js +312 -0
- data/app/assets/javascripts/jqueryui/datepicker.js +1791 -0
- data/app/assets/javascripts/jqueryui/dialog.js +878 -0
- data/app/assets/javascripts/jqueryui/draggable.js +815 -0
- data/app/assets/javascripts/jqueryui/droppable.js +285 -0
- data/app/assets/javascripts/jqueryui/effects/blind.js +49 -0
- data/app/assets/javascripts/jqueryui/effects/bounce.js +78 -0
- data/app/assets/javascripts/jqueryui/effects/clip.js +54 -0
- data/app/assets/javascripts/jqueryui/effects/core.js +746 -0
- data/app/assets/javascripts/jqueryui/effects/drop.js +50 -0
- data/app/assets/javascripts/jqueryui/effects/explode.js +79 -0
- data/app/assets/javascripts/jqueryui/effects/fade.js +32 -0
- data/app/assets/javascripts/jqueryui/effects/fold.js +56 -0
- data/app/assets/javascripts/jqueryui/effects/highlight.js +50 -0
- data/app/assets/javascripts/jqueryui/effects/pulsate.js +51 -0
- data/app/assets/javascripts/jqueryui/effects/scale.js +178 -0
- data/app/assets/javascripts/jqueryui/effects/shake.js +57 -0
- data/app/assets/javascripts/jqueryui/effects/slide.js +50 -0
- data/app/assets/javascripts/jqueryui/effects/transfer.js +45 -0
- data/app/assets/javascripts/jqueryui/mouse.js +160 -0
- data/app/assets/javascripts/jqueryui/position.js +252 -0
- data/app/assets/javascripts/jqueryui/progressbar.js +109 -0
- data/app/assets/javascripts/jqueryui/resizable.js +814 -0
- data/app/assets/javascripts/jqueryui/selectable.js +266 -0
- data/app/assets/javascripts/jqueryui/slider.js +666 -0
- data/app/assets/javascripts/jqueryui/sortable.js +1077 -0
- data/app/assets/javascripts/jqueryui/tabs.js +758 -0
- data/app/assets/javascripts/jqueryui/widget.js +262 -0
- data/app/assets/javascripts/libs/backbone.js +1152 -0
- data/app/assets/javascripts/libs/cookie.js +89 -0
- data/app/assets/javascripts/libs/fileinput.js +130 -0
- data/app/assets/javascripts/libs/jplayer.js +1768 -0
- data/app/assets/javascripts/libs/proper.js +541 -0
- data/app/assets/javascripts/libs/sanitize.js +282 -0
- data/app/assets/javascripts/libs/selecttolist.js +75 -0
- data/app/assets/javascripts/libs/underscore.js +807 -0
- data/app/assets/javascripts/libs/uploadify.js +677 -0
- data/app/assets/javascripts/libs/wymeditor.js +9538 -0
- data/app/assets/javascripts/transit.js +4 -0
- data/app/assets/javascripts/transit/admin.js +22 -0
- data/app/assets/javascripts/transit/admin/contexts.js +52 -0
- data/app/assets/javascripts/transit/admin/fields.js +36 -0
- data/app/assets/javascripts/transit/admin/upload.js +109 -0
- data/app/assets/javascripts/transit/config.js.erb +101 -0
- data/app/assets/javascripts/transit/contexts/audio.js +39 -0
- data/app/assets/javascripts/transit/contexts/video.js +79 -0
- data/app/assets/javascripts/transit/core.js +171 -0
- data/app/assets/javascripts/transit/frontend.js +3 -0
- data/app/assets/javascripts/transit/lib/base64.js +120 -0
- data/app/assets/javascripts/transit/lib/editor.js +177 -0
- data/app/assets/javascripts/transit/views/audio_player.jst +22 -0
- data/app/assets/javascripts/transit/views/editor_toolbar.jst +12 -0
- data/app/assets/javascripts/transit/views/file_upload.jst +5 -0
- data/app/assets/javascripts/transit/views/video_player.jst +20 -0
- data/app/assets/javascripts/transit/views/wym_box.jst +4 -0
- data/app/assets/javascripts/transit/views/wym_iframe.jst +3 -0
- data/app/assets/stylesheets/transit.css.scss.erb +42 -0
- data/app/assets/stylesheets/transit/forms.css.scss +66 -0
- data/app/assets/stylesheets/transit/media/audio.css.scss +65 -0
- data/app/assets/stylesheets/transit/media/video.css.scss +30 -0
- data/app/assets/stylesheets/transit/panel.css.scss +100 -0
- data/app/assets/stylesheets/transit/ui.css.scss +507 -0
- data/app/controllers/pages_controller.rb +3 -0
- data/app/controllers/posts_controller.rb +3 -0
- data/app/controllers/transit/assets_controller.rb +38 -0
- data/app/controllers/transit/contexts_controller.rb +12 -9
- data/app/controllers/transit/pages_controller.rb +26 -0
- data/app/controllers/transit/posts_controller.rb +31 -0
- data/app/controllers/transit/topics_controller.rb +5 -0
- data/app/controllers/transit_controller.rb +16 -0
- data/app/helpers/transit/admin_helper.rb +43 -0
- data/app/helpers/transit/form_helper.rb +17 -0
- data/app/helpers/transit/package_helper.rb +41 -0
- data/app/helpers/transit/pagination_helper.rb +58 -0
- data/app/helpers/transit_helper.rb +42 -0
- data/app/models/comment.rb +37 -0
- data/app/models/contexts/audio.rb +12 -0
- data/app/models/{text.rb → contexts/text.rb} +0 -0
- data/app/models/contexts/video.rb +24 -0
- data/app/models/topic.rb +19 -0
- data/app/models/transit/asset.rb +68 -0
- data/{lib → app/models}/transit/context.rb +29 -0
- data/app/views/contexts/_text.html.erb +1 -1
- data/app/views/posts/index.rss.builder +18 -0
- data/app/views/transit/assets/_file.html.erb +4 -0
- data/app/views/transit/assets/_image.html.erb +13 -0
- data/app/views/transit/assets/create.js.erb +8 -0
- data/app/views/transit/assets/destroy.js.erb +3 -0
- data/app/views/transit/assets/manage.html.erb +20 -0
- data/app/views/transit/contexts/_audio.html.erb +18 -0
- data/app/views/transit/contexts/_text.html.erb +6 -0
- data/app/views/transit/contexts/_video.html.erb +13 -0
- data/app/views/transit/contexts/destroy.js.erb +1 -0
- data/app/views/transit/contexts/index.html.erb +5 -0
- data/app/views/transit/contexts/new.js.erb +7 -0
- data/app/views/transit/contexts/show.html.erb +8 -0
- data/app/views/transit/index.html.erb +26 -0
- data/app/views/transit/index.js.erb +1 -0
- data/app/views/transit/interface/post_panel.html.erb +96 -0
- data/app/views/transit/pages/_table.html.erb +7 -0
- data/app/views/transit/pages/edit.html.erb +17 -0
- data/app/views/transit/pages/index.html.erb +17 -0
- data/app/views/transit/pages/update.js.erb +1 -0
- data/app/views/transit/posts/_form.html.erb +49 -0
- data/app/views/transit/posts/edit.html.erb +14 -0
- data/app/views/transit/posts/new.html.erb +21 -0
- data/app/views/transit/table.html.erb +13 -0
- data/app/views/transit/table.js.erb +8 -0
- data/app/views/transit/topics/manage.html.erb +28 -0
- data/config/locales/en.yml +22 -0
- data/config/routes.rb +3 -3
- data/lib/transit.rb +51 -17
- data/lib/transit/admin.rb +85 -0
- data/lib/transit/builders/form_builder.rb +319 -0
- data/lib/transit/builders/jst_builder.rb +38 -0
- data/lib/transit/builders/package_builder.rb +45 -0
- data/lib/transit/config.rb +20 -0
- data/lib/transit/controller/generator.rb +42 -0
- data/lib/transit/controller/responder.rb +34 -0
- data/lib/transit/core_ext.rb +18 -0
- data/lib/transit/errors/resource_not_found.rb +6 -0
- data/lib/transit/model/assets.rb +14 -0
- data/lib/transit/model/attachments.rb +55 -0
- data/lib/transit/model/auto_increment.rb +22 -0
- data/lib/transit/model/base.rb +56 -0
- data/lib/transit/model/comments.rb +19 -0
- data/lib/transit/model/hooks.rb +38 -0
- data/lib/transit/model/owners.rb +14 -0
- data/lib/transit/model/paginator.rb +92 -0
- data/lib/transit/model/topics.rb +14 -0
- data/lib/transit/package/page.rb +20 -12
- data/lib/transit/package/post.rb +87 -33
- data/lib/transit/package/post/validations.rb +14 -0
- data/lib/transit/rails/engine.rb +29 -13
- data/lib/transit/rails/railtie.rb +31 -0
- data/lib/transit/rails/routing.rb +11 -6
- data/lib/transit/services.rb +13 -0
- data/lib/transit/services/base.rb +14 -0
- data/lib/transit/services/facebook.rb +13 -0
- data/lib/transit/services/ted.rb +10 -0
- data/lib/transit/services/twitter.rb +13 -0
- data/lib/transit/services/vimeo.rb +10 -0
- data/lib/transit/services/you_tube.rb +12 -0
- data/lib/transit/version.rb +1 -1
- metadata +178 -31
- data/app/assets/stylesheets/includes/_compat.scss +0 -24
- data/app/assets/stylesheets/includes/_defaults.scss +0 -99
- data/app/assets/stylesheets/includes/_global.scss +0 -16
- data/app/assets/stylesheets/includes/_imports.scss +0 -27
- data/app/assets/stylesheets/includes/_mixins.scss +0 -38
- data/app/assets/stylesheets/includes/_setup.scss +0 -85
- data/app/assets/stylesheets/layout.css.scss +0 -29
- data/app/assets/stylesheets/transit.css +0 -3
- data/app/controllers/application_controller.rb +0 -5
- data/app/controllers/transit/index_controller.rb +0 -7
- data/app/controllers/transit/packages_controller.rb +0 -64
- data/app/controllers/transit/transit_controller.rb +0 -4
- data/app/helpers/routing_helpers.rb +0 -7
- data/app/models/audio.rb +0 -4
- data/app/models/package_asset.rb +0 -11
- data/app/models/video.rb +0 -8
- data/app/views/contexts/_audio.html.erb +0 -1
- data/app/views/contexts/_video.html.erb +0 -1
- data/app/views/layouts/transit.html.erb +0 -31
- data/app/views/transit/index/index.html.erb +0 -0
- data/lib/transit/helpers/controller_helpers.rb +0 -40
- data/lib/transit/helpers/model_helpers.rb +0 -26
- data/lib/transit/package.rb +0 -25
- data/lib/transit/package/base.rb +0 -49
@@ -0,0 +1,50 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Drop 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Drop
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.drop = function(o) {
|
16
|
+
|
17
|
+
return this.queue(function() {
|
18
|
+
|
19
|
+
// Create element
|
20
|
+
var el = $(this), props = ['position','top','bottom','left','right','opacity'];
|
21
|
+
|
22
|
+
// Set options
|
23
|
+
var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
|
24
|
+
var direction = o.options.direction || 'left'; // Default Direction
|
25
|
+
|
26
|
+
// Adjust
|
27
|
+
$.effects.save(el, props); el.show(); // Save & Show
|
28
|
+
$.effects.createWrapper(el); // Create Wrapper
|
29
|
+
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
30
|
+
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
31
|
+
var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2);
|
32
|
+
if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
|
33
|
+
|
34
|
+
// Animation
|
35
|
+
var animation = {opacity: mode == 'show' ? 1 : 0};
|
36
|
+
animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
|
37
|
+
|
38
|
+
// Animate
|
39
|
+
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
40
|
+
if(mode == 'hide') el.hide(); // Hide
|
41
|
+
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
42
|
+
if(o.callback) o.callback.apply(this, arguments); // Callback
|
43
|
+
el.dequeue();
|
44
|
+
}});
|
45
|
+
|
46
|
+
});
|
47
|
+
|
48
|
+
};
|
49
|
+
|
50
|
+
})(jQuery);
|
@@ -0,0 +1,79 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Explode 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Explode
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.explode = function(o) {
|
16
|
+
|
17
|
+
return this.queue(function() {
|
18
|
+
|
19
|
+
var rows = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
|
20
|
+
var cells = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
|
21
|
+
|
22
|
+
o.options.mode = o.options.mode == 'toggle' ? ($(this).is(':visible') ? 'hide' : 'show') : o.options.mode;
|
23
|
+
var el = $(this).show().css('visibility', 'hidden');
|
24
|
+
var offset = el.offset();
|
25
|
+
|
26
|
+
//Substract the margins - not fixing the problem yet.
|
27
|
+
offset.top -= parseInt(el.css("marginTop"),10) || 0;
|
28
|
+
offset.left -= parseInt(el.css("marginLeft"),10) || 0;
|
29
|
+
|
30
|
+
var width = el.outerWidth(true);
|
31
|
+
var height = el.outerHeight(true);
|
32
|
+
|
33
|
+
for(var i=0;i<rows;i++) { // =
|
34
|
+
for(var j=0;j<cells;j++) { // ||
|
35
|
+
el
|
36
|
+
.clone()
|
37
|
+
.appendTo('body')
|
38
|
+
.wrap('<div></div>')
|
39
|
+
.css({
|
40
|
+
position: 'absolute',
|
41
|
+
visibility: 'visible',
|
42
|
+
left: -j*(width/cells),
|
43
|
+
top: -i*(height/rows)
|
44
|
+
})
|
45
|
+
.parent()
|
46
|
+
.addClass('ui-effects-explode')
|
47
|
+
.css({
|
48
|
+
position: 'absolute',
|
49
|
+
overflow: 'hidden',
|
50
|
+
width: width/cells,
|
51
|
+
height: height/rows,
|
52
|
+
left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? (j-Math.floor(cells/2))*(width/cells) : 0),
|
53
|
+
top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? (i-Math.floor(rows/2))*(height/rows) : 0),
|
54
|
+
opacity: o.options.mode == 'show' ? 0 : 1
|
55
|
+
}).animate({
|
56
|
+
left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? 0 : (j-Math.floor(cells/2))*(width/cells)),
|
57
|
+
top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? 0 : (i-Math.floor(rows/2))*(height/rows)),
|
58
|
+
opacity: o.options.mode == 'show' ? 1 : 0
|
59
|
+
}, o.duration || 500);
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
// Set a timeout, to call the callback approx. when the other animations have finished
|
64
|
+
setTimeout(function() {
|
65
|
+
|
66
|
+
o.options.mode == 'show' ? el.css({ visibility: 'visible' }) : el.css({ visibility: 'visible' }).hide();
|
67
|
+
if(o.callback) o.callback.apply(el[0]); // Callback
|
68
|
+
el.dequeue();
|
69
|
+
|
70
|
+
$('div.ui-effects-explode').remove();
|
71
|
+
|
72
|
+
}, o.duration || 500);
|
73
|
+
|
74
|
+
|
75
|
+
});
|
76
|
+
|
77
|
+
};
|
78
|
+
|
79
|
+
})(jQuery);
|
@@ -0,0 +1,32 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Fade 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Fade
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.fade = function(o) {
|
16
|
+
return this.queue(function() {
|
17
|
+
var elem = $(this),
|
18
|
+
mode = $.effects.setMode(elem, o.options.mode || 'hide');
|
19
|
+
|
20
|
+
elem.animate({ opacity: mode }, {
|
21
|
+
queue: false,
|
22
|
+
duration: o.duration,
|
23
|
+
easing: o.options.easing,
|
24
|
+
complete: function() {
|
25
|
+
(o.callback && o.callback.apply(this, arguments));
|
26
|
+
elem.dequeue();
|
27
|
+
}
|
28
|
+
});
|
29
|
+
});
|
30
|
+
};
|
31
|
+
|
32
|
+
})(jQuery);
|
@@ -0,0 +1,56 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Fold 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Fold
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.fold = function(o) {
|
16
|
+
|
17
|
+
return this.queue(function() {
|
18
|
+
|
19
|
+
// Create element
|
20
|
+
var el = $(this), props = ['position','top','bottom','left','right'];
|
21
|
+
|
22
|
+
// Set options
|
23
|
+
var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
|
24
|
+
var size = o.options.size || 15; // Default fold size
|
25
|
+
var horizFirst = !(!o.options.horizFirst); // Ensure a boolean value
|
26
|
+
var duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2;
|
27
|
+
|
28
|
+
// Adjust
|
29
|
+
$.effects.save(el, props); el.show(); // Save & Show
|
30
|
+
var wrapper = $.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
|
31
|
+
var widthFirst = ((mode == 'show') != horizFirst);
|
32
|
+
var ref = widthFirst ? ['width', 'height'] : ['height', 'width'];
|
33
|
+
var distance = widthFirst ? [wrapper.width(), wrapper.height()] : [wrapper.height(), wrapper.width()];
|
34
|
+
var percent = /([0-9]+)%/.exec(size);
|
35
|
+
if(percent) size = parseInt(percent[1],10) / 100 * distance[mode == 'hide' ? 0 : 1];
|
36
|
+
if(mode == 'show') wrapper.css(horizFirst ? {height: 0, width: size} : {height: size, width: 0}); // Shift
|
37
|
+
|
38
|
+
// Animation
|
39
|
+
var animation1 = {}, animation2 = {};
|
40
|
+
animation1[ref[0]] = mode == 'show' ? distance[0] : size;
|
41
|
+
animation2[ref[1]] = mode == 'show' ? distance[1] : 0;
|
42
|
+
|
43
|
+
// Animate
|
44
|
+
wrapper.animate(animation1, duration, o.options.easing)
|
45
|
+
.animate(animation2, duration, o.options.easing, function() {
|
46
|
+
if(mode == 'hide') el.hide(); // Hide
|
47
|
+
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
48
|
+
if(o.callback) o.callback.apply(el[0], arguments); // Callback
|
49
|
+
el.dequeue();
|
50
|
+
});
|
51
|
+
|
52
|
+
});
|
53
|
+
|
54
|
+
};
|
55
|
+
|
56
|
+
})(jQuery);
|
@@ -0,0 +1,50 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Highlight 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Highlight
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.highlight = function(o) {
|
16
|
+
return this.queue(function() {
|
17
|
+
var elem = $(this),
|
18
|
+
props = ['backgroundImage', 'backgroundColor', 'opacity'],
|
19
|
+
mode = $.effects.setMode(elem, o.options.mode || 'show'),
|
20
|
+
animation = {
|
21
|
+
backgroundColor: elem.css('backgroundColor')
|
22
|
+
};
|
23
|
+
|
24
|
+
if (mode == 'hide') {
|
25
|
+
animation.opacity = 0;
|
26
|
+
}
|
27
|
+
|
28
|
+
$.effects.save(elem, props);
|
29
|
+
elem
|
30
|
+
.show()
|
31
|
+
.css({
|
32
|
+
backgroundImage: 'none',
|
33
|
+
backgroundColor: o.options.color || '#ffff99'
|
34
|
+
})
|
35
|
+
.animate(animation, {
|
36
|
+
queue: false,
|
37
|
+
duration: o.duration,
|
38
|
+
easing: o.options.easing,
|
39
|
+
complete: function() {
|
40
|
+
(mode == 'hide' && elem.hide());
|
41
|
+
$.effects.restore(elem, props);
|
42
|
+
(mode == 'show' && !$.support.opacity && this.style.removeAttribute('filter'));
|
43
|
+
(o.callback && o.callback.apply(this, arguments));
|
44
|
+
elem.dequeue();
|
45
|
+
}
|
46
|
+
});
|
47
|
+
});
|
48
|
+
};
|
49
|
+
|
50
|
+
})(jQuery);
|
@@ -0,0 +1,51 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Pulsate 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Pulsate
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.pulsate = function(o) {
|
16
|
+
return this.queue(function() {
|
17
|
+
var elem = $(this),
|
18
|
+
mode = $.effects.setMode(elem, o.options.mode || 'show');
|
19
|
+
times = ((o.options.times || 5) * 2) - 1;
|
20
|
+
duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2,
|
21
|
+
isVisible = elem.is(':visible'),
|
22
|
+
animateTo = 0;
|
23
|
+
|
24
|
+
if (!isVisible) {
|
25
|
+
elem.css('opacity', 0).show();
|
26
|
+
animateTo = 1;
|
27
|
+
}
|
28
|
+
|
29
|
+
if ((mode == 'hide' && isVisible) || (mode == 'show' && !isVisible)) {
|
30
|
+
times--;
|
31
|
+
}
|
32
|
+
|
33
|
+
for (var i = 0; i < times; i++) {
|
34
|
+
elem.animate({ opacity: animateTo }, duration, o.options.easing);
|
35
|
+
animateTo = (animateTo + 1) % 2;
|
36
|
+
}
|
37
|
+
|
38
|
+
elem.animate({ opacity: animateTo }, duration, o.options.easing, function() {
|
39
|
+
if (animateTo == 0) {
|
40
|
+
elem.hide();
|
41
|
+
}
|
42
|
+
(o.callback && o.callback.apply(this, arguments));
|
43
|
+
});
|
44
|
+
|
45
|
+
elem
|
46
|
+
.queue('fx', function() { elem.dequeue(); })
|
47
|
+
.dequeue();
|
48
|
+
});
|
49
|
+
};
|
50
|
+
|
51
|
+
})(jQuery);
|
@@ -0,0 +1,178 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery UI Effects Scale 1.8.13
|
3
|
+
*
|
4
|
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
5
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
6
|
+
* http://jquery.org/license
|
7
|
+
*
|
8
|
+
* http://docs.jquery.com/UI/Effects/Scale
|
9
|
+
*
|
10
|
+
* Depends:
|
11
|
+
* jquery.effects.core.js
|
12
|
+
*/
|
13
|
+
(function( $, undefined ) {
|
14
|
+
|
15
|
+
$.effects.puff = function(o) {
|
16
|
+
return this.queue(function() {
|
17
|
+
var elem = $(this),
|
18
|
+
mode = $.effects.setMode(elem, o.options.mode || 'hide'),
|
19
|
+
percent = parseInt(o.options.percent, 10) || 150,
|
20
|
+
factor = percent / 100,
|
21
|
+
original = { height: elem.height(), width: elem.width() };
|
22
|
+
|
23
|
+
$.extend(o.options, {
|
24
|
+
fade: true,
|
25
|
+
mode: mode,
|
26
|
+
percent: mode == 'hide' ? percent : 100,
|
27
|
+
from: mode == 'hide'
|
28
|
+
? original
|
29
|
+
: {
|
30
|
+
height: original.height * factor,
|
31
|
+
width: original.width * factor
|
32
|
+
}
|
33
|
+
});
|
34
|
+
|
35
|
+
elem.effect('scale', o.options, o.duration, o.callback);
|
36
|
+
elem.dequeue();
|
37
|
+
});
|
38
|
+
};
|
39
|
+
|
40
|
+
$.effects.scale = function(o) {
|
41
|
+
|
42
|
+
return this.queue(function() {
|
43
|
+
|
44
|
+
// Create element
|
45
|
+
var el = $(this);
|
46
|
+
|
47
|
+
// Set options
|
48
|
+
var options = $.extend(true, {}, o.options);
|
49
|
+
var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
|
50
|
+
var percent = parseInt(o.options.percent,10) || (parseInt(o.options.percent,10) == 0 ? 0 : (mode == 'hide' ? 0 : 100)); // Set default scaling percent
|
51
|
+
var direction = o.options.direction || 'both'; // Set default axis
|
52
|
+
var origin = o.options.origin; // The origin of the scaling
|
53
|
+
if (mode != 'effect') { // Set default origin and restore for show/hide
|
54
|
+
options.origin = origin || ['middle','center'];
|
55
|
+
options.restore = true;
|
56
|
+
}
|
57
|
+
var original = {height: el.height(), width: el.width()}; // Save original
|
58
|
+
el.from = o.options.from || (mode == 'show' ? {height: 0, width: 0} : original); // Default from state
|
59
|
+
|
60
|
+
// Adjust
|
61
|
+
var factor = { // Set scaling factor
|
62
|
+
y: direction != 'horizontal' ? (percent / 100) : 1,
|
63
|
+
x: direction != 'vertical' ? (percent / 100) : 1
|
64
|
+
};
|
65
|
+
el.to = {height: original.height * factor.y, width: original.width * factor.x}; // Set to state
|
66
|
+
|
67
|
+
if (o.options.fade) { // Fade option to support puff
|
68
|
+
if (mode == 'show') {el.from.opacity = 0; el.to.opacity = 1;};
|
69
|
+
if (mode == 'hide') {el.from.opacity = 1; el.to.opacity = 0;};
|
70
|
+
};
|
71
|
+
|
72
|
+
// Animation
|
73
|
+
options.from = el.from; options.to = el.to; options.mode = mode;
|
74
|
+
|
75
|
+
// Animate
|
76
|
+
el.effect('size', options, o.duration, o.callback);
|
77
|
+
el.dequeue();
|
78
|
+
});
|
79
|
+
|
80
|
+
};
|
81
|
+
|
82
|
+
$.effects.size = function(o) {
|
83
|
+
|
84
|
+
return this.queue(function() {
|
85
|
+
|
86
|
+
// Create element
|
87
|
+
var el = $(this), props = ['position','top','bottom','left','right','width','height','overflow','opacity'];
|
88
|
+
var props1 = ['position','top','bottom','left','right','overflow','opacity']; // Always restore
|
89
|
+
var props2 = ['width','height','overflow']; // Copy for children
|
90
|
+
var cProps = ['fontSize'];
|
91
|
+
var vProps = ['borderTopWidth', 'borderBottomWidth', 'paddingTop', 'paddingBottom'];
|
92
|
+
var hProps = ['borderLeftWidth', 'borderRightWidth', 'paddingLeft', 'paddingRight'];
|
93
|
+
|
94
|
+
// Set options
|
95
|
+
var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
|
96
|
+
var restore = o.options.restore || false; // Default restore
|
97
|
+
var scale = o.options.scale || 'both'; // Default scale mode
|
98
|
+
var origin = o.options.origin; // The origin of the sizing
|
99
|
+
var original = {height: el.height(), width: el.width()}; // Save original
|
100
|
+
el.from = o.options.from || original; // Default from state
|
101
|
+
el.to = o.options.to || original; // Default to state
|
102
|
+
// Adjust
|
103
|
+
if (origin) { // Calculate baseline shifts
|
104
|
+
var baseline = $.effects.getBaseline(origin, original);
|
105
|
+
el.from.top = (original.height - el.from.height) * baseline.y;
|
106
|
+
el.from.left = (original.width - el.from.width) * baseline.x;
|
107
|
+
el.to.top = (original.height - el.to.height) * baseline.y;
|
108
|
+
el.to.left = (original.width - el.to.width) * baseline.x;
|
109
|
+
};
|
110
|
+
var factor = { // Set scaling factor
|
111
|
+
from: {y: el.from.height / original.height, x: el.from.width / original.width},
|
112
|
+
to: {y: el.to.height / original.height, x: el.to.width / original.width}
|
113
|
+
};
|
114
|
+
if (scale == 'box' || scale == 'both') { // Scale the css box
|
115
|
+
if (factor.from.y != factor.to.y) { // Vertical props scaling
|
116
|
+
props = props.concat(vProps);
|
117
|
+
el.from = $.effects.setTransition(el, vProps, factor.from.y, el.from);
|
118
|
+
el.to = $.effects.setTransition(el, vProps, factor.to.y, el.to);
|
119
|
+
};
|
120
|
+
if (factor.from.x != factor.to.x) { // Horizontal props scaling
|
121
|
+
props = props.concat(hProps);
|
122
|
+
el.from = $.effects.setTransition(el, hProps, factor.from.x, el.from);
|
123
|
+
el.to = $.effects.setTransition(el, hProps, factor.to.x, el.to);
|
124
|
+
};
|
125
|
+
};
|
126
|
+
if (scale == 'content' || scale == 'both') { // Scale the content
|
127
|
+
if (factor.from.y != factor.to.y) { // Vertical props scaling
|
128
|
+
props = props.concat(cProps);
|
129
|
+
el.from = $.effects.setTransition(el, cProps, factor.from.y, el.from);
|
130
|
+
el.to = $.effects.setTransition(el, cProps, factor.to.y, el.to);
|
131
|
+
};
|
132
|
+
};
|
133
|
+
$.effects.save(el, restore ? props : props1); el.show(); // Save & Show
|
134
|
+
$.effects.createWrapper(el); // Create Wrapper
|
135
|
+
el.css('overflow','hidden').css(el.from); // Shift
|
136
|
+
|
137
|
+
// Animate
|
138
|
+
if (scale == 'content' || scale == 'both') { // Scale the children
|
139
|
+
vProps = vProps.concat(['marginTop','marginBottom']).concat(cProps); // Add margins/font-size
|
140
|
+
hProps = hProps.concat(['marginLeft','marginRight']); // Add margins
|
141
|
+
props2 = props.concat(vProps).concat(hProps); // Concat
|
142
|
+
el.find("*[width]").each(function(){
|
143
|
+
child = $(this);
|
144
|
+
if (restore) $.effects.save(child, props2);
|
145
|
+
var c_original = {height: child.height(), width: child.width()}; // Save original
|
146
|
+
child.from = {height: c_original.height * factor.from.y, width: c_original.width * factor.from.x};
|
147
|
+
child.to = {height: c_original.height * factor.to.y, width: c_original.width * factor.to.x};
|
148
|
+
if (factor.from.y != factor.to.y) { // Vertical props scaling
|
149
|
+
child.from = $.effects.setTransition(child, vProps, factor.from.y, child.from);
|
150
|
+
child.to = $.effects.setTransition(child, vProps, factor.to.y, child.to);
|
151
|
+
};
|
152
|
+
if (factor.from.x != factor.to.x) { // Horizontal props scaling
|
153
|
+
child.from = $.effects.setTransition(child, hProps, factor.from.x, child.from);
|
154
|
+
child.to = $.effects.setTransition(child, hProps, factor.to.x, child.to);
|
155
|
+
};
|
156
|
+
child.css(child.from); // Shift children
|
157
|
+
child.animate(child.to, o.duration, o.options.easing, function(){
|
158
|
+
if (restore) $.effects.restore(child, props2); // Restore children
|
159
|
+
}); // Animate children
|
160
|
+
});
|
161
|
+
};
|
162
|
+
|
163
|
+
// Animate
|
164
|
+
el.animate(el.to, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
165
|
+
if (el.to.opacity === 0) {
|
166
|
+
el.css('opacity', el.from.opacity);
|
167
|
+
}
|
168
|
+
if(mode == 'hide') el.hide(); // Hide
|
169
|
+
$.effects.restore(el, restore ? props : props1); $.effects.removeWrapper(el); // Restore
|
170
|
+
if(o.callback) o.callback.apply(this, arguments); // Callback
|
171
|
+
el.dequeue();
|
172
|
+
}});
|
173
|
+
|
174
|
+
});
|
175
|
+
|
176
|
+
};
|
177
|
+
|
178
|
+
})(jQuery);
|