lato_core 1.1.5 → 2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (307) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +29 -0
  4. data/Rakefile +1 -22
  5. data/app/assets/config/lato_core_manifest.js +2 -0
  6. data/app/assets/fonts/lato_core/fontawesome-webfont.eot +0 -0
  7. data/app/assets/fonts/lato_core/fontawesome-webfont.svg +2671 -0
  8. data/app/assets/fonts/lato_core/fontawesome-webfont.ttf +0 -0
  9. data/app/assets/fonts/lato_core/fontawesome-webfont.woff +0 -0
  10. data/app/assets/fonts/lato_core/fontawesome-webfont.woff2 +0 -0
  11. data/app/assets/fonts/lato_core/lato-bold-webfont.eot +0 -0
  12. data/app/assets/fonts/lato_core/lato-bold-webfont.svg +4551 -0
  13. data/app/assets/fonts/lato_core/lato-bold-webfont.ttf +0 -0
  14. data/app/assets/fonts/lato_core/lato-bold-webfont.woff +0 -0
  15. data/app/assets/fonts/lato_core/lato-bold-webfont.woff2 +0 -0
  16. data/app/assets/fonts/lato_core/lato-regular-webfont.eot +0 -0
  17. data/app/assets/fonts/lato_core/lato-regular-webfont.svg +4241 -0
  18. data/app/assets/fonts/lato_core/lato-regular-webfont.ttf +0 -0
  19. data/app/assets/fonts/lato_core/lato-regular-webfont.woff +0 -0
  20. data/app/assets/fonts/lato_core/lato-regular-webfont.woff2 +0 -0
  21. data/app/assets/images/lato_core/editor-icons.svg +1 -0
  22. data/app/assets/images/lato_core/logo-negative.svg +13 -0
  23. data/app/assets/images/lato_core/logo.svg +1 -0
  24. data/app/assets/images/lato_core/user.png +0 -0
  25. data/app/assets/javascripts/lato_core/application.js +28 -0
  26. data/app/assets/javascripts/lato_core/initializers/Charts.js +36 -0
  27. data/app/assets/javascripts/lato_core/initializers/Elements.js +67 -0
  28. data/app/assets/javascripts/lato_core/initializers/Inputs.js +201 -0
  29. data/app/assets/javascripts/lato_core/initializers/Layout.js +37 -0
  30. data/app/assets/javascripts/lato_core/initializers/SortableManager.js +66 -0
  31. data/app/assets/javascripts/lato_core/interfaces/Modal.js +28 -0
  32. data/app/assets/javascripts/lato_core/vendors/Sortable.min.js +2 -0
  33. data/app/assets/javascripts/lato_core/vendors/chart.bundle.js +17220 -0
  34. data/app/assets/javascripts/lato_core/vendors/dropzone.js +1767 -0
  35. data/app/assets/javascripts/lato_core/vendors/jquery.datetimepicker.full.js +3243 -0
  36. data/app/assets/javascripts/lato_core/vendors/jquery.floatThead.js +1106 -0
  37. data/app/assets/javascripts/lato_core/vendors/jquery.selectize.js +3829 -0
  38. data/app/assets/javascripts/lato_core/vendors/jquery.trumbowyg.js +1603 -0
  39. data/app/assets/stylesheets/lato_core/application.scss +23 -0
  40. data/app/assets/stylesheets/lato_core/base/_base.scss +35 -0
  41. data/app/assets/stylesheets/lato_core/base/_button.scss +23 -0
  42. data/app/assets/stylesheets/lato_core/base/_grid.scss +258 -0
  43. data/app/assets/stylesheets/lato_core/base/_helpers.scss +29 -0
  44. data/app/assets/stylesheets/lato_core/base/_mixin.scss +37 -0
  45. data/app/assets/stylesheets/lato_core/base/_normalize.scss +424 -0
  46. data/app/assets/stylesheets/lato_core/base/_table.scss +47 -0
  47. data/app/assets/stylesheets/lato_core/base/_typography.scss +23 -0
  48. data/app/assets/stylesheets/lato_core/cells/_cells.scss +4 -0
  49. data/app/assets/stylesheets/lato_core/cells/charts/_bar.scss +3 -0
  50. data/app/assets/stylesheets/lato_core/cells/charts/_charts.scss +2 -0
  51. data/app/assets/stylesheets/lato_core/cells/charts/_general.scss +7 -0
  52. data/app/assets/stylesheets/lato_core/cells/elements/_block.scss +12 -0
  53. data/app/assets/stylesheets/lato_core/cells/elements/_button.scss +132 -0
  54. data/app/assets/stylesheets/lato_core/cells/elements/_buttongroup.scss +25 -0
  55. data/app/assets/stylesheets/lato_core/cells/elements/_code.scss +8 -0
  56. data/app/assets/stylesheets/lato_core/cells/elements/_elements.scss +10 -0
  57. data/app/assets/stylesheets/lato_core/cells/elements/_flash.scss +74 -0
  58. data/app/assets/stylesheets/lato_core/cells/elements/_modal.scss +76 -0
  59. data/app/assets/stylesheets/lato_core/cells/elements/_pagination.scss +64 -0
  60. data/app/assets/stylesheets/lato_core/cells/elements/_row.scss +3 -0
  61. data/app/assets/stylesheets/lato_core/cells/elements/_table.scss +57 -0
  62. data/app/assets/stylesheets/lato_core/cells/elements/_title.scss +32 -0
  63. data/app/assets/stylesheets/lato_core/cells/inputs/_checkbox.scss +42 -0
  64. data/app/assets/stylesheets/lato_core/cells/inputs/_datetime.scss +23 -0
  65. data/app/assets/stylesheets/lato_core/cells/inputs/_dropzone.scss +12 -0
  66. data/app/assets/stylesheets/lato_core/cells/inputs/_editor.scss +3 -0
  67. data/app/assets/stylesheets/lato_core/cells/inputs/_email.scss +3 -0
  68. data/app/assets/stylesheets/lato_core/cells/inputs/_form.scss +3 -0
  69. data/app/assets/stylesheets/lato_core/cells/inputs/_general.scss +51 -0
  70. data/app/assets/stylesheets/lato_core/cells/inputs/_geolocalization.scss +12 -0
  71. data/app/assets/stylesheets/lato_core/cells/inputs/_inputs.scss +14 -0
  72. data/app/assets/stylesheets/lato_core/cells/inputs/_number.scss +3 -0
  73. data/app/assets/stylesheets/lato_core/cells/inputs/_password.scss +3 -0
  74. data/app/assets/stylesheets/lato_core/cells/inputs/_select.scss +47 -0
  75. data/app/assets/stylesheets/lato_core/cells/inputs/_sortableblock.scss +51 -0
  76. data/app/assets/stylesheets/lato_core/cells/inputs/_text.scss +3 -0
  77. data/app/assets/stylesheets/lato_core/cells/inputs/_textarea.scss +25 -0
  78. data/app/assets/stylesheets/lato_core/cells/widgets/_index.scss +74 -0
  79. data/app/assets/stylesheets/lato_core/cells/widgets/_widgets.scss +1 -0
  80. data/app/assets/stylesheets/lato_core/layouts/_admin.scss +352 -0
  81. data/app/assets/stylesheets/lato_core/layouts/_authentication.scss +10 -0
  82. data/app/assets/stylesheets/lato_core/layouts/_layouts.scss +2 -0
  83. data/app/assets/stylesheets/lato_core/pages/_dashboard.scss +35 -0
  84. data/app/assets/stylesheets/lato_core/pages/_login.scss +7 -0
  85. data/app/assets/stylesheets/lato_core/pages/_pages.scss +2 -0
  86. data/app/assets/stylesheets/lato_core/partials/_dynamic_data_to_js.scss +3 -0
  87. data/app/assets/stylesheets/lato_core/partials/_partials.scss +1 -0
  88. data/app/assets/stylesheets/lato_core/theme.scss.erb +127 -0
  89. data/app/assets/stylesheets/lato_core/vendors/_datetimepicker.css +568 -0
  90. data/app/assets/stylesheets/lato_core/vendors/_dropzone.css +388 -0
  91. data/app/assets/stylesheets/lato_core/vendors/_fontawesome.css +2341 -0
  92. data/app/assets/stylesheets/lato_core/vendors/_scrollbar.css +904 -0
  93. data/app/assets/stylesheets/lato_core/vendors/_selectize.css +324 -0
  94. data/app/assets/stylesheets/lato_core/vendors/_trumbowyg.css +584 -0
  95. data/app/assets/stylesheets/lato_core/vendors/_vendors.scss +6 -0
  96. data/app/assets/stylesheets/lato_core/widgets/_systeminfo.scss +21 -0
  97. data/app/assets/stylesheets/lato_core/widgets/_widgets.scss +1 -0
  98. data/app/cells/lato_core/charts/bar/vertical/cell.rb +57 -0
  99. data/app/cells/lato_core/charts/bar/vertical/views/show.html.erb +7 -0
  100. data/app/cells/lato_core/elements/block/cell.rb +39 -0
  101. data/app/cells/lato_core/elements/block/views/close.html.erb +1 -0
  102. data/app/cells/lato_core/elements/block/views/open.html.erb +4 -0
  103. data/app/cells/lato_core/elements/button/cell.rb +59 -0
  104. data/app/cells/lato_core/elements/button/views/button.html.erb +27 -0
  105. data/app/cells/lato_core/elements/button/views/link.html.erb +65 -0
  106. data/app/cells/lato_core/elements/buttongroup/cell.rb +33 -0
  107. data/app/cells/lato_core/elements/buttongroup/views/show.html.erb +7 -0
  108. data/app/cells/lato_core/elements/code/cell.rb +36 -0
  109. data/app/cells/lato_core/elements/code/views/close.html.erb +2 -0
  110. data/app/cells/lato_core/elements/code/views/open.html.erb +2 -0
  111. data/app/cells/lato_core/elements/flash/cell.rb +35 -0
  112. data/app/cells/lato_core/elements/flash/views/show.html.erb +11 -0
  113. data/app/cells/lato_core/elements/icon/cell.rb +31 -0
  114. data/app/cells/lato_core/elements/icon/views/show.html.erb +1 -0
  115. data/app/cells/lato_core/elements/modal/cell.rb +31 -0
  116. data/app/cells/lato_core/elements/modal/views/show.html.erb +21 -0
  117. data/app/cells/lato_core/elements/pagination/cell.rb +68 -0
  118. data/app/cells/lato_core/elements/pagination/views/show.html.erb +59 -0
  119. data/app/cells/lato_core/elements/row/cell.rb +37 -0
  120. data/app/cells/lato_core/elements/row/views/close.html.erb +1 -0
  121. data/app/cells/lato_core/elements/row/views/open.html.erb +3 -0
  122. data/app/cells/lato_core/elements/table/body/cell.rb +37 -0
  123. data/app/cells/lato_core/elements/table/body/views/close.html.erb +1 -0
  124. data/app/cells/lato_core/elements/table/body/views/open.html.erb +3 -0
  125. data/app/cells/lato_core/elements/table/container/cell.rb +41 -0
  126. data/app/cells/lato_core/elements/table/container/views/close.html.erb +2 -0
  127. data/app/cells/lato_core/elements/table/container/views/open.html.erb +7 -0
  128. data/app/cells/lato_core/elements/table/head/cell.rb +33 -0
  129. data/app/cells/lato_core/elements/table/head/views/show.html.erb +7 -0
  130. data/app/cells/lato_core/elements/table/row/cell.rb +49 -0
  131. data/app/cells/lato_core/elements/table/row/views/show.html.erb +35 -0
  132. data/app/cells/lato_core/elements/title/cell.rb +52 -0
  133. data/app/cells/lato_core/elements/title/views/show.html.erb +4 -0
  134. data/app/cells/lato_core/inputs/checkbox/cell.rb +38 -0
  135. data/app/cells/lato_core/inputs/checkbox/views/show.html.erb +20 -0
  136. data/app/cells/lato_core/inputs/datetime/cell.rb +53 -0
  137. data/app/cells/lato_core/inputs/datetime/views/show.html.erb +19 -0
  138. data/app/cells/lato_core/inputs/dropzone/cell.rb +37 -0
  139. data/app/cells/lato_core/inputs/dropzone/views/show.html.erb +24 -0
  140. data/app/cells/lato_core/inputs/editor/cell.rb +37 -0
  141. data/app/cells/lato_core/inputs/editor/views/show.html.erb +12 -0
  142. data/app/cells/lato_core/inputs/email/cell.rb +40 -0
  143. data/app/cells/lato_core/inputs/email/views/show.html.erb +19 -0
  144. data/app/cells/lato_core/inputs/form/cell.rb +39 -0
  145. data/app/cells/lato_core/inputs/form/views/close.html.erb +1 -0
  146. data/app/cells/lato_core/inputs/form/views/open.html.erb +12 -0
  147. data/app/cells/lato_core/inputs/geolocalization/cell.rb +51 -0
  148. data/app/cells/lato_core/inputs/geolocalization/views/show.html.erb +26 -0
  149. data/app/cells/lato_core/inputs/number/cell.rb +44 -0
  150. data/app/cells/lato_core/inputs/number/views/show.html.erb +25 -0
  151. data/app/cells/lato_core/inputs/password/cell.rb +42 -0
  152. data/app/cells/lato_core/inputs/password/views/show.html.erb +21 -0
  153. data/app/cells/lato_core/inputs/select/cell.rb +56 -0
  154. data/app/cells/lato_core/inputs/select/views/show.html.erb +25 -0
  155. data/app/cells/lato_core/inputs/shared/help.html.erb +7 -0
  156. data/app/cells/lato_core/inputs/shared/label.html.erb +11 -0
  157. data/app/cells/lato_core/inputs/sortableblock/cell.rb +39 -0
  158. data/app/cells/lato_core/inputs/sortableblock/views/show.html.erb +40 -0
  159. data/app/cells/lato_core/inputs/text/cell.rb +42 -0
  160. data/app/cells/lato_core/inputs/text/views/show.html.erb +21 -0
  161. data/app/cells/lato_core/inputs/textarea/cell.rb +41 -0
  162. data/app/cells/lato_core/inputs/textarea/views/show.html.erb +16 -0
  163. data/app/cells/lato_core/widgets/index/cell.rb +215 -0
  164. data/app/cells/lato_core/widgets/index/views/partials/new.html.erb +3 -0
  165. data/app/cells/lato_core/widgets/index/views/partials/pagination.html.erb +3 -0
  166. data/app/cells/lato_core/widgets/index/views/partials/search.html.erb +17 -0
  167. data/app/cells/lato_core/widgets/index/views/show.html.erb +45 -0
  168. data/app/controllers/lato_core/api/api_controller.rb +5 -0
  169. data/app/controllers/lato_core/application_controller.rb +9 -1
  170. data/app/controllers/lato_core/back/authentication_controller.rb +33 -99
  171. data/app/controllers/lato_core/back/back_controller.rb +5 -14
  172. data/app/controllers/lato_core/back/dashboard_controller.rb +13 -0
  173. data/app/controllers/lato_core/back/superusers_controller.rb +97 -113
  174. data/app/controllers/lato_core/doc/cells_charts_controller.rb +7 -0
  175. data/app/controllers/lato_core/doc/cells_elements_controller.rb +31 -0
  176. data/app/controllers/lato_core/doc/cells_inputs_controller.rb +33 -0
  177. data/app/controllers/lato_core/doc/cells_widgets_controller.rb +10 -0
  178. data/app/controllers/lato_core/doc/doc_controller.rb +17 -0
  179. data/app/controllers/lato_core/doc/general_controller.rb +13 -0
  180. data/app/helpers/lato_core/application_helper.rb +4 -0
  181. data/app/jobs/lato_core/application_job.rb +4 -0
  182. data/app/mailers/lato_core/application_mailer.rb +2 -5
  183. data/app/models/lato_core/application_record.rb +5 -0
  184. data/app/models/lato_core/superuser.rb +11 -16
  185. data/app/models/lato_core/superuser/entity_helpers.rb +29 -0
  186. data/app/views/lato_core/back/authentication/index.html.erb +25 -0
  187. data/app/views/lato_core/back/dashboard/index.html.erb +29 -0
  188. data/app/views/lato_core/back/superusers/edit.html.erb +10 -15
  189. data/app/views/lato_core/back/superusers/index.html.erb +16 -27
  190. data/app/views/lato_core/back/superusers/new.html.erb +8 -13
  191. data/app/views/lato_core/back/superusers/shared/_form.html.erb +47 -55
  192. data/app/views/lato_core/back/superusers/show.html.erb +65 -1
  193. data/app/views/lato_core/doc/cells_charts/bar_vertical.erb +64 -0
  194. data/app/views/lato_core/doc/cells_elements/block.html.erb +172 -0
  195. data/app/views/lato_core/doc/cells_elements/button.html.erb +375 -0
  196. data/app/views/lato_core/doc/cells_elements/buttongroup.html.erb +101 -0
  197. data/app/views/lato_core/doc/cells_elements/flash_messages.html.erb +123 -0
  198. data/app/views/lato_core/doc/cells_elements/icon.html.erb +58 -0
  199. data/app/views/lato_core/doc/cells_elements/modal.html.erb +89 -0
  200. data/app/views/lato_core/doc/cells_elements/pagination.html.erb +149 -0
  201. data/app/views/lato_core/doc/cells_elements/row.html.erb +62 -0
  202. data/app/views/lato_core/doc/cells_elements/table.html.erb +272 -0
  203. data/app/views/lato_core/doc/cells_elements/table_body.html.erb +118 -0
  204. data/app/views/lato_core/doc/cells_elements/table_head.html.erb +110 -0
  205. data/app/views/lato_core/doc/cells_elements/table_row.html.erb +212 -0
  206. data/app/views/lato_core/doc/cells_elements/title.html.erb +70 -0
  207. data/app/views/lato_core/doc/cells_inputs/checkbox.html.erb +101 -0
  208. data/app/views/lato_core/doc/cells_inputs/datetime.html.erb +178 -0
  209. data/app/views/lato_core/doc/cells_inputs/dropzone.html.erb +114 -0
  210. data/app/views/lato_core/doc/cells_inputs/editor.html.erb +59 -0
  211. data/app/views/lato_core/doc/cells_inputs/email.html.erb +79 -0
  212. data/app/views/lato_core/doc/cells_inputs/form.html.erb +242 -0
  213. data/app/views/lato_core/doc/cells_inputs/geolocalization.html.erb +157 -0
  214. data/app/views/lato_core/doc/cells_inputs/number.html.erb +100 -0
  215. data/app/views/lato_core/doc/cells_inputs/password.html.erb +79 -0
  216. data/app/views/lato_core/doc/cells_inputs/select.html.erb +124 -0
  217. data/app/views/lato_core/doc/cells_inputs/sortableblock.html.erb +72 -0
  218. data/app/views/lato_core/doc/cells_inputs/text.html.erb +204 -0
  219. data/app/views/lato_core/doc/cells_inputs/textarea.html.erb +104 -0
  220. data/app/views/lato_core/doc/cells_widgets/index.html.erb +163 -0
  221. data/app/views/lato_core/doc/doc/index.html.erb +95 -0
  222. data/app/views/lato_core/doc/general/generators.html.erb +60 -0
  223. data/app/views/lato_core/doc/general/installation.html.erb +49 -0
  224. data/app/views/lato_core/doc/general/languages.html.erb +67 -0
  225. data/app/views/lato_core/doc/general/personalization.html.erb +177 -0
  226. data/app/views/lato_core/doc/shared/_modal_content.html.erb +4 -0
  227. data/app/views/lato_core/doc/shared/_sortableblock_partial.html.erb +1 -0
  228. data/app/views/lato_core/partials/_dynamic_data_to_js.html.erb +3 -0
  229. data/app/views/lato_core/partials/_gmaps.html.erb +5 -0
  230. data/app/views/lato_core/widgets/_systeminfo.html.erb +15 -0
  231. data/app/views/layouts/lato_core/admin.html.erb +44 -0
  232. data/app/views/layouts/lato_core/authentication.html.erb +22 -0
  233. data/app/views/layouts/lato_core/partials/_back.html.erb +5 -0
  234. data/app/views/layouts/lato_core/partials/_load_javascript.html.erb +4 -0
  235. data/app/views/layouts/lato_core/partials/_load_partials.html.erb +5 -0
  236. data/app/views/layouts/lato_core/partials/_load_stylesheet.html.erb +4 -0
  237. data/app/views/layouts/lato_core/partials/_logo.html.erb +9 -0
  238. data/app/views/layouts/lato_core/partials/_menu.html.erb +67 -0
  239. data/app/views/layouts/lato_core/partials/_profile.html.erb +19 -0
  240. data/app/views/layouts/lato_core/partials/_title.html.erb +3 -0
  241. data/app/views/layouts/lato_core/partials/_widgets.html.erb +13 -0
  242. data/config/configs.yml +102 -0
  243. data/config/initializers/assets.rb +9 -0
  244. data/config/initializers/init_system.rb +39 -0
  245. data/config/languages/default.yml +63 -0
  246. data/config/languages/it.yml +63 -0
  247. data/config/routes.rb +10 -13
  248. data/config/routes/api.rb +3 -0
  249. data/config/routes/back.rb +10 -0
  250. data/config/routes/doc.rb +48 -0
  251. data/db/migrate/20160224181217_create_lato_core_superusers.rb +8 -2
  252. data/lib/generators/lato_core/crud_generator.rb +26 -0
  253. data/lib/generators/lato_core/initializer_generator.rb +46 -0
  254. data/lib/generators/lato_core/templates/assets/images/logo.svg +13 -0
  255. data/{config/initializers/lists.rb → lib/generators/lato_core/templates/assets/javascripts/application.js} +0 -0
  256. data/lib/generators/lato_core/templates/assets/stylesheets/application.scss +2 -0
  257. data/lib/generators/lato_core/templates/assets/stylesheets/theme.scss.erb +13 -0
  258. data/lib/generators/lato_core/templates/controllers/application_controller.rb +13 -0
  259. data/lib/generators/lato_core/templates/controllers/crud_controller.rb +87 -0
  260. data/lib/generators/lato_core/templates/views/application/index.html.erb +16 -0
  261. data/lib/generators/lato_core/templates/views/crud/edit.html.erb +18 -0
  262. data/lib/generators/lato_core/templates/views/crud/index.html.erb +29 -0
  263. data/lib/generators/lato_core/templates/views/crud/new.html.erb +18 -0
  264. data/lib/generators/lato_core/templates/views/crud/shared/_form.html.erb +25 -0
  265. data/lib/generators/lato_core/templates/views/crud/show.html.erb +16 -0
  266. data/lib/lato_core.rb +6 -5
  267. data/lib/lato_core/cell.rb +28 -0
  268. data/lib/lato_core/engine.rb +16 -13
  269. data/lib/lato_core/helper.rb +11 -0
  270. data/lib/lato_core/helpers/cells.rb +20 -0
  271. data/lib/lato_core/helpers/general.rb +16 -0
  272. data/lib/lato_core/interface.rb +17 -14
  273. data/lib/lato_core/interfaces/apihelpers.rb +39 -0
  274. data/lib/lato_core/interfaces/application.rb +65 -0
  275. data/lib/lato_core/interfaces/authentication.rb +41 -0
  276. data/lib/lato_core/interfaces/cells.rb +41 -0
  277. data/lib/lato_core/interfaces/general.rb +39 -0
  278. data/lib/lato_core/interfaces/layout.rb +213 -0
  279. data/lib/lato_core/interfaces/modules.rb +110 -0
  280. data/lib/lato_core/interfaces/token.rb +25 -0
  281. data/lib/lato_core/version.rb +3 -0
  282. data/lib/tasks/lato_core_tasks.rake +4 -8
  283. data/lib/tasks/lato_tasks.rake +83 -0
  284. metadata +407 -33
  285. data/app/controllers/lato_core/api/v1/api_controller.rb +0 -8
  286. data/app/mailers/lato_core/superusers_mailer.rb +0 -27
  287. data/app/views/lato_core/back/authentication/login.html.erb +0 -45
  288. data/app/views/lato_core/back/authentication/password_edit.html.erb +0 -45
  289. data/app/views/lato_core/back/authentication/password_forget.html.erb +0 -36
  290. data/app/views/lato_core/back/back/home.html.erb +0 -20
  291. data/app/views/lato_core/mailers/layouts/mailer.html.erb +0 -9
  292. data/app/views/lato_core/mailers/layouts/mailer.text.erb +0 -1
  293. data/app/views/lato_core/mailers/superusers/notify.html.erb +0 -2
  294. data/app/views/lato_core/mailers/superusers/recover_password.html.erb +0 -4
  295. data/config/config.yml +0 -8
  296. data/config/example.yml +0 -66
  297. data/config/initializers/init.rb +0 -15
  298. data/config/initializers/ram.rb +0 -14
  299. data/lang/default.yml +0 -61
  300. data/lang/en.yml +0 -61
  301. data/lib/lato_core/interface/authentication.rb +0 -26
  302. data/lib/lato_core/interface/cache.rb +0 -23
  303. data/lib/lato_core/interface/communication.rb +0 -87
  304. data/lib/lato_core/interface/languages.rb +0 -51
  305. data/lib/lato_core/interface/navigation.rb +0 -95
  306. data/lib/lato_core/interface/session.rb +0 -57
  307. data/lib/lato_core/interface/superusers.rb +0 -134
@@ -0,0 +1,63 @@
1
+ menu:
2
+ dashboard: Dashboard
3
+ superusers: Amministratori
4
+ superusers_new: Aggiungi nuovo
5
+ superusers_index: Visualizza tutti
6
+ documentation: Doc. Core
7
+
8
+ forms:
9
+ username: Username
10
+ password: Password
11
+ name: Nome
12
+ surname: Cognome
13
+ email: Email
14
+ password_confirmation: Conferma password
15
+ username_help: L'username deve contenere almeno 4 caratteri
16
+ password_help: La password deve contenere almeno 6 caratteri
17
+ password_confirmation_help: Perfavore, ripeti la password inserita
18
+ permission: Permessi
19
+ id: Id
20
+ biography: Biografia
21
+ last_login_ip_address: Indirizzo IP dell'ultimo accesso
22
+ last_login_datetime: Timestamp dell'ultimo accesso
23
+
24
+ flashes:
25
+ user_not_found: Utente non trovato
26
+ uncorrect_password: Password non corretta
27
+ logout_success: Logout avvenuto correttamente
28
+ superuser_create_success: Amministratore creato con successo
29
+ superuser_not_found: L'amministratore cercato non è presente nel sistema
30
+ superuser_not_permission: Non disponi dei permessi necessari per compiere questa azione
31
+ superuser_update_success: Amministratore aggiornato con successo
32
+ superuser_destroy_success: Amministratore eliminato con successo
33
+
34
+ pages:
35
+ dashboard: Dashboard
36
+ documentation: Documentazione
37
+ superusers: Amministratori
38
+ superusers_new: Crea amministratore
39
+ superusers_edit: Modifica amministratore
40
+ superusers_show: Profilo amministratore
41
+
42
+ mixed:
43
+ close_message: Chiudi messaggio
44
+ logout: Logout
45
+ login: Login
46
+ save: Salva
47
+ cancel: Cancella
48
+ no_records: Nessun dato da visualizzare
49
+ actions: Azioni
50
+ show: Visualizza
51
+ edit: Modifica
52
+ delete: Elimina
53
+ new: Nuovo
54
+ default_delete_message: Sei sicuro di completare l'eliminazione?
55
+ default_delete_positive_response: Conferma
56
+ default_delete_negative_response: Annulla
57
+ search: Cerca
58
+ main_informations: Informazioni principali
59
+ login_informations: Informazioni di accesso
60
+ my_profile: Il mio profilo
61
+ security_informations: Informazioni di sicurezza
62
+ back: Indietro
63
+ close: Chiudi
@@ -1,19 +1,16 @@
1
1
  LatoCore::Engine.routes.draw do
2
-
3
- root 'back/back#home'
4
2
 
5
- # Authentication
6
- get 'login', to: 'back/authentication#login', as: 'login'
7
- post 'exec_login', to: 'back/authentication#exec_login', as: 'exec_login'
8
- delete 'exec_logout', to: 'back/authentication#exec_logout', as: 'exec_logout'
3
+ # load custom routes files
4
+ def draw(routes_name)
5
+ instance_eval(File.read(LatoCore::Engine.root.join("config/routes/#{routes_name}.rb")))
6
+ end
9
7
 
10
- # Password recovery
11
- get 'password_forget', to: 'back/authentication#password_forget', as: 'password_forget'
12
- post 'password_recover', to: 'back/authentication#password_recover', as: 'password_recover'
13
- get 'password_edit/:token', to: 'back/authentication#password_edit', as: 'password_edit'
14
- post 'password_update', to: 'back/authentication#password_update', as: 'password_update'
8
+ # set root path
9
+ root 'application#index'
15
10
 
16
- # Superusers
17
- resources :superusers, module: 'back'
11
+ # import routes
12
+ draw :api
13
+ draw :back
14
+ draw :doc
18
15
 
19
16
  end
@@ -0,0 +1,3 @@
1
+ namespace :api do
2
+
3
+ end
@@ -0,0 +1,10 @@
1
+ # main routes
2
+ get 'login', to: 'back/authentication#index', as: 'login'
3
+ get 'dashboard', to: 'back/dashboard#index', as: 'dashboard'
4
+
5
+ # authentication
6
+ post 'authentication/exec_login', to: 'back/authentication#exec_login', as: 'authentication_exec_login'
7
+ post 'authentication/exec_logout', to: 'back/authentication#exec_logout', as: 'authentication_exec_logout'
8
+
9
+ # superusers
10
+ resources :superusers, module: 'back'
@@ -0,0 +1,48 @@
1
+ namespace :doc do
2
+
3
+ root 'doc#index'
4
+
5
+ # general
6
+ get 'general_installation', to: 'general#installation', as: 'general_installation'
7
+ get 'general_personalization', to: 'general#personalization', as: 'general_personalization'
8
+ get 'general_languages', to: 'general#languages', as: 'general_languages'
9
+ get 'general_generators', to: 'general#generators', as: 'general_generators'
10
+ # cells elements
11
+ get 'cells_elements_row', to: 'cells_elements#row', as: 'cells_elements_row'
12
+ get 'cells_elements_block', to: 'cells_elements#block', as: 'cells_elements_block'
13
+ get 'cells_elements_button', to: 'cells_elements#button', as: 'cells_elements_button'
14
+ get 'cells_elements_buttongroup', to: 'cells_elements#buttongroup', as: 'cells_elements_buttongroup'
15
+ get 'cells_elements_flash', to: 'cells_elements#flash_messages', as: 'cells_elements_flash'
16
+ get 'cells_elements_icon', to: 'cells_elements#icon', as: 'cells_elements_icon'
17
+ get 'cells_elements_title', to: 'cells_elements#title', as: 'cells_elements_title'
18
+ get 'cells_elements_table', to: 'cells_elements#table', as: 'cells_elements_table'
19
+ get 'cells_elements_table_head', to: 'cells_elements#table_head', as: 'cells_elements_table_head'
20
+ get 'cells_elements_table_body', to: 'cells_elements#table_body', as: 'cells_elements_table_body'
21
+ get 'cells_elements_table_row', to: 'cells_elements#table_row', as: 'cells_elements_table_row'
22
+ get 'cells_elements_pagination', to: 'cells_elements#pagination', as: 'cells_elements_pagination'
23
+ get 'cells_elements_modal', to: 'cells_elements#modal', as: 'cells_elements_modal'
24
+
25
+ # cells inputs
26
+ get 'cells_inputs_form', to: 'cells_inputs#form', as: 'cells_inputs_form'
27
+ get 'cells_inputs_text', to: 'cells_inputs#text', as: 'cells_inputs_text'
28
+ get 'cells_inputs_number', to: 'cells_inputs#number', as: 'cells_inputs_number'
29
+ get 'cells_inputs_password', to: 'cells_inputs#password', as: 'cells_inputs_password'
30
+ get 'cells_inputs_email', to: 'cells_inputs#email', as: 'cells_inputs_email'
31
+ get 'cells_inputs_select', to: 'cells_inputs#select', as: 'cells_inputs_select'
32
+ get 'cells_inputs_textarea', to: 'cells_inputs#textarea', as: 'cells_inputs_textarea'
33
+ get 'cells_inputs_datetime', to: 'cells_inputs#datetime', as: 'cells_inputs_datetime'
34
+ get 'cells_inputs_checkbox', to: 'cells_inputs#checkbox', as: 'cells_inputs_checkbox'
35
+ get 'cells_inputs_editor', to: 'cells_inputs#editor', as: 'cells_inputs_editor'
36
+ get 'cells_inputs_dropzone', to: 'cells_inputs#dropzone', as: 'cells_inputs_dropzone'
37
+ post 'cells_inputs_dropzone_exec', to: 'cells_inputs#dropzone_exec', as: 'cells_inputs_dropzone_exec'
38
+ get 'cells_inputs_geolocalization', to: 'cells_inputs#geolocalization', as: 'cells_inputs_geolocalization'
39
+ get 'cells_inputs_sortableblock', to: 'cells_inputs#sortableblock', as: 'cells_inputs_sortableblock'
40
+
41
+ # cells charts
42
+
43
+ get 'cells_charts_bar_vertical', to: 'cells_charts#bar_vertical', as: 'cells_charts_bar_vertical'
44
+
45
+ # cells widgets
46
+ get 'cells_widgets_index', to: 'cells_widgets#index', as: 'cells_widgets_index'
47
+
48
+ end
@@ -1,15 +1,21 @@
1
- class CreateLatoCoreSuperusers < ActiveRecord::Migration
1
+ class CreateLatoCoreSuperusers < ActiveRecord::Migration[5.1]
2
2
  def change
3
3
 
4
4
  create_table :lato_core_superusers do |t|
5
5
  t.string :name
6
+ t.string :surname
7
+ t.text :biography
6
8
  t.string :username
7
9
  t.string :email
8
10
  t.integer :permission
9
- t.string :session_code
11
+
12
+ t.datetime :last_login_datetime
13
+ t.string :last_login_ip_address
14
+
10
15
  t.string :password_digest
11
16
 
12
17
  t.timestamps null: false
13
18
  end
19
+
14
20
  end
15
21
  end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails/generators/base'
4
+
5
+ module LatoCore
6
+ # CrudGenerator.
7
+ class CrudGenerator < Rails::Generators::Base
8
+
9
+ source_root File.expand_path('../templates', __FILE__)
10
+
11
+ desc 'This function initialize your Rails project to get all crud files.'
12
+ def create_crud_file
13
+ # copy controller
14
+ copy_file(
15
+ 'controllers/crud_controller.rb',
16
+ 'app/controllers/lato/crud_controller.rb'
17
+ )
18
+ # copy views
19
+ directory(
20
+ 'views/crud',
21
+ 'app/views/lato/crud'
22
+ )
23
+ end
24
+
25
+ end
26
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails/generators/base'
4
+
5
+ module LatoCore
6
+ # InitializerGenerator.
7
+ class InitializerGenerator < Rails::Generators::Base
8
+
9
+ source_root File.expand_path('../templates', __FILE__)
10
+
11
+ desc 'This function initialize your Rails project to support Lato.'
12
+ def create_initializer_file
13
+ # copy controller
14
+ copy_file(
15
+ 'controllers/application_controller.rb',
16
+ 'app/controllers/lato/application_controller.rb'
17
+ )
18
+ # copy view
19
+ copy_file(
20
+ 'views/application/index.html.erb',
21
+ 'app/views/lato/application/index.html.erb'
22
+ )
23
+ # copy stylesheets theme file
24
+ copy_file(
25
+ 'assets/stylesheets/theme.scss.erb',
26
+ 'app/assets/stylesheets/lato/theme.scss.erb'
27
+ )
28
+ # copy stylesheets application file
29
+ copy_file(
30
+ 'assets/stylesheets/application.scss',
31
+ 'app/assets/stylesheets/lato/application.scss'
32
+ )
33
+ # copy javascripts application file
34
+ copy_file(
35
+ 'assets/javascripts/application.js',
36
+ 'app/assets/javascripts/lato/application.js'
37
+ )
38
+ # copy images logo file
39
+ copy_file(
40
+ 'assets/images/logo.svg',
41
+ 'app/assets/images/lato/logo.svg'
42
+ )
43
+ end
44
+
45
+ end
46
+ end
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="427px" height="122px" viewBox="0 0 427 122" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <!-- Generator: Sketch 42 (36781) - http://www.bohemiancoding.com/sketch -->
4
+ <title>logo</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
8
+ <g id="logo" transform="translate(0.000000, -1.000000)" fill-rule="nonzero" fill="#FFFFFF">
9
+ <path d="M363.017,122.17 C346.272,121.69 331.412,116.627 318.984,105.216 C311.982,98.786 306.887,90.993 303.68,82.088 C300.498,73.255 299.54,64.085 300.423,54.702 C301.827,39.778 308.135,27.316 319.123,17.235 C326.843,10.152 335.941,5.698 346.115,3.107 C354.648,0.934 363.305,0.474 371.843,1.575 C389.977,3.915 405.123,11.945 415.757,27.308 C420.189,33.712 423.142,40.728 424.727,48.436 C426.244,55.806 426.499,63.209 425.307,70.472 C422.257,89.07 412.667,103.547 396.312,113.19 C390.135,116.833 386.102,118.143 380.882,119.73 C376.837,120.41 371.147,121.963 363.017,122.17 L363.017,122.17 Z M362.985,95.425 C381.975,95.457 396.248,80.255 396.263,60.871 C396.278,41.747 382.225,27.543 363.193,27.451 C344.21,27.357 329.871,41.337 329.799,60.811 C329.727,79.951 343.716,95.345 362.984,95.426 L362.985,95.425 Z M205.103,119.55 C203.819,119.666 203.013,119.802 202.206,119.804 C194.294,119.822 186.381,119.754 178.471,119.864 C176.477,119.891 175.395,119.169 174.881,117.339 C173.411,112.116 171.954,106.889 170.438,101.679 C169.823,99.566 169.068,97.493 168.348,95.317 C156.783,95.317 145.38,95.281 133.978,95.4 C133.242,95.41 132.102,96.475 131.858,97.266 C130.288,102.379 128.908,107.551 127.473,112.706 C127.053,114.213 126.628,115.72 126.249,117.239 C125.756,119.213 124.615,119.904 122.511,119.869 C114.684,119.739 106.854,119.823 99.026,119.803 C96.304,119.796 95.82,119.01 96.701,116.453 C99.696,107.755 102.631,99.037 105.629,90.343 C109.129,80.196 112.703,70.075 116.189,59.923 C118.671,52.691 121.039,45.419 123.499,38.178 C126.056,30.648 128.674,23.141 131.236,15.614 C132.374,12.269 133.5,8.918 134.509,5.534 C134.972,3.979 135.663,3.168 137.434,3.182 C146.178,3.249 154.924,3.24 163.668,3.192 C165.386,3.182 166.078,3.9 166.6,5.515 C168.687,11.987 170.983,18.393 173.156,24.838 C175.652,32.24 178.062,39.671 180.581,47.065 C183.067,54.357 185.676,61.607 188.171,68.895 C190.644,76.128 193.026,83.392 195.478,90.632 C198.032,98.174 200.636,105.699 203.188,113.242 C203.84,115.172 204.376,117.142 205.104,119.547 L205.103,119.55 Z M161.533,72.174 L150.573,31.766 L139.446,72.174 L161.532,72.174 L161.533,72.174 Z M197.416,31.43 C197.416,22.26 197.386,13.525 197.486,4.792 C197.492,4.262 198.458,3.667 199.076,3.249 C199.363,3.055 199.888,3.215 200.304,3.215 C231.457,3.215 262.61,3.245 293.764,3.155 C296.292,3.149 297.104,3.827 297.06,6.348 C296.93,13.675 296.947,21.008 297.06,28.336 C297.094,30.656 296.473,31.521 293.98,31.486 C284.07,31.346 274.156,31.506 264.246,31.371 C261.961,31.341 261.476,32.084 261.481,34.205 C261.541,61.61 261.521,89.015 261.521,116.419 C261.521,119.806 261.515,119.816 258.085,119.817 C250.588,119.821 243.091,119.765 235.595,119.841 C233.361,119.863 232.579,119.124 232.585,116.791 C232.657,89.553 232.629,62.315 232.625,35.077 C232.625,31.433 232.621,31.432 228.973,31.432 L200.985,31.432 C199.92,31.43 198.855,31.43 197.417,31.43 L197.416,31.43 Z M28.624,3.216 L28.624,90.013 C28.624,93.311 28.629,93.319 31.831,93.319 C49.991,93.321 68.151,93.372 86.308,93.261 C88.868,93.245 89.534,93.953 89.466,96.478 C89.286,103.218 89.33,109.971 89.466,116.716 C89.51,118.981 88.806,119.844 86.514,119.841 C58.609,119.801 30.704,119.793 2.8,119.863 C0.008,119.87 -0.002,118.311 -8.8817842e-16,116.317 C0.025,94.575 0.018,72.835 0.02,51.094 C0.02,36.27 0.016,21.442 0.024,6.615 C0.026,3.199 0.044,3.203 3.506,3.205 C10.836,3.211 18.166,3.212 25.496,3.215 L28.624,3.215 L28.624,3.216 Z" id="Shape"></path>
10
+ <path d="M362.916,43.035 C373.851,42.905 381.462,51.901 381.539,61.4 C381.625,72.17 372.889,80.314 362.836,80.3 C353.036,80.29 344.281,72.166 344.249,61.553 C344.221,52.27 352.169,42.673 362.915,43.035 L362.916,43.035 Z" id="Shape"></path>
11
+ </g>
12
+ </g>
13
+ </svg>
@@ -0,0 +1,2 @@
1
+ // Import theme.
2
+ @import 'theme';
@@ -0,0 +1,13 @@
1
+ <%
2
+ colors = core__get_colors
3
+ %>
4
+
5
+ // Set theme colors from the lato configuration.
6
+ $color_white: <%= colors[:white] %>;
7
+ $color_black: <%= colors[:black] %>;
8
+ $color_grey: <%= colors[:grey] %>;
9
+ $color_main: <%= colors[:main] %>;
10
+ $color_active: <%= colors[:active] %>;
11
+ $color_danger: <%= colors[:danger] %>;
12
+ $color_warning: <%= colors[:warning] %>;
13
+ $color_success: <%= colors[:success] %>;
@@ -0,0 +1,13 @@
1
+ class Lato::ApplicationController < ApplicationController
2
+
3
+ layout 'lato_core/admin'
4
+
5
+ before_action :core__cells_initialize
6
+ before_action :core__manage_superuser_session
7
+
8
+ def index
9
+ core__set_menu_active_item('sample_page')
10
+ core__set_header_active_page_title('Sample page')
11
+ end
12
+
13
+ end
@@ -0,0 +1,87 @@
1
+ class Lato::CrudController < Lato::ApplicationController
2
+
3
+ before_action do
4
+ core__set_menu_active_item('crud')
5
+ end
6
+
7
+ def index
8
+ core__set_header_active_page_title('Index')
9
+ @datas = Data.all
10
+ @widget_index_datas = core__widgets_index(
11
+ @datas,
12
+ search: 'search_key',
13
+ pagination: 10
14
+ )
15
+ end
16
+
17
+ def show
18
+ core__set_header_active_page_title('Show')
19
+ @data = Data.find_by(id: params[:id])
20
+ return unless check_data_presence
21
+ end
22
+
23
+ def new
24
+ core__set_header_active_page_title('New')
25
+ @data = Data.new
26
+ end
27
+
28
+ def create
29
+ @data = Data.new(data_params)
30
+
31
+ unless @data.save
32
+ flash[:danger] = @data.errors.full_messages.to_sentence
33
+ redirect_to new_lato_data_path
34
+ return
35
+ end
36
+
37
+ flash[:success] = 'Data created succesfully'
38
+ redirect_to lato_data_path(@data.id)
39
+ end
40
+
41
+ def edit
42
+ core__set_header_active_page_title('Edit')
43
+ @data = Data.find_by(id: params[:id])
44
+ return unless check_data_presence
45
+ end
46
+
47
+ def update
48
+ @data = Data.find_by(id: params[:id])
49
+ return unless check_data_presence
50
+
51
+ unless @data.update(data_params)
52
+ flash[:danger] = @data.errors.full_messages.to_sentence
53
+ redirect_to edit_lato_data_path(@data.id)
54
+ return
55
+ end
56
+
57
+ flash[:success] = 'Data updated succesfully'
58
+ redirect_to lato_data_path(@data.id)
59
+ end
60
+
61
+ def destroy
62
+ @data = Data.find_by(id: params[:id])
63
+ return unless check_data_presence
64
+
65
+ unless @data.destroy
66
+ flash[:danger] = @data.errors.full_messages.to_sentence
67
+ redirect_to lato_data_path(@data.id)
68
+ return
69
+ end
70
+
71
+ flash[:success] = 'Data destroyed succesfully'
72
+ redirect_to lato_datas_path
73
+ end
74
+
75
+ private
76
+
77
+ def data_params
78
+ params.require(:data).permit(:name)
79
+ end
80
+
81
+ def check_data_presence
82
+ return true if @data
83
+ redirect_to lato_datas_path
84
+ false
85
+ end
86
+
87
+ end
@@ -0,0 +1,16 @@
1
+ <%
2
+ row = cell(:elements, :row).new
3
+ block = cell(:elements, :block).new(class: 'xs-12 sm-12 md-12')
4
+ %>
5
+
6
+ <!-- MAIN CONTAINER -->
7
+ <%=raw row.open %>
8
+
9
+ <%=raw block.open %>
10
+
11
+ <%=raw cell(:elements, :title).new(label: "Welcome to this Lato sample page", size: 2) %>
12
+
13
+ <%=raw block.close %>
14
+
15
+ <%=raw row.close %>
16
+ <!-- / MAIN CONTAINER -->
@@ -0,0 +1,18 @@
1
+ <%
2
+ row = cell(:elements, :row).new
3
+ block = cell(:elements, :block).new(class: 'xs-12 sm-12 md-12')
4
+ %>
5
+
6
+ <!-- MAIN CONTAINER -->
7
+ <%=raw row.open %>
8
+
9
+ <%=raw block.open %>
10
+
11
+ <%=raw cell(:elements, :title).new(label: 'Edit data', size: 2) %>
12
+
13
+ <%= render 'lato/crud/shared/form', url: lato_data_path(@data.id), method: :put %>
14
+
15
+ <%=raw block.close %>
16
+
17
+ <%=raw row.close %>
18
+ <!-- / MAIN CONTAINER -->
@@ -0,0 +1,29 @@
1
+ <%
2
+ row = cell(:elements, :row).new
3
+ block = cell(:elements, :block).new(class: 'xs-12 sm-12 md-12')
4
+ %>
5
+
6
+ <!-- MAIN CONTAINER -->
7
+ <%=raw row.open %>
8
+
9
+ <%=raw block.open %>
10
+
11
+ <%=raw cell(:widgets, :index).new(
12
+ records: @widget_index_datas,
13
+ index_url: lato_datas_path,
14
+ head: ['Id', 'Name'],
15
+ columns: [:id, :name],
16
+ search: true,
17
+ pagination: true,
18
+ actions: {
19
+ edit: true,
20
+ new: true,
21
+ delete: true,
22
+ show: true,
23
+ }
24
+ ) %>
25
+
26
+ <%=raw block.close %>
27
+
28
+ <%=raw row.close %>
29
+ <!-- / MAIN CONTAINER -->