optimacms 0.1.51 → 0.1.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/optimacms/admin.js +4 -4
  3. data/app/assets/stylesheets/optimacms/admin.css.scss +6 -6
  4. data/app/assets/stylesheets/optimacms/admin_tpl.css.scss +15 -15
  5. data/app/assets/stylesheets/optimacms/bootstrap_and_overrides.css.scss +52 -52
  6. data/app/assets/stylesheets/optimacms/bootstrap_custom.css.scss +49 -49
  7. data/app/assets/stylesheets/optimacms/bootstrap_variables.css.scss +860 -860
  8. data/app/assets/stylesheets/optimacms/colors.css.scss +68 -68
  9. data/app/assets/stylesheets/optimacms/skins/noskin.css.scss +95 -95
  10. data/app/assets/stylesheets/optimacms/tinymce.css.scss +54 -54
  11. data/app/assets/stylesheets/optimacms/tpl.css.scss +309 -309
  12. data/app/controllers/optimacms/admin/admin_base_controller.rb +44 -44
  13. data/app/controllers/optimacms/admin/dashboard_controller.rb +6 -6
  14. data/app/controllers/optimacms/admin/layouts_controller.rb +76 -76
  15. data/app/controllers/optimacms/admin/pages_controller.rb +228 -228
  16. data/app/controllers/optimacms/admin/templates_controller.rb +314 -314
  17. data/app/controllers/optimacms/dev_controller.rb +40 -40
  18. data/app/controllers/optimacms/elfinder_controller.rb +39 -39
  19. data/app/controllers/optimacms/page_base_controller.rb +6 -6
  20. data/app/controllers/optimacms/pages_controller.rb +167 -167
  21. data/app/controllers/optimacms/tinymce_assets_controller.rb +20 -20
  22. data/app/helpers/optimacms/forms_helper.rb +75 -75
  23. data/app/inputs/textarea_tinymce_input.rb +27 -27
  24. data/app/models/concerns/optimacms/meta_content.rb +63 -63
  25. data/app/models/optimacms/language.rb +14 -14
  26. data/app/models/optimacms/layout.rb +53 -53
  27. data/app/models/optimacms/mediafile.rb +17 -17
  28. data/app/models/optimacms/page.rb +171 -171
  29. data/app/models/optimacms/page_translation.rb +10 -10
  30. data/app/models/optimacms/template.rb +390 -390
  31. data/app/models/optimacms/template_type.rb +20 -20
  32. data/app/views/optimacms/admin/common/_js_tinymce.html.haml +49 -49
  33. data/app/views/optimacms/admin/common/_modal_div.html.haml +16 -16
  34. data/app/views/optimacms/admin/dashboard/index.html.haml +18 -18
  35. data/app/views/optimacms/admin/layouts/_form.html.haml +22 -22
  36. data/app/views/optimacms/admin/layouts/edit.html.haml +5 -5
  37. data/app/views/optimacms/admin/layouts/index.html.haml +25 -25
  38. data/app/views/optimacms/admin/layouts/main.html.haml +6 -6
  39. data/app/views/optimacms/admin/layouts/new.html.haml +5 -5
  40. data/app/views/optimacms/admin/pages/_form.html.haml +78 -78
  41. data/app/views/optimacms/admin/pages/_form_folder.html.haml +14 -14
  42. data/app/views/optimacms/admin/pages/_form_old.html.haml +107 -107
  43. data/app/views/optimacms/admin/pages/_meta.html.haml +48 -48
  44. data/app/views/optimacms/admin/pages/edit.html.haml +5 -5
  45. data/app/views/optimacms/admin/pages/editfolder.html.haml +15 -15
  46. data/app/views/optimacms/admin/pages/index.html.haml +58 -58
  47. data/app/views/optimacms/admin/pages/new.html.haml +5 -5
  48. data/app/views/optimacms/admin/pages/newfolder.html.haml +15 -15
  49. data/app/views/optimacms/admin/shared/_breadcrumbs.html.haml +7 -7
  50. data/app/views/optimacms/admin/shared/_flash.html.haml +23 -23
  51. data/app/views/optimacms/admin/shared/_footer.html.haml +5 -5
  52. data/app/views/optimacms/admin/shared/_form_errors.html.haml +11 -11
  53. data/app/views/optimacms/admin/shared/_leftmenu.html.haml +49 -49
  54. data/app/views/optimacms/admin/shared/_top.html.haml +33 -33
  55. data/app/views/optimacms/admin/templates/_form.html.haml +61 -61
  56. data/app/views/optimacms/admin/templates/_js_form_modal.html.haml +43 -43
  57. data/app/views/optimacms/admin/templates/create.js.haml +3 -3
  58. data/app/views/optimacms/admin/templates/edit.html.haml +5 -5
  59. data/app/views/optimacms/admin/templates/editfolder.html.haml +31 -31
  60. data/app/views/optimacms/admin/templates/index.html.haml +48 -48
  61. data/app/views/optimacms/admin/templates/new.html.haml +37 -37
  62. data/app/views/optimacms/admin/templates/newattach.html.haml +32 -32
  63. data/app/views/optimacms/admin/templates/newfolder.html.haml +28 -28
  64. data/app/views/optimacms/elfinder/index.html.erb +54 -54
  65. data/config/initializers/assets.rb +2 -2
  66. data/config/initializers/kaminari.rb +10 -10
  67. data/config/initializers/paperclip.rb +11 -11
  68. data/config/initializers/paperclip_media_type_spoof_detector_override.rb +7 -7
  69. data/config/initializers/simple_form.rb +166 -166
  70. data/config/initializers/simple_form_bootstrap.rb +146 -146
  71. data/config/locales/simple_form.en.yml +3 -3
  72. data/config/locales/simple_form.ru.yml +3 -3
  73. data/config/tinymce.yml +6 -6
  74. data/lib/optimacms/fileutils/fileutils.rb +39 -39
  75. data/lib/optimacms/filters/form_filter.rb +226 -226
  76. data/lib/optimacms/mycontroller.rb +69 -69
  77. data/lib/optimacms/page_services/page_data.rb +97 -97
  78. data/lib/optimacms/page_services/page_process_service.rb +32 -32
  79. data/lib/optimacms/page_services/page_route_service.rb +155 -155
  80. data/lib/optimacms/simple_form_extensions/button_components.rb +33 -33
  81. data/lib/optimacms/version.rb +1 -1
  82. data/spec/dummy/app/assets/stylesheets/application.css.scss +11 -11
  83. data/spec/dummy/app/assets/stylesheets/bootstrap_and_overrides.css.scss +3 -3
  84. data/spec/dummy/app/assets/stylesheets/bootstrap_custom.css.scss +49 -49
  85. data/spec/dummy/app/assets/stylesheets/tpl.css.scss +62 -62
  86. data/spec/dummy/app/controllers/home_controller.rb +6 -6
  87. data/spec/dummy/app/controllers/my_controller.rb +6 -6
  88. data/spec/dummy/app/controllers/news_controller.rb +46 -46
  89. data/spec/dummy/app/models/news.rb +7 -7
  90. data/spec/dummy/app/views/home/index.html.haml +18 -18
  91. data/spec/dummy/app/views/my/hello.html.haml +4 -4
  92. data/spec/dummy/app/views/news/index.html.haml +13 -13
  93. data/spec/dummy/app/views/news/show.html.haml +6 -6
  94. data/spec/dummy/app/views/pages/1.html.erb +16 -16
  95. data/spec/dummy/app/views/pages/about.html.erb +12 -12
  96. data/spec/dummy/app/views/pages/text1.html +1 -1
  97. data/spec/dummy/app/views/services/index.html.haml +9 -9
  98. data/spec/dummy/app/views/services/service.html.haml +2 -2
  99. data/spec/dummy/app/views/temp/html1.html +1 -1
  100. data/spec/dummy/app/views/temp/p1.html.haml +6 -6
  101. data/spec/dummy/app/views/temp/t1.html.haml +13 -13
  102. data/spec/dummy/app/views/temp9/t2.html +8 -8
  103. data/spec/dummy/app/views/workers/_breadcrumb_worker.html.haml +11 -11
  104. data/spec/dummy/app/views/workers/_breadcrumb_workers.html.haml +9 -9
  105. data/spec/dummy/app/views/workers/_contacts_our.html.haml +3 -3
  106. data/spec/dummy/app/views/workers/_list_worker.html.haml +46 -46
  107. data/spec/dummy/app/views/workers/_list_workers.html.haml +6 -6
  108. data/spec/dummy/app/views/workers/_share_js.html.haml +22 -22
  109. data/spec/dummy/app/views/workers/_share_worker.html.haml +11 -11
  110. data/spec/dummy/app/views/workers/_show_info.html.haml +53 -53
  111. data/spec/dummy/app/views/workers/_tabs.html.haml +11 -11
  112. data/spec/dummy/app/views/workers/contacts.html.haml +19 -19
  113. data/spec/dummy/app/views/workers/index.html.haml +49 -49
  114. data/spec/dummy/app/views/workers/portfolio.html.haml +20 -20
  115. data/spec/dummy/app/views/workers/services.html.haml +11 -11
  116. data/spec/dummy/app/views/workers/show.html.haml +53 -53
  117. data/spec/dummy/app/views/workers/show_notfound.html.haml +8 -8
  118. data/spec/dummy/app/views/workers/t2.html.haml +1 -1
  119. data/spec/dummy/app/views/workers/work.html.haml +43 -43
  120. data/spec/dummy/config/tinymce.yml +5 -5
  121. data/spec/dummy/db/schema.rb +164 -164
  122. data/spec/dummy/log/development.log +57 -20394
  123. data/spec/dummy/tmp/pids/server.pid +1 -1
  124. data/spec/factories/page.rb +25 -25
  125. data/spec/models/page_spec.rb +92 -92
  126. data/spec/spec_helper.rb +89 -89
  127. data/spec/support/factory_girl.rb +15 -15
  128. metadata +1435 -1821
  129. data/spec/dummy/app/views/temp/_part2.html.haml +0 -1
  130. data/spec/dummy/log/test.log +0 -203
  131. data/spec/dummy/tmp/cache/assets/development/sass/0abc660c880b2e10d695d713e519e6a4257cd348/application.css.scssc +0 -0
  132. data/spec/dummy/tmp/cache/assets/development/sass/0abc660c880b2e10d695d713e519e6a4257cd348/bootstrap_and_overrides.css.scssc +0 -0
  133. data/spec/dummy/tmp/cache/assets/development/sass/0abc660c880b2e10d695d713e519e6a4257cd348/bootstrap_custom.css.scssc +0 -0
  134. data/spec/dummy/tmp/cache/assets/development/sass/0abc660c880b2e10d695d713e519e6a4257cd348/bootstrap_variables.css.scssc +0 -0
  135. data/spec/dummy/tmp/cache/assets/development/sass/0abc660c880b2e10d695d713e519e6a4257cd348/tpl.css.scssc +0 -0
  136. data/spec/dummy/tmp/cache/assets/development/sass/18577b7353d72dbc7e81d46af07240af8557f987/_hacks.scssc +0 -0
  137. data/spec/dummy/tmp/cache/assets/development/sass/255a203cf5ecbb5470dfd267d6d4b923c8f1e5f0/_css3.scssc +0 -0
  138. data/spec/dummy/tmp/cache/assets/development/sass/255a203cf5ecbb5470dfd267d6d4b923c8f1e5f0/_support.scssc +0 -0
  139. data/spec/dummy/tmp/cache/assets/development/sass/4b8b59c3cee3225b46cdcaa54f7d0474421be9c6/_bootstrap-sprockets.scssc +0 -0
  140. data/spec/dummy/tmp/cache/assets/development/sass/7f871ea7e3a8127767d5a5868622ef2909611f26/noskin.css.scssc +0 -0
  141. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/admin.css.scssc +0 -0
  142. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/admin_tpl.css.scssc +0 -0
  143. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/bootstrap_and_overrides.css.scssc +0 -0
  144. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/bootstrap_custom.css.scssc +0 -0
  145. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/bootstrap_variables.css.scssc +0 -0
  146. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/colors.css.scssc +0 -0
  147. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/tinymce.css.scssc +0 -0
  148. data/spec/dummy/tmp/cache/assets/development/sass/a1b4b92b7663fe8c3e3678ca845c8a0566c3ca13/tpl.css.scssc +0 -0
  149. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_alerts.scssc +0 -0
  150. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_background-variant.scssc +0 -0
  151. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_border-radius.scssc +0 -0
  152. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_buttons.scssc +0 -0
  153. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_center-block.scssc +0 -0
  154. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_clearfix.scssc +0 -0
  155. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_forms.scssc +0 -0
  156. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_gradients.scssc +0 -0
  157. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_grid-framework.scssc +0 -0
  158. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_grid.scssc +0 -0
  159. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_hide-text.scssc +0 -0
  160. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_image.scssc +0 -0
  161. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_labels.scssc +0 -0
  162. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_list-group.scssc +0 -0
  163. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_nav-divider.scssc +0 -0
  164. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_nav-vertical-align.scssc +0 -0
  165. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_opacity.scssc +0 -0
  166. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_pagination.scssc +0 -0
  167. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_panels.scssc +0 -0
  168. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_progress-bar.scssc +0 -0
  169. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_reset-filter.scssc +0 -0
  170. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_resize.scssc +0 -0
  171. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_responsive-visibility.scssc +0 -0
  172. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_size.scssc +0 -0
  173. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_tab-focus.scssc +0 -0
  174. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_table-row.scssc +0 -0
  175. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_text-emphasis.scssc +0 -0
  176. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_text-overflow.scssc +0 -0
  177. data/spec/dummy/tmp/cache/assets/development/sass/bfa17faa2a4aa370d46a5900b72c48f05b4837d1/_vendor-prefixes.scssc +0 -0
  178. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_appearance.scssc +0 -0
  179. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_background-clip.scssc +0 -0
  180. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_background-origin.scssc +0 -0
  181. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_background-size.scssc +0 -0
  182. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_border-radius.scssc +0 -0
  183. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_box-shadow.scssc +0 -0
  184. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_box-sizing.scssc +0 -0
  185. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_box.scssc +0 -0
  186. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_columns.scssc +0 -0
  187. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_filter.scssc +0 -0
  188. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_font-face.scssc +0 -0
  189. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_hyphenation.scssc +0 -0
  190. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_images.scssc +0 -0
  191. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_inline-block.scssc +0 -0
  192. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_opacity.scssc +0 -0
  193. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_regions.scssc +0 -0
  194. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_shared.scssc +0 -0
  195. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_text-shadow.scssc +0 -0
  196. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_transform.scssc +0 -0
  197. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_transition.scssc +0 -0
  198. data/spec/dummy/tmp/cache/assets/development/sass/e04ca948242d213270bfe676c8b96e7b33226468/_user-interface.scssc +0 -0
  199. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_alerts.scssc +0 -0
  200. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_badges.scssc +0 -0
  201. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_breadcrumbs.scssc +0 -0
  202. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_button-groups.scssc +0 -0
  203. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_buttons.scssc +0 -0
  204. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_carousel.scssc +0 -0
  205. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_close.scssc +0 -0
  206. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_code.scssc +0 -0
  207. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_component-animations.scssc +0 -0
  208. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_dropdowns.scssc +0 -0
  209. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_forms.scssc +0 -0
  210. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_glyphicons.scssc +0 -0
  211. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_grid.scssc +0 -0
  212. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_input-groups.scssc +0 -0
  213. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_jumbotron.scssc +0 -0
  214. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_labels.scssc +0 -0
  215. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_list-group.scssc +0 -0
  216. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_media.scssc +0 -0
  217. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_mixins.scssc +0 -0
  218. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_modals.scssc +0 -0
  219. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_navbar.scssc +0 -0
  220. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_navs.scssc +0 -0
  221. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_normalize.scssc +0 -0
  222. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_pager.scssc +0 -0
  223. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_pagination.scssc +0 -0
  224. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_panels.scssc +0 -0
  225. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_popovers.scssc +0 -0
  226. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_print.scssc +0 -0
  227. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_progress-bars.scssc +0 -0
  228. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_responsive-embed.scssc +0 -0
  229. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_responsive-utilities.scssc +0 -0
  230. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_scaffolding.scssc +0 -0
  231. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_tables.scssc +0 -0
  232. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_thumbnails.scssc +0 -0
  233. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_tooltip.scssc +0 -0
  234. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_type.scssc +0 -0
  235. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_utilities.scssc +0 -0
  236. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_variables.scssc +0 -0
  237. data/spec/dummy/tmp/cache/assets/development/sass/e541a95436c6e387d69ff457c2fe7f7bd11c2069/_wells.scssc +0 -0
  238. data/spec/dummy/tmp/cache/assets/development/sass/fc41a79de5ec40d34c8a83221f3f3da2c64f4153/font-awesome.css.erbc +0 -0
  239. data/spec/dummy/tmp/cache/assets/development/sprockets/002bd8f28c62a795a10ce5716ceffc21 +0 -0
  240. data/spec/dummy/tmp/cache/assets/development/sprockets/053f826d1ea01a2fac355de0755e5c40 +0 -0
  241. data/spec/dummy/tmp/cache/assets/development/sprockets/05e27d4921b00a0fdddb47a737a64494 +0 -0
  242. data/spec/dummy/tmp/cache/assets/development/sprockets/0a470277dd21c166b9dfb68b03d34d5c +0 -0
  243. data/spec/dummy/tmp/cache/assets/development/sprockets/0b1671e1bffda60e6a95f72b9176d628 +0 -0
  244. data/spec/dummy/tmp/cache/assets/development/sprockets/0c01383de62960e3667c7bf3788ecdb6 +0 -0
  245. data/spec/dummy/tmp/cache/assets/development/sprockets/0d2f255829ff9f72d98dead4f35ddf02 +0 -0
  246. data/spec/dummy/tmp/cache/assets/development/sprockets/11f54468370774efca0fe1afb2ebf1d9 +0 -0
  247. data/spec/dummy/tmp/cache/assets/development/sprockets/1c0ef71c34dc1d573e1b4b527116e3cc +0 -0
  248. data/spec/dummy/tmp/cache/assets/development/sprockets/2168c08c151d642aa46ea4bc6283929c +0 -0
  249. data/spec/dummy/tmp/cache/assets/development/sprockets/2a9369c8d28de014045a120b692e8139 +0 -0
  250. data/spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  251. data/spec/dummy/tmp/cache/assets/development/sprockets/2f7d38a264678a2db4a0d569a3313cb1 +0 -0
  252. data/spec/dummy/tmp/cache/assets/development/sprockets/3240ef40c1dc9d13156bbd790ec2651a +0 -0
  253. data/spec/dummy/tmp/cache/assets/development/sprockets/332dfe4887cbad3adbd20e6609fa4960 +0 -0
  254. data/spec/dummy/tmp/cache/assets/development/sprockets/3347cc312918facec5bbac684ea65715 +0 -0
  255. data/spec/dummy/tmp/cache/assets/development/sprockets/3cd4037d8c32ad8fcdd5e3bbb8dfc35a +0 -0
  256. data/spec/dummy/tmp/cache/assets/development/sprockets/4016d2fd0b776ceb82fcbfbc5d2e26b1 +0 -0
  257. data/spec/dummy/tmp/cache/assets/development/sprockets/43dc3e92cd09deb0fc54dd97b46935e9 +0 -0
  258. data/spec/dummy/tmp/cache/assets/development/sprockets/452d7e35d5a012ae12fa7346fcf2239b +0 -0
  259. data/spec/dummy/tmp/cache/assets/development/sprockets/49c7cb5dd916ffc9e87ce3b989c92062 +0 -0
  260. data/spec/dummy/tmp/cache/assets/development/sprockets/529a74a4530de52f6c3ebbf107ffe9f2 +0 -0
  261. data/spec/dummy/tmp/cache/assets/development/sprockets/55a2847335c39261e1efe764deb18592 +0 -0
  262. data/spec/dummy/tmp/cache/assets/development/sprockets/56c7eb172a7423728c45d0a751d198e3 +0 -0
  263. data/spec/dummy/tmp/cache/assets/development/sprockets/6789fe765d536063c998330523bb12b9 +0 -0
  264. data/spec/dummy/tmp/cache/assets/development/sprockets/678a2e392e656b8132f0420e4ec28ed6 +0 -0
  265. data/spec/dummy/tmp/cache/assets/development/sprockets/6843f0414f73089579ae0f9fddf7b38f +0 -0
  266. data/spec/dummy/tmp/cache/assets/development/sprockets/6c7c58744c14732af9bf574870fdf07e +0 -0
  267. data/spec/dummy/tmp/cache/assets/development/sprockets/6cdbd6f171a27a578bcb07dd5bfa83a2 +0 -0
  268. data/spec/dummy/tmp/cache/assets/development/sprockets/6e431ed1dfb5bbcbd33a5f9e069dd3ab +0 -0
  269. data/spec/dummy/tmp/cache/assets/development/sprockets/6f943f22c610e6417422e4a13e0bcc0d +0 -0
  270. data/spec/dummy/tmp/cache/assets/development/sprockets/73fbaa501dc0b072cf2c27fa7dfe0d91 +0 -0
  271. data/spec/dummy/tmp/cache/assets/development/sprockets/7c886717bced4d59ab89e012b52f40de +0 -0
  272. data/spec/dummy/tmp/cache/assets/development/sprockets/821470da3272c8b99070972d4f4f58ca +0 -0
  273. data/spec/dummy/tmp/cache/assets/development/sprockets/88d843fcb07453d1057fac1e254fde0d +0 -0
  274. data/spec/dummy/tmp/cache/assets/development/sprockets/8956737a82f17db48d50e13f133aeefc +0 -0
  275. data/spec/dummy/tmp/cache/assets/development/sprockets/8ab512c9b33ac90e699b73469d71f061 +0 -0
  276. data/spec/dummy/tmp/cache/assets/development/sprockets/8b5a7992567ebbeb9a882d074778f8c8 +0 -0
  277. data/spec/dummy/tmp/cache/assets/development/sprockets/8d71fe4f0e2910900097bdc07bf2d6af +0 -0
  278. data/spec/dummy/tmp/cache/assets/development/sprockets/8e1785ddbfab42cd2df0416eb3932253 +0 -0
  279. data/spec/dummy/tmp/cache/assets/development/sprockets/9024d024c62c2668836b1e1b7b3b78cc +0 -0
  280. data/spec/dummy/tmp/cache/assets/development/sprockets/928ed298f875a25727ca516f5c03f344 +0 -0
  281. data/spec/dummy/tmp/cache/assets/development/sprockets/97c1e12a09973e0fb97f23a1dc496443 +0 -0
  282. data/spec/dummy/tmp/cache/assets/development/sprockets/991576185140a77411185839fd0533f1 +0 -0
  283. data/spec/dummy/tmp/cache/assets/development/sprockets/99e8d6370ba85ec4a61d953f5ed261af +0 -0
  284. data/spec/dummy/tmp/cache/assets/development/sprockets/9ee80730ab26986d507820ac7a288d5c +0 -0
  285. data/spec/dummy/tmp/cache/assets/development/sprockets/a3faca31eb11ba1a981535f9c8408282 +0 -0
  286. data/spec/dummy/tmp/cache/assets/development/sprockets/a5c68a2aec806face32c749f380f1e14 +0 -0
  287. data/spec/dummy/tmp/cache/assets/development/sprockets/a64dbcf0e4afe0985b1abd3e209d17cd +0 -0
  288. data/spec/dummy/tmp/cache/assets/development/sprockets/a6d357fbe03dae6f590180f6c5e0e148 +0 -0
  289. data/spec/dummy/tmp/cache/assets/development/sprockets/aa58fb159780a7200a1bc4c6844cc5c4 +0 -0
  290. data/spec/dummy/tmp/cache/assets/development/sprockets/aaba73a43e02d8c6550bae851f17e7a0 +0 -0
  291. data/spec/dummy/tmp/cache/assets/development/sprockets/af26c017afcf68f1edd44a4c9bb942e4 +0 -0
  292. data/spec/dummy/tmp/cache/assets/development/sprockets/b3defd466aec80b128284b8d85324630 +0 -0
  293. data/spec/dummy/tmp/cache/assets/development/sprockets/b48ed8a3de3ca66055ee4fd18b16421f +0 -0
  294. data/spec/dummy/tmp/cache/assets/development/sprockets/ba9859d0d2b7d4d7d5b03ff3a71ed478 +0 -0
  295. data/spec/dummy/tmp/cache/assets/development/sprockets/bcca522c6302f184f12fe0e8a7d7e71a +0 -0
  296. data/spec/dummy/tmp/cache/assets/development/sprockets/be8a0cd6c3605b9d7c22642609316a9f +0 -0
  297. data/spec/dummy/tmp/cache/assets/development/sprockets/c11c6d97cfc7ef7945fa87f14b44445c +0 -0
  298. data/spec/dummy/tmp/cache/assets/development/sprockets/c13fc73ceafa45876a901b3e775b83ae +0 -0
  299. data/spec/dummy/tmp/cache/assets/development/sprockets/c5f3450b5366b6fbdc4172ce089fba48 +0 -0
  300. data/spec/dummy/tmp/cache/assets/development/sprockets/c982bb1e71844744a60dc9b4afcb2f49 +0 -0
  301. data/spec/dummy/tmp/cache/assets/development/sprockets/cf24c3f1bb8adb1f168758f2bd9775c9 +0 -0
  302. data/spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  303. data/spec/dummy/tmp/cache/assets/development/sprockets/d3e5a199890ba7c706fc62c2b891714d +0 -0
  304. data/spec/dummy/tmp/cache/assets/development/sprockets/d584baf83d8a779d945f9668f902fa7c +0 -0
  305. data/spec/dummy/tmp/cache/assets/development/sprockets/d71b820ce5f8b310e466f517bd3a8e4b +0 -0
  306. data/spec/dummy/tmp/cache/assets/development/sprockets/d8dab59d17daf5a5081153e2ad7d09b4 +0 -0
  307. data/spec/dummy/tmp/cache/assets/development/sprockets/dd4a8658311b7a2cd8effa6479827559 +0 -0
  308. data/spec/dummy/tmp/cache/assets/development/sprockets/e11970a225a09526aac3f76d7ee91822 +0 -0
  309. data/spec/dummy/tmp/cache/assets/development/sprockets/e3dd086dd858b5bff9cfd60a031c2091 +0 -0
  310. data/spec/dummy/tmp/cache/assets/development/sprockets/e43bcf201d76cdf6e1fe345195c1cd9e +0 -0
  311. data/spec/dummy/tmp/cache/assets/development/sprockets/e945ca604ee0240455a5652953b3e495 +0 -0
  312. data/spec/dummy/tmp/cache/assets/development/sprockets/ec33505f0e2ed4dd12951ecceffa3695 +0 -0
  313. data/spec/dummy/tmp/cache/assets/development/sprockets/ee287313e28f341f83628dec0a353fa6 +0 -0
  314. data/spec/dummy/tmp/cache/assets/development/sprockets/ee9a23832dc2a49ee6ec6d3f1d6a0e1f +0 -0
  315. data/spec/dummy/tmp/cache/assets/development/sprockets/ef2d6862f5fd690c5387cafd88944a9f +0 -0
  316. data/spec/dummy/tmp/cache/assets/development/sprockets/ef8c3824b85ed745cad651aadda4f2b8 +0 -0
  317. data/spec/dummy/tmp/cache/assets/development/sprockets/f557612d05bb9fea499dce8352b3f0ca +0 -0
  318. data/spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  319. data/spec/dummy/tmp/cache/assets/development/sprockets/f7f3056583a2454471a4a5f7200dcefa +0 -0
  320. data/spec/dummy/tmp/cache/assets/development/sprockets/f9c51fa87975943d31bc1bfd7cb684c6 +0 -0
  321. data/spec/dummy/tmp/cache/assets/development/sprockets/ff9ed89418a3f78032b8f8184dd98e80 +0 -0
@@ -1,227 +1,227 @@
1
- =begin
2
- module Optimacms
3
- module Filters
4
- class FormFilter
5
-
6
- FIELD_TYPE_TEXT = 'text'
7
- FIELD_TYPE_HIDDEN = 'hidden'
8
- FIELD_TYPE_SELECT_AUTO = 'select_auto' # text with autocomplete
9
-
10
- DBTYPE_STRING = 'string'
11
- DBTYPE_INT = 'int'
12
- DBTYPE_DATE = 'date'
13
-
14
- #
15
- attr_accessor :prefix # session prefix
16
- attr_accessor :fields
17
- attr_accessor :data
18
- #attr_accessor :order # [ ["order_column", "asc|desc"], ..]
19
-
20
-
21
-
22
- def initialize(_session, _prefix)
23
- @prefix = _prefix
24
- @session = _session
25
-
26
- @fields ||={}
27
-
28
- # init data
29
- data()
30
- end
31
-
32
-
33
- ############
34
- # fields
35
- ############
36
-
37
- def add_field(f)
38
- @fields[f[:name]] = f
39
-
40
- end
41
-
42
- def add_fields_from_array(a)
43
- a.each do |fa|
44
- add_field fa
45
- end
46
-
47
- end
48
-
49
-
50
- def field_def_value(name)
51
- if (@fields.has_key? name) && (@fields[name].has_key? :def)
52
- return @fields[name][:def]
53
- end
54
- nil
55
- end
56
-
57
- ############
58
- # sessions
59
- ############
60
-
61
- def session_get(name, def_value)
62
- @session[prefix+name] || def_value
63
- end
64
-
65
- def session_save(name, v)
66
- @session[prefix+name] = v
67
- end
68
-
69
-
70
- ############
71
- # data
72
- ############
73
-
74
-
75
- def data
76
- return @data unless @data.nil?
77
-
78
- # from session
79
- @data_sess = session_get 'data', nil
80
- unless @data_sess.nil?
81
- @data = @data_sess
82
- else
83
-
84
- end
85
-
86
- #
87
- @data ||= {}
88
-
89
- session_save('data', @data)
90
-
91
- #
92
- @data
93
- end
94
-
95
- def v(name, v_def=nil)
96
- if (data.has_key? name) && (!data[name].nil?) && (!data[name].nil?)
97
- return data[name]
98
- end
99
-
100
- field_def_value(name) || v_def
101
- end
102
-
103
- def v_empty?(name)
104
- if (data.has_key? name) && (!data[name].nil?)
105
- return true
106
- end
107
-
108
- # if v == default value
109
-
110
- end
111
-
112
- def set(field_name,v)
113
- data[field_name] = v
114
- end
115
-
116
-
117
- def clear_data
118
- session_save 'data', {}
119
- end
120
-
121
- def set_data_from_form(params)
122
- # search for fields like filter[XXX]
123
- params.each do |name, v|
124
- #if f =~ /^filter\[([^\]]+)\]$/
125
- #name = Regexp.last_match(1)
126
-
127
- next unless @fields.has_key? name
128
-
129
- if @fields[name][:dbtype]==DBTYPE_INT
130
- data[name] = (v.to_i rescue 0)
131
- else
132
- data[name] = v
133
- end
134
-
135
- #end
136
- end
137
-
138
- # default values from fields
139
- @fields.each do |name, f|
140
- next if @data.has_key? name
141
-
142
- @data[name] = field_def_value name
143
- end
144
-
145
- end
146
-
147
-
148
-
149
- ####
150
- # order
151
- ####
152
-
153
- def order
154
- return @order unless @order.nil?
155
-
156
- # from session
157
- @v_sess = session_get 'order', nil
158
- @order = @v_sess unless @v_sess.nil?
159
-
160
- #
161
- @order ||= []
162
-
163
- session_save 'order', @order
164
-
165
- #
166
- @order
167
- end
168
-
169
- def order= (value)
170
- @order = value
171
-
172
- session_save 'order', @order
173
- end
174
-
175
- def set_order_default(order_by, order_dir)
176
- return false if !order.nil? && !order.empty?
177
-
178
- set_order(order_by, order_dir)
179
-
180
- end
181
-
182
-
183
- def set_order(order_by, order_dir)
184
- self.order = [[order_by, order_dir]]
185
- end
186
-
187
- def get_order
188
- order[0] if order.count>0
189
- order[0]
190
- end
191
-
192
-
193
- def get_opposite_order_dir_for_column(name)
194
- return 'asc' if order.empty?
195
-
196
-
197
- if order[0][0] == name
198
- return opposite_order_dir(order[0][1])
199
- end
200
-
201
- return 'asc'
202
- end
203
-
204
- def opposite_order_dir(order_dir)
205
- return 'asc' if order_dir=='desc'
206
- return 'desc' if order_dir=='asc'
207
- 'asc'
208
- end
209
-
210
-
211
-
212
- #helper methods
213
-
214
- def html_style(name)
215
- return '' unless @fields[name].has_key?(:opt)
216
-
217
- s = ''
218
- opt = @fields[name][:opt]
219
- unless opt[:width].nil?
220
- s << "width: #{opt[:width]}px; "
221
- end
222
- end
223
- end
224
- end
225
- end
226
-
1
+ =begin
2
+ module Optimacms
3
+ module Filters
4
+ class FormFilter
5
+
6
+ FIELD_TYPE_TEXT = 'text'
7
+ FIELD_TYPE_HIDDEN = 'hidden'
8
+ FIELD_TYPE_SELECT_AUTO = 'select_auto' # text with autocomplete
9
+
10
+ DBTYPE_STRING = 'string'
11
+ DBTYPE_INT = 'int'
12
+ DBTYPE_DATE = 'date'
13
+
14
+ #
15
+ attr_accessor :prefix # session prefix
16
+ attr_accessor :fields
17
+ attr_accessor :data
18
+ #attr_accessor :order # [ ["order_column", "asc|desc"], ..]
19
+
20
+
21
+
22
+ def initialize(_session, _prefix)
23
+ @prefix = _prefix
24
+ @session = _session
25
+
26
+ @fields ||={}
27
+
28
+ # init data
29
+ data()
30
+ end
31
+
32
+
33
+ ############
34
+ # fields
35
+ ############
36
+
37
+ def add_field(f)
38
+ @fields[f[:name]] = f
39
+
40
+ end
41
+
42
+ def add_fields_from_array(a)
43
+ a.each do |fa|
44
+ add_field fa
45
+ end
46
+
47
+ end
48
+
49
+
50
+ def field_def_value(name)
51
+ if (@fields.has_key? name) && (@fields[name].has_key? :def)
52
+ return @fields[name][:def]
53
+ end
54
+ nil
55
+ end
56
+
57
+ ############
58
+ # sessions
59
+ ############
60
+
61
+ def session_get(name, def_value)
62
+ @session[prefix+name] || def_value
63
+ end
64
+
65
+ def session_save(name, v)
66
+ @session[prefix+name] = v
67
+ end
68
+
69
+
70
+ ############
71
+ # data
72
+ ############
73
+
74
+
75
+ def data
76
+ return @data unless @data.nil?
77
+
78
+ # from session
79
+ @data_sess = session_get 'data', nil
80
+ unless @data_sess.nil?
81
+ @data = @data_sess
82
+ else
83
+
84
+ end
85
+
86
+ #
87
+ @data ||= {}
88
+
89
+ session_save('data', @data)
90
+
91
+ #
92
+ @data
93
+ end
94
+
95
+ def v(name, v_def=nil)
96
+ if (data.has_key? name) && (!data[name].nil?) && (!data[name].nil?)
97
+ return data[name]
98
+ end
99
+
100
+ field_def_value(name) || v_def
101
+ end
102
+
103
+ def v_empty?(name)
104
+ if (data.has_key? name) && (!data[name].nil?)
105
+ return true
106
+ end
107
+
108
+ # if v == default value
109
+
110
+ end
111
+
112
+ def set(field_name,v)
113
+ data[field_name] = v
114
+ end
115
+
116
+
117
+ def clear_data
118
+ session_save 'data', {}
119
+ end
120
+
121
+ def set_data_from_form(params)
122
+ # search for fields like filter[XXX]
123
+ params.each do |name, v|
124
+ #if f =~ /^filter\[([^\]]+)\]$/
125
+ #name = Regexp.last_match(1)
126
+
127
+ next unless @fields.has_key? name
128
+
129
+ if @fields[name][:dbtype]==DBTYPE_INT
130
+ data[name] = (v.to_i rescue 0)
131
+ else
132
+ data[name] = v
133
+ end
134
+
135
+ #end
136
+ end
137
+
138
+ # default values from fields
139
+ @fields.each do |name, f|
140
+ next if @data.has_key? name
141
+
142
+ @data[name] = field_def_value name
143
+ end
144
+
145
+ end
146
+
147
+
148
+
149
+ ####
150
+ # order
151
+ ####
152
+
153
+ def order
154
+ return @order unless @order.nil?
155
+
156
+ # from session
157
+ @v_sess = session_get 'order', nil
158
+ @order = @v_sess unless @v_sess.nil?
159
+
160
+ #
161
+ @order ||= []
162
+
163
+ session_save 'order', @order
164
+
165
+ #
166
+ @order
167
+ end
168
+
169
+ def order= (value)
170
+ @order = value
171
+
172
+ session_save 'order', @order
173
+ end
174
+
175
+ def set_order_default(order_by, order_dir)
176
+ return false if !order.nil? && !order.empty?
177
+
178
+ set_order(order_by, order_dir)
179
+
180
+ end
181
+
182
+
183
+ def set_order(order_by, order_dir)
184
+ self.order = [[order_by, order_dir]]
185
+ end
186
+
187
+ def get_order
188
+ order[0] if order.count>0
189
+ order[0]
190
+ end
191
+
192
+
193
+ def get_opposite_order_dir_for_column(name)
194
+ return 'asc' if order.empty?
195
+
196
+
197
+ if order[0][0] == name
198
+ return opposite_order_dir(order[0][1])
199
+ end
200
+
201
+ return 'asc'
202
+ end
203
+
204
+ def opposite_order_dir(order_dir)
205
+ return 'asc' if order_dir=='desc'
206
+ return 'desc' if order_dir=='asc'
207
+ 'asc'
208
+ end
209
+
210
+
211
+
212
+ #helper methods
213
+
214
+ def html_style(name)
215
+ return '' unless @fields[name].has_key?(:opt)
216
+
217
+ s = ''
218
+ opt = @fields[name][:opt]
219
+ unless opt[:width].nil?
220
+ s << "width: #{opt[:width]}px; "
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
226
+
227
227
  =end
@@ -1,69 +1,69 @@
1
- module Optimacms
2
- module Mycontroller
3
- extend ActiveSupport::Concern
4
-
5
-
6
- included do
7
- helper_method :site_page_path
8
- end
9
-
10
- def my_set_render
11
- @is_optimacms = true
12
-
13
- end
14
-
15
- def default_render(*args)
16
- if self.controller_name!='pages' && !@optimacms_tpl.nil? && @is_optimacms
17
- render @optimacms_tpl, :layout=>@optimacms_layout and return
18
- #(render :text => "hello", :layout => @optimacms_layout) and return
19
-
20
- # http://stackoverflow.com/questions/21129587/ruby-on-rails-how-to-render-file-as-plain-text-without-any-html
21
- #render :plain will set the content type to text/plain
22
- #render :html will set the content type to text/html
23
- #render :body will not set the content type header.
24
- # render text: "some text". :plain does not work.
25
- end
26
-
27
- super
28
- end
29
-
30
- def my_set_render_template(tpl_view, tpl_layout)
31
- @optimacms_tpl = tpl_view
32
- @optimacms_layout = tpl_layout
33
- end
34
-
35
- def my_set_meta(meta)
36
- @optimacms_meta_title = meta[:title]
37
- @optimacms_meta_keywords = meta[:keywords]
38
- @optimacms_meta_description = meta[:description]
39
- end
40
-
41
- def site_page_path(name, p={})
42
- get_page_path(name, p)
43
- end
44
-
45
- def get_page_path(page_name, p={})
46
- # get from cache
47
- @cache_page_urls ||= {}
48
- url = @cache_page_urls.fetch(page_name.to_s, nil)
49
-
50
- if url.nil?
51
- page = Page.find_by_name(page_name)
52
- url = page.url if page
53
- end
54
-
55
- return nil if url.nil?
56
-
57
- # set to cache
58
- @cache_page_urls ||= {}
59
- @cache_page_urls[page_name.to_s] = url
60
-
61
- #
62
- res = PageServices::PageRouteService.make_url url, p
63
-
64
- '/'+res
65
- end
66
-
67
- end
68
- end
69
-
1
+ module Optimacms
2
+ module Mycontroller
3
+ extend ActiveSupport::Concern
4
+
5
+
6
+ included do
7
+ helper_method :site_page_path
8
+ end
9
+
10
+ def my_set_render
11
+ @is_optimacms = true
12
+
13
+ end
14
+
15
+ def default_render(*args)
16
+ if self.controller_name!='pages' && !@optimacms_tpl.nil? && @is_optimacms
17
+ render @optimacms_tpl, :layout=>@optimacms_layout and return
18
+ #(render :text => "hello", :layout => @optimacms_layout) and return
19
+
20
+ # http://stackoverflow.com/questions/21129587/ruby-on-rails-how-to-render-file-as-plain-text-without-any-html
21
+ #render :plain will set the content type to text/plain
22
+ #render :html will set the content type to text/html
23
+ #render :body will not set the content type header.
24
+ # render text: "some text". :plain does not work.
25
+ end
26
+
27
+ super
28
+ end
29
+
30
+ def my_set_render_template(tpl_view, tpl_layout)
31
+ @optimacms_tpl = tpl_view
32
+ @optimacms_layout = tpl_layout
33
+ end
34
+
35
+ def my_set_meta(meta)
36
+ @optimacms_meta_title = meta[:title]
37
+ @optimacms_meta_keywords = meta[:keywords]
38
+ @optimacms_meta_description = meta[:description]
39
+ end
40
+
41
+ def site_page_path(name, p={})
42
+ get_page_path(name, p)
43
+ end
44
+
45
+ def get_page_path(page_name, p={})
46
+ # get from cache
47
+ @cache_page_urls ||= {}
48
+ url = @cache_page_urls.fetch(page_name.to_s, nil)
49
+
50
+ if url.nil?
51
+ page = Page.find_by_name(page_name)
52
+ url = page.url if page
53
+ end
54
+
55
+ return nil if url.nil?
56
+
57
+ # set to cache
58
+ @cache_page_urls ||= {}
59
+ @cache_page_urls[page_name.to_s] = url
60
+
61
+ #
62
+ res = PageServices::PageRouteService.make_url url, p
63
+
64
+ '/'+res
65
+ end
66
+
67
+ end
68
+ end
69
+