assets-rails 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (322) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +65 -0
  8. data/Rakefile +2 -0
  9. data/assets-rails.gemspec +25 -0
  10. data/lib/assets-rails.rb +7 -0
  11. data/lib/assets-rails/engine.rb +9 -0
  12. data/lib/assets-rails/version.rb +5 -0
  13. data/vendor/assets/fonts/bootstrap/v3.2.0/glyphicons-halflings-regular.eot +0 -0
  14. data/vendor/assets/fonts/bootstrap/v3.2.0/glyphicons-halflings-regular.svg +229 -0
  15. data/vendor/assets/fonts/bootstrap/v3.2.0/glyphicons-halflings-regular.ttf +0 -0
  16. data/vendor/assets/fonts/bootstrap/v3.2.0/glyphicons-halflings-regular.woff +0 -0
  17. data/vendor/assets/fonts/bootstrap/v3.3.0/glyphicons-halflings-regular.eot +0 -0
  18. data/vendor/assets/fonts/bootstrap/v3.3.0/glyphicons-halflings-regular.svg +229 -0
  19. data/vendor/assets/fonts/bootstrap/v3.3.0/glyphicons-halflings-regular.ttf +0 -0
  20. data/vendor/assets/fonts/bootstrap/v3.3.0/glyphicons-halflings-regular.woff +0 -0
  21. data/vendor/assets/fonts/font-awesome/v4.2.0/FontAwesome.otf +0 -0
  22. data/vendor/assets/fonts/font-awesome/v4.2.0/fontawesome-webfont.eot +0 -0
  23. data/vendor/assets/fonts/font-awesome/v4.2.0/fontawesome-webfont.svg +520 -0
  24. data/vendor/assets/fonts/font-awesome/v4.2.0/fontawesome-webfont.ttf +0 -0
  25. data/vendor/assets/fonts/font-awesome/v4.2.0/fontawesome-webfont.woff +0 -0
  26. data/vendor/assets/fonts/jquery.flexslider/flexslider-icon.eot +0 -0
  27. data/vendor/assets/fonts/jquery.flexslider/flexslider-icon.svg +19 -0
  28. data/vendor/assets/fonts/jquery.flexslider/flexslider-icon.ttf +0 -0
  29. data/vendor/assets/fonts/jquery.flexslider/flexslider-icon.woff +0 -0
  30. data/vendor/assets/images/fancybox/blank.gif +0 -0
  31. data/vendor/assets/images/fancybox/fancybox_buttons.png +0 -0
  32. data/vendor/assets/images/fancybox/fancybox_loading.gif +0 -0
  33. data/vendor/assets/images/fancybox/fancybox_loading@2x.gif +0 -0
  34. data/vendor/assets/images/fancybox/fancybox_overlay.png +0 -0
  35. data/vendor/assets/images/fancybox/fancybox_sprite.png +0 -0
  36. data/vendor/assets/images/fancybox/fancybox_sprite@2x.png +0 -0
  37. data/vendor/assets/images/jquery.colorbox/v1.5.14/example1/border.png +0 -0
  38. data/vendor/assets/images/jquery.colorbox/v1.5.14/example1/controls.png +0 -0
  39. data/vendor/assets/images/jquery.colorbox/v1.5.14/example1/loading.gif +0 -0
  40. data/vendor/assets/images/jquery.colorbox/v1.5.14/example1/loading_background.png +0 -0
  41. data/vendor/assets/images/jquery.colorbox/v1.5.14/example1/overlay.png +0 -0
  42. data/vendor/assets/images/jquery.colorbox/v1.5.14/example2/controls.png +0 -0
  43. data/vendor/assets/images/jquery.colorbox/v1.5.14/example2/loading.gif +0 -0
  44. data/vendor/assets/images/jquery.colorbox/v1.5.14/example3/controls.png +0 -0
  45. data/vendor/assets/images/jquery.colorbox/v1.5.14/example3/loading.gif +0 -0
  46. data/vendor/assets/images/jquery.colorbox/v1.5.14/example4/border1.png +0 -0
  47. data/vendor/assets/images/jquery.colorbox/v1.5.14/example4/border2.png +0 -0
  48. data/vendor/assets/images/jquery.colorbox/v1.5.14/example4/loading.gif +0 -0
  49. data/vendor/assets/images/jquery.colorbox/v1.5.14/example5/border.png +0 -0
  50. data/vendor/assets/images/jquery.colorbox/v1.5.14/example5/controls.png +0 -0
  51. data/vendor/assets/images/jquery.colorbox/v1.5.14/example5/loading.gif +0 -0
  52. data/vendor/assets/images/jquery.colorbox/v1.5.14/example5/loading_background.png +0 -0
  53. data/vendor/assets/images/jquery.flexslider/bg_play_pause.png +0 -0
  54. data/vendor/assets/images/jquery.owlcarousel/AjaxLoader.gif +0 -0
  55. data/vendor/assets/images/jquery.owlcarousel/grabbing.png +0 -0
  56. data/vendor/assets/images/zebra_datepicker/calendar-disabled.png +0 -0
  57. data/vendor/assets/images/zebra_datepicker/calendar.png +0 -0
  58. data/vendor/assets/images/zebra_datepicker/metallic/default-date.png +0 -0
  59. data/vendor/assets/images/zebra_datepicker/metallic/disabled-date.png +0 -0
  60. data/vendor/assets/images/zebra_datepicker/metallic/header.png +0 -0
  61. data/vendor/assets/images/zebra_datepicker/metallic/selected-date.png +0 -0
  62. data/vendor/assets/javascripts/bootstrap/v3.2.0.js +12 -0
  63. data/vendor/assets/javascripts/bootstrap/v3.2.0/affix.js +142 -0
  64. data/vendor/assets/javascripts/bootstrap/v3.2.0/alert.js +92 -0
  65. data/vendor/assets/javascripts/bootstrap/v3.2.0/button.js +110 -0
  66. data/vendor/assets/javascripts/bootstrap/v3.2.0/carousel.js +223 -0
  67. data/vendor/assets/javascripts/bootstrap/v3.2.0/collapse.js +170 -0
  68. data/vendor/assets/javascripts/bootstrap/v3.2.0/dropdown.js +151 -0
  69. data/vendor/assets/javascripts/bootstrap/v3.2.0/modal.js +280 -0
  70. data/vendor/assets/javascripts/bootstrap/v3.2.0/popover.js +113 -0
  71. data/vendor/assets/javascripts/bootstrap/v3.2.0/scrollspy.js +170 -0
  72. data/vendor/assets/javascripts/bootstrap/v3.2.0/tab.js +128 -0
  73. data/vendor/assets/javascripts/bootstrap/v3.2.0/tooltip.js +457 -0
  74. data/vendor/assets/javascripts/bootstrap/v3.2.0/transition.js +59 -0
  75. data/vendor/assets/javascripts/bootstrap/v3.3.0/affix.js +162 -0
  76. data/vendor/assets/javascripts/bootstrap/v3.3.0/alert.js +94 -0
  77. data/vendor/assets/javascripts/bootstrap/v3.3.0/button.js +116 -0
  78. data/vendor/assets/javascripts/bootstrap/v3.3.0/carousel.js +239 -0
  79. data/vendor/assets/javascripts/bootstrap/v3.3.0/collapse.js +211 -0
  80. data/vendor/assets/javascripts/bootstrap/v3.3.0/dropdown.js +161 -0
  81. data/vendor/assets/javascripts/bootstrap/v3.3.0/modal.js +281 -0
  82. data/vendor/assets/javascripts/bootstrap/v3.3.0/popover.js +119 -0
  83. data/vendor/assets/javascripts/bootstrap/v3.3.0/scrollspy.js +175 -0
  84. data/vendor/assets/javascripts/bootstrap/v3.3.0/tab.js +153 -0
  85. data/vendor/assets/javascripts/bootstrap/v3.3.0/tooltip.js +478 -0
  86. data/vendor/assets/javascripts/bootstrap/v3.3.0/transition.js +59 -0
  87. data/vendor/assets/javascripts/draggabilly/v1.1.1.js +2 -0
  88. data/vendor/assets/javascripts/draggabilly/v1.1.1/draggabilly.js +615 -0
  89. data/vendor/assets/javascripts/imagesloaded/v3.1.8.js +2 -0
  90. data/vendor/assets/javascripts/imagesloaded/v3.1.8/imagesloaded.js +335 -0
  91. data/vendor/assets/javascripts/isotope/v2.0.1.js +1 -0
  92. data/vendor/assets/javascripts/isotope/v2.0.1/isotope.js +628 -0
  93. data/vendor/assets/javascripts/jquery.collageplus/v0.3.3.js +2 -0
  94. data/vendor/assets/javascripts/jquery.collageplus/v0.3.3/jquery.collagecaption.js +143 -0
  95. data/vendor/assets/javascripts/jquery.collageplus/v0.3.3/jquery.collageplus.js +401 -0
  96. data/vendor/assets/javascripts/jquery.collageplus/v0.3.3/remove_whitespace.js +13 -0
  97. data/vendor/assets/javascripts/jquery.colorbox/v1.5.14.js +2 -0
  98. data/vendor/assets/javascripts/jquery.colorbox/v1.5.14/jquery.colorbox.js +1090 -0
  99. data/vendor/assets/javascripts/jquery.expander/v1.4.12.js +1 -0
  100. data/vendor/assets/javascripts/jquery.expander/v1.4.12/jquery.expander.js +453 -0
  101. data/vendor/assets/javascripts/jquery.fakecrop.js +1 -0
  102. data/vendor/assets/javascripts/jquery.fakecrop/jquery.fakecrop.js +153 -0
  103. data/vendor/assets/javascripts/jquery.fancybox/v2.1.5.js +4 -0
  104. data/vendor/assets/javascripts/jquery.fancybox/v2.1.5/jquery.fancybox-buttons.js +122 -0
  105. data/vendor/assets/javascripts/jquery.fancybox/v2.1.5/jquery.fancybox-media.js +199 -0
  106. data/vendor/assets/javascripts/jquery.fancybox/v2.1.5/jquery.fancybox-thumbs.js +162 -0
  107. data/vendor/assets/javascripts/jquery.fancybox/v2.1.5/jquery.fancybox.js +2020 -0
  108. data/vendor/assets/javascripts/jquery.flexslider/v2.2.2.js +1 -0
  109. data/vendor/assets/javascripts/jquery.flexslider/v2.2.2/jquery.flexslider.js +1157 -0
  110. data/vendor/assets/javascripts/jquery.infinitescroll/v2.0.2.js +2 -0
  111. data/vendor/assets/javascripts/jquery.infinitescroll/v2.0.2/jquery.infinitescroll.js +821 -0
  112. data/vendor/assets/javascripts/jquery.nivo.slider/v3.2.js +2 -0
  113. data/vendor/assets/javascripts/jquery.nivo.slider/v3.2/jquery.nivo.slider.js +662 -0
  114. data/vendor/assets/javascripts/jquery.owlcarousel/v1.3.3.js +2 -0
  115. data/vendor/assets/javascripts/jquery.owlcarousel/v1.3.3/jquery.owlcarousel.js +1517 -0
  116. data/vendor/assets/javascripts/jquery.pageless.js +2 -0
  117. data/vendor/assets/javascripts/jquery.pageless/jquery.pageless.js +251 -0
  118. data/vendor/assets/javascripts/jquery.render/v1.1.0.js +2 -0
  119. data/vendor/assets/javascripts/jquery.render/v1.1.0/jquery.render.js +56 -0
  120. data/vendor/assets/javascripts/jquery.scrollto/v1.4.13.js +2 -0
  121. data/vendor/assets/javascripts/jquery.scrollto/v1.4.13/jquery.scrollto.js +187 -0
  122. data/vendor/assets/javascripts/jquery.timeago/v1.4.1.js +1 -0
  123. data/vendor/assets/javascripts/jquery.timeago/v1.4.1/jquery.timeago.js +214 -0
  124. data/vendor/assets/javascripts/jquery.turbolinks/v2.1.0.js +1 -0
  125. data/vendor/assets/javascripts/jquery.turbolinks/v2.1.0/jquery.turbolinks.js +49 -0
  126. data/vendor/assets/javascripts/jquery/v1.11.1.js +1 -0
  127. data/vendor/assets/javascripts/jquery/v1.11.1/jquery.js +10308 -0
  128. data/vendor/assets/javascripts/jquery/v2.1.1.js +1 -0
  129. data/vendor/assets/javascripts/jquery/v2.1.1/jquery.js +9190 -0
  130. data/vendor/assets/javascripts/masonry/v3.1.5.js +2 -0
  131. data/vendor/assets/javascripts/masonry/v3.1.5/masonry.js +205 -0
  132. data/vendor/assets/javascripts/nprogress/v0.1.6.js +2 -0
  133. data/vendor/assets/javascripts/nprogress/v0.1.6/nprogress-ajax.js +4 -0
  134. data/vendor/assets/javascripts/nprogress/v0.1.6/nprogress-turbolinks.js +5 -0
  135. data/vendor/assets/javascripts/nprogress/v0.1.6/nprogress.js +475 -0
  136. data/vendor/assets/javascripts/responsiveCarousel/v1.2.0.js +2 -0
  137. data/vendor/assets/javascripts/responsiveCarousel/v1.2.0/responsiveCarousel.js +410 -0
  138. data/vendor/assets/javascripts/responsiveslides/v1.54.js +2 -0
  139. data/vendor/assets/javascripts/responsiveslides/v1.54/responsiveslides.js +391 -0
  140. data/vendor/assets/javascripts/zebra_datepicker/v1.8.9.js +2 -0
  141. data/vendor/assets/javascripts/zebra_datepicker/v1.8.9/zebra_datepicker.js +2965 -0
  142. data/vendor/assets/stylesheets/bootstrap/_v3.2.0.scss +52 -0
  143. data/vendor/assets/stylesheets/bootstrap/_v3.3.0.scss +52 -0
  144. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_alerts.scss +68 -0
  145. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_badges.scss +57 -0
  146. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_bootstrap-sprockets.scss +7 -0
  147. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_breadcrumbs.scss +26 -0
  148. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_button-groups.scss +240 -0
  149. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_buttons.scss +157 -0
  150. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_carousel.scss +243 -0
  151. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_close.scss +35 -0
  152. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_code.scss +68 -0
  153. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_component-animations.scss +35 -0
  154. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_dropdowns.scss +215 -0
  155. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_forms.scss +538 -0
  156. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_glyphicons.scss +237 -0
  157. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_grid.scss +84 -0
  158. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_input-groups.scss +166 -0
  159. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_jumbotron.scss +48 -0
  160. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_labels.scss +66 -0
  161. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_list-group.scss +131 -0
  162. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_media.scss +56 -0
  163. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_mixins.scss +39 -0
  164. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_modals.scss +150 -0
  165. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_navbar.scss +659 -0
  166. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_navs.scss +242 -0
  167. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_normalize.scss +425 -0
  168. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_pager.scss +55 -0
  169. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_pagination.scss +88 -0
  170. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_panels.scss +243 -0
  171. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_popovers.scss +133 -0
  172. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_print.scss +101 -0
  173. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_progress-bars.scss +105 -0
  174. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_responsive-embed.scss +34 -0
  175. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_responsive-utilities.scss +174 -0
  176. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_scaffolding.scss +150 -0
  177. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_tables.scss +233 -0
  178. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_theme.scss +258 -0
  179. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_thumbnails.scss +38 -0
  180. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_tooltip.scss +95 -0
  181. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_type.scss +304 -0
  182. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_utilities.scss +57 -0
  183. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_variables.scss +854 -0
  184. data/vendor/assets/stylesheets/bootstrap/v3.2.0/_wells.scss +29 -0
  185. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_alerts.scss +14 -0
  186. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_background-variant.scss +11 -0
  187. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_border-radius.scss +18 -0
  188. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_buttons.scss +50 -0
  189. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_center-block.scss +7 -0
  190. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_clearfix.scss +22 -0
  191. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_forms.scss +84 -0
  192. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_gradients.scss +58 -0
  193. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_grid-framework.scss +81 -0
  194. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_grid.scss +122 -0
  195. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_hide-text.scss +21 -0
  196. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_image.scss +34 -0
  197. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_labels.scss +12 -0
  198. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_list-group.scss +31 -0
  199. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_nav-divider.scss +10 -0
  200. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_nav-vertical-align.scss +9 -0
  201. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_opacity.scss +8 -0
  202. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_pagination.scss +23 -0
  203. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_panels.scss +24 -0
  204. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_progress-bar.scss +10 -0
  205. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_reset-filter.scss +8 -0
  206. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_resize.scss +6 -0
  207. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_responsive-visibility.scss +21 -0
  208. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_size.scss +10 -0
  209. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_tab-focus.scss +9 -0
  210. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_table-row.scss +28 -0
  211. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_text-emphasis.scss +11 -0
  212. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_text-overflow.scss +8 -0
  213. data/vendor/assets/stylesheets/bootstrap/v3.2.0/mixins/_vendor-prefixes.scss +219 -0
  214. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_alerts.scss +68 -0
  215. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_badges.scss +57 -0
  216. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_bootstrap-sprockets.scss +7 -0
  217. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_breadcrumbs.scss +26 -0
  218. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_button-groups.scss +247 -0
  219. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_buttons.scss +160 -0
  220. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_carousel.scss +267 -0
  221. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_close.scss +35 -0
  222. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_code.scss +69 -0
  223. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_component-animations.scss +38 -0
  224. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_dropdowns.scss +213 -0
  225. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_forms.scss +561 -0
  226. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_glyphicons.scss +234 -0
  227. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_grid.scss +84 -0
  228. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_input-groups.scss +166 -0
  229. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_jumbotron.scss +48 -0
  230. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_labels.scss +66 -0
  231. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_list-group.scss +132 -0
  232. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_media.scss +47 -0
  233. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_mixins.scss +39 -0
  234. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_modals.scss +149 -0
  235. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_navbar.scss +661 -0
  236. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_navs.scss +244 -0
  237. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_normalize.scss +427 -0
  238. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_pager.scss +54 -0
  239. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_pagination.scss +88 -0
  240. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_panels.scss +261 -0
  241. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_popovers.scss +134 -0
  242. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_print.scss +107 -0
  243. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_progress-bars.scss +87 -0
  244. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_responsive-embed.scss +35 -0
  245. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_responsive-utilities.scss +174 -0
  246. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_scaffolding.scss +150 -0
  247. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_tables.scss +234 -0
  248. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_theme.scss +260 -0
  249. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_thumbnails.scss +38 -0
  250. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_tooltip.scss +95 -0
  251. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_type.scss +298 -0
  252. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_utilities.scss +56 -0
  253. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_variables.scss +864 -0
  254. data/vendor/assets/stylesheets/bootstrap/v3.3.0/_wells.scss +29 -0
  255. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_alerts.scss +14 -0
  256. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_background-variant.scss +11 -0
  257. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_border-radius.scss +18 -0
  258. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_buttons.scss +52 -0
  259. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_center-block.scss +7 -0
  260. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_clearfix.scss +22 -0
  261. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_forms.scss +88 -0
  262. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_gradients.scss +58 -0
  263. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_grid-framework.scss +81 -0
  264. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_grid.scss +122 -0
  265. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_hide-text.scss +21 -0
  266. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_image.scss +33 -0
  267. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_labels.scss +12 -0
  268. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_list-group.scss +31 -0
  269. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_nav-divider.scss +10 -0
  270. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_nav-vertical-align.scss +9 -0
  271. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_opacity.scss +8 -0
  272. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_pagination.scss +23 -0
  273. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_panels.scss +24 -0
  274. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_progress-bar.scss +10 -0
  275. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_reset-filter.scss +8 -0
  276. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_resize.scss +6 -0
  277. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_responsive-visibility.scss +21 -0
  278. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_size.scss +10 -0
  279. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_tab-focus.scss +9 -0
  280. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_table-row.scss +28 -0
  281. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_text-emphasis.scss +11 -0
  282. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_text-overflow.scss +8 -0
  283. data/vendor/assets/stylesheets/bootstrap/v3.3.0/mixins/_vendor-prefixes.scss +222 -0
  284. data/vendor/assets/stylesheets/font-awesome/v4.2.0.css +3 -0
  285. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_bordered-pulled.scss +16 -0
  286. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_core.scss +11 -0
  287. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_extras.scss +44 -0
  288. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_fixed-width.scss +6 -0
  289. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_icons.scss +552 -0
  290. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_larger.scss +13 -0
  291. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_list.scss +19 -0
  292. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_mixins.scss +25 -0
  293. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_path.scss +14 -0
  294. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_rotated-flipped.scss +20 -0
  295. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_spinning.scss +29 -0
  296. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_stacked.scss +20 -0
  297. data/vendor/assets/stylesheets/font-awesome/v4.2.0/_variables.scss +561 -0
  298. data/vendor/assets/stylesheets/font-awesome/v4.2.0/font-awesome.scss +17 -0
  299. data/vendor/assets/stylesheets/jquery.colorbox/v1.5.14/example1.css.scss +70 -0
  300. data/vendor/assets/stylesheets/jquery.colorbox/v1.5.14/example2.css.scss +50 -0
  301. data/vendor/assets/stylesheets/jquery.colorbox/v1.5.14/example3.css.scss +45 -0
  302. data/vendor/assets/stylesheets/jquery.colorbox/v1.5.14/example4.css.scss +66 -0
  303. data/vendor/assets/stylesheets/jquery.colorbox/v1.5.14/example5.css.scss +58 -0
  304. data/vendor/assets/stylesheets/jquery.fancybox/v2.1.5.css +5 -0
  305. data/vendor/assets/stylesheets/jquery.fancybox/v2.1.5/jquery.fancybox-buttons.css.erb +97 -0
  306. data/vendor/assets/stylesheets/jquery.fancybox/v2.1.5/jquery.fancybox-thumbs.css +55 -0
  307. data/vendor/assets/stylesheets/jquery.fancybox/v2.1.5/jquery.fancybox.css.erb +274 -0
  308. data/vendor/assets/stylesheets/jquery.flexslider/v2.2.2.css +3 -0
  309. data/vendor/assets/stylesheets/jquery.flexslider/v2.2.2/jquery.flexslider.scss +96 -0
  310. data/vendor/assets/stylesheets/jquery.nivo.slider/v3.2.css +3 -0
  311. data/vendor/assets/stylesheets/jquery.nivo.slider/v3.2/jquery.nivo.slider.css +113 -0
  312. data/vendor/assets/stylesheets/jquery.owlcarousel/v1.3.3/jquery.owlcarousel.scss +71 -0
  313. data/vendor/assets/stylesheets/jquery.owlcarousel/v1.3.3/theme.scss +79 -0
  314. data/vendor/assets/stylesheets/jquery.owlcarousel/v1.3.3/transitions.scss +163 -0
  315. data/vendor/assets/stylesheets/nprogress/v0.1.6/nprogress-bootstrap.css +4 -0
  316. data/vendor/assets/stylesheets/nprogress/v0.1.6/nprogress.css.scss +77 -0
  317. data/vendor/assets/stylesheets/responsiveslides/v1.54.css +3 -0
  318. data/vendor/assets/stylesheets/responsiveslides/v1.54/responsiveslides.css +33 -0
  319. data/vendor/assets/stylesheets/zebra_datepicker/v1.8.9/bootstrap.scss +95 -0
  320. data/vendor/assets/stylesheets/zebra_datepicker/v1.8.9/default.scss +102 -0
  321. data/vendor/assets/stylesheets/zebra_datepicker/v1.8.9/metallic.scss +106 -0
  322. metadata +407 -0
@@ -0,0 +1 @@
1
+ //= require jquery.flexslider/v2.2.2/jquery.flexslider.js
@@ -0,0 +1,1157 @@
1
+ /*
2
+ * jQuery FlexSlider v2.2.2
3
+ * Copyright 2012 WooThemes
4
+ * Contributing Author: Tyler Smith
5
+ */
6
+ ;
7
+ (function ($) {
8
+
9
+ //FlexSlider: Object Instance
10
+ $.flexslider = function(el, options) {
11
+ var slider = $(el);
12
+
13
+ // making variables public
14
+ slider.vars = $.extend({}, $.flexslider.defaults, options);
15
+
16
+ var namespace = slider.vars.namespace,
17
+ msGesture = window.navigator && window.navigator.msPointerEnabled && window.MSGesture,
18
+ touch = (( "ontouchstart" in window ) || msGesture || window.DocumentTouch && document instanceof DocumentTouch) && slider.vars.touch,
19
+ // depricating this idea, as devices are being released with both of these events
20
+ //eventType = (touch) ? "touchend" : "click",
21
+ eventType = "click touchend MSPointerUp keyup",
22
+ watchedEvent = "",
23
+ watchedEventClearTimer,
24
+ vertical = slider.vars.direction === "vertical",
25
+ reverse = slider.vars.reverse,
26
+ carousel = (slider.vars.itemWidth > 0),
27
+ fade = slider.vars.animation === "fade",
28
+ asNav = slider.vars.asNavFor !== "",
29
+ methods = {},
30
+ focused = true;
31
+
32
+ // Store a reference to the slider object
33
+ $.data(el, "flexslider", slider);
34
+
35
+ // Private slider methods
36
+ methods = {
37
+ init: function() {
38
+ slider.animating = false;
39
+ // Get current slide and make sure it is a number
40
+ slider.currentSlide = parseInt( ( slider.vars.startAt ? slider.vars.startAt : 0), 10 );
41
+ if ( isNaN( slider.currentSlide ) ) slider.currentSlide = 0;
42
+ slider.animatingTo = slider.currentSlide;
43
+ slider.atEnd = (slider.currentSlide === 0 || slider.currentSlide === slider.last);
44
+ slider.containerSelector = slider.vars.selector.substr(0,slider.vars.selector.search(' '));
45
+ slider.slides = $(slider.vars.selector, slider);
46
+ slider.container = $(slider.containerSelector, slider);
47
+ slider.count = slider.slides.length;
48
+ // SYNC:
49
+ slider.syncExists = $(slider.vars.sync).length > 0;
50
+ // SLIDE:
51
+ if (slider.vars.animation === "slide") slider.vars.animation = "swing";
52
+ slider.prop = (vertical) ? "top" : "marginLeft";
53
+ slider.args = {};
54
+ // SLIDESHOW:
55
+ slider.manualPause = false;
56
+ slider.stopped = false;
57
+ //PAUSE WHEN INVISIBLE
58
+ slider.started = false;
59
+ slider.startTimeout = null;
60
+ // TOUCH/USECSS:
61
+ slider.transitions = !slider.vars.video && !fade && slider.vars.useCSS && (function() {
62
+ var obj = document.createElement('div'),
63
+ props = ['perspectiveProperty', 'WebkitPerspective', 'MozPerspective', 'OPerspective', 'msPerspective'];
64
+ for (var i in props) {
65
+ if ( obj.style[ props[i] ] !== undefined ) {
66
+ slider.pfx = props[i].replace('Perspective','').toLowerCase();
67
+ slider.prop = "-" + slider.pfx + "-transform";
68
+ return true;
69
+ }
70
+ }
71
+ return false;
72
+ }());
73
+ slider.ensureAnimationEnd = '';
74
+ // CONTROLSCONTAINER:
75
+ if (slider.vars.controlsContainer !== "") slider.controlsContainer = $(slider.vars.controlsContainer).length > 0 && $(slider.vars.controlsContainer);
76
+ // MANUAL:
77
+ if (slider.vars.manualControls !== "") slider.manualControls = $(slider.vars.manualControls).length > 0 && $(slider.vars.manualControls);
78
+
79
+ // RANDOMIZE:
80
+ if (slider.vars.randomize) {
81
+ slider.slides.sort(function() { return (Math.round(Math.random())-0.5); });
82
+ slider.container.empty().append(slider.slides);
83
+ }
84
+
85
+ slider.doMath();
86
+
87
+ // INIT
88
+ slider.setup("init");
89
+
90
+ // CONTROLNAV:
91
+ if (slider.vars.controlNav) methods.controlNav.setup();
92
+
93
+ // DIRECTIONNAV:
94
+ if (slider.vars.directionNav) methods.directionNav.setup();
95
+
96
+ // KEYBOARD:
97
+ if (slider.vars.keyboard && ($(slider.containerSelector).length === 1 || slider.vars.multipleKeyboard)) {
98
+ $(document).bind('keyup', function(event) {
99
+ var keycode = event.keyCode;
100
+ if (!slider.animating && (keycode === 39 || keycode === 37)) {
101
+ var target = (keycode === 39) ? slider.getTarget('next') :
102
+ (keycode === 37) ? slider.getTarget('prev') : false;
103
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
104
+ }
105
+ });
106
+ }
107
+ // MOUSEWHEEL:
108
+ if (slider.vars.mousewheel) {
109
+ slider.bind('mousewheel', function(event, delta, deltaX, deltaY) {
110
+ event.preventDefault();
111
+ var target = (delta < 0) ? slider.getTarget('next') : slider.getTarget('prev');
112
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
113
+ });
114
+ }
115
+
116
+ // PAUSEPLAY
117
+ if (slider.vars.pausePlay) methods.pausePlay.setup();
118
+
119
+ //PAUSE WHEN INVISIBLE
120
+ if (slider.vars.slideshow && slider.vars.pauseInvisible) methods.pauseInvisible.init();
121
+
122
+ // SLIDSESHOW
123
+ if (slider.vars.slideshow) {
124
+ if (slider.vars.pauseOnHover) {
125
+ slider.hover(function() {
126
+ if (!slider.manualPlay && !slider.manualPause) slider.pause();
127
+ }, function() {
128
+ if (!slider.manualPause && !slider.manualPlay && !slider.stopped) slider.play();
129
+ });
130
+ }
131
+ // initialize animation
132
+ //If we're visible, or we don't use PageVisibility API
133
+ if(!slider.vars.pauseInvisible || !methods.pauseInvisible.isHidden()) {
134
+ (slider.vars.initDelay > 0) ? slider.startTimeout = setTimeout(slider.play, slider.vars.initDelay) : slider.play();
135
+ }
136
+ }
137
+
138
+ // ASNAV:
139
+ if (asNav) methods.asNav.setup();
140
+
141
+ // TOUCH
142
+ if (touch && slider.vars.touch) methods.touch();
143
+
144
+ // FADE&&SMOOTHHEIGHT || SLIDE:
145
+ if (!fade || (fade && slider.vars.smoothHeight)) $(window).bind("resize orientationchange focus", methods.resize);
146
+
147
+ slider.find("img").attr("draggable", "false");
148
+
149
+ // API: start() Callback
150
+ setTimeout(function(){
151
+ slider.vars.start(slider);
152
+ }, 200);
153
+ },
154
+ asNav: {
155
+ setup: function() {
156
+ slider.asNav = true;
157
+ slider.animatingTo = Math.floor(slider.currentSlide/slider.move);
158
+ slider.currentItem = slider.currentSlide;
159
+ slider.slides.removeClass(namespace + "active-slide").eq(slider.currentItem).addClass(namespace + "active-slide");
160
+ if(!msGesture){
161
+ slider.slides.on(eventType, function(e){
162
+ e.preventDefault();
163
+ var $slide = $(this),
164
+ target = $slide.index();
165
+ var posFromLeft = $slide.offset().left - $(slider).scrollLeft(); // Find position of slide relative to left of slider container
166
+ if( posFromLeft <= 0 && $slide.hasClass( namespace + 'active-slide' ) ) {
167
+ slider.flexAnimate(slider.getTarget("prev"), true);
168
+ } else if (!$(slider.vars.asNavFor).data('flexslider').animating && !$slide.hasClass(namespace + "active-slide")) {
169
+ slider.direction = (slider.currentItem < target) ? "next" : "prev";
170
+ slider.flexAnimate(target, slider.vars.pauseOnAction, false, true, true);
171
+ }
172
+ });
173
+ }else{
174
+ el._slider = slider;
175
+ slider.slides.each(function (){
176
+ var that = this;
177
+ that._gesture = new MSGesture();
178
+ that._gesture.target = that;
179
+ that.addEventListener("MSPointerDown", function (e){
180
+ e.preventDefault();
181
+ if(e.currentTarget._gesture)
182
+ e.currentTarget._gesture.addPointer(e.pointerId);
183
+ }, false);
184
+ that.addEventListener("MSGestureTap", function (e){
185
+ e.preventDefault();
186
+ var $slide = $(this),
187
+ target = $slide.index();
188
+ if (!$(slider.vars.asNavFor).data('flexslider').animating && !$slide.hasClass('active')) {
189
+ slider.direction = (slider.currentItem < target) ? "next" : "prev";
190
+ slider.flexAnimate(target, slider.vars.pauseOnAction, false, true, true);
191
+ }
192
+ });
193
+ });
194
+ }
195
+ }
196
+ },
197
+ controlNav: {
198
+ setup: function() {
199
+ if (!slider.manualControls) {
200
+ methods.controlNav.setupPaging();
201
+ } else { // MANUALCONTROLS:
202
+ methods.controlNav.setupManual();
203
+ }
204
+ },
205
+ setupPaging: function() {
206
+ var type = (slider.vars.controlNav === "thumbnails") ? 'control-thumbs' : 'control-paging',
207
+ j = 1,
208
+ item,
209
+ slide;
210
+
211
+ slider.controlNavScaffold = $('<ol class="'+ namespace + 'control-nav ' + namespace + type + '"></ol>');
212
+
213
+ if (slider.pagingCount > 1) {
214
+ for (var i = 0; i < slider.pagingCount; i++) {
215
+ slide = slider.slides.eq(i);
216
+ item = (slider.vars.controlNav === "thumbnails") ? '<img src="' + slide.attr( 'data-thumb' ) + '"/>' : '<a>' + j + '</a>';
217
+ if ( 'thumbnails' === slider.vars.controlNav && true === slider.vars.thumbCaptions ) {
218
+ var captn = slide.attr( 'data-thumbcaption' );
219
+ if ( '' != captn && undefined != captn ) item += '<span class="' + namespace + 'caption">' + captn + '</span>';
220
+ }
221
+ slider.controlNavScaffold.append('<li>' + item + '</li>');
222
+ j++;
223
+ }
224
+ }
225
+
226
+ // CONTROLSCONTAINER:
227
+ (slider.controlsContainer) ? $(slider.controlsContainer).append(slider.controlNavScaffold) : slider.append(slider.controlNavScaffold);
228
+ methods.controlNav.set();
229
+
230
+ methods.controlNav.active();
231
+
232
+ slider.controlNavScaffold.delegate('a, img', eventType, function(event) {
233
+ event.preventDefault();
234
+
235
+ if (watchedEvent === "" || watchedEvent === event.type) {
236
+ var $this = $(this),
237
+ target = slider.controlNav.index($this);
238
+
239
+ if (!$this.hasClass(namespace + 'active')) {
240
+ slider.direction = (target > slider.currentSlide) ? "next" : "prev";
241
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
242
+ }
243
+ }
244
+
245
+ // setup flags to prevent event duplication
246
+ if (watchedEvent === "") {
247
+ watchedEvent = event.type;
248
+ }
249
+ methods.setToClearWatchedEvent();
250
+
251
+ });
252
+ },
253
+ setupManual: function() {
254
+ slider.controlNav = slider.manualControls;
255
+ methods.controlNav.active();
256
+
257
+ slider.controlNav.bind(eventType, function(event) {
258
+ event.preventDefault();
259
+
260
+ if (watchedEvent === "" || watchedEvent === event.type) {
261
+ var $this = $(this),
262
+ target = slider.controlNav.index($this);
263
+
264
+ if (!$this.hasClass(namespace + 'active')) {
265
+ (target > slider.currentSlide) ? slider.direction = "next" : slider.direction = "prev";
266
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
267
+ }
268
+ }
269
+
270
+ // setup flags to prevent event duplication
271
+ if (watchedEvent === "") {
272
+ watchedEvent = event.type;
273
+ }
274
+ methods.setToClearWatchedEvent();
275
+ });
276
+ },
277
+ set: function() {
278
+ var selector = (slider.vars.controlNav === "thumbnails") ? 'img' : 'a';
279
+ slider.controlNav = $('.' + namespace + 'control-nav li ' + selector, (slider.controlsContainer) ? slider.controlsContainer : slider);
280
+ },
281
+ active: function() {
282
+ slider.controlNav.removeClass(namespace + "active").eq(slider.animatingTo).addClass(namespace + "active");
283
+ },
284
+ update: function(action, pos) {
285
+ if (slider.pagingCount > 1 && action === "add") {
286
+ slider.controlNavScaffold.append($('<li><a>' + slider.count + '</a></li>'));
287
+ } else if (slider.pagingCount === 1) {
288
+ slider.controlNavScaffold.find('li').remove();
289
+ } else {
290
+ slider.controlNav.eq(pos).closest('li').remove();
291
+ }
292
+ methods.controlNav.set();
293
+ (slider.pagingCount > 1 && slider.pagingCount !== slider.controlNav.length) ? slider.update(pos, action) : methods.controlNav.active();
294
+ }
295
+ },
296
+ directionNav: {
297
+ setup: function() {
298
+ var directionNavScaffold = $('<ul class="' + namespace + 'direction-nav"><li><a class="' + namespace + 'prev" href="#">' + slider.vars.prevText + '</a></li><li><a class="' + namespace + 'next" href="#">' + slider.vars.nextText + '</a></li></ul>');
299
+
300
+ // CONTROLSCONTAINER:
301
+ if (slider.controlsContainer) {
302
+ $(slider.controlsContainer).append(directionNavScaffold);
303
+ slider.directionNav = $('.' + namespace + 'direction-nav li a', slider.controlsContainer);
304
+ } else {
305
+ slider.append(directionNavScaffold);
306
+ slider.directionNav = $('.' + namespace + 'direction-nav li a', slider);
307
+ }
308
+
309
+ methods.directionNav.update();
310
+
311
+ slider.directionNav.bind(eventType, function(event) {
312
+ event.preventDefault();
313
+ var target;
314
+
315
+ if (watchedEvent === "" || watchedEvent === event.type) {
316
+ target = ($(this).hasClass(namespace + 'next')) ? slider.getTarget('next') : slider.getTarget('prev');
317
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
318
+ }
319
+
320
+ // setup flags to prevent event duplication
321
+ if (watchedEvent === "") {
322
+ watchedEvent = event.type;
323
+ }
324
+ methods.setToClearWatchedEvent();
325
+ });
326
+ },
327
+ update: function() {
328
+ var disabledClass = namespace + 'disabled';
329
+ if (slider.pagingCount === 1) {
330
+ slider.directionNav.addClass(disabledClass).attr('tabindex', '-1');
331
+ } else if (!slider.vars.animationLoop) {
332
+ if (slider.animatingTo === 0) {
333
+ slider.directionNav.removeClass(disabledClass).filter('.' + namespace + "prev").addClass(disabledClass).attr('tabindex', '-1');
334
+ } else if (slider.animatingTo === slider.last) {
335
+ slider.directionNav.removeClass(disabledClass).filter('.' + namespace + "next").addClass(disabledClass).attr('tabindex', '-1');
336
+ } else {
337
+ slider.directionNav.removeClass(disabledClass).removeAttr('tabindex');
338
+ }
339
+ } else {
340
+ slider.directionNav.removeClass(disabledClass).removeAttr('tabindex');
341
+ }
342
+ }
343
+ },
344
+ pausePlay: {
345
+ setup: function() {
346
+ var pausePlayScaffold = $('<div class="' + namespace + 'pauseplay"><a></a></div>');
347
+
348
+ // CONTROLSCONTAINER:
349
+ if (slider.controlsContainer) {
350
+ slider.controlsContainer.append(pausePlayScaffold);
351
+ slider.pausePlay = $('.' + namespace + 'pauseplay a', slider.controlsContainer);
352
+ } else {
353
+ slider.append(pausePlayScaffold);
354
+ slider.pausePlay = $('.' + namespace + 'pauseplay a', slider);
355
+ }
356
+
357
+ methods.pausePlay.update((slider.vars.slideshow) ? namespace + 'pause' : namespace + 'play');
358
+
359
+ slider.pausePlay.bind(eventType, function(event) {
360
+ event.preventDefault();
361
+
362
+ if (watchedEvent === "" || watchedEvent === event.type) {
363
+ if ($(this).hasClass(namespace + 'pause')) {
364
+ slider.manualPause = true;
365
+ slider.manualPlay = false;
366
+ slider.pause();
367
+ } else {
368
+ slider.manualPause = false;
369
+ slider.manualPlay = true;
370
+ slider.play();
371
+ }
372
+ }
373
+
374
+ // setup flags to prevent event duplication
375
+ if (watchedEvent === "") {
376
+ watchedEvent = event.type;
377
+ }
378
+ methods.setToClearWatchedEvent();
379
+ });
380
+ },
381
+ update: function(state) {
382
+ (state === "play") ? slider.pausePlay.removeClass(namespace + 'pause').addClass(namespace + 'play').html(slider.vars.playText) : slider.pausePlay.removeClass(namespace + 'play').addClass(namespace + 'pause').html(slider.vars.pauseText);
383
+ }
384
+ },
385
+ touch: function() {
386
+ var startX,
387
+ startY,
388
+ offset,
389
+ cwidth,
390
+ dx,
391
+ startT,
392
+ scrolling = false,
393
+ localX = 0,
394
+ localY = 0,
395
+ accDx = 0;
396
+
397
+ if(!msGesture){
398
+ el.addEventListener('touchstart', onTouchStart, false);
399
+
400
+ function onTouchStart(e) {
401
+ if (slider.animating) {
402
+ e.preventDefault();
403
+ } else if ( ( window.navigator.msPointerEnabled ) || e.touches.length === 1 ) {
404
+ slider.pause();
405
+ // CAROUSEL:
406
+ cwidth = (vertical) ? slider.h : slider. w;
407
+ startT = Number(new Date());
408
+ // CAROUSEL:
409
+
410
+ // Local vars for X and Y points.
411
+ localX = e.touches[0].pageX;
412
+ localY = e.touches[0].pageY;
413
+
414
+ offset = (carousel && reverse && slider.animatingTo === slider.last) ? 0 :
415
+ (carousel && reverse) ? slider.limit - (((slider.itemW + slider.vars.itemMargin) * slider.move) * slider.animatingTo) :
416
+ (carousel && slider.currentSlide === slider.last) ? slider.limit :
417
+ (carousel) ? ((slider.itemW + slider.vars.itemMargin) * slider.move) * slider.currentSlide :
418
+ (reverse) ? (slider.last - slider.currentSlide + slider.cloneOffset) * cwidth : (slider.currentSlide + slider.cloneOffset) * cwidth;
419
+ startX = (vertical) ? localY : localX;
420
+ startY = (vertical) ? localX : localY;
421
+
422
+ el.addEventListener('touchmove', onTouchMove, false);
423
+ el.addEventListener('touchend', onTouchEnd, false);
424
+ }
425
+ }
426
+
427
+ function onTouchMove(e) {
428
+ // Local vars for X and Y points.
429
+
430
+ localX = e.touches[0].pageX;
431
+ localY = e.touches[0].pageY;
432
+
433
+ dx = (vertical) ? startX - localY : startX - localX;
434
+ scrolling = (vertical) ? (Math.abs(dx) < Math.abs(localX - startY)) : (Math.abs(dx) < Math.abs(localY - startY));
435
+
436
+ var fxms = 500;
437
+
438
+ if ( ! scrolling || Number( new Date() ) - startT > fxms ) {
439
+ e.preventDefault();
440
+ if (!fade && slider.transitions) {
441
+ if (!slider.vars.animationLoop) {
442
+ dx = dx/((slider.currentSlide === 0 && dx < 0 || slider.currentSlide === slider.last && dx > 0) ? (Math.abs(dx)/cwidth+2) : 1);
443
+ }
444
+ slider.setProps(offset + dx, "setTouch");
445
+ }
446
+ }
447
+ }
448
+
449
+ function onTouchEnd(e) {
450
+ // finish the touch by undoing the touch session
451
+ el.removeEventListener('touchmove', onTouchMove, false);
452
+
453
+ if (slider.animatingTo === slider.currentSlide && !scrolling && !(dx === null)) {
454
+ var updateDx = (reverse) ? -dx : dx,
455
+ target = (updateDx > 0) ? slider.getTarget('next') : slider.getTarget('prev');
456
+
457
+ if (slider.canAdvance(target) && (Number(new Date()) - startT < 550 && Math.abs(updateDx) > 50 || Math.abs(updateDx) > cwidth/2)) {
458
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
459
+ } else {
460
+ if (!fade) slider.flexAnimate(slider.currentSlide, slider.vars.pauseOnAction, true);
461
+ }
462
+ }
463
+ el.removeEventListener('touchend', onTouchEnd, false);
464
+
465
+ startX = null;
466
+ startY = null;
467
+ dx = null;
468
+ offset = null;
469
+ }
470
+ }else{
471
+ el.style.msTouchAction = "none";
472
+ el._gesture = new MSGesture();
473
+ el._gesture.target = el;
474
+ el.addEventListener("MSPointerDown", onMSPointerDown, false);
475
+ el._slider = slider;
476
+ el.addEventListener("MSGestureChange", onMSGestureChange, false);
477
+ el.addEventListener("MSGestureEnd", onMSGestureEnd, false);
478
+
479
+ function onMSPointerDown(e){
480
+ e.stopPropagation();
481
+ if (slider.animating) {
482
+ e.preventDefault();
483
+ }else{
484
+ slider.pause();
485
+ el._gesture.addPointer(e.pointerId);
486
+ accDx = 0;
487
+ cwidth = (vertical) ? slider.h : slider. w;
488
+ startT = Number(new Date());
489
+ // CAROUSEL:
490
+
491
+ offset = (carousel && reverse && slider.animatingTo === slider.last) ? 0 :
492
+ (carousel && reverse) ? slider.limit - (((slider.itemW + slider.vars.itemMargin) * slider.move) * slider.animatingTo) :
493
+ (carousel && slider.currentSlide === slider.last) ? slider.limit :
494
+ (carousel) ? ((slider.itemW + slider.vars.itemMargin) * slider.move) * slider.currentSlide :
495
+ (reverse) ? (slider.last - slider.currentSlide + slider.cloneOffset) * cwidth : (slider.currentSlide + slider.cloneOffset) * cwidth;
496
+ }
497
+ }
498
+
499
+ function onMSGestureChange(e) {
500
+ e.stopPropagation();
501
+ var slider = e.target._slider;
502
+ if(!slider){
503
+ return;
504
+ }
505
+ var transX = -e.translationX,
506
+ transY = -e.translationY;
507
+
508
+ //Accumulate translations.
509
+ accDx = accDx + ((vertical) ? transY : transX);
510
+ dx = accDx;
511
+ scrolling = (vertical) ? (Math.abs(accDx) < Math.abs(-transX)) : (Math.abs(accDx) < Math.abs(-transY));
512
+
513
+ if(e.detail === e.MSGESTURE_FLAG_INERTIA){
514
+ setImmediate(function (){
515
+ el._gesture.stop();
516
+ });
517
+
518
+ return;
519
+ }
520
+
521
+ if (!scrolling || Number(new Date()) - startT > 500) {
522
+ e.preventDefault();
523
+ if (!fade && slider.transitions) {
524
+ if (!slider.vars.animationLoop) {
525
+ dx = accDx / ((slider.currentSlide === 0 && accDx < 0 || slider.currentSlide === slider.last && accDx > 0) ? (Math.abs(accDx) / cwidth + 2) : 1);
526
+ }
527
+ slider.setProps(offset + dx, "setTouch");
528
+ }
529
+ }
530
+ }
531
+
532
+ function onMSGestureEnd(e) {
533
+ e.stopPropagation();
534
+ var slider = e.target._slider;
535
+ if(!slider){
536
+ return;
537
+ }
538
+ if (slider.animatingTo === slider.currentSlide && !scrolling && !(dx === null)) {
539
+ var updateDx = (reverse) ? -dx : dx,
540
+ target = (updateDx > 0) ? slider.getTarget('next') : slider.getTarget('prev');
541
+
542
+ if (slider.canAdvance(target) && (Number(new Date()) - startT < 550 && Math.abs(updateDx) > 50 || Math.abs(updateDx) > cwidth/2)) {
543
+ slider.flexAnimate(target, slider.vars.pauseOnAction);
544
+ } else {
545
+ if (!fade) slider.flexAnimate(slider.currentSlide, slider.vars.pauseOnAction, true);
546
+ }
547
+ }
548
+
549
+ startX = null;
550
+ startY = null;
551
+ dx = null;
552
+ offset = null;
553
+ accDx = 0;
554
+ }
555
+ }
556
+ },
557
+ resize: function() {
558
+ if (!slider.animating && slider.is(':visible')) {
559
+ if (!carousel) slider.doMath();
560
+
561
+ if (fade) {
562
+ // SMOOTH HEIGHT:
563
+ methods.smoothHeight();
564
+ } else if (carousel) { //CAROUSEL:
565
+ slider.slides.width(slider.computedW);
566
+ slider.update(slider.pagingCount);
567
+ slider.setProps();
568
+ }
569
+ else if (vertical) { //VERTICAL:
570
+ slider.viewport.height(slider.h);
571
+ slider.setProps(slider.h, "setTotal");
572
+ } else {
573
+ // SMOOTH HEIGHT:
574
+ if (slider.vars.smoothHeight) methods.smoothHeight();
575
+ slider.newSlides.width(slider.computedW);
576
+ slider.setProps(slider.computedW, "setTotal");
577
+ }
578
+ }
579
+ },
580
+ smoothHeight: function(dur) {
581
+ if (!vertical || fade) {
582
+ var $obj = (fade) ? slider : slider.viewport;
583
+ (dur) ? $obj.animate({"height": slider.slides.eq(slider.animatingTo).height()}, dur) : $obj.height(slider.slides.eq(slider.animatingTo).height());
584
+ }
585
+ },
586
+ sync: function(action) {
587
+ var $obj = $(slider.vars.sync).data("flexslider"),
588
+ target = slider.animatingTo;
589
+
590
+ switch (action) {
591
+ case "animate": $obj.flexAnimate(target, slider.vars.pauseOnAction, false, true); break;
592
+ case "play": if (!$obj.playing && !$obj.asNav) { $obj.play(); } break;
593
+ case "pause": $obj.pause(); break;
594
+ }
595
+ },
596
+ uniqueID: function($clone) {
597
+ // Append _clone to current level and children elements with id attributes
598
+ $clone.filter( '[id]' ).add($clone.find( '[id]' )).each(function() {
599
+ var $this = $(this);
600
+ $this.attr( 'id', $this.attr( 'id' ) + '_clone' );
601
+ });
602
+ return $clone;
603
+ },
604
+ pauseInvisible: {
605
+ visProp: null,
606
+ init: function() {
607
+ var prefixes = ['webkit','moz','ms','o'];
608
+
609
+ if ('hidden' in document) return 'hidden';
610
+ for (var i = 0; i < prefixes.length; i++) {
611
+ if ((prefixes[i] + 'Hidden') in document)
612
+ methods.pauseInvisible.visProp = prefixes[i] + 'Hidden';
613
+ }
614
+ if (methods.pauseInvisible.visProp) {
615
+ var evtname = methods.pauseInvisible.visProp.replace(/[H|h]idden/,'') + 'visibilitychange';
616
+ document.addEventListener(evtname, function() {
617
+ if (methods.pauseInvisible.isHidden()) {
618
+ if(slider.startTimeout) clearTimeout(slider.startTimeout); //If clock is ticking, stop timer and prevent from starting while invisible
619
+ else slider.pause(); //Or just pause
620
+ }
621
+ else {
622
+ if(slider.started) slider.play(); //Initiated before, just play
623
+ else (slider.vars.initDelay > 0) ? setTimeout(slider.play, slider.vars.initDelay) : slider.play(); //Didn't init before: simply init or wait for it
624
+ }
625
+ });
626
+ }
627
+ },
628
+ isHidden: function() {
629
+ return document[methods.pauseInvisible.visProp] || false;
630
+ }
631
+ },
632
+ setToClearWatchedEvent: function() {
633
+ clearTimeout(watchedEventClearTimer);
634
+ watchedEventClearTimer = setTimeout(function() {
635
+ watchedEvent = "";
636
+ }, 3000);
637
+ }
638
+ };
639
+
640
+ // public methods
641
+ slider.flexAnimate = function(target, pause, override, withSync, fromNav) {
642
+ if (!slider.vars.animationLoop && target !== slider.currentSlide) {
643
+ slider.direction = (target > slider.currentSlide) ? "next" : "prev";
644
+ }
645
+
646
+ if (asNav && slider.pagingCount === 1) slider.direction = (slider.currentItem < target) ? "next" : "prev";
647
+
648
+ if (!slider.animating && (slider.canAdvance(target, fromNav) || override) && slider.is(":visible")) {
649
+ if (asNav && withSync) {
650
+ var master = $(slider.vars.asNavFor).data('flexslider');
651
+ slider.atEnd = target === 0 || target === slider.count - 1;
652
+ master.flexAnimate(target, true, false, true, fromNav);
653
+ slider.direction = (slider.currentItem < target) ? "next" : "prev";
654
+ master.direction = slider.direction;
655
+
656
+ if (Math.ceil((target + 1)/slider.visible) - 1 !== slider.currentSlide && target !== 0) {
657
+ slider.currentItem = target;
658
+ slider.slides.removeClass(namespace + "active-slide").eq(target).addClass(namespace + "active-slide");
659
+ target = Math.floor(target/slider.visible);
660
+ } else {
661
+ slider.currentItem = target;
662
+ slider.slides.removeClass(namespace + "active-slide").eq(target).addClass(namespace + "active-slide");
663
+ return false;
664
+ }
665
+ }
666
+
667
+ slider.animating = true;
668
+ slider.animatingTo = target;
669
+
670
+ // SLIDESHOW:
671
+ if (pause) slider.pause();
672
+
673
+ // API: before() animation Callback
674
+ slider.vars.before(slider);
675
+
676
+ // SYNC:
677
+ if (slider.syncExists && !fromNav) methods.sync("animate");
678
+
679
+ // CONTROLNAV
680
+ if (slider.vars.controlNav) methods.controlNav.active();
681
+
682
+ // !CAROUSEL:
683
+ // CANDIDATE: slide active class (for add/remove slide)
684
+ if (!carousel) slider.slides.removeClass(namespace + 'active-slide').eq(target).addClass(namespace + 'active-slide');
685
+
686
+ // INFINITE LOOP:
687
+ // CANDIDATE: atEnd
688
+ slider.atEnd = target === 0 || target === slider.last;
689
+
690
+ // DIRECTIONNAV:
691
+ if (slider.vars.directionNav) methods.directionNav.update();
692
+
693
+ if (target === slider.last) {
694
+ // API: end() of cycle Callback
695
+ slider.vars.end(slider);
696
+ // SLIDESHOW && !INFINITE LOOP:
697
+ if (!slider.vars.animationLoop) slider.pause();
698
+ }
699
+
700
+ // SLIDE:
701
+ if (!fade) {
702
+ var dimension = (vertical) ? slider.slides.filter(':first').height() : slider.computedW,
703
+ margin, slideString, calcNext;
704
+
705
+ // INFINITE LOOP / REVERSE:
706
+ if (carousel) {
707
+ //margin = (slider.vars.itemWidth > slider.w) ? slider.vars.itemMargin * 2 : slider.vars.itemMargin;
708
+ margin = slider.vars.itemMargin;
709
+ calcNext = ((slider.itemW + margin) * slider.move) * slider.animatingTo;
710
+ slideString = (calcNext > slider.limit && slider.visible !== 1) ? slider.limit : calcNext;
711
+ } else if (slider.currentSlide === 0 && target === slider.count - 1 && slider.vars.animationLoop && slider.direction !== "next") {
712
+ slideString = (reverse) ? (slider.count + slider.cloneOffset) * dimension : 0;
713
+ } else if (slider.currentSlide === slider.last && target === 0 && slider.vars.animationLoop && slider.direction !== "prev") {
714
+ slideString = (reverse) ? 0 : (slider.count + 1) * dimension;
715
+ } else {
716
+ slideString = (reverse) ? ((slider.count - 1) - target + slider.cloneOffset) * dimension : (target + slider.cloneOffset) * dimension;
717
+ }
718
+ slider.setProps(slideString, "", slider.vars.animationSpeed);
719
+ if (slider.transitions) {
720
+ if (!slider.vars.animationLoop || !slider.atEnd) {
721
+ slider.animating = false;
722
+ slider.currentSlide = slider.animatingTo;
723
+ }
724
+
725
+ // Unbind previous transitionEnd events and re-bind new transitionEnd event
726
+ slider.container.unbind("webkitTransitionEnd transitionend");
727
+ slider.container.bind("webkitTransitionEnd transitionend", function() {
728
+ clearTimeout(slider.ensureAnimationEnd);
729
+ slider.wrapup(dimension);
730
+ });
731
+
732
+ // Insurance for the ever-so-fickle transitionEnd event
733
+ clearTimeout(slider.ensureAnimationEnd);
734
+ slider.ensureAnimationEnd = setTimeout(function() {
735
+ slider.wrapup(dimension);
736
+ }, slider.vars.animationSpeed + 100);
737
+
738
+ } else {
739
+ slider.container.animate(slider.args, slider.vars.animationSpeed, slider.vars.easing, function(){
740
+ slider.wrapup(dimension);
741
+ });
742
+ }
743
+ } else { // FADE:
744
+ if (!touch) {
745
+ //slider.slides.eq(slider.currentSlide).fadeOut(slider.vars.animationSpeed, slider.vars.easing);
746
+ //slider.slides.eq(target).fadeIn(slider.vars.animationSpeed, slider.vars.easing, slider.wrapup);
747
+
748
+ slider.slides.eq(slider.currentSlide).css({"zIndex": 1}).animate({"opacity": 0}, slider.vars.animationSpeed, slider.vars.easing);
749
+ slider.slides.eq(target).css({"zIndex": 2}).animate({"opacity": 1}, slider.vars.animationSpeed, slider.vars.easing, slider.wrapup);
750
+
751
+ } else {
752
+ slider.slides.eq(slider.currentSlide).css({ "opacity": 0, "zIndex": 1 });
753
+ slider.slides.eq(target).css({ "opacity": 1, "zIndex": 2 });
754
+ slider.wrapup(dimension);
755
+ }
756
+ }
757
+ // SMOOTH HEIGHT:
758
+ if (slider.vars.smoothHeight) methods.smoothHeight(slider.vars.animationSpeed);
759
+ }
760
+ };
761
+ slider.wrapup = function(dimension) {
762
+ // SLIDE:
763
+ if (!fade && !carousel) {
764
+ if (slider.currentSlide === 0 && slider.animatingTo === slider.last && slider.vars.animationLoop) {
765
+ slider.setProps(dimension, "jumpEnd");
766
+ } else if (slider.currentSlide === slider.last && slider.animatingTo === 0 && slider.vars.animationLoop) {
767
+ slider.setProps(dimension, "jumpStart");
768
+ }
769
+ }
770
+ slider.animating = false;
771
+ slider.currentSlide = slider.animatingTo;
772
+ // API: after() animation Callback
773
+ slider.vars.after(slider);
774
+ };
775
+
776
+ // SLIDESHOW:
777
+ slider.animateSlides = function() {
778
+ if (!slider.animating && focused ) slider.flexAnimate(slider.getTarget("next"));
779
+ };
780
+ // SLIDESHOW:
781
+ slider.pause = function() {
782
+ clearInterval(slider.animatedSlides);
783
+ slider.animatedSlides = null;
784
+ slider.playing = false;
785
+ // PAUSEPLAY:
786
+ if (slider.vars.pausePlay) methods.pausePlay.update("play");
787
+ // SYNC:
788
+ if (slider.syncExists) methods.sync("pause");
789
+ };
790
+ // SLIDESHOW:
791
+ slider.play = function() {
792
+ if (slider.playing) clearInterval(slider.animatedSlides);
793
+ slider.animatedSlides = slider.animatedSlides || setInterval(slider.animateSlides, slider.vars.slideshowSpeed);
794
+ slider.started = slider.playing = true;
795
+ // PAUSEPLAY:
796
+ if (slider.vars.pausePlay) methods.pausePlay.update("pause");
797
+ // SYNC:
798
+ if (slider.syncExists) methods.sync("play");
799
+ };
800
+ // STOP:
801
+ slider.stop = function () {
802
+ slider.pause();
803
+ slider.stopped = true;
804
+ };
805
+ slider.canAdvance = function(target, fromNav) {
806
+ // ASNAV:
807
+ var last = (asNav) ? slider.pagingCount - 1 : slider.last;
808
+ return (fromNav) ? true :
809
+ (asNav && slider.currentItem === slider.count - 1 && target === 0 && slider.direction === "prev") ? true :
810
+ (asNav && slider.currentItem === 0 && target === slider.pagingCount - 1 && slider.direction !== "next") ? false :
811
+ (target === slider.currentSlide && !asNav) ? false :
812
+ (slider.vars.animationLoop) ? true :
813
+ (slider.atEnd && slider.currentSlide === 0 && target === last && slider.direction !== "next") ? false :
814
+ (slider.atEnd && slider.currentSlide === last && target === 0 && slider.direction === "next") ? false :
815
+ true;
816
+ };
817
+ slider.getTarget = function(dir) {
818
+ slider.direction = dir;
819
+ if (dir === "next") {
820
+ return (slider.currentSlide === slider.last) ? 0 : slider.currentSlide + 1;
821
+ } else {
822
+ return (slider.currentSlide === 0) ? slider.last : slider.currentSlide - 1;
823
+ }
824
+ };
825
+
826
+ // SLIDE:
827
+ slider.setProps = function(pos, special, dur) {
828
+ var target = (function() {
829
+ var posCheck = (pos) ? pos : ((slider.itemW + slider.vars.itemMargin) * slider.move) * slider.animatingTo,
830
+ posCalc = (function() {
831
+ if (carousel) {
832
+ return (special === "setTouch") ? pos :
833
+ (reverse && slider.animatingTo === slider.last) ? 0 :
834
+ (reverse) ? slider.limit - (((slider.itemW + slider.vars.itemMargin) * slider.move) * slider.animatingTo) :
835
+ (slider.animatingTo === slider.last) ? slider.limit : posCheck;
836
+ } else {
837
+ switch (special) {
838
+ case "setTotal": return (reverse) ? ((slider.count - 1) - slider.currentSlide + slider.cloneOffset) * pos : (slider.currentSlide + slider.cloneOffset) * pos;
839
+ case "setTouch": return (reverse) ? pos : pos;
840
+ case "jumpEnd": return (reverse) ? pos : slider.count * pos;
841
+ case "jumpStart": return (reverse) ? slider.count * pos : pos;
842
+ default: return pos;
843
+ }
844
+ }
845
+ }());
846
+
847
+ return (posCalc * -1) + "px";
848
+ }());
849
+
850
+ if (slider.transitions) {
851
+ target = (vertical) ? "translate3d(0," + target + ",0)" : "translate3d(" + target + ",0,0)";
852
+ dur = (dur !== undefined) ? (dur/1000) + "s" : "0s";
853
+ slider.container.css("-" + slider.pfx + "-transition-duration", dur);
854
+ slider.container.css("transition-duration", dur);
855
+ }
856
+
857
+ slider.args[slider.prop] = target;
858
+ if (slider.transitions || dur === undefined) slider.container.css(slider.args);
859
+
860
+ slider.container.css('transform',target);
861
+ };
862
+
863
+ slider.setup = function(type) {
864
+ // SLIDE:
865
+ if (!fade) {
866
+ var sliderOffset, arr;
867
+
868
+ if (type === "init") {
869
+ slider.viewport = $('<div class="' + namespace + 'viewport"></div>').css({"overflow": "hidden", "position": "relative"}).appendTo(slider).append(slider.container);
870
+ // INFINITE LOOP:
871
+ slider.cloneCount = 0;
872
+ slider.cloneOffset = 0;
873
+ // REVERSE:
874
+ if (reverse) {
875
+ arr = $.makeArray(slider.slides).reverse();
876
+ slider.slides = $(arr);
877
+ slider.container.empty().append(slider.slides);
878
+ }
879
+ }
880
+ // INFINITE LOOP && !CAROUSEL:
881
+ if (slider.vars.animationLoop && !carousel) {
882
+ slider.cloneCount = 2;
883
+ slider.cloneOffset = 1;
884
+ // clear out old clones
885
+ if (type !== "init") slider.container.find('.clone').remove();
886
+ slider.container.append(methods.uniqueID(slider.slides.first().clone().addClass('clone')).attr('aria-hidden', 'true'))
887
+ .prepend(methods.uniqueID(slider.slides.last().clone().addClass('clone')).attr('aria-hidden', 'true'));
888
+ }
889
+ slider.newSlides = $(slider.vars.selector, slider);
890
+
891
+ sliderOffset = (reverse) ? slider.count - 1 - slider.currentSlide + slider.cloneOffset : slider.currentSlide + slider.cloneOffset;
892
+ // VERTICAL:
893
+ if (vertical && !carousel) {
894
+ slider.container.height((slider.count + slider.cloneCount) * 200 + "%").css("position", "absolute").width("100%");
895
+ setTimeout(function(){
896
+ slider.newSlides.css({"display": "block"});
897
+ slider.doMath();
898
+ slider.viewport.height(slider.h);
899
+ slider.setProps(sliderOffset * slider.h, "init");
900
+ }, (type === "init") ? 100 : 0);
901
+ } else {
902
+ slider.container.width((slider.count + slider.cloneCount) * 200 + "%");
903
+ slider.setProps(sliderOffset * slider.computedW, "init");
904
+ setTimeout(function(){
905
+ slider.doMath();
906
+ slider.newSlides.css({"width": slider.computedW, "float": "left", "display": "block"});
907
+ // SMOOTH HEIGHT:
908
+ if (slider.vars.smoothHeight) methods.smoothHeight();
909
+ }, (type === "init") ? 100 : 0);
910
+ }
911
+ } else { // FADE:
912
+ slider.slides.css({"width": "100%", "float": "left", "marginRight": "-100%", "position": "relative"});
913
+ if (type === "init") {
914
+ if (!touch) {
915
+ //slider.slides.eq(slider.currentSlide).fadeIn(slider.vars.animationSpeed, slider.vars.easing);
916
+ if (slider.vars.fadeFirstSlide == false) {
917
+ slider.slides.css({ "opacity": 0, "display": "block", "zIndex": 1 }).eq(slider.currentSlide).css({"zIndex": 2}).css({"opacity": 1});
918
+ } else {
919
+ slider.slides.css({ "opacity": 0, "display": "block", "zIndex": 1 }).eq(slider.currentSlide).css({"zIndex": 2}).animate({"opacity": 1},slider.vars.animationSpeed,slider.vars.easing);
920
+ }
921
+ } else {
922
+ slider.slides.css({ "opacity": 0, "display": "block", "webkitTransition": "opacity " + slider.vars.animationSpeed / 1000 + "s ease", "zIndex": 1 }).eq(slider.currentSlide).css({ "opacity": 1, "zIndex": 2});
923
+ }
924
+ }
925
+ // SMOOTH HEIGHT:
926
+ if (slider.vars.smoothHeight) methods.smoothHeight();
927
+ }
928
+ // !CAROUSEL:
929
+ // CANDIDATE: active slide
930
+ if (!carousel) slider.slides.removeClass(namespace + "active-slide").eq(slider.currentSlide).addClass(namespace + "active-slide");
931
+
932
+ //FlexSlider: init() Callback
933
+ slider.vars.init(slider);
934
+ };
935
+
936
+ slider.doMath = function() {
937
+ var slide = slider.slides.first(),
938
+ slideMargin = slider.vars.itemMargin,
939
+ minItems = slider.vars.minItems,
940
+ maxItems = slider.vars.maxItems;
941
+
942
+ slider.w = (slider.viewport===undefined) ? slider.width() : slider.viewport.width();
943
+ slider.h = slide.height();
944
+ slider.boxPadding = slide.outerWidth() - slide.width();
945
+
946
+ // CAROUSEL:
947
+ if (carousel) {
948
+ slider.itemT = slider.vars.itemWidth + slideMargin;
949
+ slider.minW = (minItems) ? minItems * slider.itemT : slider.w;
950
+ slider.maxW = (maxItems) ? (maxItems * slider.itemT) - slideMargin : slider.w;
951
+ slider.itemW = (slider.minW > slider.w) ? (slider.w - (slideMargin * (minItems - 1)))/minItems :
952
+ (slider.maxW < slider.w) ? (slider.w - (slideMargin * (maxItems - 1)))/maxItems :
953
+ (slider.vars.itemWidth > slider.w) ? slider.w : slider.vars.itemWidth;
954
+
955
+ slider.visible = Math.floor(slider.w/(slider.itemW));
956
+ slider.move = (slider.vars.move > 0 && slider.vars.move < slider.visible ) ? slider.vars.move : slider.visible;
957
+ slider.pagingCount = Math.ceil(((slider.count - slider.visible)/slider.move) + 1);
958
+ slider.last = slider.pagingCount - 1;
959
+ slider.limit = (slider.pagingCount === 1) ? 0 :
960
+ (slider.vars.itemWidth > slider.w) ? (slider.itemW * (slider.count - 1)) + (slideMargin * (slider.count - 1)) : ((slider.itemW + slideMargin) * slider.count) - slider.w - slideMargin;
961
+ } else {
962
+ slider.itemW = slider.w;
963
+ slider.pagingCount = slider.count;
964
+ slider.last = slider.count - 1;
965
+ }
966
+ slider.computedW = slider.itemW - slider.boxPadding;
967
+ };
968
+
969
+ slider.update = function(pos, action) {
970
+ slider.doMath();
971
+
972
+ // update currentSlide and slider.animatingTo if necessary
973
+ if (!carousel) {
974
+ if (pos < slider.currentSlide) {
975
+ slider.currentSlide += 1;
976
+ } else if (pos <= slider.currentSlide && pos !== 0) {
977
+ slider.currentSlide -= 1;
978
+ }
979
+ slider.animatingTo = slider.currentSlide;
980
+ }
981
+
982
+ // update controlNav
983
+ if (slider.vars.controlNav && !slider.manualControls) {
984
+ if ((action === "add" && !carousel) || slider.pagingCount > slider.controlNav.length) {
985
+ methods.controlNav.update("add");
986
+ } else if ((action === "remove" && !carousel) || slider.pagingCount < slider.controlNav.length) {
987
+ if (carousel && slider.currentSlide > slider.last) {
988
+ slider.currentSlide -= 1;
989
+ slider.animatingTo -= 1;
990
+ }
991
+ methods.controlNav.update("remove", slider.last);
992
+ }
993
+ }
994
+ // update directionNav
995
+ if (slider.vars.directionNav) methods.directionNav.update();
996
+
997
+ };
998
+
999
+ slider.addSlide = function(obj, pos) {
1000
+ var $obj = $(obj);
1001
+
1002
+ slider.count += 1;
1003
+ slider.last = slider.count - 1;
1004
+
1005
+ // append new slide
1006
+ if (vertical && reverse) {
1007
+ (pos !== undefined) ? slider.slides.eq(slider.count - pos).after($obj) : slider.container.prepend($obj);
1008
+ } else {
1009
+ (pos !== undefined) ? slider.slides.eq(pos).before($obj) : slider.container.append($obj);
1010
+ }
1011
+
1012
+ // update currentSlide, animatingTo, controlNav, and directionNav
1013
+ slider.update(pos, "add");
1014
+
1015
+ // update slider.slides
1016
+ slider.slides = $(slider.vars.selector + ':not(.clone)', slider);
1017
+ // re-setup the slider to accomdate new slide
1018
+ slider.setup();
1019
+
1020
+ //FlexSlider: added() Callback
1021
+ slider.vars.added(slider);
1022
+ };
1023
+ slider.removeSlide = function(obj) {
1024
+ var pos = (isNaN(obj)) ? slider.slides.index($(obj)) : obj;
1025
+
1026
+ // update count
1027
+ slider.count -= 1;
1028
+ slider.last = slider.count - 1;
1029
+
1030
+ // remove slide
1031
+ if (isNaN(obj)) {
1032
+ $(obj, slider.slides).remove();
1033
+ } else {
1034
+ (vertical && reverse) ? slider.slides.eq(slider.last).remove() : slider.slides.eq(obj).remove();
1035
+ }
1036
+
1037
+ // update currentSlide, animatingTo, controlNav, and directionNav
1038
+ slider.doMath();
1039
+ slider.update(pos, "remove");
1040
+
1041
+ // update slider.slides
1042
+ slider.slides = $(slider.vars.selector + ':not(.clone)', slider);
1043
+ // re-setup the slider to accomdate new slide
1044
+ slider.setup();
1045
+
1046
+ // FlexSlider: removed() Callback
1047
+ slider.vars.removed(slider);
1048
+ };
1049
+
1050
+ //FlexSlider: Initialize
1051
+ methods.init();
1052
+ };
1053
+
1054
+ // Ensure the slider isn't focussed if the window loses focus.
1055
+ $( window ).blur( function ( e ) {
1056
+ focused = false;
1057
+ }).focus( function ( e ) {
1058
+ focused = true;
1059
+ });
1060
+
1061
+ //FlexSlider: Default Settings
1062
+ $.flexslider.defaults = {
1063
+ namespace: "flex-", //{NEW} String: Prefix string attached to the class of every element generated by the plugin
1064
+ selector: ".slides > li", //{NEW} Selector: Must match a simple pattern. '{container} > {slide}' -- Ignore pattern at your own peril
1065
+ animation: "fade", //String: Select your animation type, "fade" or "slide"
1066
+ easing: "swing", //{NEW} String: Determines the easing method used in jQuery transitions. jQuery easing plugin is supported!
1067
+ direction: "horizontal", //String: Select the sliding direction, "horizontal" or "vertical"
1068
+ reverse: false, //{NEW} Boolean: Reverse the animation direction
1069
+ animationLoop: true, //Boolean: Should the animation loop? If false, directionNav will received "disable" classes at either end
1070
+ smoothHeight: false, //{NEW} Boolean: Allow height of the slider to animate smoothly in horizontal mode
1071
+ startAt: 0, //Integer: The slide that the slider should start on. Array notation (0 = first slide)
1072
+ slideshow: true, //Boolean: Animate slider automatically
1073
+ slideshowSpeed: 7000, //Integer: Set the speed of the slideshow cycling, in milliseconds
1074
+ animationSpeed: 600, //Integer: Set the speed of animations, in milliseconds
1075
+ initDelay: 0, //{NEW} Integer: Set an initialization delay, in milliseconds
1076
+ randomize: false, //Boolean: Randomize slide order
1077
+ fadeFirstSlide: true, //Boolean: Fade in the first slide when animation type is "fade"
1078
+ thumbCaptions: false, //Boolean: Whether or not to put captions on thumbnails when using the "thumbnails" controlNav.
1079
+
1080
+ // Usability features
1081
+ pauseOnAction: true, //Boolean: Pause the slideshow when interacting with control elements, highly recommended.
1082
+ pauseOnHover: false, //Boolean: Pause the slideshow when hovering over slider, then resume when no longer hovering
1083
+ pauseInvisible: true, //{NEW} Boolean: Pause the slideshow when tab is invisible, resume when visible. Provides better UX, lower CPU usage.
1084
+ useCSS: true, //{NEW} Boolean: Slider will use CSS3 transitions if available
1085
+ touch: true, //{NEW} Boolean: Allow touch swipe navigation of the slider on touch-enabled devices
1086
+ video: false, //{NEW} Boolean: If using video in the slider, will prevent CSS3 3D Transforms to avoid graphical glitches
1087
+
1088
+ // Primary Controls
1089
+ controlNav: true, //Boolean: Create navigation for paging control of each slide? Note: Leave true for manualControls usage
1090
+ directionNav: true, //Boolean: Create navigation for previous/next navigation? (true/false)
1091
+ prevText: "Previous", //String: Set the text for the "previous" directionNav item
1092
+ nextText: "Next", //String: Set the text for the "next" directionNav item
1093
+
1094
+ // Secondary Navigation
1095
+ keyboard: true, //Boolean: Allow slider navigating via keyboard left/right keys
1096
+ multipleKeyboard: false, //{NEW} Boolean: Allow keyboard navigation to affect multiple sliders. Default behavior cuts out keyboard navigation with more than one slider present.
1097
+ mousewheel: false, //{UPDATED} Boolean: Requires jquery.mousewheel.js (https://github.com/brandonaaron/jquery-mousewheel) - Allows slider navigating via mousewheel
1098
+ pausePlay: false, //Boolean: Create pause/play dynamic element
1099
+ pauseText: "Pause", //String: Set the text for the "pause" pausePlay item
1100
+ playText: "Play", //String: Set the text for the "play" pausePlay item
1101
+
1102
+ // Special properties
1103
+ controlsContainer: "", //{UPDATED} jQuery Object/Selector: Declare which container the navigation elements should be appended too. Default container is the FlexSlider element. Example use would be $(".flexslider-container"). Property is ignored if given element is not found.
1104
+ manualControls: "", //{UPDATED} jQuery Object/Selector: Declare custom control navigation. Examples would be $(".flex-control-nav li") or "#tabs-nav li img", etc. The number of elements in your controlNav should match the number of slides/tabs.
1105
+ sync: "", //{NEW} Selector: Mirror the actions performed on this slider with another slider. Use with care.
1106
+ asNavFor: "", //{NEW} Selector: Internal property exposed for turning the slider into a thumbnail navigation for another slider
1107
+
1108
+ // Carousel Options
1109
+ itemWidth: 0, //{NEW} Integer: Box-model width of individual carousel items, including horizontal borders and padding.
1110
+ itemMargin: 0, //{NEW} Integer: Margin between carousel items.
1111
+ minItems: 1, //{NEW} Integer: Minimum number of carousel items that should be visible. Items will resize fluidly when below this.
1112
+ maxItems: 0, //{NEW} Integer: Maxmimum number of carousel items that should be visible. Items will resize fluidly when above this limit.
1113
+ move: 0, //{NEW} Integer: Number of carousel items that should move on animation. If 0, slider will move all visible items.
1114
+ allowOneSlide: true, //{NEW} Boolean: Whether or not to allow a slider comprised of a single slide
1115
+
1116
+ // Callback API
1117
+ start: function(){}, //Callback: function(slider) - Fires when the slider loads the first slide
1118
+ before: function(){}, //Callback: function(slider) - Fires asynchronously with each slider animation
1119
+ after: function(){}, //Callback: function(slider) - Fires after each slider animation completes
1120
+ end: function(){}, //Callback: function(slider) - Fires when the slider reaches the last slide (asynchronous)
1121
+ added: function(){}, //{NEW} Callback: function(slider) - Fires after a slide is added
1122
+ removed: function(){}, //{NEW} Callback: function(slider) - Fires after a slide is removed
1123
+ init: function() {} //{NEW} Callback: function(slider) - Fires after the slider is initially setup
1124
+ };
1125
+
1126
+ //FlexSlider: Plugin Function
1127
+ $.fn.flexslider = function(options) {
1128
+ if (options === undefined) options = {};
1129
+
1130
+ if (typeof options === "object") {
1131
+ return this.each(function() {
1132
+ var $this = $(this),
1133
+ selector = (options.selector) ? options.selector : ".slides > li",
1134
+ $slides = $this.find(selector);
1135
+
1136
+ if ( ( $slides.length === 1 && options.allowOneSlide === true ) || $slides.length === 0 ) {
1137
+ $slides.fadeIn(400);
1138
+ if (options.start) options.start($this);
1139
+ } else if ($this.data('flexslider') === undefined) {
1140
+ new $.flexslider(this, options);
1141
+ }
1142
+ });
1143
+ } else {
1144
+ // Helper strings to quickly perform functions on the slider
1145
+ var $slider = $(this).data('flexslider');
1146
+ switch (options) {
1147
+ case "play": $slider.play(); break;
1148
+ case "pause": $slider.pause(); break;
1149
+ case "stop": $slider.stop(); break;
1150
+ case "next": $slider.flexAnimate($slider.getTarget("next"), true); break;
1151
+ case "prev":
1152
+ case "previous": $slider.flexAnimate($slider.getTarget("prev"), true); break;
1153
+ default: if (typeof options === "number") $slider.flexAnimate(options, true);
1154
+ }
1155
+ }
1156
+ };
1157
+ })(jQuery);