lipsiadmin 2.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (467) hide show
  1. data/CHANGELOG +90 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README +60 -0
  4. data/Rakefile +90 -0
  5. data/init.rb +1 -0
  6. data/lib/access_control/authentication.rb +105 -0
  7. data/lib/access_control/base.rb +227 -0
  8. data/lib/controller/ext.rb +168 -0
  9. data/lib/controller/lipsiadmin_controller.rb +18 -0
  10. data/lib/controller/pdf_builder.rb +67 -0
  11. data/lib/controller/rescue.rb +72 -0
  12. data/lib/controller/responds_to_parent.rb +56 -0
  13. data/lib/data_base/attachment.rb +351 -0
  14. data/lib/data_base/attachment/attach.rb +515 -0
  15. data/lib/data_base/attachment/geometry.rb +117 -0
  16. data/lib/data_base/attachment/iostream.rb +62 -0
  17. data/lib/data_base/attachment/processor.rb +49 -0
  18. data/lib/data_base/attachment/storage.rb +223 -0
  19. data/lib/data_base/attachment/thumbnail.rb +72 -0
  20. data/lib/data_base/attachment/upfile.rb +45 -0
  21. data/lib/data_base/attachment_table.rb +142 -0
  22. data/lib/data_base/translate_attributes.rb +30 -0
  23. data/lib/data_base/utility_scopes.rb +40 -0
  24. data/lib/data_base/without_table.rb +62 -0
  25. data/lib/generator.rb +114 -0
  26. data/lib/lipsiadmin.rb +77 -0
  27. data/lib/lipsiadmin_tasks.rb +3 -0
  28. data/lib/locale/en.yml +16 -0
  29. data/lib/locale/it.yml +16 -0
  30. data/lib/mailer/exception/exception.html.erb +11 -0
  31. data/lib/mailer/exception_notifier.rb +46 -0
  32. data/lib/mailer/pdf_builder.rb +66 -0
  33. data/lib/utils/html_entities.rb +63 -0
  34. data/lib/utils/literal.rb +20 -0
  35. data/lib/version.rb +9 -0
  36. data/lib/view/helpers/active_record_helper.rb +11 -0
  37. data/lib/view/helpers/backend_helper.rb +132 -0
  38. data/lib/view/helpers/ext/column_model.rb +73 -0
  39. data/lib/view/helpers/ext/component.rb +163 -0
  40. data/lib/view/helpers/ext/configuration.rb +36 -0
  41. data/lib/view/helpers/ext/grid.rb +281 -0
  42. data/lib/view/helpers/ext/store.rb +103 -0
  43. data/lib/view/helpers/ext/templates/grid_functions.js.erb +51 -0
  44. data/lib/view/helpers/ext/tool_bar.rb +40 -0
  45. data/lib/view/helpers/ext_helper.rb +150 -0
  46. data/lib/view/helpers/view_helper.rb +222 -0
  47. data/lipsiadmin_generators/attachment/REMEMBER +21 -0
  48. data/lipsiadmin_generators/attachment/attachment_generator.rb +27 -0
  49. data/lipsiadmin_generators/attachment/templates/migration.rb +14 -0
  50. data/lipsiadmin_generators/attachment/templates/model.rb +4 -0
  51. data/lipsiadmin_generators/backend/REMEMBER +18 -0
  52. data/lipsiadmin_generators/backend/backend_generator.rb +58 -0
  53. data/lipsiadmin_generators/backend/templates/config/config.yml +14 -0
  54. data/lipsiadmin_generators/backend/templates/config/initializers/config.rb +7 -0
  55. data/lipsiadmin_generators/backend/templates/config/initializers/emails.rb +2 -0
  56. data/lipsiadmin_generators/backend/templates/config/initializers/exception_notifier.rb +7 -0
  57. data/lipsiadmin_generators/backend/templates/config/locales/backend/en.yml +204 -0
  58. data/lipsiadmin_generators/backend/templates/config/locales/backend/it.yml +203 -0
  59. data/lipsiadmin_generators/backend/templates/config/locales/frontend/en.yml +5 -0
  60. data/lipsiadmin_generators/backend/templates/config/locales/frontend/it.yml +5 -0
  61. data/lipsiadmin_generators/backend/templates/config/locales/models/en.yml +31 -0
  62. data/lipsiadmin_generators/backend/templates/config/locales/models/it.yml +23 -0
  63. data/lipsiadmin_generators/backend/templates/config/locales/rails/en.yml +148 -0
  64. data/lipsiadmin_generators/backend/templates/config/locales/rails/it.yml +109 -0
  65. data/lipsiadmin_generators/backend/templates/controllers/backend/accounts_controller.rb +53 -0
  66. data/lipsiadmin_generators/backend/templates/controllers/backend/base_controller.rb +8 -0
  67. data/lipsiadmin_generators/backend/templates/controllers/backend/sessions_controller.rb +21 -0
  68. data/lipsiadmin_generators/backend/templates/controllers/backend_controller.rb +2 -0
  69. data/lipsiadmin_generators/backend/templates/controllers/frontend_controller.rb +4 -0
  70. data/lipsiadmin_generators/backend/templates/controllers/javascripts_controller.rb +17 -0
  71. data/lipsiadmin_generators/backend/templates/exceptions/template.html.haml +5 -0
  72. data/lipsiadmin_generators/backend/templates/helpers/backend_helper.rb +2 -0
  73. data/lipsiadmin_generators/backend/templates/helpers/frontend_helper.rb +2 -0
  74. data/lipsiadmin_generators/backend/templates/images/backend/back.gif +0 -0
  75. data/lipsiadmin_generators/backend/templates/images/backend/background.png +0 -0
  76. data/lipsiadmin_generators/backend/templates/images/backend/bg-content.png +0 -0
  77. data/lipsiadmin_generators/backend/templates/images/backend/bg-hd-slate.png +0 -0
  78. data/lipsiadmin_generators/backend/templates/images/backend/bg-hd.png +0 -0
  79. data/lipsiadmin_generators/backend/templates/images/backend/bg-intro.png +0 -0
  80. data/lipsiadmin_generators/backend/templates/images/backend/bg-login.png +0 -0
  81. data/lipsiadmin_generators/backend/templates/images/backend/bg-menu-slate.png +0 -0
  82. data/lipsiadmin_generators/backend/templates/images/backend/bg-menu.png +0 -0
  83. data/lipsiadmin_generators/backend/templates/images/backend/bg.png +0 -0
  84. data/lipsiadmin_generators/backend/templates/images/backend/btn-login.png +0 -0
  85. data/lipsiadmin_generators/backend/templates/images/backend/delete.gif +0 -0
  86. data/lipsiadmin_generators/backend/templates/images/backend/download.gif +0 -0
  87. data/lipsiadmin_generators/backend/templates/images/backend/duplicate.gif +0 -0
  88. data/lipsiadmin_generators/backend/templates/images/backend/edit.gif +0 -0
  89. data/lipsiadmin_generators/backend/templates/images/backend/hd-bg-slate.gif +0 -0
  90. data/lipsiadmin_generators/backend/templates/images/backend/hd-bg.gif +0 -0
  91. data/lipsiadmin_generators/backend/templates/images/backend/it.gif +0 -0
  92. data/lipsiadmin_generators/backend/templates/images/backend/loader.gif +0 -0
  93. data/lipsiadmin_generators/backend/templates/images/backend/logo-loader.png +0 -0
  94. data/lipsiadmin_generators/backend/templates/images/backend/logo-small.png +0 -0
  95. data/lipsiadmin_generators/backend/templates/images/backend/new.gif +0 -0
  96. data/lipsiadmin_generators/backend/templates/images/backend/no-image.png +0 -0
  97. data/lipsiadmin_generators/backend/templates/images/backend/preview.gif +0 -0
  98. data/lipsiadmin_generators/backend/templates/images/backend/print.gif +0 -0
  99. data/lipsiadmin_generators/backend/templates/images/backend/save.gif +0 -0
  100. data/lipsiadmin_generators/backend/templates/images/backend/support.gif +0 -0
  101. data/lipsiadmin_generators/backend/templates/images/backend/us.gif +0 -0
  102. data/lipsiadmin_generators/backend/templates/images/ext/default/box/corners-blue.gif +0 -0
  103. data/lipsiadmin_generators/backend/templates/images/ext/default/box/corners.gif +0 -0
  104. data/lipsiadmin_generators/backend/templates/images/ext/default/box/l-blue.gif +0 -0
  105. data/lipsiadmin_generators/backend/templates/images/ext/default/box/l.gif +0 -0
  106. data/lipsiadmin_generators/backend/templates/images/ext/default/box/r-blue.gif +0 -0
  107. data/lipsiadmin_generators/backend/templates/images/ext/default/box/r.gif +0 -0
  108. data/lipsiadmin_generators/backend/templates/images/ext/default/box/tb-blue.gif +0 -0
  109. data/lipsiadmin_generators/backend/templates/images/ext/default/box/tb-slate.gif +0 -0
  110. data/lipsiadmin_generators/backend/templates/images/ext/default/box/tb.gif +0 -0
  111. data/lipsiadmin_generators/backend/templates/images/ext/default/button/btn-arrow.gif +0 -0
  112. data/lipsiadmin_generators/backend/templates/images/ext/default/button/btn-sprite.gif +0 -0
  113. data/lipsiadmin_generators/backend/templates/images/ext/default/dd/drop-add.gif +0 -0
  114. data/lipsiadmin_generators/backend/templates/images/ext/default/dd/drop-no.gif +0 -0
  115. data/lipsiadmin_generators/backend/templates/images/ext/default/dd/drop-yes.gif +0 -0
  116. data/lipsiadmin_generators/backend/templates/images/ext/default/editor/tb-sprite.gif +0 -0
  117. data/lipsiadmin_generators/backend/templates/images/ext/default/form/clear-trigger.gif +0 -0
  118. data/lipsiadmin_generators/backend/templates/images/ext/default/form/clear-trigger.psd +0 -0
  119. data/lipsiadmin_generators/backend/templates/images/ext/default/form/date-trigger.gif +0 -0
  120. data/lipsiadmin_generators/backend/templates/images/ext/default/form/date-trigger.psd +0 -0
  121. data/lipsiadmin_generators/backend/templates/images/ext/default/form/error-tip-corners.gif +0 -0
  122. data/lipsiadmin_generators/backend/templates/images/ext/default/form/exclamation.gif +0 -0
  123. data/lipsiadmin_generators/backend/templates/images/ext/default/form/search-trigger.gif +0 -0
  124. data/lipsiadmin_generators/backend/templates/images/ext/default/form/search-trigger.psd +0 -0
  125. data/lipsiadmin_generators/backend/templates/images/ext/default/form/text-bg.gif +0 -0
  126. data/lipsiadmin_generators/backend/templates/images/ext/default/form/trigger-tpl.gif +0 -0
  127. data/lipsiadmin_generators/backend/templates/images/ext/default/form/trigger.gif +0 -0
  128. data/lipsiadmin_generators/backend/templates/images/ext/default/form/trigger.psd +0 -0
  129. data/lipsiadmin_generators/backend/templates/images/ext/default/gradient-bg.gif +0 -0
  130. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/Thumbs.db +0 -0
  131. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/arrow-left-white.gif +0 -0
  132. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/arrow-right-white.gif +0 -0
  133. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/col-move-bottom.gif +0 -0
  134. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/col-move-top.gif +0 -0
  135. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/columns.gif +0 -0
  136. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/dirty.gif +0 -0
  137. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/done.gif +0 -0
  138. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/drop-no.gif +0 -0
  139. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/drop-yes.gif +0 -0
  140. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/footer-bg.gif +0 -0
  141. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid-blue-hd.gif +0 -0
  142. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid-blue-split.gif +0 -0
  143. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid-hrow.gif +0 -0
  144. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid-loading.gif +0 -0
  145. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid-split.gif +0 -0
  146. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid-vista-hd.gif +0 -0
  147. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid3-hd-btn.gif +0 -0
  148. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid3-hrow-over.gif +0 -0
  149. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid3-hrow.gif +0 -0
  150. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid3-special-col-bg.gif +0 -0
  151. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/grid3-special-col-sel-bg.gif +0 -0
  152. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/group-by.gif +0 -0
  153. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/group-expand-sprite.gif +0 -0
  154. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hd-pop.gif +0 -0
  155. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hmenu-asc.gif +0 -0
  156. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hmenu-desc.gif +0 -0
  157. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hmenu-lock.gif +0 -0
  158. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hmenu-lock.png +0 -0
  159. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hmenu-unlock.gif +0 -0
  160. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/hmenu-unlock.png +0 -0
  161. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/invalid_line.gif +0 -0
  162. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/loading.gif +0 -0
  163. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/mso-hd.gif +0 -0
  164. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/nowait.gif +0 -0
  165. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-first-disabled.gif +0 -0
  166. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-first.gif +0 -0
  167. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-last-disabled.gif +0 -0
  168. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-last.gif +0 -0
  169. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-next-disabled.gif +0 -0
  170. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-next.gif +0 -0
  171. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-prev-disabled.gif +0 -0
  172. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/page-prev.gif +0 -0
  173. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/pick-button.gif +0 -0
  174. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/refresh.gif +0 -0
  175. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/row-check-sprite.gif +0 -0
  176. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/row-expand-sprite.gif +0 -0
  177. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/row-over.gif +0 -0
  178. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/row-sel.gif +0 -0
  179. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/sort_asc.gif +0 -0
  180. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/sort_desc.gif +0 -0
  181. data/lipsiadmin_generators/backend/templates/images/ext/default/grid/wait.gif +0 -0
  182. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/collapse.gif +0 -0
  183. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/expand.gif +0 -0
  184. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/gradient-bg.gif +0 -0
  185. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/mini-bottom.gif +0 -0
  186. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/mini-left.gif +0 -0
  187. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/mini-right.gif +0 -0
  188. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/mini-top.gif +0 -0
  189. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/ns-collapse.gif +0 -0
  190. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/ns-expand.gif +0 -0
  191. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/panel-close.gif +0 -0
  192. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/panel-title-bg.gif +0 -0
  193. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/panel-title-light-bg.gif +0 -0
  194. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/stick.gif +0 -0
  195. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/stuck.gif +0 -0
  196. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/tab-close-on.gif +0 -0
  197. data/lipsiadmin_generators/backend/templates/images/ext/default/layout/tab-close.gif +0 -0
  198. data/lipsiadmin_generators/backend/templates/images/ext/default/menu/checked.gif +0 -0
  199. data/lipsiadmin_generators/backend/templates/images/ext/default/menu/group-checked.gif +0 -0
  200. data/lipsiadmin_generators/backend/templates/images/ext/default/menu/item-over.gif +0 -0
  201. data/lipsiadmin_generators/backend/templates/images/ext/default/menu/menu-parent.gif +0 -0
  202. data/lipsiadmin_generators/backend/templates/images/ext/default/menu/menu.gif +0 -0
  203. data/lipsiadmin_generators/backend/templates/images/ext/default/menu/unchecked.gif +0 -0
  204. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/corners-sprite.gif +0 -0
  205. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/left-right.gif +0 -0
  206. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/light-hd.gif +0 -0
  207. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/tool-sprite-tpl.gif +0 -0
  208. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/tool-sprites.gif +0 -0
  209. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/tools-sprites-trans.gif +0 -0
  210. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/top-bottom.gif +0 -0
  211. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/top-bottom.png +0 -0
  212. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/white-corners-sprite.gif +0 -0
  213. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/white-left-right.gif +0 -0
  214. data/lipsiadmin_generators/backend/templates/images/ext/default/panel/white-top-bottom.gif +0 -0
  215. data/lipsiadmin_generators/backend/templates/images/ext/default/progress/progress-bg.gif +0 -0
  216. data/lipsiadmin_generators/backend/templates/images/ext/default/qtip/bg.gif +0 -0
  217. data/lipsiadmin_generators/backend/templates/images/ext/default/qtip/close.gif +0 -0
  218. data/lipsiadmin_generators/backend/templates/images/ext/default/qtip/tip-sprite.gif +0 -0
  219. data/lipsiadmin_generators/backend/templates/images/ext/default/s.gif +0 -0
  220. data/lipsiadmin_generators/backend/templates/images/ext/default/shadow-c.png +0 -0
  221. data/lipsiadmin_generators/backend/templates/images/ext/default/shadow-lr.png +0 -0
  222. data/lipsiadmin_generators/backend/templates/images/ext/default/shadow.png +0 -0
  223. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/blue-loading.gif +0 -0
  224. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/calendar.gif +0 -0
  225. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/glass-bg.gif +0 -0
  226. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/hd-sprite.gif +0 -0
  227. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/large-loading.gif +0 -0
  228. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/left-btn.gif +0 -0
  229. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/loading-balls.gif +0 -0
  230. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/right-btn.gif +0 -0
  231. data/lipsiadmin_generators/backend/templates/images/ext/default/shared/warning.gif +0 -0
  232. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/e-handle-dark.gif +0 -0
  233. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/e-handle.gif +0 -0
  234. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/ne-handle-dark.gif +0 -0
  235. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/ne-handle.gif +0 -0
  236. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/nw-handle-dark.gif +0 -0
  237. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/nw-handle.gif +0 -0
  238. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/s-handle-dark.gif +0 -0
  239. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/s-handle.gif +0 -0
  240. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/se-handle-dark.gif +0 -0
  241. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/se-handle.gif +0 -0
  242. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/square.gif +0 -0
  243. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/sw-handle-dark.gif +0 -0
  244. data/lipsiadmin_generators/backend/templates/images/ext/default/sizer/sw-handle.gif +0 -0
  245. data/lipsiadmin_generators/backend/templates/images/ext/default/slider/slider-bg.png +0 -0
  246. data/lipsiadmin_generators/backend/templates/images/ext/default/slider/slider-thumb.png +0 -0
  247. data/lipsiadmin_generators/backend/templates/images/ext/default/slider/slider-v-bg.png +0 -0
  248. data/lipsiadmin_generators/backend/templates/images/ext/default/slider/slider-v-thumb.png +0 -0
  249. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/scroll-left.gif +0 -0
  250. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/scroll-right.gif +0 -0
  251. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/scroller-bg.gif +0 -0
  252. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-btm-inactive-left-bg.gif +0 -0
  253. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-btm-inactive-right-bg.gif +0 -0
  254. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-btm-left-bg.gif +0 -0
  255. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-btm-right-bg.gif +0 -0
  256. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-close.gif +0 -0
  257. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-strip-bg.gif +0 -0
  258. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-strip-bg.png +0 -0
  259. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tab-strip-btm-bg.gif +0 -0
  260. data/lipsiadmin_generators/backend/templates/images/ext/default/tabs/tabs-sprite.gif +0 -0
  261. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/bg.gif +0 -0
  262. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/btn-arrow-light.gif +0 -0
  263. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/btn-arrow.gif +0 -0
  264. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/btn-over-bg.gif +0 -0
  265. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/gray-bg.gif +0 -0
  266. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/tb-bg.gif +0 -0
  267. data/lipsiadmin_generators/backend/templates/images/ext/default/toolbar/tb-btn-sprite.gif +0 -0
  268. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/arrows.gif +0 -0
  269. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/drop-add.gif +0 -0
  270. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/drop-between.gif +0 -0
  271. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/drop-no.gif +0 -0
  272. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/drop-over.gif +0 -0
  273. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/drop-under.gif +0 -0
  274. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/drop-yes.gif +0 -0
  275. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-end-minus-nl.gif +0 -0
  276. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-end-minus.gif +0 -0
  277. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-end-plus-nl.gif +0 -0
  278. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-end-plus.gif +0 -0
  279. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-end.gif +0 -0
  280. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-line.gif +0 -0
  281. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-minus-nl.gif +0 -0
  282. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-minus.gif +0 -0
  283. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-plus-nl.gif +0 -0
  284. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow-plus.gif +0 -0
  285. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/elbow.gif +0 -0
  286. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/folder-open.gif +0 -0
  287. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/folder.gif +0 -0
  288. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/leaf.gif +0 -0
  289. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/loading.gif +0 -0
  290. data/lipsiadmin_generators/backend/templates/images/ext/default/tree/s.gif +0 -0
  291. data/lipsiadmin_generators/backend/templates/images/ext/default/window/icon-error.gif +0 -0
  292. data/lipsiadmin_generators/backend/templates/images/ext/default/window/icon-info.gif +0 -0
  293. data/lipsiadmin_generators/backend/templates/images/ext/default/window/icon-question.gif +0 -0
  294. data/lipsiadmin_generators/backend/templates/images/ext/default/window/icon-warning.gif +0 -0
  295. data/lipsiadmin_generators/backend/templates/images/ext/default/window/left-corners.png +0 -0
  296. data/lipsiadmin_generators/backend/templates/images/ext/default/window/left-corners.psd +0 -0
  297. data/lipsiadmin_generators/backend/templates/images/ext/default/window/left-right.png +0 -0
  298. data/lipsiadmin_generators/backend/templates/images/ext/default/window/left-right.psd +0 -0
  299. data/lipsiadmin_generators/backend/templates/images/ext/default/window/right-corners.png +0 -0
  300. data/lipsiadmin_generators/backend/templates/images/ext/default/window/right-corners.psd +0 -0
  301. data/lipsiadmin_generators/backend/templates/images/ext/default/window/top-bottom.png +0 -0
  302. data/lipsiadmin_generators/backend/templates/images/ext/default/window/top-bottom.psd +0 -0
  303. data/lipsiadmin_generators/backend/templates/images/ext/slate/button/btn-arrow.gif +0 -0
  304. data/lipsiadmin_generators/backend/templates/images/ext/slate/button/btn-sprite.gif +0 -0
  305. data/lipsiadmin_generators/backend/templates/images/ext/slate/editor/tb-sprite.gif +0 -0
  306. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/checkbox.gif +0 -0
  307. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/clear-trigger.gif +0 -0
  308. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/date-trigger.gif +0 -0
  309. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/radio.gif +0 -0
  310. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/search-trigger.gif +0 -0
  311. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/trigger-tpl.gif +0 -0
  312. data/lipsiadmin_generators/backend/templates/images/ext/slate/form/trigger.gif +0 -0
  313. data/lipsiadmin_generators/backend/templates/images/ext/slate/gradient-bg.gif +0 -0
  314. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/arrow-left-white.gif +0 -0
  315. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/arrow-right-white.gif +0 -0
  316. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/col-move-bottom.gif +0 -0
  317. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/col-move-top.gif +0 -0
  318. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/footer-bg.gif +0 -0
  319. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid-blue-hd.gif +0 -0
  320. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid-blue-split.gif +0 -0
  321. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid-hrow.gif +0 -0
  322. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid-split.gif +0 -0
  323. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid-vista-hd.gif +0 -0
  324. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid3-hd-btn.gif +0 -0
  325. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid3-hrow-over.gif +0 -0
  326. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid3-hrow.gif +0 -0
  327. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid3-special-col-bg.gif +0 -0
  328. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/grid3-special-col-sel-bg.gif +0 -0
  329. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/group-expand-sprite.gif +0 -0
  330. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/mso-hd.gif +0 -0
  331. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-first-disabled.gif +0 -0
  332. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-first.gif +0 -0
  333. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-last-disabled.gif +0 -0
  334. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-last.gif +0 -0
  335. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-next-disabled.gif +0 -0
  336. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-next.gif +0 -0
  337. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-prev-disabled.gif +0 -0
  338. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/page-prev.gif +0 -0
  339. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/refresh.gif +0 -0
  340. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/row-over.gif +0 -0
  341. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/row-sel.gif +0 -0
  342. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/sort_asc.gif +0 -0
  343. data/lipsiadmin_generators/backend/templates/images/ext/slate/grid/sort_desc.gif +0 -0
  344. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/checked.gif +0 -0
  345. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/group-checked.gif +0 -0
  346. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/item-over - Copy.gif +0 -0
  347. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/item-over.gif +0 -0
  348. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/menu-parent.gif +0 -0
  349. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/menu.gif +0 -0
  350. data/lipsiadmin_generators/backend/templates/images/ext/slate/menu/unchecked.gif +0 -0
  351. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/corners-sprite.gif +0 -0
  352. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/left-right.gif +0 -0
  353. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/light-hd.gif +0 -0
  354. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/tool-sprite-tpl.gif +0 -0
  355. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/tool-sprites.gif +0 -0
  356. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/tools-sprites-trans.gif +0 -0
  357. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/top-bottom.gif +0 -0
  358. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/top-bottom.png +0 -0
  359. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/white-corners-sprite.gif +0 -0
  360. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/white-left-right.gif +0 -0
  361. data/lipsiadmin_generators/backend/templates/images/ext/slate/panel/white-top-bottom.gif +0 -0
  362. data/lipsiadmin_generators/backend/templates/images/ext/slate/progress/progress-bg.gif +0 -0
  363. data/lipsiadmin_generators/backend/templates/images/ext/slate/qtip/bg.gif +0 -0
  364. data/lipsiadmin_generators/backend/templates/images/ext/slate/qtip/close.gif +0 -0
  365. data/lipsiadmin_generators/backend/templates/images/ext/slate/qtip/tip-sprite.gif +0 -0
  366. data/lipsiadmin_generators/backend/templates/images/ext/slate/s.gif +0 -0
  367. data/lipsiadmin_generators/backend/templates/images/ext/slate/shared/glass-bg.gif +0 -0
  368. data/lipsiadmin_generators/backend/templates/images/ext/slate/shared/hd-sprite.gif +0 -0
  369. data/lipsiadmin_generators/backend/templates/images/ext/slate/shared/left-btn.gif +0 -0
  370. data/lipsiadmin_generators/backend/templates/images/ext/slate/shared/right-btn.gif +0 -0
  371. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/e-handle-dark.gif +0 -0
  372. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/e-handle.gif +0 -0
  373. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/ne-handle-dark.gif +0 -0
  374. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/ne-handle.gif +0 -0
  375. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/nw-handle-dark.gif +0 -0
  376. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/nw-handle.gif +0 -0
  377. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/s-handle-dark.gif +0 -0
  378. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/s-handle.gif +0 -0
  379. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/se-handle-dark.gif +0 -0
  380. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/se-handle.gif +0 -0
  381. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/square.gif +0 -0
  382. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/sw-handle-dark.gif +0 -0
  383. data/lipsiadmin_generators/backend/templates/images/ext/slate/sizer/sw-handle.gif +0 -0
  384. data/lipsiadmin_generators/backend/templates/images/ext/slate/slider/slider-bg.png +0 -0
  385. data/lipsiadmin_generators/backend/templates/images/ext/slate/slider/slider-thumb.png +0 -0
  386. data/lipsiadmin_generators/backend/templates/images/ext/slate/slider/slider-v-bg.png +0 -0
  387. data/lipsiadmin_generators/backend/templates/images/ext/slate/slider/slider-v-thumb.png +0 -0
  388. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/scroll-left.gif +0 -0
  389. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/scroll-right.gif +0 -0
  390. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/scroller-bg.gif +0 -0
  391. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-btm-inactive-left-bg.gif +0 -0
  392. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-btm-inactive-right-bg.gif +0 -0
  393. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-btm-left-bg.gif +0 -0
  394. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-btm-right-bg.gif +0 -0
  395. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-close.gif +0 -0
  396. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-strip-bg.gif +0 -0
  397. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-strip-bg.png +0 -0
  398. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tab-strip-btm-bg.gif +0 -0
  399. data/lipsiadmin_generators/backend/templates/images/ext/slate/tabs/tabs-sprite.gif +0 -0
  400. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/bg-menu.png +0 -0
  401. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/bg.gif +0 -0
  402. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/btn-arrow-light.gif +0 -0
  403. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/btn-arrow.gif +0 -0
  404. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/btn-over-bg.gif +0 -0
  405. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/gray-bg.gif +0 -0
  406. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/tb-bg.gif +0 -0
  407. data/lipsiadmin_generators/backend/templates/images/ext/slate/toolbar/tb-btn-sprite.gif +0 -0
  408. data/lipsiadmin_generators/backend/templates/images/ext/slate/tree/arrows.gif +0 -0
  409. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/icon-error.gif +0 -0
  410. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/icon-info.gif +0 -0
  411. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/icon-question.gif +0 -0
  412. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/icon-warning.gif +0 -0
  413. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/left-corners.png +0 -0
  414. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/left-right.png +0 -0
  415. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/right-corners.png +0 -0
  416. data/lipsiadmin_generators/backend/templates/images/ext/slate/window/top-bottom.png +0 -0
  417. data/lipsiadmin_generators/backend/templates/javascripts/controls.js +3 -0
  418. data/lipsiadmin_generators/backend/templates/javascripts/dragdrop.js +3 -0
  419. data/lipsiadmin_generators/backend/templates/javascripts/effects.js +4 -0
  420. data/lipsiadmin_generators/backend/templates/javascripts/ext.js +76 -0
  421. data/lipsiadmin_generators/backend/templates/javascripts/prototype.js +12 -0
  422. data/lipsiadmin_generators/backend/templates/layouts/backend.html.haml +12 -0
  423. data/lipsiadmin_generators/backend/templates/layouts/frontend.html.haml +7 -0
  424. data/lipsiadmin_generators/backend/templates/migrations/create_accounts.rb +20 -0
  425. data/lipsiadmin_generators/backend/templates/models/account.rb +116 -0
  426. data/lipsiadmin_generators/backend/templates/models/account_access.rb +17 -0
  427. data/lipsiadmin_generators/backend/templates/models/notifier.rb +15 -0
  428. data/lipsiadmin_generators/backend/templates/stylesheets/backend-slate.css +105 -0
  429. data/lipsiadmin_generators/backend/templates/stylesheets/backend.css +74 -0
  430. data/lipsiadmin_generators/backend/templates/stylesheets/ext-slate.css +241 -0
  431. data/lipsiadmin_generators/backend/templates/stylesheets/ext.css +904 -0
  432. data/lipsiadmin_generators/backend/templates/stylesheets/login.css +22 -0
  433. data/lipsiadmin_generators/backend/templates/stylesheets/print.css +11 -0
  434. data/lipsiadmin_generators/backend/templates/stylesheets/standard.css +62 -0
  435. data/lipsiadmin_generators/backend/templates/views/backend/accounts/_form.html.haml +21 -0
  436. data/lipsiadmin_generators/backend/templates/views/backend/accounts/edit.html.haml +3 -0
  437. data/lipsiadmin_generators/backend/templates/views/backend/accounts/index.rjs +16 -0
  438. data/lipsiadmin_generators/backend/templates/views/backend/accounts/new.html.haml +3 -0
  439. data/lipsiadmin_generators/backend/templates/views/backend/base/index.html.haml +17 -0
  440. data/lipsiadmin_generators/backend/templates/views/backend/base/welcome.html.haml +2 -0
  441. data/lipsiadmin_generators/backend/templates/views/backend/sessions/new.html.haml +12 -0
  442. data/lipsiadmin_generators/backend/templates/views/javascripts/backend.js.erb +346 -0
  443. data/lipsiadmin_generators/backend/templates/views/javascripts/locale.js.erb +135 -0
  444. data/lipsiadmin_generators/backend/templates/views/notifier/registration.html.erb +2 -0
  445. data/lipsiadmin_generators/backend/templates/views/notifier/support_request.html.erb +1 -0
  446. data/lipsiadmin_generators/backend_page/REMEMBER +7 -0
  447. data/lipsiadmin_generators/backend_page/backend_page_generator.rb +212 -0
  448. data/lipsiadmin_generators/backend_page/templates/controller.rb +61 -0
  449. data/lipsiadmin_generators/backend_page/templates/form.html.haml +5 -0
  450. data/lipsiadmin_generators/backend_page/templates/form_scaffolding.html.haml +1 -0
  451. data/lipsiadmin_generators/backend_page/templates/functional_test.rb +45 -0
  452. data/lipsiadmin_generators/backend_page/templates/helper.rb +2 -0
  453. data/lipsiadmin_generators/backend_page/templates/view_edit.html.haml +3 -0
  454. data/lipsiadmin_generators/backend_page/templates/view_index.rjs.erb +16 -0
  455. data/lipsiadmin_generators/backend_page/templates/view_new.html.haml +3 -0
  456. data/lipsiadmin_generators/pdf/pdf_generator.rb +50 -0
  457. data/lipsiadmin_generators/pdf/templates/layout.html.erb +18 -0
  458. data/lipsiadmin_generators/pdf/templates/stylesheets/print.css +11 -0
  459. data/lipsiadmin_generators/pdf/templates/view.html.haml +7 -0
  460. data/resources/Pd4Ruby.class +0 -0
  461. data/resources/Pd4Ruby.java +52 -0
  462. data/resources/javascripts/ux.js +1102 -0
  463. data/resources/pd4ml.jar +0 -0
  464. data/resources/rdoc/horo.rb +613 -0
  465. data/resources/ss_css2.jar +0 -0
  466. data/tasks/lipsiadmin_tasks.rake +14 -0
  467. metadata +604 -0
@@ -0,0 +1,21 @@
1
+
2
+ ================================================================
3
+
4
+ Please remember to:
5
+
6
+ - Edit (if necessary) the migration
7
+ - Run rake db:migrate;
8
+ - Edit app/models/attachment.rb
9
+ - Add in your models that need images/files one of this:
10
+
11
+ - has_one_attachment :myfile
12
+ - has_many_attachments :myfiles
13
+
14
+ You can add some validations/processor in your models like:
15
+
16
+ * attachment_styles_for :myfiles, :normal, "128x128!"
17
+ * validates_attachment_presence_for :myfiles
18
+ * validates_attachment_size_for :myfiles, :greater_than => 10.megabytes
19
+ * validates_attachment_content_type_for :myfiles, "image/png"
20
+
21
+ ================================================================
@@ -0,0 +1,27 @@
1
+ class AttachmentGenerator < Rails::Generator::Base
2
+ default_options :skip_migration => false
3
+
4
+ def manifest
5
+ record do |m|
6
+ unless options[:skip_migration]
7
+ m.migration_template("migration.rb", "db/migrate", :migration_file_name => "create_attachment")
8
+ end
9
+ m.template('model.rb', 'app/models/attachment.rb')
10
+ m.readme "../REMEMBER"
11
+ end
12
+ end
13
+
14
+
15
+ protected
16
+ def banner
17
+ "Usage: #{$0} attachment [--skip-migration]"
18
+ end
19
+
20
+ def add_options!(opt)
21
+ opt.separator ''
22
+ opt.separator 'Options:'
23
+ opt.on("--skip-migration",
24
+ "Don't generate a migration file for this model") { |v| options[:skip_migration] = v }
25
+ end
26
+
27
+ end
@@ -0,0 +1,14 @@
1
+ class CreateAttachment < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :attachments, :force => true do |t|
4
+ t.string :attached_file_name, :attached_content_type
5
+ t.integer :attached_file_size
6
+ t.references :attacher, :polymorphic => true
7
+ t.timestamps
8
+ end
9
+ end
10
+
11
+ def self.down
12
+ drop_table :attachments
13
+ end
14
+ end
@@ -0,0 +1,4 @@
1
+ class Attachment < Lipsiadmin::DataBase::AttachmentTable
2
+ # validates_attachment_presence
3
+ # attachment_styles :thumb, "128x128"
4
+ end
@@ -0,0 +1,18 @@
1
+
2
+ ================================================================
3
+
4
+ Please remember to:
5
+
6
+ - Edit config/config.yml
7
+ - Edit inizializers/exception_notifier.rb
8
+ - Edit Account Migration (setting your username and password)
9
+ - Run rake db:create && rake db:migrate
10
+ - Set your default locale I18n in environment.rb (IT||EN)
11
+
12
+ Extra:
13
+ in config/environment.rb
14
+
15
+ - config.active_record.timestamped_migrations = false
16
+ - comment config.time_zone = 'UTC'
17
+
18
+ ================================================================
@@ -0,0 +1,58 @@
1
+ class BackendGenerator < Rails::Generator::Base
2
+ def initialize(runtime_args, runtime_options = {})
3
+ runtime_args = ["none"].concat(runtime_args) # Skip usage
4
+ super
5
+ end
6
+
7
+ def manifest
8
+ # Initial routes
9
+ routes = <<-ROUTES
10
+ map.namespace(:backend) do |backend|
11
+ backend.resources :accounts
12
+ backend.resources :sessions
13
+ end
14
+
15
+ map.backend '/backend', :controller => 'backend/base', :action => 'index'
16
+ map.activation '/backend/accounts/activate/:activation_code', :controller => 'backend/accounts', :action=>'activate'
17
+ map.refresh_project_modules '/backend/accounts/refresh_project_modules', :controller => 'backend/accounts', :action=>'refresh_project_modules'
18
+ map.connect '/javascripts/:action.:format', :controller => 'javascripts'
19
+ ROUTES
20
+
21
+ record do |m|
22
+ m.directory("app/views/exceptions")
23
+
24
+ m.append("config/routes.rb", routes, "ActionController::Routing::Routes.draw do |map|")
25
+ m.append("public/robots.txt", "User-agent: *\nDisallow: /backend")
26
+ m.append("RakeFile", "require 'lipsiadmin_tasks'")
27
+
28
+ m.create_all("controllers", "app/controllers")
29
+ m.create_all("helpers", "app/helpers")
30
+ m.create_all("images", "public/images")
31
+ m.create_all("javascripts", "public/javascripts")
32
+ m.create_all("stylesheets", "public/stylesheets")
33
+ m.create_all("layouts", "app/views/layouts")
34
+ m.create_all("models", "app/models")
35
+ m.create_all("views", "app/views")
36
+ m.create_all("config", "config")
37
+
38
+ # Using this for prevent raising errors
39
+ migration = Dir.glob("db/migrate/[0-9]*_*.rb").grep(/[0-9]+_create_accounts.rb$/)
40
+ if migration.empty?
41
+ m.migration_template("migrations/create_accounts.rb", "db/migrate", :migration_file_name => "create_accounts")
42
+ else
43
+ logger.exists migration.first
44
+ end
45
+
46
+ %w(404 422 500).each do |page|
47
+ m.template("exceptions/template.html.haml", "app/views/exceptions/#{page}.html.haml", :assigns => { :status_code => page })
48
+ end
49
+
50
+ m.readme "../REMEMBER"
51
+ end
52
+ end
53
+
54
+ protected
55
+ def banner
56
+ "Usage: #{$0} backend"
57
+ end
58
+ end
@@ -0,0 +1,14 @@
1
+ common:
2
+ project: My Rails App
3
+ email_from: info@lipsiadmin.com
4
+ email_help: help@lipsiasoft.com
5
+ host_addr: http://www.lipsiasoft.com
6
+
7
+ production:
8
+ host_addr: http://www.lipsiasoft.com
9
+
10
+ development:
11
+ host_addr: localhost:3000
12
+
13
+ test:
14
+ host_addr: localhost:3000
@@ -0,0 +1,7 @@
1
+ require 'ostruct'
2
+ require 'yaml'
3
+
4
+ config = OpenStruct.new(YAML.load_file("#{RAILS_ROOT}/config/config.yml"))
5
+ env_config = config.send(RAILS_ENV)
6
+ config.common.update(env_config) unless env_config.nil?
7
+ ::AppConfig = OpenStruct.new(config.common)
@@ -0,0 +1,2 @@
1
+ ActionMailer::Base.default_charset = 'utf-8'
2
+ ActionMailer::Base.delivery_method = :sendmail
@@ -0,0 +1,7 @@
1
+ Lipsiadmin::Mailer::ExceptionNotifier.sender_address = %("Exception Notifier" <exceptions@lipsiasoft.com>)
2
+ Lipsiadmin::Mailer::ExceptionNotifier.recipients_addresses = %(helpdesk@lipsiasoft.com)
3
+ Lipsiadmin::Mailer::ExceptionNotifier.email_prefix = "[Project Name]"
4
+ Lipsiadmin::Mailer::ExceptionNotifier.send_mail = true
5
+
6
+ # Uncomment this if this mail is for redmine handler
7
+ # Lipsiadmin::Mailer::ExceptionNotifier.extra_options = { :project => "lipsiabug", :tracker => "Bug", :priority => "Immediata" }
@@ -0,0 +1,204 @@
1
+ # If you translate this other language or have something to fix please send me an email at: d.dagostino@lipsiasoft.com
2
+ en:
3
+ backend:
4
+ general:
5
+ editForm: "Edit {{model}} {{value}}"
6
+ newForm: "New {{model}}"
7
+ cantDelete: "You cannot delete this record."
8
+ sessions:
9
+ wrong: "Wrong email or password"
10
+ logout: "Correctly Logged Out"
11
+
12
+ javascripts:
13
+ buttons:
14
+ add: "Add"
15
+ edit: "Edit"
16
+ remove: "Delete"
17
+ back: "Back"
18
+ save: "Save"
19
+ close: "Close"
20
+ select: "Select"
21
+ help: "Help"
22
+ send: "Send"
23
+ help:
24
+ title: "Support request"
25
+ description: "Say us what problem do you have and how we can reproduce it"
26
+ compliments: "Your request was correctly delivered."
27
+ labels:
28
+ all: "All "
29
+ search: "Search"
30
+ messages:
31
+ compliments:
32
+ title: "Congratulations"
33
+ message: "Your data are correctly saved."
34
+ wait:
35
+ title: "Sending Data"
36
+ message: "Sending data to servers..."
37
+ confirm:
38
+ title: "Are you sure ?"
39
+ message: "Are you sure to destroy {0} element/s ?"
40
+ alert:
41
+ title: "Attention"
42
+ message: "There are some connection issues.<br />Contact tecnical support."
43
+ notConfigured: "This fatures is not ready yet.<br />Contact tecnical support."
44
+ notSelected: "You must select at least one record"
45
+
46
+ emails:
47
+ registration:
48
+ object: "Your account has been activated"
49
+ body: "Hello {{name}},\nyour account has been activated.\n\nYou can login with the following email/password:\n\n- Email: {{email}}\n- Password: {{password}}\n\nusing the following url: {{url}}"
50
+ support:
51
+ object: "Support Request"
52
+ footer: "\n---------------------------\nCordiali Saluti,\nLipsiaSoft s.r.l."
53
+
54
+ print:
55
+ footer:
56
+ page: "Page"
57
+ page_of: "of"
58
+
59
+ extjs:
60
+ dateFormat: "m/d/Y"
61
+ dateTimeFormat: "m/d/Y G:i"
62
+ ddText: "{0} selected row(s)"
63
+ closeText: "Close this tab"
64
+ invalidText: "The value in this field is invalid"
65
+ msg: "Loading..."
66
+ emptyText: ""
67
+ splitRegion:
68
+ splitTip: "Drag to resize."
69
+ collapsibleSplitTip: "Drag to resize. Double click to hide."
70
+ messageBox:
71
+ ok: "OK"
72
+ yesse: "Yes"
73
+ cancel: "Cancel"
74
+ none: "No"
75
+ datePicker:
76
+ todayText: "Today"
77
+ minText: "This date is before the minimum date"
78
+ maxText: "This date is after the maximum date"
79
+ disabledDaysText: ""
80
+ disabledDatesText: ""
81
+ nextText: 'Next Month (Control+Right)'
82
+ prevText: 'Previous Month (Control+Left)'
83
+ monthYearText: 'Choose a month (Control+Up/Down to move years)'
84
+ todayTip: "{0} (Spacebar)"
85
+ format: "m/d/y"
86
+ cancelText: "Cancel"
87
+ okText: "&#160;OK&#160;"
88
+ startDay: 0
89
+ grid:
90
+ gridView:
91
+ sortAscText: "Sort Ascending"
92
+ sortDescText: "Sort Descending"
93
+ lockText: "Lock Column"
94
+ unlockText: "Unlock Column"
95
+ columnsText: "Columns"
96
+ groupingView:
97
+ emptyGroupText: '(None)'
98
+ groupByText: 'Group By This Field'
99
+ showGroupsText: 'Show in Groups'
100
+ propertyColumnModel:
101
+ nameText: "Name"
102
+ valueText: "Value"
103
+ dateFormat: "m/j/Y"
104
+ search:
105
+ searchText: "Search"
106
+ searchTipText: "Insert a word or press Search"
107
+ selectAllText: "Select All"
108
+ minCharsTipText: "Insert at least {0} characters"
109
+ pagingToolbar:
110
+ beforePageText: "Page"
111
+ afterPageText: "of {0}"
112
+ firstText: "First Page"
113
+ prevText: "Previous Page"
114
+ nextText: "Next Page"
115
+ lastText: "Last Page"
116
+ refreshText: "Refresh"
117
+ displayMsg: "Displaying {0} - {1} of {2}"
118
+ emptyMsg: 'No data to display'
119
+ form:
120
+ textField:
121
+ minLengthText: "The minimum length for this field is {0}"
122
+ maxLengthText: "The maximum length for this field is {0}"
123
+ blankText: "This field is required"
124
+ regexText: ""
125
+ emptyText: ""
126
+ numberField:
127
+ minText: "The minimum value for this field is {0}"
128
+ maxText: "The maximum value for this field is {0}"
129
+ nanText: "{0} is not a valid number"
130
+ dateField:
131
+ disabledDaysText: "Disabled"
132
+ disabledDatesText: "Disabled"
133
+ minText: "The date in this field must be after {0}"
134
+ maxText: "The date in this field must be before {0}"
135
+ invalidText: "{0} is not a valid date - it must be in the format {1}"
136
+ format: "m/d/y"
137
+ altFormats: "m/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d"
138
+ comboBox:
139
+ loadingText: "Loading..."
140
+ valueNotFoundText: ""
141
+ vTypes:
142
+ emailText: 'This field should be an e-mail address in the format "user@domain.com"'
143
+ urlText: 'This field should be a URL in the format "http://www.domain.com"'
144
+ alphaText: 'This field should only contain letters and _'
145
+ alphanumText: 'This field should only contain letters, numbers and _'
146
+ htmlEditor:
147
+ createLinkText: 'Please enter the URL for the link:'
148
+ buttonTips:
149
+ bold:
150
+ title: 'Bold (Ctrl+B)'
151
+ text: 'Make the selected text bold.'
152
+ cls: 'x-html-editor-tip'
153
+ italic:
154
+ title: 'Italic (Ctrl+I)'
155
+ text: 'Make the selected text italic.'
156
+ cls: 'x-html-editor-tip'
157
+ underline:
158
+ title: 'Underline (Ctrl+U)'
159
+ text: 'Underline the selected text.'
160
+ cls: 'x-html-editor-tip'
161
+ increasefontsize:
162
+ title: 'Grow Text'
163
+ text: 'Increase the font size.'
164
+ cls: 'x-html-editor-tip'
165
+ decreasefontsize:
166
+ title: 'Shrink Text'
167
+ text: 'Decrease the font size.'
168
+ cls: 'x-html-editor-tip'
169
+ backcolor:
170
+ title: 'Text Highlight Color'
171
+ text: 'Change the background color of the selected text.'
172
+ cls: 'x-html-editor-tip'
173
+ forecolor:
174
+ title: 'Font Color'
175
+ text: 'Change the color of the selected text.'
176
+ cls: 'x-html-editor-tip'
177
+ justifyleft:
178
+ title: 'Align Text Left'
179
+ text: 'Align text to the left.'
180
+ cls: 'x-html-editor-tip'
181
+ justifycenter:
182
+ title: 'Center Text'
183
+ text: 'Center text in the editor.'
184
+ cls: 'x-html-editor-tip'
185
+ justifyright:
186
+ title: 'Align Text Right'
187
+ text: 'Align text to the right.'
188
+ cls: 'x-html-editor-tip'
189
+ insertunorderedlist:
190
+ title: 'Bullet List'
191
+ text: 'Start a bulleted list.'
192
+ cls: 'x-html-editor-tip'
193
+ insertorderedlist:
194
+ title: 'Numbered List'
195
+ text: 'Start a numbered list.'
196
+ cls: 'x-html-editor-tip'
197
+ createlink:
198
+ title: 'Hyperlink'
199
+ text: 'Make the selected text a hyperlink.'
200
+ cls: 'x-html-editor-tip'
201
+ sourceedit:
202
+ title: 'Source Edit'
203
+ text: 'Switch to source editing mode.'
204
+ cls: 'x-html-editor-tip'
@@ -0,0 +1,203 @@
1
+ it:
2
+ backend:
3
+ general:
4
+ editForm: "Modifica {{model}} {{value}}"
5
+ newForm: "Nuova {{model}}"
6
+ cantDelete: "Non puoi cancellare questo record."
7
+ sessions:
8
+ wrong: "Email o password sbagliati"
9
+ logout: "Sei correttamente uscito dal sistema"
10
+
11
+ javascripts:
12
+ buttons:
13
+ add: "Aggiungi"
14
+ edit: "Modifica"
15
+ remove: "Elimina"
16
+ back: "Indietro"
17
+ save: "Salva"
18
+ close: "Chiudi"
19
+ select: "Seleziona"
20
+ help: "Aiuto"
21
+ send: "Invia"
22
+ help:
23
+ title: "Richiesta di supporto"
24
+ description: "Descrivi il problema e come si è verificato"
25
+ compliments: "La tua richiesta è stata correttamente inviata."
26
+ labels:
27
+ all: "Elenco "
28
+ search: "Cerca"
29
+ messages:
30
+ compliments:
31
+ title: "Complimenti"
32
+ message: "I tuoi dati sono stati correttamente salvati."
33
+ wait:
34
+ title: "Invio dati"
35
+ message: "Invio dei dati al server in corso..."
36
+ confirm:
37
+ title: "Sei sicuro ?"
38
+ message: "Vuoi veramente eliminare {0} elemento/i ?"
39
+ alert:
40
+ title: "Attenzione"
41
+ message: "Si è verificato un problema di connessione.<br />Contatta il supporto tecnico."
42
+ notConfigured: "Questa funzione non è stata ancora implementata.<br />Contatta il supporto tecnico."
43
+ notSelected: "Devi selezionare almeno un record!"
44
+
45
+ emails:
46
+ registration:
47
+ object: "Il tuo account ora è stato creato"
48
+ body: "Salve {{name}},\nil tuo account ora è attivo.\n\nTi puoi loggare utilizzando i seguenti dati:\n\n- Email: {{email}}\n- Password: {{password}}\n\ncollegandoti al seguente url: {{url}}"
49
+ support:
50
+ object: "Richiesta di supporto"
51
+ footer: "\n---------------------------\nCordiali Saluti,\nLipsiaSoft s.r.l."
52
+
53
+ print:
54
+ footer:
55
+ page: "Pagina"
56
+ page_of: "di"
57
+
58
+ extjs:
59
+ dateFormat: "d/m/Y"
60
+ dateTimeFormat: "d/m/Y G:i"
61
+ ddText: "{0} righe selezionate"
62
+ closeText: "Chiudi pannello"
63
+ invalidText: "Valore non valido"
64
+ msg: "Caricamento in corso..."
65
+ emptyText: ""
66
+ splitRegion:
67
+ splitTip: "Trascina per cambiare dimensioni."
68
+ collapsibleSplitTip: "Trascina per cambiare dimensioni. Doppio click per nascondere."
69
+ messageBox:
70
+ ok: "OK"
71
+ yesse: "Sì"
72
+ cancel: "Annulla"
73
+ none: "No"
74
+ datePicker:
75
+ todayText: "Oggi"
76
+ minText: "Data precedente alla data minima"
77
+ maxText: "Data successiva alla data massima"
78
+ disabledDaysText: ""
79
+ disabledDatesText: ""
80
+ nextText: 'Mese successivo (Ctrl+Destra)'
81
+ prevText: 'Mese precedente (Ctrl+Sinistra)'
82
+ monthYearText: 'Scegli un mese (Ctrl+Su/Giu per cambiare anno)'
83
+ todayTip: "{0} (Barra spaziatrice)"
84
+ format: "d/m/y"
85
+ cancelText: "Annulla"
86
+ okText: "&#160;OK&#160;"
87
+ startDay: 1
88
+ grid:
89
+ gridView:
90
+ sortAscText: "Ordinamento crescente"
91
+ sortDescText: "Ordinamento decrescente"
92
+ lockText: "Blocca colonna"
93
+ unlockText: "Sblocca colonna"
94
+ columnsText: "Colonne"
95
+ groupingView:
96
+ emptyGroupText: '(Nessun dato)'
97
+ groupByText: 'Raggruppa per questo campo'
98
+ showGroupsText: 'Mostra nei gruppi'
99
+ propertyColumnModel:
100
+ nameText: "Nome"
101
+ valueText: "Valore"
102
+ dateFormat: "j/m/Y"
103
+ search:
104
+ searchText: "Cerca"
105
+ searchTipText: "Inserisci una parola o premi cerca"
106
+ selectAllText: "Seleziona Tutto"
107
+ minCharsTipText: "Inserisci almeno {0} caratteri"
108
+ pagingToolbar:
109
+ beforePageText: "Pagina"
110
+ afterPageText: "di {0}"
111
+ firstText: "Prima pagina"
112
+ prevText: "Pagina precedente"
113
+ nextText: "Pagina successiva"
114
+ lastText: "Ultima pagina"
115
+ refreshText: "Aggiorna"
116
+ displayMsg: "Record {0} - {1} di {2}"
117
+ emptyMsg: 'Nessun dato da mostrare'
118
+ form:
119
+ textField:
120
+ minLengthText: "La lunghezza minima è {0}"
121
+ maxLengthText: "La lunghezza massima è {0}"
122
+ blankText: "Campo obbligatorio"
123
+ regexText: ""
124
+ emptyText: ""
125
+ numberField:
126
+ minText: "Il valore minimo è {0}"
127
+ maxText: "Il valore massimo è {0}"
128
+ nanText: "{0} non è un valore numerico corretto"
129
+ dateField:
130
+ disabledDaysText: "Disabilitato"
131
+ disabledDatesText: "Disabilitato"
132
+ minText: "La data deve essere successiva al {0}"
133
+ maxText: "La data deve essere precedente al {0}"
134
+ invalidText: "{0} non \u00E8 una data valida. Deve essere nel formato {1}"
135
+ format: "d/m/y"
136
+ altFormats: "d/m/Y|d-m-y|d-m-Y|d/m|d-m|dm|dmy|dmY|d|Y-m-d"
137
+ comboBox:
138
+ loadingText: "Caricamento in corso..."
139
+ valueNotFoundText: ""
140
+ vTypes:
141
+ emailText: 'Il campo deve essere un indirizzo e-mail nel formato "user@domain.com"'
142
+ urlText: 'Il campo deve essere un indirizzo web nel formato "http://www.domain.com"'
143
+ alphaText: 'Il campo deve contenere solo lettere e _'
144
+ alphanumText: 'Il campo deve contenere solo lettere, numeri e _'
145
+ htmlEditor:
146
+ createLinkText: 'Inserire un URL per il link:'
147
+ buttonTips:
148
+ bold:
149
+ title: 'Grassetto (Ctrl+B)'
150
+ text: 'Rende il testo selezionato in grassetto.'
151
+ cls: 'x-html-editor-tip'
152
+ italic:
153
+ title: 'Corsivo (Ctrl+I)'
154
+ text: 'Rende il testo selezionato in corsivo.'
155
+ cls: 'x-html-editor-tip'
156
+ underline:
157
+ title: 'Sottolinea (Ctrl+U)'
158
+ text: 'Sottolinea il testo selezionato.'
159
+ cls: 'x-html-editor-tip'
160
+ increasefontsize:
161
+ title: 'Ingrandisci testo'
162
+ text: 'Aumenta la dimensione del carattere.'
163
+ cls: 'x-html-editor-tip'
164
+ decreasefontsize:
165
+ title: 'Rimpicciolisci testo'
166
+ text: 'Diminuisce la dimensione del carattere.'
167
+ cls: 'x-html-editor-tip'
168
+ backcolor:
169
+ title: 'Colore evidenziatore testo'
170
+ text: 'Modifica il colore di sfondo del testo selezionato.'
171
+ cls: 'x-html-editor-tip'
172
+ forecolor:
173
+ title: 'Colore carattere'
174
+ text: 'Modifica il colore del testo selezionato.'
175
+ cls: 'x-html-editor-tip'
176
+ justifyleft:
177
+ title: 'Allinea a sinistra'
178
+ text: 'Allinea il testo a sinistra.'
179
+ cls: 'x-html-editor-tip'
180
+ justifycenter:
181
+ title: 'Centra'
182
+ text: 'Centra il testo.'
183
+ cls: 'x-html-editor-tip'
184
+ justifyright:
185
+ title: 'Allinea a destra'
186
+ text: 'Allinea il testo a destra.'
187
+ cls: 'x-html-editor-tip'
188
+ insertunorderedlist:
189
+ title: 'Elenco puntato'
190
+ text: 'Elenco puntato.'
191
+ cls: 'x-html-editor-tip'
192
+ insertorderedlist:
193
+ title: 'Elenco numerato'
194
+ text: 'Elenco numerato.'
195
+ cls: 'x-html-editor-tip'
196
+ createlink:
197
+ title: 'Collegamento'
198
+ text: 'Trasforma il testo selezionato in un collegamanto.'
199
+ cls: 'x-html-editor-tip'
200
+ sourceedit:
201
+ title: 'Sorgente'
202
+ text: 'Passa alla modalit\u00E0 editing del sorgente.'
203
+ cls: 'x-html-editor-tip'