rails-bootstrap-engine 0.0.2

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 (217) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/README.md +35 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +40 -0
  5. data/app/assets/font/FontAwesome.ttf +0 -0
  6. data/app/assets/font/fontawesome-webfont.eot +0 -0
  7. data/app/assets/font/fontawesome-webfont.svg +525 -0
  8. data/app/assets/font/fontawesome-webfont.ttf +0 -0
  9. data/app/assets/font/fontawesome-webfont.woff +0 -0
  10. data/app/assets/font/glyphicons-regular-0.eot +0 -0
  11. data/app/assets/font/glyphicons-regular.eot +0 -0
  12. data/app/assets/font/glyphicons-regular.svg +435 -0
  13. data/app/assets/font/glyphicons-regular.ttf +0 -0
  14. data/app/assets/font/glyphicons-regular.woff +0 -0
  15. data/app/assets/font/glyphiconshalflings-regular-0.eot +0 -0
  16. data/app/assets/font/glyphiconshalflings-regular.eot +0 -0
  17. data/app/assets/font/glyphiconshalflings-regular.svg +175 -0
  18. data/app/assets/font/glyphiconshalflings-regular.ttf +0 -0
  19. data/app/assets/font/glyphiconshalflings-regular.woff +0 -0
  20. data/app/assets/images/apple-touch-icon-114x114-precomposed.png +0 -0
  21. data/app/assets/images/apple-touch-icon-144x144-precomposed.png +0 -0
  22. data/app/assets/images/apple-touch-icon-57x57-precomposed.png +0 -0
  23. data/app/assets/images/apple-touch-icon-72x72-precomposed.png +0 -0
  24. data/app/assets/images/apple-touch-icon-precomposed.png +0 -0
  25. data/app/assets/images/devise.png +0 -0
  26. data/app/assets/javascripts/behaviors.js +23 -0
  27. data/app/assets/javascripts/bootstrap.js +2159 -0
  28. data/app/assets/javascripts/plugins/holder.js +342 -0
  29. data/app/assets/javascripts/plugins/jquery.autosize.js +181 -0
  30. data/app/assets/javascripts/plugins/jquery.toggle.buttons.js +289 -0
  31. data/app/assets/javascripts/rails-bootstrap-engine.js +17 -0
  32. data/app/assets/stylesheets/bootstrap-plugins/bootstrap-jumbotrons.css +95 -0
  33. data/app/assets/stylesheets/bootstrap-plugins/bootstrap-toggle-buttons.css +155 -0
  34. data/app/assets/stylesheets/bootstrap-responsive.css +1092 -0
  35. data/app/assets/stylesheets/bootstrap.css +6044 -0
  36. data/app/assets/stylesheets/devise.css +3 -0
  37. data/app/assets/stylesheets/font-awesome-more-ie7.css +288 -0
  38. data/app/assets/stylesheets/font-awesome-more.css +853 -0
  39. data/app/assets/stylesheets/glyphicons-pro.css +2382 -0
  40. data/app/assets/stylesheets/orangeweb-bootstrap-toolkit/bootstrap-toolkit-background.css +147 -0
  41. data/app/assets/stylesheets/orangeweb-bootstrap-toolkit/bootstrap-toolkit-color.css +28 -0
  42. data/app/assets/stylesheets/orangeweb-bootstrap-toolkit/bootstrap-toolkit-navigation.css +27 -0
  43. data/app/assets/stylesheets/orangeweb-bootstrap-toolkit/bootstrap-toolkit-overrides.css +4 -0
  44. data/app/assets/stylesheets/orangeweb-bootstrap-toolkit/bootstrap-toolkit-table.css +29 -0
  45. data/app/assets/stylesheets/orangeweb-bootstrap-toolkit/bootstrap-toolkit-typography.css +30 -0
  46. data/app/assets/stylesheets/rails-bootstrap-engine.css +20 -0
  47. data/app/helpers/bootstrap_alert_helper.rb +64 -0
  48. data/app/helpers/bootstrap_badge_helper.rb +145 -0
  49. data/app/helpers/bootstrap_breadcrumbs_helper.rb +97 -0
  50. data/app/helpers/bootstrap_button_helper.rb +121 -0
  51. data/app/helpers/bootstrap_engine_helper.rb +66 -0
  52. data/app/helpers/bootstrap_form_helpers.rb +55 -0
  53. data/app/helpers/bootstrap_grid_helper.rb +119 -0
  54. data/app/helpers/bootstrap_icon_helper.rb +51 -0
  55. data/app/helpers/bootstrap_label_helper.rb +116 -0
  56. data/app/helpers/bootstrap_link_helper.rb +81 -0
  57. data/app/helpers/bootstrap_nav_helper.rb +90 -0
  58. data/app/helpers/bootstrap_popover_helper.rb +52 -0
  59. data/app/helpers/bootstrap_progressbar_helper.rb +62 -0
  60. data/app/helpers/bootstrap_searchbar_helper.rb +70 -0
  61. data/app/helpers/bootstrap_text_helper.rb +128 -0
  62. data/app/views/devise/confirmations/new.html.erb +16 -0
  63. data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
  64. data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
  65. data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
  66. data/app/views/devise/passwords/edit.html.erb +19 -0
  67. data/app/views/devise/passwords/new.html.erb +15 -0
  68. data/app/views/devise/registrations/edit.html.erb +79 -0
  69. data/app/views/devise/registrations/new.html.erb +7 -0
  70. data/app/views/devise/sessions/new.html.erb +14 -0
  71. data/app/views/devise/shared/_links.erb +25 -0
  72. data/app/views/devise/unlocks/new.html.erb +16 -0
  73. data/app/views/layouts/application.html.erb +96 -0
  74. data/app/views/layouts/devise.html.erb +180 -0
  75. data/config/initializers/simple_form.rb +142 -0
  76. data/config/initializers/simple_form_bootstrap.rb +45 -0
  77. data/config/initializers/will_paginate.rb +28 -0
  78. data/config/locales/pt-BR.yml +217 -0
  79. data/config/locales/simple_form.en.yml +26 -0
  80. data/config/locales/will_paginate.pt-br.yml +5 -0
  81. data/config/routes.rb +2 -0
  82. data/lib/generators/bootstrap_engine/devise/install/install_generator.rb +47 -0
  83. data/lib/generators/bootstrap_engine/devise/install/templates/devise.html.erb +180 -0
  84. data/lib/rails-bootstrap-engine.rb +4 -0
  85. data/lib/rails-bootstrap-engine/engine.rb +4 -0
  86. data/lib/rails-bootstrap-engine/version.rb +3 -0
  87. data/lib/tasks/rails-bootstrap-engine_tasks.rake +4 -0
  88. data/lib/templates/erb/scaffold/_form.html.erb +13 -0
  89. data/test/dummy/README.rdoc +261 -0
  90. data/test/dummy/Rakefile +7 -0
  91. data/test/dummy/app/assets/javascripts/application.js +16 -0
  92. data/test/dummy/app/assets/javascripts/test.js +2 -0
  93. data/test/dummy/app/assets/stylesheets/application.css +14 -0
  94. data/test/dummy/app/assets/stylesheets/test.css +4 -0
  95. data/test/dummy/app/controllers/application_controller.rb +7 -0
  96. data/test/dummy/app/controllers/test_controller.rb +4 -0
  97. data/test/dummy/app/helpers/application_helper.rb +2 -0
  98. data/test/dummy/app/helpers/test_helper.rb +2 -0
  99. data/test/dummy/app/models/user.rb +11 -0
  100. data/test/dummy/app/views/layouts/application.html.erb +90 -0
  101. data/test/dummy/app/views/layouts/devise.html.erb +180 -0
  102. data/test/dummy/app/views/test/index.html.erb +2 -0
  103. data/test/dummy/config.ru +4 -0
  104. data/test/dummy/config/application.rb +62 -0
  105. data/test/dummy/config/boot.rb +10 -0
  106. data/test/dummy/config/database.yml +25 -0
  107. data/test/dummy/config/environment.rb +5 -0
  108. data/test/dummy/config/environments/development.rb +37 -0
  109. data/test/dummy/config/environments/production.rb +67 -0
  110. data/test/dummy/config/environments/test.rb +37 -0
  111. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  112. data/test/dummy/config/initializers/devise.rb +240 -0
  113. data/test/dummy/config/initializers/inflections.rb +15 -0
  114. data/test/dummy/config/initializers/mime_types.rb +5 -0
  115. data/test/dummy/config/initializers/secret_token.rb +7 -0
  116. data/test/dummy/config/initializers/session_store.rb +8 -0
  117. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  118. data/test/dummy/config/locales/devise.en.yml +60 -0
  119. data/test/dummy/config/locales/en.yml +5 -0
  120. data/test/dummy/config/routes.rb +61 -0
  121. data/test/dummy/db/development.sqlite3 +0 -0
  122. data/test/dummy/db/migrate/20130128020557_devise_create_users.rb +46 -0
  123. data/test/dummy/db/schema.rb +34 -0
  124. data/test/dummy/log/development.log +42375 -0
  125. data/test/dummy/public/404.html +26 -0
  126. data/test/dummy/public/422.html +26 -0
  127. data/test/dummy/public/500.html +25 -0
  128. data/test/dummy/public/favicon.ico +0 -0
  129. data/test/dummy/script/rails +6 -0
  130. data/test/dummy/test/fixtures/users.yml +11 -0
  131. data/test/dummy/test/functional/test_controller_test.rb +9 -0
  132. data/test/dummy/test/unit/helpers/test_helper_test.rb +4 -0
  133. data/test/dummy/test/unit/user_test.rb +7 -0
  134. data/test/dummy/tmp/cache/assets/C3E/300/sprockets%2F2e344c0677be6b7212b140861750a434 +0 -0
  135. data/test/dummy/tmp/cache/assets/C51/500/sprockets%2F54522a51515e196c0ea74c652393948d +0 -0
  136. data/test/dummy/tmp/cache/assets/C63/420/sprockets%2F5daa64d9601a1dd14726112003d08364 +0 -0
  137. data/test/dummy/tmp/cache/assets/C79/BC0/sprockets%2F4285c677a500a056b055c187bd551e66 +0 -0
  138. data/test/dummy/tmp/cache/assets/C7F/310/sprockets%2F90949831299d2c1b73a43a1442bed906 +0 -0
  139. data/test/dummy/tmp/cache/assets/C82/E50/sprockets%2F183827018621a62ba5ff81fd772276c5 +0 -0
  140. data/test/dummy/tmp/cache/assets/C89/360/sprockets%2Fbcd93c6868260f0834225e8c57034b59 +0 -0
  141. data/test/dummy/tmp/cache/assets/C9F/670/sprockets%2Fa5133a772163e7f1321877bca922d31a +0 -0
  142. data/test/dummy/tmp/cache/assets/CA4/C80/sprockets%2F1d8eb08550b4245a12704ccb9f068274 +0 -0
  143. data/test/dummy/tmp/cache/assets/CB1/E50/sprockets%2F28c397f922d0af81b393fbf206056462 +0 -0
  144. data/test/dummy/tmp/cache/assets/CC9/FB0/sprockets%2F19690891f5b6cc724835fb913fe779e0 +0 -0
  145. data/test/dummy/tmp/cache/assets/CD4/D10/sprockets%2F6143a55e947c5d1d36b647ba5222d31c +0 -0
  146. data/test/dummy/tmp/cache/assets/CD6/D30/sprockets%2F2237e207a9f1ae1e983e15a0f1b99132 +0 -0
  147. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  148. data/test/dummy/tmp/cache/assets/CD9/1E0/sprockets%2F293460f7bea2aea456231b769212f36f +0 -0
  149. data/test/dummy/tmp/cache/assets/CDD/A30/sprockets%2Fcd69a2143c13a93e76db54ed63422908 +0 -0
  150. data/test/dummy/tmp/cache/assets/CDE/4F0/sprockets%2F8ee5b8c8107426b362b54e84be04063e +0 -0
  151. data/test/dummy/tmp/cache/assets/CDE/930/sprockets%2Fc8ab20177199ce39d3c2570d7111e59c +0 -0
  152. data/test/dummy/tmp/cache/assets/CDE/CF0/sprockets%2F7bf6411e56a335b96e439a238b4da462 +0 -0
  153. data/test/dummy/tmp/cache/assets/CE0/7A0/sprockets%2F021578f8253d2eedd55bd063684dd334 +0 -0
  154. data/test/dummy/tmp/cache/assets/CE3/050/sprockets%2Fce67f45bf13e27654e882270b21463ec +0 -0
  155. data/test/dummy/tmp/cache/assets/CEA/A80/sprockets%2F4a745d213d993e1185d55e26c68deb74 +0 -0
  156. data/test/dummy/tmp/cache/assets/CEF/500/sprockets%2F0d17117bfaf665390bbb203530ce01d2 +0 -0
  157. data/test/dummy/tmp/cache/assets/CF1/C60/sprockets%2Fb888b526e547356dbf4f16835d8a2f34 +0 -0
  158. data/test/dummy/tmp/cache/assets/CF7/A10/sprockets%2F2e3a5af78ce42be8252314603b6c00b1 +0 -0
  159. data/test/dummy/tmp/cache/assets/CF9/2A0/sprockets%2F99d62669bd0b471738e99e43ae564ef1 +0 -0
  160. data/test/dummy/tmp/cache/assets/D04/8E0/sprockets%2F33617ca614d80c0cfe33277e05a5f35d +0 -0
  161. data/test/dummy/tmp/cache/assets/D0E/2B0/sprockets%2F859557e033595cf5b9eb2e73330bba0a +0 -0
  162. data/test/dummy/tmp/cache/assets/D15/9D0/sprockets%2F270af34895cfd4b388c9aad55e043464 +0 -0
  163. data/test/dummy/tmp/cache/assets/D15/D20/sprockets%2F952bcc41195db55c99be6c93f40b7513 +0 -0
  164. data/test/dummy/tmp/cache/assets/D16/860/sprockets%2Fb45890d98668c132fee5cae4b15320d9 +0 -0
  165. data/test/dummy/tmp/cache/assets/D19/EF0/sprockets%2F895b6d0967c1205395e5b9a6bd56a4dc +0 -0
  166. data/test/dummy/tmp/cache/assets/D1A/C00/sprockets%2F9599a6464c5dac7fd6093f1a46fb0444 +0 -0
  167. data/test/dummy/tmp/cache/assets/D25/5A0/sprockets%2Fbf2f92c27945d0f2897f94e546346cda +0 -0
  168. data/test/dummy/tmp/cache/assets/D2B/E00/sprockets%2Febafd146d810419e351347cae0001ed8 +0 -0
  169. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  170. data/test/dummy/tmp/cache/assets/D3A/F20/sprockets%2F04a7fb58c68be319d3f3b5c7f14200d6 +0 -0
  171. data/test/dummy/tmp/cache/assets/D3B/440/sprockets%2F9d61f7f02a3a5dab16a07f463d95563c +0 -0
  172. data/test/dummy/tmp/cache/assets/D3D/C40/sprockets%2F427a390419acfd9b1dbf265e6e6f3430 +0 -0
  173. data/test/dummy/tmp/cache/assets/D3E/210/sprockets%2F6ad484a0d5fd94a6970ca33e2cc15297 +0 -0
  174. data/test/dummy/tmp/cache/assets/D3E/300/sprockets%2F66271e5e0e2a7aa2937ba5d8e4a2962f +0 -0
  175. data/test/dummy/tmp/cache/assets/D3F/CB0/sprockets%2Fc58312cf90fc5e15d416de5bd74e9411 +0 -0
  176. data/test/dummy/tmp/cache/assets/D42/9F0/sprockets%2F956410b8172fa4592bc3cbf5f71a6f5f +0 -0
  177. data/test/dummy/tmp/cache/assets/D43/B00/sprockets%2Ff724bee040039676a1aae696a8f06e7f +0 -0
  178. data/test/dummy/tmp/cache/assets/D45/930/sprockets%2F9593e26322d3ac909618faa6fc8cf50b +0 -0
  179. data/test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  180. data/test/dummy/tmp/cache/assets/D52/8C0/sprockets%2F24944cec626a1b59d98e9b46b7cd91e6 +0 -0
  181. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  182. data/test/dummy/tmp/cache/assets/D61/1C0/sprockets%2Fa159272faca84b51889c6ab0ca11c3d6 +0 -0
  183. data/test/dummy/tmp/cache/assets/D63/EA0/sprockets%2Ffc8a31fb16444bc623a7afd34b27f065 +0 -0
  184. data/test/dummy/tmp/cache/assets/D65/600/sprockets%2Fdaa0e3c217673cb0ebb89d97438a1b80 +0 -0
  185. data/test/dummy/tmp/cache/assets/D66/B00/sprockets%2Fa9c44b4284c7b601c36ba69562accfb4 +0 -0
  186. data/test/dummy/tmp/cache/assets/D68/7C0/sprockets%2F1866195f0d2b5f990a3a2131acdffdb7 +0 -0
  187. data/test/dummy/tmp/cache/assets/D6A/940/sprockets%2Ff12f9168fe02cef00d215dc87d5e7c11 +0 -0
  188. data/test/dummy/tmp/cache/assets/D70/530/sprockets%2Faa6133344adde2f6796dd06c2378f9ca +0 -0
  189. data/test/dummy/tmp/cache/assets/D71/D40/sprockets%2Fdf25d07e57783faca718d3355e12caf5 +0 -0
  190. data/test/dummy/tmp/cache/assets/D86/090/sprockets%2Faad76d1c0cd8f8a86962f721f999b09f +0 -0
  191. data/test/dummy/tmp/cache/assets/D8A/770/sprockets%2Fad6b282a5df70217f707adde40a0a17d +0 -0
  192. data/test/dummy/tmp/cache/assets/D90/440/sprockets%2F7fa7e142c264fa45fe720aa47b5b0dd2 +0 -0
  193. data/test/dummy/tmp/cache/assets/D97/250/sprockets%2F45bb8c0384f075aecc8dc2e5670ef0a2 +0 -0
  194. data/test/dummy/tmp/cache/assets/D9C/C10/sprockets%2F462dea729a9984d242ab7b6ace1fc0b6 +0 -0
  195. data/test/dummy/tmp/cache/assets/DA6/D40/sprockets%2Fa6d2c6c99e2fa333eb87ee7560ae941b +0 -0
  196. data/test/dummy/tmp/cache/assets/DAA/D20/sprockets%2F1df903901857cf4ceb8bee9d1ec42d68 +0 -0
  197. data/test/dummy/tmp/cache/assets/DAC/770/sprockets%2F473547f2b9f6b2bc6d0fa06f79af57fd +0 -0
  198. data/test/dummy/tmp/cache/assets/DB8/D70/sprockets%2F2aae8f796d8b8290c88e66fffb09c14e +0 -0
  199. data/test/dummy/tmp/cache/assets/DBC/2C0/sprockets%2Fb7023d141154daa082e2fceeaaf99ea4 +0 -0
  200. data/test/dummy/tmp/cache/assets/DC6/3A0/sprockets%2F692eb3cc77b2eeba07ab6c36295a6bd1 +0 -0
  201. data/test/dummy/tmp/cache/assets/DC7/F30/sprockets%2F6c6f0bca21e5a0e8f4b54d3de3f3a478 +0 -0
  202. data/test/dummy/tmp/cache/assets/DCA/AC0/sprockets%2F409ab48cd1b8b124e8f6e0b5cb3ff35f +0 -0
  203. data/test/dummy/tmp/cache/assets/DCD/210/sprockets%2Fff66c21af8a114cfaa477375cfbe6e51 +0 -0
  204. data/test/dummy/tmp/cache/assets/DCF/360/sprockets%2F60babcedd5e76636d61b5849d3cc7c0d +0 -0
  205. data/test/dummy/tmp/cache/assets/DDA/5A0/sprockets%2Feffe9d8758c34ac5b08d5ab37107e6de +0 -0
  206. data/test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  207. data/test/dummy/tmp/cache/assets/DDC/A10/sprockets%2Faac7e62fb8f54520e0fd8fdace647877 +0 -0
  208. data/test/dummy/tmp/cache/assets/DDF/9F0/sprockets%2Fe4c64d625c9988fc2ecc7fb0c6196bdc +0 -0
  209. data/test/dummy/tmp/cache/assets/DFB/510/sprockets%2Fbaa9a5abc4aeafa76fa6076c476b5099 +0 -0
  210. data/test/dummy/tmp/cache/assets/DFE/1E0/sprockets%2Fafc6a7ac607cdccf69b2f41c81462c9d +0 -0
  211. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  212. data/test/dummy/tmp/cache/assets/E20/550/sprockets%2Fe1b1ce6c37d22bb088bb09c6eddfa51d +0 -0
  213. data/test/dummy/tmp/cache/assets/E7B/7F0/sprockets%2Fb5adae1ffa3fd56d153fea3a52aaff23 +0 -0
  214. data/test/integration/navigation_test.rb +10 -0
  215. data/test/rails-bootstrap-engine_test.rb +7 -0
  216. data/test/test_helper.rb +15 -0
  217. metadata +423 -0
@@ -0,0 +1,289 @@
1
+ !function ($) {
2
+ "use strict";
3
+ // version: 2.8.2
4
+ // by Mattia Larentis - follow me on twitter! @SpiritualGuru
5
+
6
+ var addToAttribute = function (obj, array, value) {
7
+ var i = 0
8
+ , length = array.length;
9
+
10
+ for (; i < length; i++) {
11
+ obj = obj[array[i]] = obj[array[i]] || i == ( length - 1) ? value : {}
12
+ }
13
+ };
14
+
15
+ $.fn.toggleButtons = function (method) {
16
+ var $element
17
+ , $div
18
+ , $cb
19
+ , transitionSpeed = 0.05
20
+ , methods = {
21
+ init: function (opt) {
22
+ this.each(function () {
23
+ var $spanLeft
24
+ , $spanRight
25
+ , options
26
+ , moving
27
+ , dataAttribute = {};
28
+
29
+ $element = $(this);
30
+ $element.addClass('toggle-button');
31
+
32
+ $.each($element.data(), function (i, el) {
33
+ var key
34
+ , tmp = {};
35
+
36
+ if (i.indexOf("togglebutton") === 0) {
37
+ key = i.match(/[A-Z][a-z]+/g);
38
+ key = $.map(key, function (n) {
39
+ return (n.toLowerCase());
40
+ });
41
+
42
+ addToAttribute(tmp, key, el);
43
+ dataAttribute = $.extend(true, dataAttribute, tmp);
44
+ }
45
+ });
46
+
47
+ options = $.extend(true, {}, $.fn.toggleButtons.defaults, opt, dataAttribute);
48
+
49
+ $(this).data('options', options);
50
+
51
+ $spanLeft = $('<span></span>').addClass("labelLeft").text(options.label.enabled === undefined ? "ON" : options.label.enabled);
52
+ $spanRight = $('<span></span>').addClass("labelRight").text(options.label.disabled === undefined ? "OFF " : options.label.disabled);
53
+
54
+ // html layout
55
+ $cb = $element.find('input:checkbox')
56
+
57
+ $div = $cb.wrap($('<div></div>')).parent();
58
+ $div.append($spanLeft);
59
+ $div.append($('<label></label>').attr('for', $cb.attr('id') || ''));
60
+ $div.append($spanRight);
61
+
62
+ if ($cb.is(':checked'))
63
+ $element.find('>div').css('left', "0");
64
+ else $element.find('>div').css('left', "-50%");
65
+
66
+ if (options.animated) {
67
+ if (options.transitionspeed !== undefined)
68
+ if (/^(\d*%$)/.test(options.transitionspeed)) // is a percent value?
69
+ transitionSpeed = 0.05 * parseInt(options.transitionspeed) / 100;
70
+ else
71
+ transitionSpeed = options.transitionspeed;
72
+ }
73
+ else transitionSpeed = 0;
74
+
75
+ $(this).data('transitionSpeed', transitionSpeed * 1000);
76
+
77
+
78
+ options["width"] /= 2;
79
+
80
+ // width of the bootstrap-toggle-button
81
+ $element
82
+ .css('width', options.width * 2)
83
+ .find('>div').css('width', options.width * 3)
84
+ .find('>span, >label').css('width', options.width);
85
+
86
+ // height of the bootstrap-toggle-button
87
+ $element
88
+ .css('height', options.height)
89
+ .find('span, label')
90
+ .css('height', options.height)
91
+ .filter('span')
92
+ .css('line-height', options.height + "px");
93
+
94
+ if ($cb.is(':disabled'))
95
+ $(this).addClass('deactivate');
96
+
97
+ $element.find('span').css(options.font);
98
+
99
+
100
+ // enabled custom color
101
+ if (options.style.enabled === undefined) {
102
+ if (options.style.custom !== undefined && options.style.custom.enabled !== undefined && options.style.custom.enabled.background !== undefined) {
103
+ $spanLeft.css('color', options.style.custom.enabled.color);
104
+ if (options.style.custom.enabled.gradient === undefined)
105
+ $spanLeft.css('background', options.style.custom.enabled.background);
106
+ else $.each(["-webkit-", "-moz-", "-o-", ""], function (i, el) {
107
+ $spanLeft.css('background-color', options.style.custom.enabled.background);
108
+ $spanLeft.css('background-image', el + 'linear-gradient(top, ' + options.style.custom.enabled.background + ',' + options.style.custom.enabled.gradient + ')');
109
+ });
110
+ }
111
+ }
112
+ else $spanLeft.addClass(options.style.enabled);
113
+
114
+ // disabled custom color
115
+ if (options.style.disabled === undefined) {
116
+ if (options.style.custom !== undefined && options.style.custom.disabled !== undefined && options.style.custom.disabled.background !== undefined) {
117
+ $spanRight.css('color', options.style.custom.disabled.color);
118
+ if (options.style.custom.disabled.gradient === undefined)
119
+ $spanRight.css('background', options.style.custom.disabled.background);
120
+ else $.each(["-webkit-", "-moz-", "-o-", ""], function (i, el) {
121
+ $spanRight.css('background-color', options.style.custom.disabled.background);
122
+ $spanRight.css('background-image', el + 'linear-gradient(top, ' + options.style.custom.disabled.background + ',' + options.style.custom.disabled.gradient + ')');
123
+ });
124
+ }
125
+ }
126
+ else $spanRight.addClass(options.style.disabled);
127
+
128
+ var changeStatus = function ($this) {
129
+ $this.siblings('label')
130
+ .trigger('mousedown')
131
+ .trigger('mouseup')
132
+ .trigger('click');
133
+ };
134
+
135
+ $spanLeft.on('click', function (e) {
136
+ changeStatus($(this));
137
+ });
138
+ $spanRight.on('click', function (e) {
139
+ changeStatus($(this));
140
+ });
141
+
142
+ $element.find('input:checkbox').on('change', function (e, skipOnChange) {
143
+ var $element = $(this).parent()
144
+ , active = $(this).is(':checked')
145
+ , $toggleButton = $(this).closest('.toggle-button');
146
+
147
+ $element.stop().animate({'left': active ? '0' : '-50%'}, $toggleButton.data('transitionSpeed'));
148
+
149
+ options = $toggleButton.data('options');
150
+
151
+ if (!skipOnChange)
152
+ options.onChange($element, active, e);
153
+ });
154
+
155
+ $element.find('label').on('mousedown touchstart', function (e) {
156
+ moving = false;
157
+ e.preventDefault();
158
+ e.stopImmediatePropagation();
159
+
160
+ if ($(this).closest('.toggle-button').is('.deactivate'))
161
+ $(this).off('click');
162
+ else {
163
+ $(this).on('mousemove touchmove', function (e) {
164
+ var $element = $(this).closest('.toggle-button')
165
+ , relativeX = (e.pageX || e.originalEvent.targetTouches[0].pageX) - $element.offset().left
166
+ , percent = ((relativeX / (options.width * 2)) * 100);
167
+ moving = true;
168
+
169
+ e.stopImmediatePropagation();
170
+ e.preventDefault();
171
+
172
+ if (percent < 25)
173
+ percent = 25;
174
+ else if (percent > 75)
175
+ percent = 75;
176
+
177
+ $element.find('>div').css('left', (percent - 75) + "%");
178
+ });
179
+
180
+ $(this).on('click touchend', function (e) {
181
+ var $target = $(e.target)
182
+ , $myCheckBox = $target.siblings('input:checkbox');
183
+
184
+ e.stopImmediatePropagation();
185
+ e.preventDefault();
186
+ $(this).off('mouseleave');
187
+
188
+ if (moving)
189
+ if (parseInt($(this).parent().css('left')) < -25)
190
+ $myCheckBox.attr('checked', false);
191
+ else $myCheckBox.attr('checked', true);
192
+ else $myCheckBox.attr("checked", !$myCheckBox.is(":checked"));
193
+
194
+ $myCheckBox.trigger('change');
195
+ });
196
+
197
+ $(this).on('mouseleave', function (e) {
198
+ var $myCheckBox = $(this).siblings('input:checkbox');
199
+
200
+ e.preventDefault();
201
+ e.stopImmediatePropagation();
202
+
203
+ $(this).off('mouseleave');
204
+ $(this).trigger('mouseup');
205
+
206
+ if (parseInt($(this).parent().css('left')) < -25)
207
+ $myCheckBox.attr('checked', false);
208
+ else $myCheckBox.attr('checked', true);
209
+
210
+ $myCheckBox.trigger('change');
211
+ });
212
+
213
+ $(this).on('mouseup', function (e) {
214
+ e.stopImmediatePropagation();
215
+ e.preventDefault();
216
+ $(this).off('mousemove');
217
+ });
218
+ }
219
+ });
220
+ }
221
+ );
222
+ return this;
223
+ },
224
+ toggleActivation: function () {
225
+ $(this).toggleClass('deactivate');
226
+ },
227
+ toggleState: function (skipOnChange) {
228
+ var $input = $(this).find('input:checkbox');
229
+ $input.attr('checked', !$input.is(':checked')).trigger('change', skipOnChange);
230
+ },
231
+ setState: function(value, skipOnChange) {
232
+ $(this).find('input:checkbox').attr('checked', value).trigger('change', skipOnChange);
233
+ },
234
+ status: function () {
235
+ return $(this).find('input:checkbox').is(':checked');
236
+ },
237
+ destroy: function () {
238
+ var $div = $(this).find('div')
239
+ , $checkbox;
240
+
241
+ $div.find(':not(input:checkbox)').remove();
242
+
243
+ $checkbox = $div.children();
244
+ $checkbox.unwrap().unwrap();
245
+
246
+ $checkbox.unbind('change');
247
+
248
+ return $checkbox;
249
+ }
250
+ };
251
+
252
+ if (methods[method])
253
+ return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
254
+ else if (typeof method === 'object' || !method)
255
+ return methods.init.apply(this, arguments);
256
+ else
257
+ $.error('Method ' + method + ' does not exist!');
258
+ };
259
+
260
+ $.fn.toggleButtons.defaults = {
261
+ onChange: function () {
262
+ },
263
+ width: 100,
264
+ height: 25,
265
+ font: {},
266
+ animated: true,
267
+ transitionspeed: undefined,
268
+ label: {
269
+ enabled: undefined,
270
+ disabled: undefined
271
+ },
272
+ style: {
273
+ enabled: undefined,
274
+ disabled: undefined,
275
+ custom: {
276
+ enabled: {
277
+ background: undefined,
278
+ gradient: undefined,
279
+ color: "#FFFFFF"
280
+ },
281
+ disabled: {
282
+ background: undefined,
283
+ gradient: undefined,
284
+ color: "#FFFFFF"
285
+ }
286
+ }
287
+ }
288
+ };
289
+ }(jQuery);
@@ -0,0 +1,17 @@
1
+ // This is a manifest file that'll be compiled into application.js, which will include all the files
2
+ // listed below.
3
+ //
4
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
+ // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6
+ //
7
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
+ // the compiled file.
9
+ //
10
+ // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
11
+ // GO AFTER THE REQUIRES BELOW.
12
+ //
13
+ //= require_self
14
+ //= require bootstrap
15
+ //= require_tree ./plugins
16
+ //= require behaviors
17
+ //= require_tree .
@@ -0,0 +1,95 @@
1
+ /* Jumbotrons
2
+ -------------------------------------------------- */
3
+
4
+ /* Base class
5
+ ------------------------- */
6
+ .jumbotron {
7
+ position: relative;
8
+ padding: 40px 0;
9
+ color: #fff;
10
+ text-align: center;
11
+ text-shadow: 0 1px 3px rgba(0,0,0,.4), 0 0 30px rgba(0,0,0,.075);
12
+ background: #020031; /* Old browsers */
13
+ background: -moz-linear-gradient(45deg, #020031 0%, #6d3353 100%); /* FF3.6+ */
14
+ background: -webkit-gradient(linear, left bottom, right top, color-stop(0%,#020031), color-stop(100%,#6d3353)); /* Chrome,Safari4+ */
15
+ background: -webkit-linear-gradient(45deg, #020031 0%,#6d3353 100%); /* Chrome10+,Safari5.1+ */
16
+ background: -o-linear-gradient(45deg, #020031 0%,#6d3353 100%); /* Opera 11.10+ */
17
+ background: -ms-linear-gradient(45deg, #020031 0%,#6d3353 100%); /* IE10+ */
18
+ background: linear-gradient(45deg, #020031 0%,#6d3353 100%); /* W3C */
19
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#020031', endColorstr='#6d3353',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
20
+ -webkit-box-shadow: inset 0 3px 7px rgba(0,0,0,.2), inset 0 -3px 7px rgba(0,0,0,.2);
21
+ -moz-box-shadow: inset 0 3px 7px rgba(0,0,0,.2), inset 0 -3px 7px rgba(0,0,0,.2);
22
+ box-shadow: inset 0 3px 7px rgba(0,0,0,.2), inset 0 -3px 7px rgba(0,0,0,.2);
23
+ }
24
+ .jumbotron h1,
25
+ .jumbotron h2,
26
+ .jumbotron h3,
27
+ .jumbotron h4 {
28
+ font-weight: bold;
29
+ letter-spacing: -1px;
30
+ line-height: 1;
31
+ }
32
+
33
+ .jumbotron h1 {
34
+ font-size: 5em;
35
+ }
36
+
37
+ .jumbotron h2 {
38
+ font-size: 4em;
39
+ }
40
+
41
+ .jumbotron h3 {
42
+ font-size: 3em;
43
+ }
44
+
45
+ .jumbotron h4 {
46
+ font-size: 2em;
47
+ }
48
+
49
+ .jumbotron p {
50
+ font-size: 1.4em;
51
+ font-weight: 300;
52
+ line-height: 1.25;
53
+ margin-bottom: 30px;
54
+ }
55
+
56
+ /* Link styles (used on .masthead-links as well) */
57
+ .jumbotron a {
58
+ color: #fff;
59
+ color: rgba(255,255,255,.5);
60
+ -webkit-transition: all .2s ease-in-out;
61
+ -moz-transition: all .2s ease-in-out;
62
+ transition: all .2s ease-in-out;
63
+ }
64
+ .jumbotron a:hover {
65
+ color: #fff;
66
+ text-shadow: 0 0 10px rgba(255,255,255,.25);
67
+ }
68
+
69
+ /* Download button */
70
+ .masthead .btn {
71
+ padding: 19px 24px;
72
+ font-size: 24px;
73
+ font-weight: 200;
74
+ color: #fff; /* redeclare to override the `.jumbotron a` */
75
+ border: 0;
76
+ -webkit-border-radius: 6px;
77
+ -moz-border-radius: 6px;
78
+ border-radius: 6px;
79
+ -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 5px rgba(0,0,0,.25);
80
+ -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 5px rgba(0,0,0,.25);
81
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 5px rgba(0,0,0,.25);
82
+ -webkit-transition: none;
83
+ -moz-transition: none;
84
+ transition: none;
85
+ }
86
+ .masthead .btn:hover {
87
+ -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 5px rgba(0,0,0,.25);
88
+ -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 5px rgba(0,0,0,.25);
89
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 5px rgba(0,0,0,.25);
90
+ }
91
+ .masthead .btn:active {
92
+ -webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.1);
93
+ -moz-box-shadow: inset 0 2px 4px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.1);
94
+ box-shadow: inset 0 2px 4px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.1);
95
+ }
@@ -0,0 +1,155 @@
1
+ /* line 11, ../sass/bootstrap-toggle-buttons.scss */
2
+ .toggle-button {
3
+ display: inline-block;
4
+ cursor: pointer;
5
+ -webkit-border-radius: 5px;
6
+ -moz-border-radius: 5px;
7
+ -ms-border-radius: 5px;
8
+ -o-border-radius: 5px;
9
+ border-radius: 5px;
10
+ border: 1px solid;
11
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
12
+ position: relative;
13
+ text-align: left;
14
+ overflow: hidden;
15
+ -webkit-touch-callout: none;
16
+ -webkit-user-select: none;
17
+ -khtml-user-select: none;
18
+ -moz-user-select: none;
19
+ -ms-user-select: none;
20
+ user-select: none;
21
+ }
22
+ /* line 29, ../sass/bootstrap-toggle-buttons.scss */
23
+ .toggle-button.deactivate {
24
+ filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
25
+ opacity: 0.5;
26
+ cursor: default !important;
27
+ }
28
+ /* line 32, ../sass/bootstrap-toggle-buttons.scss */
29
+ .toggle-button.deactivate label, .toggle-button.deactivate span {
30
+ cursor: default !important;
31
+ }
32
+ /* line 36, ../sass/bootstrap-toggle-buttons.scss */
33
+ .toggle-button > div {
34
+ display: inline-block;
35
+ width: 150px;
36
+ position: absolute;
37
+ top: 0;
38
+ }
39
+ /* line 41, ../sass/bootstrap-toggle-buttons.scss */
40
+ .toggle-button > div.disabled {
41
+ left: -50%;
42
+ }
43
+ /* line 45, ../sass/bootstrap-toggle-buttons.scss */
44
+ .toggle-button input[type=checkbox] {
45
+ display: none;
46
+ }
47
+ /* line 53, ../sass/bootstrap-toggle-buttons.scss */
48
+ .toggle-button span, .toggle-button label {
49
+ cursor: pointer;
50
+ position: relative;
51
+ float: left;
52
+ display: inline-block;
53
+ }
54
+ /* line 60, ../sass/bootstrap-toggle-buttons.scss */
55
+ .toggle-button label {
56
+ background: #fefefe;
57
+ margin-left: -4px;
58
+ margin-right: -4px;
59
+ border: 1px solid #E6E6E6;
60
+ margin-top: -1px;
61
+ z-index: 100;
62
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fefefe), color-stop(100%, #e6e6e6));
63
+ background-image: -webkit-linear-gradient(top, #fefefe, #e6e6e6);
64
+ background-image: -moz-linear-gradient(top, #fefefe, #e6e6e6);
65
+ background-image: -o-linear-gradient(top, #fefefe, #e6e6e6);
66
+ background-image: linear-gradient(top, #fefefe, #e6e6e6);
67
+ -webkit-border-radius: 4px;
68
+ -moz-border-radius: 4px;
69
+ -ms-border-radius: 4px;
70
+ -o-border-radius: 4px;
71
+ border-radius: 4px;
72
+ }
73
+ /* line 72, ../sass/bootstrap-toggle-buttons.scss */
74
+ .toggle-button span {
75
+ color: #fefefe;
76
+ text-align: center;
77
+ font-weight: bold;
78
+ z-index: 1;
79
+ }
80
+ /* line 78, ../sass/bootstrap-toggle-buttons.scss */
81
+ .toggle-button span.labelLeft {
82
+ -moz-border-radius-topleft: 4px;
83
+ -webkit-border-top-left-radius: 4px;
84
+ border-top-left-radius: 4px;
85
+ -moz-border-radius-bottomleft: 4px;
86
+ -webkit-border-bottom-left-radius: 4px;
87
+ border-bottom-left-radius: 4px;
88
+ padding-left: 3px;
89
+ }
90
+ /* line 83, ../sass/bootstrap-toggle-buttons.scss */
91
+ .toggle-button span.labelRight {
92
+ -moz-border-radius-topright: 4px;
93
+ -webkit-border-top-right-radius: 4px;
94
+ border-top-right-radius: 4px;
95
+ -moz-border-radius-bottomright: 4px;
96
+ -webkit-border-bottom-right-radius: 4px;
97
+ border-bottom-right-radius: 4px;
98
+ color: black;
99
+ background-image: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0%, #fefefe), color-stop(100%, #e6e6e6));
100
+ background-image: -webkit-linear-gradient(bottom, #fefefe, #e6e6e6);
101
+ background-image: -moz-linear-gradient(bottom, #fefefe, #e6e6e6);
102
+ background-image: -o-linear-gradient(bottom, #fefefe, #e6e6e6);
103
+ background-image: linear-gradient(bottom, #fefefe, #e6e6e6);
104
+ padding-right: 3px;
105
+ }
106
+ /* line 91, ../sass/bootstrap-toggle-buttons.scss */
107
+ .toggle-button span.primary, .toggle-button span.labelLeft {
108
+ color: #fefefe;
109
+ background: #0088cc;
110
+ background-image: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0%, #0088cc), color-stop(100%, #0055cc));
111
+ background-image: -webkit-linear-gradient(bottom, #0088cc, #0055cc);
112
+ background-image: -moz-linear-gradient(bottom, #0088cc, #0055cc);
113
+ background-image: -o-linear-gradient(bottom, #0088cc, #0055cc);
114
+ background-image: linear-gradient(bottom, #0088cc, #0055cc);
115
+ }
116
+ /* line 96, ../sass/bootstrap-toggle-buttons.scss */
117
+ .toggle-button span.info {
118
+ color: #fefefe;
119
+ background: #5bc0de;
120
+ background-image: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0%, #5bc0de), color-stop(100%, #2f96b4));
121
+ background-image: -webkit-linear-gradient(bottom, #5bc0de, #2f96b4);
122
+ background-image: -moz-linear-gradient(bottom, #5bc0de, #2f96b4);
123
+ background-image: -o-linear-gradient(bottom, #5bc0de, #2f96b4);
124
+ background-image: linear-gradient(bottom, #5bc0de, #2f96b4);
125
+ }
126
+ /* line 102, ../sass/bootstrap-toggle-buttons.scss */
127
+ .toggle-button span.success {
128
+ color: #fefefe;
129
+ background: #62c462;
130
+ background-image: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0%, #62c462), color-stop(100%, #51a351));
131
+ background-image: -webkit-linear-gradient(bottom, #62c462, #51a351);
132
+ background-image: -moz-linear-gradient(bottom, #62c462, #51a351);
133
+ background-image: -o-linear-gradient(bottom, #62c462, #51a351);
134
+ background-image: linear-gradient(bottom, #62c462, #51a351);
135
+ }
136
+ /* line 108, ../sass/bootstrap-toggle-buttons.scss */
137
+ .toggle-button span.warning {
138
+ color: #fefefe;
139
+ background: #dbb450;
140
+ background-image: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0%, #dbb450), color-stop(100%, #f89406));
141
+ background-image: -webkit-linear-gradient(bottom, #dbb450, #f89406);
142
+ background-image: -moz-linear-gradient(bottom, #dbb450, #f89406);
143
+ background-image: -o-linear-gradient(bottom, #dbb450, #f89406);
144
+ background-image: linear-gradient(bottom, #dbb450, #f89406);
145
+ }
146
+ /* line 114, ../sass/bootstrap-toggle-buttons.scss */
147
+ .toggle-button span.danger {
148
+ color: #fefefe;
149
+ background: #ee5f5b;
150
+ background-image: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0%, #ee5f5b), color-stop(100%, #bd362f));
151
+ background-image: -webkit-linear-gradient(bottom, #ee5f5b, #bd362f);
152
+ background-image: -moz-linear-gradient(bottom, #ee5f5b, #bd362f);
153
+ background-image: -o-linear-gradient(bottom, #ee5f5b, #bd362f);
154
+ background-image: linear-gradient(bottom, #ee5f5b, #bd362f);
155
+ }