foundation-rails 5.0.1.0

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.
Files changed (136) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +1 -0
  7. data/app/controllers/foundation/rails/styleguide_controller.rb +10 -0
  8. data/app/views/foundation/rails/styleguide/show.html.erb +134 -0
  9. data/config/routes.rb +3 -0
  10. data/foundation-rails.gemspec +25 -0
  11. data/lib/foundation-rails.rb +1 -0
  12. data/lib/foundation/rails.rb +3 -0
  13. data/lib/foundation/rails/engine.rb +7 -0
  14. data/lib/foundation/rails/generators/install_generator.rb +56 -0
  15. data/lib/foundation/rails/templates/application.html.erb +19 -0
  16. data/lib/foundation/rails/templates/application.html.haml +18 -0
  17. data/lib/foundation/rails/templates/application.html.slim +17 -0
  18. data/lib/foundation/rails/version.rb +5 -0
  19. data/test/dummy/.gitignore +16 -0
  20. data/test/dummy/Gemfile +47 -0
  21. data/test/dummy/README.rdoc +28 -0
  22. data/test/dummy/Rakefile +6 -0
  23. data/test/dummy/app/assets/images/.keep +0 -0
  24. data/test/dummy/app/assets/javascripts/application.js +8 -0
  25. data/test/dummy/app/assets/stylesheets/application.css +4 -0
  26. data/test/dummy/app/assets/stylesheets/foundation_and_overrides.scss +4 -0
  27. data/test/dummy/app/controllers/application_controller.rb +5 -0
  28. data/test/dummy/app/controllers/concerns/.keep +0 -0
  29. data/test/dummy/app/controllers/styleguide_controller.rb +4 -0
  30. data/test/dummy/app/helpers/application_helper.rb +2 -0
  31. data/test/dummy/app/helpers/styleguide_helper.rb +2 -0
  32. data/test/dummy/app/mailers/.keep +0 -0
  33. data/test/dummy/app/models/.keep +0 -0
  34. data/test/dummy/app/models/concerns/.keep +0 -0
  35. data/test/dummy/app/views/layouts/application.html.erb +19 -0
  36. data/test/dummy/app/views/styleguide/show.html.erb +109 -0
  37. data/test/dummy/bin/bundle +3 -0
  38. data/test/dummy/bin/rails +4 -0
  39. data/test/dummy/bin/rake +4 -0
  40. data/test/dummy/config.ru +4 -0
  41. data/test/dummy/config/application.rb +23 -0
  42. data/test/dummy/config/boot.rb +4 -0
  43. data/test/dummy/config/database.yml +25 -0
  44. data/test/dummy/config/environment.rb +5 -0
  45. data/test/dummy/config/environments/development.rb +29 -0
  46. data/test/dummy/config/environments/production.rb +80 -0
  47. data/test/dummy/config/environments/test.rb +36 -0
  48. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  49. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  50. data/test/dummy/config/initializers/inflections.rb +16 -0
  51. data/test/dummy/config/initializers/mime_types.rb +5 -0
  52. data/test/dummy/config/initializers/secret_token.rb +12 -0
  53. data/test/dummy/config/initializers/session_store.rb +3 -0
  54. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  55. data/test/dummy/config/locales/en.yml +23 -0
  56. data/test/dummy/config/routes.rb +3 -0
  57. data/test/dummy/db/seeds.rb +7 -0
  58. data/test/dummy/lib/assets/.keep +0 -0
  59. data/test/dummy/lib/tasks/.keep +0 -0
  60. data/test/dummy/log/.keep +0 -0
  61. data/test/dummy/public/404.html +58 -0
  62. data/test/dummy/public/422.html +58 -0
  63. data/test/dummy/public/500.html +57 -0
  64. data/test/dummy/public/favicon.ico +0 -0
  65. data/test/dummy/public/robots.txt +5 -0
  66. data/test/dummy/test/controllers/.keep +0 -0
  67. data/test/dummy/test/controllers/styleguide_controller_test.rb +9 -0
  68. data/test/dummy/test/fixtures/.keep +0 -0
  69. data/test/dummy/test/helpers/.keep +0 -0
  70. data/test/dummy/test/helpers/styleguide_helper_test.rb +4 -0
  71. data/test/dummy/test/integration/.keep +0 -0
  72. data/test/dummy/test/mailers/.keep +0 -0
  73. data/test/dummy/test/models/.keep +0 -0
  74. data/test/dummy/test/test_helper.rb +15 -0
  75. data/test/dummy/vendor/assets/javascripts/.keep +0 -0
  76. data/test/dummy/vendor/assets/stylesheets/.keep +0 -0
  77. data/vendor/_settings.scss +992 -0
  78. data/vendor/assets/javascripts/foundation.js +15 -0
  79. data/vendor/assets/javascripts/foundation/foundation.abide.js +201 -0
  80. data/vendor/assets/javascripts/foundation/foundation.accordion.js +41 -0
  81. data/vendor/assets/javascripts/foundation/foundation.alert.js +34 -0
  82. data/vendor/assets/javascripts/foundation/foundation.clearing.js +450 -0
  83. data/vendor/assets/javascripts/foundation/foundation.dropdown.js +184 -0
  84. data/vendor/assets/javascripts/foundation/foundation.interchange.js +304 -0
  85. data/vendor/assets/javascripts/foundation/foundation.joyride.js +839 -0
  86. data/vendor/assets/javascripts/foundation/foundation.js +416 -0
  87. data/vendor/assets/javascripts/foundation/foundation.magellan.js +118 -0
  88. data/vendor/assets/javascripts/foundation/foundation.offcanvas.js +37 -0
  89. data/vendor/assets/javascripts/foundation/foundation.orbit.js +434 -0
  90. data/vendor/assets/javascripts/foundation/foundation.reveal.js +347 -0
  91. data/vendor/assets/javascripts/foundation/foundation.tab.js +37 -0
  92. data/vendor/assets/javascripts/foundation/foundation.tooltip.js +202 -0
  93. data/vendor/assets/javascripts/foundation/foundation.topbar.js +380 -0
  94. data/vendor/assets/javascripts/vendor/modernizr.js +4 -0
  95. data/vendor/assets/stylesheets/foundation.scss +38 -0
  96. data/vendor/assets/stylesheets/foundation/_functions.scss +75 -0
  97. data/vendor/assets/stylesheets/foundation/_settings.scss +992 -0
  98. data/vendor/assets/stylesheets/foundation/components/_accordion.scss +49 -0
  99. data/vendor/assets/stylesheets/foundation/components/_alert-boxes.scss +113 -0
  100. data/vendor/assets/stylesheets/foundation/components/_block-grid.scss +83 -0
  101. data/vendor/assets/stylesheets/foundation/components/_breadcrumbs.scss +123 -0
  102. data/vendor/assets/stylesheets/foundation/components/_button-groups.scss +97 -0
  103. data/vendor/assets/stylesheets/foundation/components/_buttons.scss +234 -0
  104. data/vendor/assets/stylesheets/foundation/components/_clearing.scss +233 -0
  105. data/vendor/assets/stylesheets/foundation/components/_dropdown-buttons.scss +125 -0
  106. data/vendor/assets/stylesheets/foundation/components/_dropdown.scss +159 -0
  107. data/vendor/assets/stylesheets/foundation/components/_flex-video.scss +47 -0
  108. data/vendor/assets/stylesheets/foundation/components/_forms.scss +472 -0
  109. data/vendor/assets/stylesheets/foundation/components/_functions.scss +70 -0
  110. data/vendor/assets/stylesheets/foundation/components/_global.scss +387 -0
  111. data/vendor/assets/stylesheets/foundation/components/_grid.scss +234 -0
  112. data/vendor/assets/stylesheets/foundation/components/_inline-lists.scss +52 -0
  113. data/vendor/assets/stylesheets/foundation/components/_joyride.scss +220 -0
  114. data/vendor/assets/stylesheets/foundation/components/_keystrokes.scss +57 -0
  115. data/vendor/assets/stylesheets/foundation/components/_labels.scss +100 -0
  116. data/vendor/assets/stylesheets/foundation/components/_magellan.scss +30 -0
  117. data/vendor/assets/stylesheets/foundation/components/_offcanvas.scss +360 -0
  118. data/vendor/assets/stylesheets/foundation/components/_orbit.scss +353 -0
  119. data/vendor/assets/stylesheets/foundation/components/_pagination.scss +145 -0
  120. data/vendor/assets/stylesheets/foundation/components/_panels.scss +87 -0
  121. data/vendor/assets/stylesheets/foundation/components/_pricing-tables.scss +146 -0
  122. data/vendor/assets/stylesheets/foundation/components/_progress-bars.scss +75 -0
  123. data/vendor/assets/stylesheets/foundation/components/_reveal.scss +165 -0
  124. data/vendor/assets/stylesheets/foundation/components/_side-nav.scss +83 -0
  125. data/vendor/assets/stylesheets/foundation/components/_split-buttons.scss +187 -0
  126. data/vendor/assets/stylesheets/foundation/components/_sub-nav.scss +118 -0
  127. data/vendor/assets/stylesheets/foundation/components/_switch.scss +314 -0
  128. data/vendor/assets/stylesheets/foundation/components/_tables.scss +93 -0
  129. data/vendor/assets/stylesheets/foundation/components/_tabs.scss +95 -0
  130. data/vendor/assets/stylesheets/foundation/components/_thumbs.scss +71 -0
  131. data/vendor/assets/stylesheets/foundation/components/_tooltips.scss +121 -0
  132. data/vendor/assets/stylesheets/foundation/components/_top-bar.scss +590 -0
  133. data/vendor/assets/stylesheets/foundation/components/_type.scss +447 -0
  134. data/vendor/assets/stylesheets/foundation/components/_visibility.scss +661 -0
  135. data/vendor/assets/stylesheets/normalize.scss +410 -0
  136. metadata +292 -0
@@ -0,0 +1,37 @@
1
+ ;(function ($, window, document, undefined) {
2
+ 'use strict';
3
+
4
+ Foundation.libs.offcanvas = {
5
+ name : 'offcanvas',
6
+
7
+ version : '5.0.0',
8
+
9
+ settings : {},
10
+
11
+ init : function (scope, method, options) {
12
+ this.events();
13
+ },
14
+
15
+ events : function () {
16
+ $(this.scope).off('.offcanvas')
17
+ .on('click.fndtn.offcanvas', '.left-off-canvas-toggle', function (e) {
18
+ e.preventDefault();
19
+ $(this).closest('.off-canvas-wrap').toggleClass('move-right');
20
+ })
21
+ .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {
22
+ e.preventDefault();
23
+ $(".off-canvas-wrap").removeClass("move-right");
24
+ })
25
+ .on('click.fndtn.offcanvas', '.right-off-canvas-toggle', function (e) {
26
+ e.preventDefault();
27
+ $(this).closest(".off-canvas-wrap").toggleClass("move-left");
28
+ })
29
+ .on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {
30
+ e.preventDefault();
31
+ $(".off-canvas-wrap").removeClass("move-left");
32
+ });
33
+ },
34
+
35
+ reflow : function () {}
36
+ };
37
+ }(jQuery, this, this.document));
@@ -0,0 +1,434 @@
1
+ ;(function ($, window, document, undefined) {
2
+ 'use strict';
3
+
4
+ var noop = function() {};
5
+
6
+ var Orbit = function(el, settings) {
7
+ // Don't reinitialize plugin
8
+ if (el.hasClass(settings.slides_container_class)) {
9
+ return this;
10
+ }
11
+
12
+ var self = this,
13
+ container,
14
+ slides_container = el,
15
+ number_container,
16
+ bullets_container,
17
+ timer_container,
18
+ idx = 0,
19
+ animate,
20
+ timer,
21
+ locked = false,
22
+ adjust_height_after = false;
23
+
24
+ slides_container.children().first().addClass(settings.active_slide_class);
25
+
26
+ self.update_slide_number = function(index) {
27
+ if (settings.slide_number) {
28
+ number_container.find('span:first').text(parseInt(index)+1);
29
+ number_container.find('span:last').text(slides_container.children().length);
30
+ }
31
+ if (settings.bullets) {
32
+ bullets_container.children().removeClass(settings.bullets_active_class);
33
+ $(bullets_container.children().get(index)).addClass(settings.bullets_active_class);
34
+ }
35
+ };
36
+
37
+ self.update_active_link = function(index) {
38
+ var link = $('a[data-orbit-link="'+slides_container.children().eq(index).attr('data-orbit-slide')+'"]');
39
+ link.parents('ul').find('[data-orbit-link]').removeClass(settings.bullets_active_class);
40
+ link.addClass(settings.bullets_active_class);
41
+ };
42
+
43
+ self.build_markup = function() {
44
+ slides_container.wrap('<div class="'+settings.container_class+'"></div>');
45
+ container = slides_container.parent();
46
+ slides_container.addClass(settings.slides_container_class);
47
+
48
+ if (settings.navigation_arrows) {
49
+ container.append($('<a href="#"><span></span></a>').addClass(settings.prev_class));
50
+ container.append($('<a href="#"><span></span></a>').addClass(settings.next_class));
51
+ }
52
+
53
+ if (settings.timer) {
54
+ timer_container = $('<div>').addClass(settings.timer_container_class);
55
+ timer_container.append('<span>');
56
+ timer_container.append($('<div>').addClass(settings.timer_progress_class));
57
+ timer_container.addClass(settings.timer_paused_class);
58
+ container.append(timer_container);
59
+ }
60
+
61
+ if (settings.slide_number) {
62
+ number_container = $('<div>').addClass(settings.slide_number_class);
63
+ number_container.append('<span></span> ' + settings.slide_number_text + ' <span></span>');
64
+ container.append(number_container);
65
+ }
66
+
67
+ if (settings.bullets) {
68
+ bullets_container = $('<ol>').addClass(settings.bullets_container_class);
69
+ container.append(bullets_container);
70
+ bullets_container.wrap('<div class="orbit-bullets-container"></div>');
71
+ slides_container.children().each(function(idx, el) {
72
+ var bullet = $('<li>').attr('data-orbit-slide', idx);
73
+ bullets_container.append(bullet);
74
+ });
75
+ }
76
+
77
+ if (settings.stack_on_small) {
78
+ container.addClass(settings.stack_on_small_class);
79
+ }
80
+
81
+ self.update_slide_number(0);
82
+ self.update_active_link(0);
83
+ };
84
+
85
+ self._goto = function(next_idx, start_timer) {
86
+ // if (locked) {return false;}
87
+ if (next_idx === idx) {return false;}
88
+ if (typeof timer === 'object') {timer.restart();}
89
+ var slides = slides_container.children();
90
+
91
+ var dir = 'next';
92
+ locked = true;
93
+ if (next_idx < idx) {dir = 'prev';}
94
+ if (next_idx >= slides.length) {next_idx = 0;}
95
+ else if (next_idx < 0) {next_idx = slides.length - 1;}
96
+
97
+ var current = $(slides.get(idx));
98
+ var next = $(slides.get(next_idx));
99
+
100
+ current.css('zIndex', 2);
101
+ current.removeClass(settings.active_slide_class);
102
+ next.css('zIndex', 4).addClass(settings.active_slide_class);
103
+
104
+ slides_container.trigger('before-slide-change.fndtn.orbit');
105
+ settings.before_slide_change();
106
+ self.update_active_link(next_idx);
107
+
108
+ var callback = function() {
109
+ var unlock = function() {
110
+ idx = next_idx;
111
+ locked = false;
112
+ if (start_timer === true) {timer = self.create_timer(); timer.start();}
113
+ self.update_slide_number(idx);
114
+ slides_container.trigger('after-slide-change.fndtn.orbit',[{slide_number: idx, total_slides: slides.length}]);
115
+ settings.after_slide_change(idx, slides.length);
116
+ };
117
+ if (slides_container.height() != next.height() && settings.variable_height) {
118
+ slides_container.animate({'height': next.height()}, 250, 'linear', unlock);
119
+ } else {
120
+ unlock();
121
+ }
122
+ };
123
+
124
+ if (slides.length === 1) {callback(); return false;}
125
+
126
+ var start_animation = function() {
127
+ if (dir === 'next') {animate.next(current, next, callback);}
128
+ if (dir === 'prev') {animate.prev(current, next, callback);}
129
+ };
130
+
131
+ if (next.height() > slides_container.height() && settings.variable_height) {
132
+ slides_container.animate({'height': next.height()}, 250, 'linear', start_animation);
133
+ } else {
134
+ start_animation();
135
+ }
136
+ };
137
+
138
+ self.next = function(e) {
139
+ e.stopImmediatePropagation();
140
+ e.preventDefault();
141
+ self._goto(idx + 1);
142
+ };
143
+
144
+ self.prev = function(e) {
145
+ e.stopImmediatePropagation();
146
+ e.preventDefault();
147
+ self._goto(idx - 1);
148
+ };
149
+
150
+ self.link_custom = function(e) {
151
+ e.preventDefault();
152
+ var link = $(this).attr('data-orbit-link');
153
+ if ((typeof link === 'string') && (link = $.trim(link)) != "") {
154
+ var slide = container.find('[data-orbit-slide='+link+']');
155
+ if (slide.index() != -1) {self._goto(slide.index());}
156
+ }
157
+ };
158
+
159
+ self.link_bullet = function(e) {
160
+ var index = $(this).attr('data-orbit-slide');
161
+ if ((typeof index === 'string') && (index = $.trim(index)) != "") {
162
+ self._goto(parseInt(index));
163
+ }
164
+ }
165
+
166
+ self.timer_callback = function() {
167
+ self._goto(idx + 1, true);
168
+ }
169
+
170
+ self.compute_dimensions = function() {
171
+ var current = $(slides_container.children().get(idx));
172
+ var h = current.height();
173
+ if (!settings.variable_height) {
174
+ slides_container.children().each(function(){
175
+ if ($(this).height() > h) { h = $(this).height(); }
176
+ });
177
+ }
178
+ slides_container.height(h);
179
+ };
180
+
181
+ self.create_timer = function() {
182
+ var t = new Timer(
183
+ container.find('.'+settings.timer_container_class),
184
+ settings,
185
+ self.timer_callback
186
+ );
187
+ return t;
188
+ };
189
+
190
+ self.stop_timer = function() {
191
+ if (typeof timer === 'object') timer.stop();
192
+ };
193
+
194
+ self.toggle_timer = function() {
195
+ var t = container.find('.'+settings.timer_container_class);
196
+ if (t.hasClass(settings.timer_paused_class)) {
197
+ if (typeof timer === 'undefined') {timer = self.create_timer();}
198
+ timer.start();
199
+ }
200
+ else {
201
+ if (typeof timer === 'object') {timer.stop();}
202
+ }
203
+ };
204
+
205
+ self.init = function() {
206
+ self.build_markup();
207
+ if (settings.timer) {timer = self.create_timer(); timer.start();}
208
+ animate = new FadeAnimation(settings, slides_container);
209
+ if (settings.animation === 'slide')
210
+ animate = new SlideAnimation(settings, slides_container);
211
+ container.on('click', '.'+settings.next_class, self.next);
212
+ container.on('click', '.'+settings.prev_class, self.prev);
213
+ container.on('click', '[data-orbit-slide]', self.link_bullet);
214
+ container.on('click', self.toggle_timer);
215
+ if (settings.swipe) {
216
+ container.on('touchstart.fndtn.orbit', function(e) {
217
+ if (!e.touches) {e = e.originalEvent;}
218
+ var data = {
219
+ start_page_x: e.touches[0].pageX,
220
+ start_page_y: e.touches[0].pageY,
221
+ start_time: (new Date()).getTime(),
222
+ delta_x: 0,
223
+ is_scrolling: undefined
224
+ };
225
+ container.data('swipe-transition', data);
226
+ e.stopPropagation();
227
+ })
228
+ .on('touchmove.fndtn.orbit', function(e) {
229
+ if (!e.touches) { e = e.originalEvent; }
230
+ // Ignore pinch/zoom events
231
+ if(e.touches.length > 1 || e.scale && e.scale !== 1) return;
232
+
233
+ var data = container.data('swipe-transition');
234
+ if (typeof data === 'undefined') {data = {};}
235
+
236
+ data.delta_x = e.touches[0].pageX - data.start_page_x;
237
+
238
+ if ( typeof data.is_scrolling === 'undefined') {
239
+ data.is_scrolling = !!( data.is_scrolling || Math.abs(data.delta_x) < Math.abs(e.touches[0].pageY - data.start_page_y) );
240
+ }
241
+
242
+ if (!data.is_scrolling && !data.active) {
243
+ e.preventDefault();
244
+ var direction = (data.delta_x < 0) ? (idx+1) : (idx-1);
245
+ data.active = true;
246
+ self._goto(direction);
247
+ }
248
+ })
249
+ .on('touchend.fndtn.orbit', function(e) {
250
+ container.data('swipe-transition', {});
251
+ e.stopPropagation();
252
+ })
253
+ }
254
+ container.on('mouseenter.fndtn.orbit', function(e) {
255
+ if (settings.timer && settings.pause_on_hover) {
256
+ self.stop_timer();
257
+ }
258
+ })
259
+ .on('mouseleave.fndtn.orbit', function(e) {
260
+ if (settings.timer && settings.resume_on_mouseout) {
261
+ timer.start();
262
+ }
263
+ });
264
+
265
+ $(document).on('click', '[data-orbit-link]', self.link_custom);
266
+ $(window).on('resize', self.compute_dimensions);
267
+ $(window).on('load', self.compute_dimensions);
268
+ $(window).on('load', function(){
269
+ container.prev('.preloader').css('display', 'none');
270
+ });
271
+ slides_container.trigger('ready.fndtn.orbit');
272
+ };
273
+
274
+ self.init();
275
+ };
276
+
277
+ var Timer = function(el, settings, callback) {
278
+ var self = this,
279
+ duration = settings.timer_speed,
280
+ progress = el.find('.'+settings.timer_progress_class),
281
+ start,
282
+ timeout,
283
+ left = -1;
284
+
285
+ this.update_progress = function(w) {
286
+ var new_progress = progress.clone();
287
+ new_progress.attr('style', '');
288
+ new_progress.css('width', w+'%');
289
+ progress.replaceWith(new_progress);
290
+ progress = new_progress;
291
+ };
292
+
293
+ this.restart = function() {
294
+ clearTimeout(timeout);
295
+ el.addClass(settings.timer_paused_class);
296
+ left = -1;
297
+ self.update_progress(0);
298
+ };
299
+
300
+ this.start = function() {
301
+ if (!el.hasClass(settings.timer_paused_class)) {return true;}
302
+ left = (left === -1) ? duration : left;
303
+ el.removeClass(settings.timer_paused_class);
304
+ start = new Date().getTime();
305
+ progress.animate({'width': '100%'}, left, 'linear');
306
+ timeout = setTimeout(function() {
307
+ self.restart();
308
+ callback();
309
+ }, left);
310
+ el.trigger('timer-started.fndtn.orbit')
311
+ };
312
+
313
+ this.stop = function() {
314
+ if (el.hasClass(settings.timer_paused_class)) {return true;}
315
+ clearTimeout(timeout);
316
+ el.addClass(settings.timer_paused_class);
317
+ var end = new Date().getTime();
318
+ left = left - (end - start);
319
+ var w = 100 - ((left / duration) * 100);
320
+ self.update_progress(w);
321
+ el.trigger('timer-stopped.fndtn.orbit');
322
+ };
323
+ };
324
+
325
+ var SlideAnimation = function(settings, container) {
326
+ var duration = settings.animation_speed;
327
+ var is_rtl = ($('html[dir=rtl]').length === 1);
328
+ var margin = is_rtl ? 'marginRight' : 'marginLeft';
329
+ var animMargin = {};
330
+ animMargin[margin] = '0%';
331
+
332
+ this.next = function(current, next, callback) {
333
+ current.animate({marginLeft:'-100%'}, duration);
334
+ next.animate(animMargin, duration, function() {
335
+ current.css(margin, '100%');
336
+ callback();
337
+ });
338
+ };
339
+
340
+ this.prev = function(current, prev, callback) {
341
+ current.animate({marginLeft:'100%'}, duration);
342
+ prev.css(margin, '-100%');
343
+ prev.animate(animMargin, duration, function() {
344
+ current.css(margin, '100%');
345
+ callback();
346
+ });
347
+ };
348
+ };
349
+
350
+ var FadeAnimation = function(settings, container) {
351
+ var duration = settings.animation_speed;
352
+ var is_rtl = ($('html[dir=rtl]').length === 1);
353
+ var margin = is_rtl ? 'marginRight' : 'marginLeft';
354
+
355
+ this.next = function(current, next, callback) {
356
+ next.css({'margin':'0%', 'opacity':'0.01'});
357
+ next.animate({'opacity':'1'}, duration, 'linear', function() {
358
+ current.css('margin', '100%');
359
+ callback();
360
+ });
361
+ };
362
+
363
+ this.prev = function(current, prev, callback) {
364
+ prev.css({'margin':'0%', 'opacity':'0.01'});
365
+ prev.animate({'opacity':'1'}, duration, 'linear', function() {
366
+ current.css('margin', '100%');
367
+ callback();
368
+ });
369
+ };
370
+ };
371
+
372
+
373
+ Foundation.libs = Foundation.libs || {};
374
+
375
+ Foundation.libs.orbit = {
376
+ name: 'orbit',
377
+
378
+ version: '5.0.0',
379
+
380
+ settings: {
381
+ animation: 'slide',
382
+ timer_speed: 10000,
383
+ pause_on_hover: true,
384
+ resume_on_mouseout: false,
385
+ animation_speed: 500,
386
+ stack_on_small: false,
387
+ navigation_arrows: true,
388
+ slide_number: true,
389
+ slide_number_text: 'of',
390
+ container_class: 'orbit-container',
391
+ stack_on_small_class: 'orbit-stack-on-small',
392
+ next_class: 'orbit-next',
393
+ prev_class: 'orbit-prev',
394
+ timer_container_class: 'orbit-timer',
395
+ timer_paused_class: 'paused',
396
+ timer_progress_class: 'orbit-progress',
397
+ slides_container_class: 'orbit-slides-container',
398
+ bullets_container_class: 'orbit-bullets',
399
+ bullets_active_class: 'active',
400
+ slide_number_class: 'orbit-slide-number',
401
+ caption_class: 'orbit-caption',
402
+ active_slide_class: 'active',
403
+ orbit_transition_class: 'orbit-transitioning',
404
+ bullets: true,
405
+ timer: true,
406
+ variable_height: false,
407
+ swipe: true,
408
+ before_slide_change: noop,
409
+ after_slide_change: noop
410
+ },
411
+
412
+ init: function (scope, method, options) {
413
+ var self = this;
414
+
415
+ if (typeof method === 'object') {
416
+ $.extend(true, self.settings, method);
417
+ }
418
+
419
+ if ($(scope).is('[data-orbit]')) {
420
+ var $el = $(scope);
421
+ var opts = self.data_options($el);
422
+ new Orbit($el, $.extend({},self.settings, opts));
423
+ }
424
+
425
+ $('[data-orbit]', scope).each(function(idx, el) {
426
+ var $el = $(el);
427
+ var opts = self.data_options($el);
428
+ new Orbit($el, $.extend({},self.settings, opts));
429
+ });
430
+ }
431
+ };
432
+
433
+
434
+ }(jQuery, this, this.document));