optimacms_options 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (207) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/Rakefile +37 -0
  4. data/app/assets/javascripts/optimacms_options/application.js +13 -0
  5. data/app/assets/stylesheets/optimacms_options/application.css +15 -0
  6. data/app/controllers/optimacms_options/admin/options_controller.rb +161 -0
  7. data/app/helpers/optimacms_options/application_helper.rb +4 -0
  8. data/app/helpers/optimacms_options/filter_helper.rb +17 -0
  9. data/app/views/layouts/optimacms_options/application.html.erb +14 -0
  10. data/app/views/optimacms_options/admin/options/_form.html.haml +16 -0
  11. data/app/views/optimacms_options/admin/options/edit.html.haml +3 -0
  12. data/app/views/optimacms_options/admin/options/index.html.haml +41 -0
  13. data/app/views/optimacms_options/admin/options/new.html.haml +3 -0
  14. data/config/routes.rb +16 -0
  15. data/db/migrate/20160125141700_optimacms_options.rb +16 -0
  16. data/lib/optimacms/admin_menu/admin_menu.rb +22 -0
  17. data/lib/optimacms_options.rb +6 -0
  18. data/lib/optimacms_options/engine.rb +38 -0
  19. data/lib/optimacms_options/version.rb +3 -0
  20. data/lib/tasks/optimacms_options_tasks.rake +4 -0
  21. data/spec/dummy/README.rdoc +28 -0
  22. data/spec/dummy/Rakefile +6 -0
  23. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  24. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  25. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  26. data/spec/dummy/app/controllers/debug_controller.rb +38 -0
  27. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  28. data/spec/dummy/app/models/concerns/option_concern.rb +11 -0
  29. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  30. data/spec/dummy/bin/bundle +3 -0
  31. data/spec/dummy/bin/rails +4 -0
  32. data/spec/dummy/bin/rake +4 -0
  33. data/spec/dummy/bin/setup +29 -0
  34. data/spec/dummy/config.ru +4 -0
  35. data/spec/dummy/config/application.rb +36 -0
  36. data/spec/dummy/config/boot.rb +5 -0
  37. data/spec/dummy/config/database.yml +43 -0
  38. data/spec/dummy/config/environment.rb +5 -0
  39. data/spec/dummy/config/environments/development.rb +41 -0
  40. data/spec/dummy/config/environments/production.rb +79 -0
  41. data/spec/dummy/config/environments/test.rb +42 -0
  42. data/spec/dummy/config/initializers/assets.rb +11 -0
  43. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  44. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  45. data/spec/dummy/config/initializers/devise.rb +265 -0
  46. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  47. data/spec/dummy/config/initializers/inflections.rb +16 -0
  48. data/spec/dummy/config/initializers/kaminari_config.rb +10 -0
  49. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  50. data/spec/dummy/config/initializers/optimacms.rb +1 -0
  51. data/spec/dummy/config/initializers/redis.rb +1 -0
  52. data/spec/dummy/config/initializers/session_store.rb +3 -0
  53. data/spec/dummy/config/initializers/simple_form.rb +166 -0
  54. data/spec/dummy/config/initializers/simple_form_bootstrap.rb +136 -0
  55. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  56. data/spec/dummy/config/locales/devise.en.yml +62 -0
  57. data/spec/dummy/config/locales/en.yml +23 -0
  58. data/spec/dummy/config/routes.rb +18 -0
  59. data/spec/dummy/config/secrets.yml +25 -0
  60. data/spec/dummy/db/schema.rb +370 -0
  61. data/spec/dummy/lib/optimacms/admin_menu/admin_menu.rb +22 -0
  62. data/spec/dummy/log/development.log +25351 -0
  63. data/spec/dummy/public/404.html +67 -0
  64. data/spec/dummy/public/422.html +67 -0
  65. data/spec/dummy/public/500.html +66 -0
  66. data/spec/dummy/public/favicon.ico +0 -0
  67. data/spec/dummy/tmp/cache/assets/development/sass/0f12a102a4bba8b53f7db8d616f88ab567fc0720/noskin.css.scssc +0 -0
  68. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_alerts.scssc +0 -0
  69. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_background-variant.scssc +0 -0
  70. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_border-radius.scssc +0 -0
  71. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_buttons.scssc +0 -0
  72. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_center-block.scssc +0 -0
  73. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_clearfix.scssc +0 -0
  74. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_forms.scssc +0 -0
  75. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_gradients.scssc +0 -0
  76. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_grid-framework.scssc +0 -0
  77. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_grid.scssc +0 -0
  78. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_hide-text.scssc +0 -0
  79. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_image.scssc +0 -0
  80. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_labels.scssc +0 -0
  81. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_list-group.scssc +0 -0
  82. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_nav-divider.scssc +0 -0
  83. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_nav-vertical-align.scssc +0 -0
  84. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_opacity.scssc +0 -0
  85. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_pagination.scssc +0 -0
  86. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_panels.scssc +0 -0
  87. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_progress-bar.scssc +0 -0
  88. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_reset-filter.scssc +0 -0
  89. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_resize.scssc +0 -0
  90. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_responsive-visibility.scssc +0 -0
  91. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_size.scssc +0 -0
  92. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_tab-focus.scssc +0 -0
  93. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_table-row.scssc +0 -0
  94. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_text-emphasis.scssc +0 -0
  95. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_text-overflow.scssc +0 -0
  96. data/spec/dummy/tmp/cache/assets/development/sass/293d01383adf05713dc18bacb5a9a343378f4535/_vendor-prefixes.scssc +0 -0
  97. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/admin.css.scssc +0 -0
  98. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/admin_tpl.css.scssc +0 -0
  99. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/bootstrap_and_overrides.css.scssc +0 -0
  100. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/bootstrap_custom.css.scssc +0 -0
  101. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/bootstrap_variables.css.scssc +0 -0
  102. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/colors.css.scssc +0 -0
  103. data/spec/dummy/tmp/cache/assets/development/sass/33f0f974eb769f0d4055060ebcabbf726b288716/tpl.css.scssc +0 -0
  104. data/spec/dummy/tmp/cache/assets/development/sass/52b23612dd848efe2ce31660b0d0dcbe37548061/noskin.css.scssc +0 -0
  105. data/spec/dummy/tmp/cache/assets/development/sass/6c0ced6e44f3225624dc509e06df3341be8ba4b1/font-awesome.css.erbc +0 -0
  106. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_alerts.scssc +0 -0
  107. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_badges.scssc +0 -0
  108. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_breadcrumbs.scssc +0 -0
  109. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_button-groups.scssc +0 -0
  110. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_buttons.scssc +0 -0
  111. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_carousel.scssc +0 -0
  112. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_close.scssc +0 -0
  113. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_code.scssc +0 -0
  114. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_component-animations.scssc +0 -0
  115. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_dropdowns.scssc +0 -0
  116. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_forms.scssc +0 -0
  117. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_glyphicons.scssc +0 -0
  118. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_grid.scssc +0 -0
  119. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_input-groups.scssc +0 -0
  120. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_jumbotron.scssc +0 -0
  121. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_labels.scssc +0 -0
  122. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_list-group.scssc +0 -0
  123. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_media.scssc +0 -0
  124. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_mixins.scssc +0 -0
  125. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_modals.scssc +0 -0
  126. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_navbar.scssc +0 -0
  127. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_navs.scssc +0 -0
  128. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_normalize.scssc +0 -0
  129. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_pager.scssc +0 -0
  130. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_pagination.scssc +0 -0
  131. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_panels.scssc +0 -0
  132. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_popovers.scssc +0 -0
  133. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_print.scssc +0 -0
  134. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_progress-bars.scssc +0 -0
  135. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_responsive-embed.scssc +0 -0
  136. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_responsive-utilities.scssc +0 -0
  137. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_scaffolding.scssc +0 -0
  138. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_tables.scssc +0 -0
  139. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_thumbnails.scssc +0 -0
  140. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_tooltip.scssc +0 -0
  141. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_type.scssc +0 -0
  142. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_utilities.scssc +0 -0
  143. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_variables.scssc +0 -0
  144. data/spec/dummy/tmp/cache/assets/development/sass/96406c1d820ad99a0737a11d45b4ac20e9757a1e/_wells.scssc +0 -0
  145. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/admin.css.scssc +0 -0
  146. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/admin_tpl.css.scssc +0 -0
  147. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/bootstrap_and_overrides.css.scssc +0 -0
  148. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/bootstrap_custom.css.scssc +0 -0
  149. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/bootstrap_variables.css.scssc +0 -0
  150. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/colors.css.scssc +0 -0
  151. data/spec/dummy/tmp/cache/assets/development/sass/fb3dad0782c644b76f2da8b4421b37fd8f2d4525/tpl.css.scssc +0 -0
  152. data/spec/dummy/tmp/cache/assets/development/sprockets/0bf0600f6998e835549356c93ed88a44 +0 -0
  153. data/spec/dummy/tmp/cache/assets/development/sprockets/0ca733d61d616fcb5252b090f4ac46b2 +0 -0
  154. data/spec/dummy/tmp/cache/assets/development/sprockets/0e26c0deef0461318bea48023a51dad2 +0 -0
  155. data/spec/dummy/tmp/cache/assets/development/sprockets/153a6f84a946f4691146ab70fbb7468c +0 -0
  156. data/spec/dummy/tmp/cache/assets/development/sprockets/19017017a4b6618592356de2006c3ddc +0 -0
  157. data/spec/dummy/tmp/cache/assets/development/sprockets/28f6997fb7bde29ca790ef41c455167f +0 -0
  158. data/spec/dummy/tmp/cache/assets/development/sprockets/38143381b3424562ebae21c73cea3b09 +0 -0
  159. data/spec/dummy/tmp/cache/assets/development/sprockets/39e4dc69d3e009f933e32de8dc9b05bf +0 -0
  160. data/spec/dummy/tmp/cache/assets/development/sprockets/3c62e52b2b7812cd045e255b1f85cc7f +0 -0
  161. data/spec/dummy/tmp/cache/assets/development/sprockets/3c8c0e19b8ea320b3a18b69762d99773 +0 -0
  162. data/spec/dummy/tmp/cache/assets/development/sprockets/3ff3b20807100b014315d9e3ebbd3bbd +0 -0
  163. data/spec/dummy/tmp/cache/assets/development/sprockets/4ab0aecdac7c60de123d5a17dcba3751 +0 -0
  164. data/spec/dummy/tmp/cache/assets/development/sprockets/584227ac29a4981fa44f78cc0e91e6ab +0 -0
  165. data/spec/dummy/tmp/cache/assets/development/sprockets/5cfe8fa37eeec7d44b093550d0b3e14f +0 -0
  166. data/spec/dummy/tmp/cache/assets/development/sprockets/69c661f38eadf38f75ca9b2b83d71cb3 +0 -0
  167. data/spec/dummy/tmp/cache/assets/development/sprockets/6b82f713cf05c62df2b688e97cb162eb +0 -0
  168. data/spec/dummy/tmp/cache/assets/development/sprockets/7358083ee9425c6ccf3b5a266ff72f96 +0 -0
  169. data/spec/dummy/tmp/cache/assets/development/sprockets/73eaf8217025a9327591c3bdcdcc056e +0 -0
  170. data/spec/dummy/tmp/cache/assets/development/sprockets/7415648cb818482fe5f1ad10021d0586 +0 -0
  171. data/spec/dummy/tmp/cache/assets/development/sprockets/756f245b2a7516f484b40928b0e84452 +0 -0
  172. data/spec/dummy/tmp/cache/assets/development/sprockets/75f70b2a440425dc9bf19f6edb18fea7 +0 -0
  173. data/spec/dummy/tmp/cache/assets/development/sprockets/78fc4ca638e7834ef879b249ea5599d9 +0 -0
  174. data/spec/dummy/tmp/cache/assets/development/sprockets/80df25333a9293942f2f1a03d04d3662 +0 -0
  175. data/spec/dummy/tmp/cache/assets/development/sprockets/81e03d37c88eb087889e2ad9096c75d8 +0 -0
  176. data/spec/dummy/tmp/cache/assets/development/sprockets/86e9cfe4bb740cd9539f29aa7d6e77f3 +0 -0
  177. data/spec/dummy/tmp/cache/assets/development/sprockets/87b5d678a139c779af82f50975d19558 +0 -0
  178. data/spec/dummy/tmp/cache/assets/development/sprockets/8844c67dfba4a3ba3059a3bf8ecad189 +0 -0
  179. data/spec/dummy/tmp/cache/assets/development/sprockets/8ddf2da188373f0124d9ed387d7d1c40 +0 -0
  180. data/spec/dummy/tmp/cache/assets/development/sprockets/92b7eae87958c76aa1528f8e4e54bd51 +0 -0
  181. data/spec/dummy/tmp/cache/assets/development/sprockets/9520ce25409d2121e4f8836417bfdf0c +0 -0
  182. data/spec/dummy/tmp/cache/assets/development/sprockets/985159daf63d70b8e7f7c8f48360aee8 +0 -0
  183. data/spec/dummy/tmp/cache/assets/development/sprockets/99211371c628025a64c31560c4672db6 +0 -0
  184. data/spec/dummy/tmp/cache/assets/development/sprockets/9f0bebfda7d812e4f457431f1cce4595 +0 -0
  185. data/spec/dummy/tmp/cache/assets/development/sprockets/a1ad3be0833a3742d578f9837b1ce9ac +0 -0
  186. data/spec/dummy/tmp/cache/assets/development/sprockets/a29f779c454e6ba62650232bab4f79ec +0 -0
  187. data/spec/dummy/tmp/cache/assets/development/sprockets/a2f9988837a830f9477d9820acfe5ca5 +0 -0
  188. data/spec/dummy/tmp/cache/assets/development/sprockets/a5c4b558d2a51cb4220e19d7cc3ca337 +0 -0
  189. data/spec/dummy/tmp/cache/assets/development/sprockets/a7d105a6cfcd36d22ec2078561487f47 +0 -0
  190. data/spec/dummy/tmp/cache/assets/development/sprockets/abdf4874f88017012c208c93ac8ba414 +0 -0
  191. data/spec/dummy/tmp/cache/assets/development/sprockets/b160e0530bb9c2dd78e0d9442c24a08a +0 -0
  192. data/spec/dummy/tmp/cache/assets/development/sprockets/b8c05e88a3e38ff7b901e3c80d869b2f +0 -0
  193. data/spec/dummy/tmp/cache/assets/development/sprockets/c120acf80a2619bf8164e02e6f960764 +0 -0
  194. data/spec/dummy/tmp/cache/assets/development/sprockets/c24d77c1f7e73d8f31a63f95cdc569c9 +0 -0
  195. data/spec/dummy/tmp/cache/assets/development/sprockets/c726d2736d2c6c9279018d410300f893 +0 -0
  196. data/spec/dummy/tmp/cache/assets/development/sprockets/c78c6d66171101de8e064c83d0a62036 +0 -0
  197. data/spec/dummy/tmp/cache/assets/development/sprockets/c999ee7ff7abf6db93cf07d4bc777871 +0 -0
  198. data/spec/dummy/tmp/cache/assets/development/sprockets/cf36742cf19dff45417a76457df7e71b +0 -0
  199. data/spec/dummy/tmp/cache/assets/development/sprockets/d2482ba19c90b1649810826ac09ce9fc +0 -0
  200. data/spec/dummy/tmp/cache/assets/development/sprockets/e45815a37baece5f0ecd8903de564835 +0 -0
  201. data/spec/dummy/tmp/cache/assets/development/sprockets/e601c1145f5c414d64b60dd40683ec9d +0 -0
  202. data/spec/dummy/tmp/cache/assets/development/sprockets/ec4cb426a924f6d7cb5a564fc6075860 +0 -0
  203. data/spec/dummy/tmp/cache/assets/development/sprockets/f1995cbd97aba518d78c44d266cc4165 +0 -0
  204. data/spec/dummy/tmp/cache/assets/development/sprockets/fc012c29aa5b01fe548bebca6d7523a9 +0 -0
  205. data/spec/dummy/tmp/cache/assets/development/sprockets/fef4237dac77f36232df28412e9dcc13 +0 -0
  206. data/spec/dummy/tmp/pids/server.pid +1 -0
  207. metadata +477 -0
@@ -0,0 +1,136 @@
1
+ # Use this setup block to configure all options available in SimpleForm.
2
+ SimpleForm.setup do |config|
3
+ config.error_notification_class = 'alert alert-danger'
4
+ config.button_class = 'btn btn-default'
5
+ config.boolean_label_class = nil
6
+
7
+ config.wrappers :vertical_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
8
+ b.use :html5
9
+ b.use :placeholder
10
+ b.optional :maxlength
11
+ b.optional :pattern
12
+ b.optional :min_max
13
+ b.optional :readonly
14
+ b.use :label, class: 'control-label'
15
+
16
+ b.use :input, class: 'form-control'
17
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
18
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
19
+ end
20
+
21
+ config.wrappers :vertical_file_input, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
22
+ b.use :html5
23
+ b.use :placeholder
24
+ b.optional :maxlength
25
+ b.optional :readonly
26
+ b.use :label, class: 'control-label'
27
+
28
+ b.use :input
29
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
30
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
31
+ end
32
+
33
+ config.wrappers :vertical_boolean, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
34
+ b.use :html5
35
+ b.optional :readonly
36
+
37
+ b.wrapper tag: 'div', class: 'checkbox' do |ba|
38
+ ba.use :label_input
39
+ end
40
+
41
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
42
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
43
+ end
44
+
45
+ config.wrappers :vertical_radio_and_checkboxes, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
46
+ b.use :html5
47
+ b.optional :readonly
48
+ b.use :label, class: 'control-label'
49
+ b.use :input
50
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
51
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
52
+ end
53
+
54
+ config.wrappers :horizontal_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
55
+ b.use :html5
56
+ b.use :placeholder
57
+ b.optional :maxlength
58
+ b.optional :pattern
59
+ b.optional :min_max
60
+ b.optional :readonly
61
+ b.use :label, class: 'col-sm-3 control-label'
62
+
63
+ b.wrapper tag: 'div', class: 'col-sm-9' do |ba|
64
+ ba.use :input, class: 'form-control'
65
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
66
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
67
+ end
68
+ end
69
+
70
+ config.wrappers :horizontal_file_input, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
71
+ b.use :html5
72
+ b.use :placeholder
73
+ b.optional :maxlength
74
+ b.optional :readonly
75
+ b.use :label, class: 'col-sm-3 control-label'
76
+
77
+ b.wrapper tag: 'div', class: 'col-sm-9' do |ba|
78
+ ba.use :input
79
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
80
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
81
+ end
82
+ end
83
+
84
+ config.wrappers :horizontal_boolean, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
85
+ b.use :html5
86
+ b.optional :readonly
87
+
88
+ b.wrapper tag: 'div', class: 'col-sm-offset-3 col-sm-9' do |wr|
89
+ wr.wrapper tag: 'div', class: 'checkbox' do |ba|
90
+ ba.use :label_input, class: 'col-sm-9'
91
+ end
92
+
93
+ wr.use :error, wrap_with: { tag: 'span', class: 'help-block' }
94
+ wr.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
95
+ end
96
+ end
97
+
98
+ config.wrappers :horizontal_radio_and_checkboxes, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
99
+ b.use :html5
100
+ b.optional :readonly
101
+
102
+ b.use :label, class: 'col-sm-3 control-label'
103
+
104
+ b.wrapper tag: 'div', class: 'col-sm-9' do |ba|
105
+ ba.use :input
106
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
107
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
108
+ end
109
+ end
110
+
111
+ config.wrappers :inline_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
112
+ b.use :html5
113
+ b.use :placeholder
114
+ b.optional :maxlength
115
+ b.optional :pattern
116
+ b.optional :min_max
117
+ b.optional :readonly
118
+ b.use :label, class: 'sr-only'
119
+
120
+ b.use :input, class: 'form-control'
121
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
122
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
123
+ end
124
+
125
+ # Wrappers for forms and inputs using the Bootstrap toolkit.
126
+ # Check the Bootstrap docs (http://getbootstrap.com)
127
+ # to learn about the different styles for forms and inputs,
128
+ # buttons and other elements.
129
+ config.default_wrapper = :vertical_form
130
+ config.wrapper_mappings = {
131
+ check_boxes: :vertical_radio_and_checkboxes,
132
+ radio_buttons: :vertical_radio_and_checkboxes,
133
+ file: :vertical_file_input,
134
+ boolean: :vertical_boolean,
135
+ }
136
+ end
@@ -0,0 +1,14 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # This file contains settings for ActionController::ParamsWrapper which
4
+ # is enabled by default.
5
+
6
+ # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7
+ ActiveSupport.on_load(:action_controller) do
8
+ wrap_parameters format: [:json] if respond_to?(:wrap_parameters)
9
+ end
10
+
11
+ # To enable root element in JSON for ActiveRecord objects.
12
+ # ActiveSupport.on_load(:active_record) do
13
+ # self.include_root_in_json = true
14
+ # end
@@ -0,0 +1,62 @@
1
+ # Additional translations at https://github.com/plataformatec/devise/wiki/I18n
2
+
3
+ en:
4
+ devise:
5
+ confirmations:
6
+ confirmed: "Your email address has been successfully confirmed."
7
+ send_instructions: "You will receive an email with instructions for how to confirm your email address in a few minutes."
8
+ send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions for how to confirm your email address in a few minutes."
9
+ failure:
10
+ already_authenticated: "You are already signed in."
11
+ inactive: "Your account is not activated yet."
12
+ invalid: "Invalid %{authentication_keys} or password."
13
+ locked: "Your account is locked."
14
+ last_attempt: "You have one more attempt before your account is locked."
15
+ not_found_in_database: "Invalid %{authentication_keys} or password."
16
+ timeout: "Your session expired. Please sign in again to continue."
17
+ unauthenticated: "You need to sign in or sign up before continuing."
18
+ unconfirmed: "You have to confirm your email address before continuing."
19
+ mailer:
20
+ confirmation_instructions:
21
+ subject: "Confirmation instructions"
22
+ reset_password_instructions:
23
+ subject: "Reset password instructions"
24
+ unlock_instructions:
25
+ subject: "Unlock instructions"
26
+ password_change:
27
+ subject: "Password Changed"
28
+ omniauth_callbacks:
29
+ failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
30
+ success: "Successfully authenticated from %{kind} account."
31
+ passwords:
32
+ no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
33
+ send_instructions: "You will receive an email with instructions on how to reset your password in a few minutes."
34
+ send_paranoid_instructions: "If your email address exists in our database, you will receive a password recovery link at your email address in a few minutes."
35
+ updated: "Your password has been changed successfully. You are now signed in."
36
+ updated_not_active: "Your password has been changed successfully."
37
+ registrations:
38
+ destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon."
39
+ signed_up: "Welcome! You have signed up successfully."
40
+ signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
41
+ signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
42
+ signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please follow the link to activate your account."
43
+ update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and follow the confirm link to confirm your new email address."
44
+ updated: "Your account has been updated successfully."
45
+ sessions:
46
+ signed_in: "Signed in successfully."
47
+ signed_out: "Signed out successfully."
48
+ already_signed_out: "Signed out successfully."
49
+ unlocks:
50
+ send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes."
51
+ send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes."
52
+ unlocked: "Your account has been unlocked successfully. Please sign in to continue."
53
+ errors:
54
+ messages:
55
+ already_confirmed: "was already confirmed, please try signing in"
56
+ confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
57
+ expired: "has expired, please request a new one"
58
+ not_found: "not found"
59
+ not_locked: "was not locked"
60
+ not_saved:
61
+ one: "1 error prohibited this %{resource} from being saved:"
62
+ other: "%{count} errors prohibited this %{resource} from being saved:"
@@ -0,0 +1,23 @@
1
+ # Files in the config/locales directory are used for internationalization
2
+ # and are automatically loaded by Rails. If you want to use locales other
3
+ # than English, add the necessary files in this directory.
4
+ #
5
+ # To use the locales, use `I18n.t`:
6
+ #
7
+ # I18n.t 'hello'
8
+ #
9
+ # In views, this is aliased to just `t`:
10
+ #
11
+ # <%= t('hello') %>
12
+ #
13
+ # To use a different locale, set it with `I18n.locale`:
14
+ #
15
+ # I18n.locale = :es
16
+ #
17
+ # This would use the information in config/locales/es.yml.
18
+ #
19
+ # To learn more, please read the Rails Internationalization guide
20
+ # available at http://guides.rubyonrails.org/i18n.html.
21
+
22
+ en:
23
+ hello: "Hello world"
@@ -0,0 +1,18 @@
1
+ Rails.application.routes.draw do
2
+
3
+ # optimacms devise
4
+ devise_for :cms_admin_users, Optimacms::Devise.config
5
+
6
+
7
+ get 'debug/:action', to: 'debug#action'
8
+
9
+
10
+ # for names
11
+ root to: "home#index"
12
+
13
+
14
+ mount OptimacmsOptions::Engine => "/", :as => 'cms_options'
15
+
16
+ # !!! LAST row
17
+ mount Optimacms::Engine => "/", :as => "cms"
18
+ end
@@ -0,0 +1,25 @@
1
+
2
+ development:
3
+ secret_key_base: 321c35721f4ceca845b2f112306320b108046e4926ca1da16b1047fed19c60aee8c12704fd408f069aa0522629daf6b5799f53fc614b295a18694ba488e7a510
4
+ devise_secret_key: eac6ae5593f3da61d6a5ff37adbc6b18e6077b81e42dee934348257fee60bdac042ec7a85e6a0cc53c9f048f4933390dcd586cb4bfb2ae134f587b2073be063300
5
+
6
+ db: my_cms
7
+ db_host: devapi.gex
8
+ db_user: dev_gex
9
+ db_password: Galactic1
10
+
11
+
12
+
13
+
14
+ test:
15
+ secret_key_base: c0933ba3b197a65060dbf4eef5a93e8710f9026d51e2132db77298ad8e38de0e3d78966a0e0e30a4f3d305e7e8a487bba595cf327d6db0821f8e3cd3d0933b93
16
+ devise_secret_key: b942a7a590492b42d706eef2219d666ca86c0f8a7af2e298fe5a0d848cafaebcbe3824f0e53814f9cd5ac91b7b1f8539a9cd6b6f388880338742f48fd0c4cd00
17
+
18
+ db: test_gex
19
+ db_host: api.gex
20
+ db_user: test_gex
21
+ db_password: Galactic1
22
+
23
+
24
+
25
+
@@ -0,0 +1,370 @@
1
+ # encoding: UTF-8
2
+ # This file is auto-generated from the current state of the database. Instead
3
+ # of editing this file, please use the migrations feature of Active Record to
4
+ # incrementally modify your database, and then regenerate this schema definition.
5
+ #
6
+ # Note that this schema.rb definition is the authoritative source for your
7
+ # database schema. If you need to create the application database on another
8
+ # system, you should be using db:schema:load, not running all the migrations
9
+ # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10
+ # you'll amass, the slower it'll run and the greater likelihood for issues).
11
+ #
12
+ # It's strongly recommended that you check this file into your version control system.
13
+
14
+ ActiveRecord::Schema.define(version: 20160111100915) do
15
+
16
+ create_table "beta_subscribers", force: :cascade do |t|
17
+ t.string "email", limit: 255, null: false
18
+ t.datetime "created_at", null: false
19
+ end
20
+
21
+ add_index "beta_subscribers", ["email"], name: "email", using: :btree
22
+
23
+ create_table "cluster_access", force: :cascade do |t|
24
+ t.integer "cluster_id", limit: 4, null: false
25
+ t.integer "user_id", limit: 4, null: false
26
+ t.datetime "created_at", null: false
27
+ end
28
+
29
+ add_index "cluster_access", ["cluster_id"], name: "cluster_id", using: :btree
30
+ add_index "cluster_access", ["created_at"], name: "created_at", using: :btree
31
+ add_index "cluster_access", ["user_id"], name: "user_id", using: :btree
32
+
33
+ create_table "cluster_ports", force: :cascade do |t|
34
+ t.integer "cluster_id", limit: 4, null: false
35
+ t.integer "service_id", limit: 4, null: false
36
+ t.integer "port_out", limit: 4, default: 0, null: false
37
+ t.integer "port_in", limit: 4, null: false
38
+ end
39
+
40
+ add_index "cluster_ports", ["cluster_id"], name: "cluster_id", using: :btree
41
+ add_index "cluster_ports", ["service_id"], name: "service_id", using: :btree
42
+
43
+ create_table "cluster_services", force: :cascade do |t|
44
+ t.string "name", limit: 255, null: false
45
+ t.string "title", limit: 255, null: false
46
+ t.boolean "enabled", default: true, null: false
47
+ t.integer "port", limit: 4, null: false
48
+ t.string "protocol", limit: 255, null: false
49
+ end
50
+
51
+ add_index "cluster_services", ["name"], name: "name", unique: true, using: :btree
52
+
53
+ create_table "clusters", force: :cascade do |t|
54
+ t.string "uid", limit: 255, null: false
55
+ t.string "name", limit: 255
56
+ t.string "domainname", limit: 255
57
+ t.string "title", limit: 255
58
+ t.integer "team_id", limit: 4, null: false
59
+ t.integer "primary_admin_user_id", limit: 4, null: false
60
+ t.integer "status", limit: 1, default: 0, null: false
61
+ t.text "description", limit: 65535
62
+ t.boolean "is_public", default: true, null: false
63
+ t.integer "last_node_number", limit: 4, default: 0, null: false
64
+ end
65
+
66
+ add_index "clusters", ["domainname"], name: "systemname", unique: true, using: :btree
67
+ add_index "clusters", ["name"], name: "name", unique: true, using: :btree
68
+ add_index "clusters", ["primary_admin_user_id"], name: "primary_admin_id", using: :btree
69
+ add_index "clusters", ["team_id"], name: "team_id", using: :btree
70
+ add_index "clusters", ["uid"], name: "uid", using: :btree
71
+
72
+ create_table "clusters_containers", force: :cascade do |t|
73
+ t.integer "container_id", limit: 4, null: false
74
+ t.integer "cluster_id", limit: 8, null: false
75
+ t.integer "node_id", limit: 8
76
+ t.string "ip", limit: 255
77
+ t.string "host", limit: 255
78
+ end
79
+
80
+ add_index "clusters_containers", ["cluster_id"], name: "cluster_id", using: :btree
81
+ add_index "clusters_containers", ["container_id"], name: "container_id", using: :btree
82
+ add_index "clusters_containers", ["host"], name: "host", using: :btree
83
+ add_index "clusters_containers", ["ip"], name: "ip", using: :btree
84
+ add_index "clusters_containers", ["node_id"], name: "node_id", using: :btree
85
+
86
+ create_table "cms_languages", force: :cascade do |t|
87
+ t.string "title", limit: 250
88
+ t.string "lang", limit: 4
89
+ t.boolean "enabled", default: true, null: false
90
+ t.string "charset", limit: 15, default: "utf8_unicode_ci", null: false
91
+ t.string "locale", limit: 255, null: false
92
+ t.string "lang_html", limit: 10, null: false
93
+ t.integer "pos", limit: 4, null: false
94
+ t.string "countries", limit: 255, null: false
95
+ end
96
+
97
+ add_index "cms_languages", ["lang"], name: "idxLang", unique: true, using: :btree
98
+
99
+ create_table "cms_mediafiles", force: :cascade do |t|
100
+ t.integer "media_type", limit: 4
101
+ t.string "path", limit: 255
102
+ t.string "photo_file_name", limit: 255
103
+ t.string "photo_content_type", limit: 255
104
+ t.integer "photo_file_size", limit: 4
105
+ t.datetime "photo_updated_at"
106
+ end
107
+
108
+ create_table "cms_pages", force: :cascade do |t|
109
+ t.string "title", limit: 255, null: false
110
+ t.string "name", limit: 255
111
+ t.string "url", limit: 255
112
+ t.integer "url_parts_count", limit: 1, default: 0, null: false
113
+ t.integer "url_vars_count", limit: 1, default: 0, null: false
114
+ t.string "parsed_url", limit: 255
115
+ t.integer "parent_id", limit: 4, default: 0, null: false
116
+ t.string "view_path", limit: 255
117
+ t.boolean "is_translated", default: false, null: false
118
+ t.integer "status", limit: 4, default: 0, null: false
119
+ t.integer "pos", limit: 4, default: 0, null: false
120
+ t.string "redir_url", limit: 255
121
+ t.integer "template_id", limit: 4
122
+ t.integer "layout_id", limit: 4
123
+ t.integer "owner", limit: 4
124
+ t.boolean "is_folder", default: false, null: false
125
+ t.string "controller_action", limit: 255
126
+ t.datetime "created_at", null: false
127
+ t.datetime "updated_at", null: false
128
+ t.integer "enabled", limit: 1, default: 1, null: false
129
+ end
130
+
131
+ add_index "cms_pages", ["name"], name: "index_cms_pages_on_name", using: :btree
132
+ add_index "cms_pages", ["parent_id"], name: "parent_id", using: :btree
133
+ add_index "cms_pages", ["status"], name: "status", using: :btree
134
+ add_index "cms_pages", ["url"], name: "url", using: :btree
135
+
136
+ create_table "cms_pages_translation", force: :cascade do |t|
137
+ t.integer "item_id", limit: 4, default: 0, null: false
138
+ t.integer "page_id", limit: 4
139
+ t.string "lang", limit: 5, null: false
140
+ t.string "meta_title", limit: 255
141
+ t.text "meta_description", limit: 65535
142
+ t.string "meta_keywords", limit: 255
143
+ t.string "template_filename", limit: 255
144
+ end
145
+
146
+ add_index "cms_pages_translation", ["item_id"], name: "item_id", using: :btree
147
+ add_index "cms_pages_translation", ["lang"], name: "lang", using: :btree
148
+ add_index "cms_pages_translation", ["template_filename"], name: "template", using: :btree
149
+
150
+ create_table "cms_templates", force: :cascade do |t|
151
+ t.string "title", limit: 255, null: false
152
+ t.string "name", limit: 255
153
+ t.string "basename", limit: 255, null: false
154
+ t.string "basepath", limit: 255, null: false
155
+ t.string "basedirpath", limit: 255, null: false
156
+ t.integer "type_id", limit: 1
157
+ t.string "tpl_format", limit: 255
158
+ t.integer "pos", limit: 4
159
+ t.boolean "is_translated", default: false, null: false
160
+ t.datetime "created_at", null: false
161
+ t.datetime "updated_at", null: false
162
+ t.boolean "is_folder", default: false, null: false
163
+ t.boolean "enabled", default: true, null: false
164
+ t.string "ancestry", limit: 255
165
+ end
166
+
167
+ add_index "cms_templates", ["ancestry"], name: "ancestry", using: :btree
168
+ add_index "cms_templates", ["basepath"], name: "basepath", using: :btree
169
+ add_index "cms_templates", ["pos"], name: "pos", using: :btree
170
+
171
+ create_table "cms_templates_translation", force: :cascade do |t|
172
+ t.integer "item_id", limit: 4, null: false
173
+ t.string "lang", limit: 5, null: false
174
+ end
175
+
176
+ add_index "cms_templates_translation", ["item_id", "lang"], name: "item_id", unique: true, using: :btree
177
+
178
+ create_table "cms_templatetypes", force: :cascade do |t|
179
+ t.string "name", limit: 255
180
+ t.string "title", limit: 255
181
+ t.integer "pos", limit: 4, null: false
182
+ end
183
+
184
+ create_table "cms_users", force: :cascade do |t|
185
+ t.string "email", limit: 255, default: "", null: false
186
+ t.string "encrypted_password", limit: 255, default: "", null: false
187
+ t.string "reset_password_token", limit: 255
188
+ t.datetime "reset_password_sent_at"
189
+ t.datetime "remember_created_at"
190
+ t.integer "sign_in_count", limit: 4, default: 0, null: false
191
+ t.datetime "current_sign_in_at"
192
+ t.datetime "last_sign_in_at"
193
+ t.string "current_sign_in_ip", limit: 255
194
+ t.string "last_sign_in_ip", limit: 255
195
+ t.datetime "created_at"
196
+ t.datetime "updated_at"
197
+ end
198
+
199
+ add_index "cms_users", ["email"], name: "index_optimacms_cms_users_on_email", unique: true, using: :btree
200
+ add_index "cms_users", ["reset_password_token"], name: "index_optimacms_cms_users_on_reset_password_token", unique: true, using: :btree
201
+
202
+ create_table "containers", force: :cascade do |t|
203
+ t.string "name", limit: 255, null: false
204
+ t.string "title", limit: 255, null: false
205
+ t.boolean "enabled", default: true, null: false
206
+ end
207
+
208
+ add_index "containers", ["name"], name: "name", unique: true, using: :btree
209
+
210
+ create_table "errors", force: :cascade do |t|
211
+ t.string "name", limit: 255, null: false
212
+ t.string "title", limit: 255, null: false
213
+ t.string "category", limit: 255
214
+ t.text "description", limit: 65535
215
+ end
216
+
217
+ add_index "errors", ["name"], name: "name", unique: true, using: :btree
218
+
219
+ create_table "groups", force: :cascade do |t|
220
+ t.string "name", limit: 255, null: false
221
+ t.string "title", limit: 255, null: false
222
+ t.boolean "enabled", default: true, null: false
223
+ end
224
+
225
+ create_table "invitations", force: :cascade do |t|
226
+ t.string "uid", limit: 255, null: false
227
+ t.integer "from_user_id", limit: 4
228
+ t.integer "team_id", limit: 4
229
+ t.integer "cluster_id", limit: 4
230
+ t.string "to_email", limit: 255, null: false
231
+ t.integer "status", limit: 4, null: false
232
+ t.integer "invitation_type", limit: 4, default: 0, null: false
233
+ t.datetime "activated_at"
234
+ t.datetime "created_at", null: false
235
+ end
236
+
237
+ add_index "invitations", ["from_user_id"], name: "user_id", using: :btree
238
+ add_index "invitations", ["team_id"], name: "cluster_id", using: :btree
239
+ add_index "invitations", ["uid"], name: "uid", unique: true, using: :btree
240
+
241
+ create_table "message_dialogs", force: :cascade do |t|
242
+ t.integer "from_user_id", limit: 4, null: false
243
+ t.integer "to_user_id", limit: 4, null: false
244
+ t.integer "last_message_id", limit: 4
245
+ t.datetime "created_at", null: false
246
+ t.datetime "updated_at", null: false
247
+ end
248
+
249
+ add_index "message_dialogs", ["created_at"], name: "created_at", using: :btree
250
+ add_index "message_dialogs", ["from_user_id"], name: "from_user_id", using: :btree
251
+ add_index "message_dialogs", ["to_user_id"], name: "to_user_id", using: :btree
252
+ add_index "message_dialogs", ["updated_at"], name: "updated_at", using: :btree
253
+
254
+ create_table "messages", force: :cascade do |t|
255
+ t.integer "dialog_id", limit: 4, null: false
256
+ t.integer "from_user_id", limit: 4, null: false
257
+ t.integer "to_user_id", limit: 4, null: false
258
+ t.datetime "created_at", null: false
259
+ t.integer "status", limit: 1, default: 1, null: false
260
+ t.text "message", limit: 65535, null: false
261
+ end
262
+
263
+ add_index "messages", ["from_user_id", "to_user_id"], name: "from_user_id", using: :btree
264
+
265
+ create_table "nodes", force: :cascade do |t|
266
+ t.string "uid", limit: 255, null: false
267
+ t.string "name", limit: 255
268
+ t.integer "cluster_id", limit: 4, null: false
269
+ t.integer "node_number", limit: 4, default: 0, null: false
270
+ t.string "ip", limit: 255
271
+ t.integer "port", limit: 4, default: 0, null: false
272
+ t.string "agent_token", limit: 255
273
+ t.integer "status", limit: 1, default: 0, null: false
274
+ t.text "system_info", limit: 65535, null: false
275
+ end
276
+
277
+ add_index "nodes", ["agent_token"], name: "agent_token", using: :btree
278
+ add_index "nodes", ["cluster_id"], name: "cluster_id", using: :btree
279
+ add_index "nodes", ["name"], name: "name", using: :btree
280
+ add_index "nodes", ["uid"], name: "uid", using: :btree
281
+
282
+ create_table "options", force: :cascade do |t|
283
+ t.string "name", limit: 250, default: "", null: false
284
+ t.string "title", limit: 250, default: "", null: false
285
+ t.string "option_type", limit: 100, default: "", null: false
286
+ t.text "description", limit: 16777215
287
+ t.boolean "is_changed", default: true, null: false
288
+ t.string "category", limit: 250, default: "", null: false
289
+ t.string "value", limit: 250, default: "", null: false
290
+ end
291
+
292
+ create_table "packages", force: :cascade do |t|
293
+ t.string "name", limit: 255, null: false
294
+ t.string "command_name", limit: 255, null: false
295
+ t.string "v", limit: 255, null: false
296
+ t.integer "status", limit: 4, default: 1, null: false
297
+ end
298
+
299
+ add_index "packages", ["name"], name: "name", using: :btree
300
+
301
+ create_table "services", force: :cascade do |t|
302
+ t.integer "cluster_id", limit: 4, null: false
303
+ t.integer "package_id", limit: 4, null: false
304
+ t.integer "ssh_port", limit: 4, null: false
305
+ end
306
+
307
+ create_table "teams", force: :cascade do |t|
308
+ t.string "name", limit: 255, null: false
309
+ t.string "uid", limit: 255, null: false
310
+ t.integer "status", limit: 1, default: 1, null: false
311
+ t.text "about", limit: 65535
312
+ t.integer "primary_admin_user_id", limit: 4
313
+ t.integer "main_cluster_id", limit: 4
314
+ t.datetime "created_at", null: false
315
+ t.datetime "updated_at", null: false
316
+ t.string "avatar_file_name", limit: 255
317
+ t.string "avatar_content_type", limit: 255
318
+ t.integer "avatar_file_size", limit: 4
319
+ t.datetime "avatar_updated_at"
320
+ end
321
+
322
+ add_index "teams", ["created_at"], name: "created_at", using: :btree
323
+ add_index "teams", ["name"], name: "name", unique: true, using: :btree
324
+ add_index "teams", ["primary_admin_user_id"], name: "primary_admin_user_id", using: :btree
325
+ add_index "teams", ["uid"], name: "uid", unique: true, using: :btree
326
+ add_index "teams", ["uid"], name: "uid_2", unique: true, using: :btree
327
+ add_index "teams", ["updated_at"], name: "updated_at", using: :btree
328
+
329
+ create_table "users", force: :cascade do |t|
330
+ t.string "username", limit: 255, null: false
331
+ t.string "email", limit: 255, null: false
332
+ t.string "encrypted_password", limit: 255, default: "", null: false
333
+ t.integer "status", limit: 1, default: 0, null: false
334
+ t.integer "team_id", limit: 4, null: false
335
+ t.integer "group_id", limit: 4, null: false
336
+ t.integer "main_cluster_id", limit: 4
337
+ t.string "firstname", limit: 255, null: false
338
+ t.string "lastname", limit: 255, null: false
339
+ t.text "about", limit: 65535
340
+ t.string "reset_password_token", limit: 255
341
+ t.datetime "reset_password_sent_at"
342
+ t.datetime "remember_created_at"
343
+ t.integer "sign_in_count", limit: 4, default: 0, null: false
344
+ t.datetime "current_sign_in_at"
345
+ t.datetime "last_sign_in_at"
346
+ t.string "current_sign_in_ip", limit: 255
347
+ t.string "last_sign_in_ip", limit: 255
348
+ t.string "confirmation_token", limit: 255
349
+ t.datetime "confirmed_at"
350
+ t.datetime "confirmation_sent_at"
351
+ t.integer "failed_attempts", limit: 4, default: 0, null: false
352
+ t.string "unlock_token", limit: 255
353
+ t.datetime "locked_at"
354
+ t.datetime "created_at", null: false
355
+ t.datetime "updated_at", null: false
356
+ t.integer "invitation_id", limit: 4
357
+ t.string "avatar_file_name", limit: 255
358
+ t.string "avatar_content_type", limit: 255
359
+ t.integer "avatar_file_size", limit: 4
360
+ t.datetime "avatar_updated_at"
361
+ end
362
+
363
+ add_index "users", ["email"], name: "email", using: :btree
364
+ add_index "users", ["group_id"], name: "group_id", using: :btree
365
+ add_index "users", ["main_cluster_id"], name: "main_cluster_id", using: :btree
366
+ add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true, using: :btree
367
+ add_index "users", ["team_id"], name: "team_id", using: :btree
368
+ add_index "users", ["username"], name: "username", using: :btree
369
+
370
+ end