camaleon_cms 0.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of camaleon_cms might be problematic. Click here for more details.

Files changed (653) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +37 -0
  3. data/app/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  4. data/app/assets/fonts/glyphicons-halflings-regular.svg +229 -0
  5. data/app/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  6. data/app/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  7. data/app/assets/images/admin/no_image.jpg +0 -0
  8. data/app/assets/images/bg-tree.jpeg +0 -0
  9. data/app/assets/images/camaleon-dark.png +0 -0
  10. data/app/assets/images/camaleon.png +0 -0
  11. data/app/assets/images/category-icon.png +0 -0
  12. data/app/assets/images/image-not-found.png +0 -0
  13. data/app/assets/images/language/de.png +0 -0
  14. data/app/assets/images/language/en.png +0 -0
  15. data/app/assets/images/language/es.png +0 -0
  16. data/app/assets/images/language/fr.png +0 -0
  17. data/app/assets/images/language/it.png +0 -0
  18. data/app/assets/images/language/pt.png +0 -0
  19. data/app/assets/images/language/zh.png +0 -0
  20. data/app/assets/images/loader.gif +0 -0
  21. data/app/assets/images/users/no-image.jpg +0 -0
  22. data/app/assets/javascripts/admin/actions.js +248 -0
  23. data/app/assets/javascripts/admin/admin-manifest.js +32 -0
  24. data/app/assets/javascripts/admin/bootstrap-colorpicker.js +540 -0
  25. data/app/assets/javascripts/admin/bootstrap-datepicker.js +1690 -0
  26. data/app/assets/javascripts/admin/bootstrap-datetimepicker.min.js +26 -0
  27. data/app/assets/javascripts/admin/bootstrap-select.js +1022 -0
  28. data/app/assets/javascripts/admin/core.js +267 -0
  29. data/app/assets/javascripts/admin/custom_fields.js +165 -0
  30. data/app/assets/javascripts/admin/data.js +78 -0
  31. data/app/assets/javascripts/admin/elfinder-manifest.js +7 -0
  32. data/app/assets/javascripts/admin/elfinder/elfinder.full.js +12646 -0
  33. data/app/assets/javascripts/admin/elfinder/i18n/elfinder.es.js +294 -0
  34. data/app/assets/javascripts/admin/elfinder/i18n/elfinder.fr.js +298 -0
  35. data/app/assets/javascripts/admin/elfinder/proxy/elFinderSupportVer1.js +338 -0
  36. data/app/assets/javascripts/admin/elfinder/upload_elfinder.js +236 -0
  37. data/app/assets/javascripts/admin/es.js +27 -0
  38. data/app/assets/javascripts/admin/form-builder/formbuilder.js +1250 -0
  39. data/app/assets/javascripts/admin/form-builder/vendor.js +3072 -0
  40. data/app/assets/javascripts/admin/form/cropper.min.js +9 -0
  41. data/app/assets/javascripts/admin/form/jquery.form.js +911 -0
  42. data/app/assets/javascripts/admin/jquery-sieve.js +6 -0
  43. data/app/assets/javascripts/admin/jquery-ui.min.js +10 -0
  44. data/app/assets/javascripts/admin/jquery.nestable.js +485 -0
  45. data/app/assets/javascripts/admin/jquery.slugify.js +65 -0
  46. data/app/assets/javascripts/admin/jquery.tagsinput.min.js +1 -0
  47. data/app/assets/javascripts/admin/jquery.validate.js +1415 -0
  48. data/app/assets/javascripts/admin/login.js.coffee +7 -0
  49. data/app/assets/javascripts/admin/login_manifest.js +18 -0
  50. data/app/assets/javascripts/admin/modal.js +94 -0
  51. data/app/assets/javascripts/admin/nav-menu.js +110 -0
  52. data/app/assets/javascripts/admin/plugins.js +637 -0
  53. data/app/assets/javascripts/admin/post.js +274 -0
  54. data/app/assets/javascripts/admin/tageditor/jquery.caret.min.js +2 -0
  55. data/app/assets/javascripts/admin/tageditor/jquery.tag-editor.js +352 -0
  56. data/app/assets/javascripts/admin/tinymce/langs/es.js +177 -0
  57. data/app/assets/javascripts/admin/tinymce/langs/readme.md +3 -0
  58. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-cool.gif +0 -0
  59. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-cry.gif +0 -0
  60. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-embarassed.gif +0 -0
  61. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-foot-in-mouth.gif +0 -0
  62. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-frown.gif +0 -0
  63. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-innocent.gif +0 -0
  64. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-kiss.gif +0 -0
  65. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-laughing.gif +0 -0
  66. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-money-mouth.gif +0 -0
  67. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-sealed.gif +0 -0
  68. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-smile.gif +0 -0
  69. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-surprised.gif +0 -0
  70. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-tongue-out.gif +0 -0
  71. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-undecided.gif +0 -0
  72. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-wink.gif +0 -0
  73. data/app/assets/javascripts/admin/tinymce/plugins/emoticons/img/smiley-yell.gif +0 -0
  74. data/app/assets/javascripts/admin/tinymce/plugins/filemanager/plugin.min.js +31 -0
  75. data/app/assets/javascripts/admin/tinymce/plugins/visualblocks/css/visualblocks.css +135 -0
  76. data/app/assets/javascripts/admin/tinymce/skins/lightgray/content.min.css.scss +4 -0
  77. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce-small.eot +0 -0
  78. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce-small.svg +62 -0
  79. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce-small.ttf +0 -0
  80. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce-small.woff +0 -0
  81. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
  82. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce.svg +83 -0
  83. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
  84. data/app/assets/javascripts/admin/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
  85. data/app/assets/javascripts/admin/tinymce/skins/lightgray/img/anchor.gif +0 -0
  86. data/app/assets/javascripts/admin/tinymce/skins/lightgray/img/loader.gif +0 -0
  87. data/app/assets/javascripts/admin/tinymce/skins/lightgray/img/object.gif +0 -0
  88. data/app/assets/javascripts/admin/tinymce/skins/lightgray/img/trans.gif +0 -0
  89. data/app/assets/javascripts/admin/tinymce/themes/modern/theme.min.js +1 -0
  90. data/app/assets/javascripts/admin/tinymce/tinymce.min.js +11 -0
  91. data/app/assets/javascripts/admin/translator.js +109 -0
  92. data/app/assets/javascripts/admin/underscore.js +1536 -0
  93. data/app/assets/javascripts/admin/widgets.js +53 -0
  94. data/app/assets/javascripts/audio/alert.mp3 +0 -0
  95. data/app/assets/javascripts/audio/fail.mp3 +0 -0
  96. data/app/assets/javascripts/bootstrap.min.js +7 -0
  97. data/app/assets/javascripts/elfinder_front.js +85 -0
  98. data/app/assets/javascripts/gibberish-aes.js +1017 -0
  99. data/app/assets/javascripts/jquery-1.11.3.min.js +5 -0
  100. data/app/assets/stylesheets/admin/admin-manifest.css +28 -0
  101. data/app/assets/stylesheets/admin/animate/animate.min.css +6 -0
  102. data/app/assets/stylesheets/admin/bootstrap/bootstrap-datetimepicker.css +339 -0
  103. data/app/assets/stylesheets/admin/bootstrap/bootstrap.min.css +5 -0
  104. data/app/assets/stylesheets/admin/bootstrap/images/glyphicons-halflings.png +0 -0
  105. data/app/assets/stylesheets/admin/core.scss +345 -0
  106. data/app/assets/stylesheets/admin/cropper/cropper.min.css +52 -0
  107. data/app/assets/stylesheets/admin/elfinder-manifest.css +6 -0
  108. data/app/assets/stylesheets/admin/elfinder/elfinder-theme.scss +191 -0
  109. data/app/assets/stylesheets/admin/elfinder/elfinder.css +1922 -0
  110. data/app/assets/stylesheets/admin/elfinder/images/arrows-active.png +0 -0
  111. data/app/assets/stylesheets/admin/elfinder/images/arrows-normal.png +0 -0
  112. data/app/assets/stylesheets/admin/elfinder/images/crop.gif +0 -0
  113. data/app/assets/stylesheets/admin/elfinder/images/dialogs.png +0 -0
  114. data/app/assets/stylesheets/admin/elfinder/images/icons-big.png +0 -0
  115. data/app/assets/stylesheets/admin/elfinder/images/icons-small.png +0 -0
  116. data/app/assets/stylesheets/admin/elfinder/images/logo.png +0 -0
  117. data/app/assets/stylesheets/admin/elfinder/images/progress.gif +0 -0
  118. data/app/assets/stylesheets/admin/elfinder/images/quicklook-bg.png +0 -0
  119. data/app/assets/stylesheets/admin/elfinder/images/quicklook-icons.png +0 -0
  120. data/app/assets/stylesheets/admin/elfinder/images/resize.png +0 -0
  121. data/app/assets/stylesheets/admin/elfinder/images/spinner-mini.gif +0 -0
  122. data/app/assets/stylesheets/admin/elfinder/images/toolbar.png +0 -0
  123. data/app/assets/stylesheets/admin/elfinder/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  124. data/app/assets/stylesheets/admin/elfinder/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  125. data/app/assets/stylesheets/admin/elfinder/images/ui-icons_222222_256x240.png +0 -0
  126. data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.eot +0 -0
  127. data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.svg +1831 -0
  128. data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.ttf +0 -0
  129. data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.woff +0 -0
  130. data/app/assets/stylesheets/admin/fonts/glyphicons-halflings-regular.eot +0 -0
  131. data/app/assets/stylesheets/admin/fonts/glyphicons-halflings-regular.svg +229 -0
  132. data/app/assets/stylesheets/admin/fonts/glyphicons-halflings-regular.ttf +0 -0
  133. data/app/assets/stylesheets/admin/fonts/glyphicons-halflings-regular.woff +0 -0
  134. data/app/assets/stylesheets/admin/form-builder/formbuilder.css +71 -0
  135. data/app/assets/stylesheets/admin/img/bg.png +0 -0
  136. data/app/assets/stylesheets/admin/img/colorpicker/alpha.png +0 -0
  137. data/app/assets/stylesheets/admin/img/colorpicker/hue.png +0 -0
  138. data/app/assets/stylesheets/admin/img/colorpicker/saturation.png +0 -0
  139. data/app/assets/stylesheets/admin/img/girls-1.jpg +0 -0
  140. data/app/assets/stylesheets/admin/img/jquery/resize-icon.png +0 -0
  141. data/app/assets/stylesheets/admin/img/loading.gif +1 -0
  142. data/app/assets/stylesheets/admin/img/logo-small.png +0 -0
  143. data/app/assets/stylesheets/admin/img/logo.png +0 -0
  144. data/app/assets/stylesheets/admin/img/no_image.jpg +0 -0
  145. data/app/assets/stylesheets/admin/img/rormeleon-white.png +0 -0
  146. data/app/assets/stylesheets/admin/img/thumb_no_found.jpg +0 -0
  147. data/app/assets/stylesheets/admin/jquery.tagsinput.css +72 -0
  148. data/app/assets/stylesheets/admin/jquery/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  149. data/app/assets/stylesheets/admin/jquery/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  150. data/app/assets/stylesheets/admin/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  151. data/app/assets/stylesheets/admin/jquery/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  152. data/app/assets/stylesheets/admin/jquery/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  153. data/app/assets/stylesheets/admin/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  154. data/app/assets/stylesheets/admin/jquery/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  155. data/app/assets/stylesheets/admin/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  156. data/app/assets/stylesheets/admin/jquery/images/ui-icons_222222_256x240.png +0 -0
  157. data/app/assets/stylesheets/admin/jquery/images/ui-icons_2e83ff_256x240.png +0 -0
  158. data/app/assets/stylesheets/admin/jquery/images/ui-icons_454545_256x240.png +0 -0
  159. data/app/assets/stylesheets/admin/jquery/images/ui-icons_888888_256x240.png +0 -0
  160. data/app/assets/stylesheets/admin/jquery/images/ui-icons_cd0a0a_256x240.png +0 -0
  161. data/app/assets/stylesheets/admin/jquery/jquery-ui.scss +1226 -0
  162. data/app/assets/stylesheets/admin/nav-menu.css +54 -0
  163. data/app/assets/stylesheets/admin/nestable/jquery.nestable.css +103 -0
  164. data/app/assets/stylesheets/admin/tageditor/delete.png +0 -0
  165. data/app/assets/stylesheets/admin/tageditor/delete.svg +4 -0
  166. data/app/assets/stylesheets/admin/tageditor/jquery.tag-editor.css +49 -0
  167. data/app/assets/stylesheets/admin/theme-default.scss +8462 -0
  168. data/app/assets/stylesheets/admin/widgets.css.scss +26 -0
  169. data/app/assets/stylesheets/bootstrap.min.css.scss +5 -0
  170. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/css/style.css +84 -0
  171. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/editor_plugin.js +1 -0
  172. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/editor_plugin_src.js +90 -0
  173. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/img/youtube.png +0 -0
  174. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/index.html +86 -0
  175. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/js/scripts.js +1 -0
  176. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/js/scripts_src.js +81 -0
  177. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/langs/en.js +3 -0
  178. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/langs/en_dlg.js +12 -0
  179. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/langs/es.js +3 -0
  180. data/app/assets/stylesheets/tinymce/plugins/youtubeIframe/langs/es_dlg.js +12 -0
  181. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/bootstrap.css +2228 -0
  182. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/content.css +189 -0
  183. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/dialog.css +295 -0
  184. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/butt2.png +0 -0
  185. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/button-bg.png +0 -0
  186. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/buttons.png +0 -0
  187. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/down_arrow.gif +0 -0
  188. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/fade-butt.png +0 -0
  189. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/icons.png +0 -0
  190. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/items.gif +0 -0
  191. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/menu-arrow.png +0 -0
  192. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/menu-check.png +0 -0
  193. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/progress.gif +0 -0
  194. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/tabs.gif +0 -0
  195. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/img/toolbarbg.png +0 -0
  196. data/app/assets/stylesheets/tinymce/themes/advanced/skins/bootstrap/ui.css +1163 -0
  197. data/app/controllers/admin/appearances/nav_menus_controller.rb +120 -0
  198. data/app/controllers/admin/appearances/themes_controller.rb +30 -0
  199. data/app/controllers/admin/appearances/widgets/assign_controller.rb +40 -0
  200. data/app/controllers/admin/appearances/widgets/main_controller.rb +57 -0
  201. data/app/controllers/admin/appearances/widgets/sidebar_controller.rb +59 -0
  202. data/app/controllers/admin/appearances_controller.rb +17 -0
  203. data/app/controllers/admin/categories_controller.rb +77 -0
  204. data/app/controllers/admin/comments_controller.rb +119 -0
  205. data/app/controllers/admin/installers_controller.rb +40 -0
  206. data/app/controllers/admin/media_controller.rb +55 -0
  207. data/app/controllers/admin/plugins_controller.rb +45 -0
  208. data/app/controllers/admin/post_tags_controller.rb +83 -0
  209. data/app/controllers/admin/posts/drafts_controller.rb +76 -0
  210. data/app/controllers/admin/posts_controller.rb +195 -0
  211. data/app/controllers/admin/sessions_controller.rb +144 -0
  212. data/app/controllers/admin/settings/custom_fields_controller.rb +85 -0
  213. data/app/controllers/admin/settings/post_types_controller.rb +73 -0
  214. data/app/controllers/admin/settings/sites_controller.rb +89 -0
  215. data/app/controllers/admin/settings_controller.rb +60 -0
  216. data/app/controllers/admin/user_roles_controller.rb +76 -0
  217. data/app/controllers/admin/users_controller.rb +120 -0
  218. data/app/controllers/admin_controller.rb +56 -0
  219. data/app/controllers/apps/plugins_admin_controller.rb +21 -0
  220. data/app/controllers/apps/plugins_front_controller.rb +21 -0
  221. data/app/controllers/apps/themes_admin_controller.rb +21 -0
  222. data/app/controllers/apps/themes_front_controller.rb +21 -0
  223. data/app/controllers/camaleon_controller.rb +87 -0
  224. data/app/controllers/concerns/frontend_concern.rb +57 -0
  225. data/app/controllers/frontend_controller.rb +240 -0
  226. data/app/decorators/application_decorator.rb +81 -0
  227. data/app/decorators/category_decorator.rb +61 -0
  228. data/app/decorators/custom_field_decorator.rb +31 -0
  229. data/app/decorators/custom_fields_concern.rb +33 -0
  230. data/app/decorators/metas_decorator_methods.rb +19 -0
  231. data/app/decorators/post_comment_decorator.rb +26 -0
  232. data/app/decorators/post_decorator.rb +162 -0
  233. data/app/decorators/post_tag_decorator.rb +36 -0
  234. data/app/decorators/post_type_decorator.rb +56 -0
  235. data/app/decorators/site_decorator.rb +136 -0
  236. data/app/decorators/term_taxonomy_decorator.rb +97 -0
  237. data/app/decorators/theme_decorator.rb +16 -0
  238. data/app/decorators/user_decorator.rb +67 -0
  239. data/app/decorators/widget_decorator.rb +13 -0
  240. data/app/helpers/admin/application_helper.rb +27 -0
  241. data/app/helpers/admin/breadcrumb_helper.rb +37 -0
  242. data/app/helpers/admin/category_helper.rb +22 -0
  243. data/app/helpers/admin/custom_fields_helper.rb +329 -0
  244. data/app/helpers/admin/menus_helper.rb +199 -0
  245. data/app/helpers/admin/post_type_helper.rb +50 -0
  246. data/app/helpers/camaleon_helper.rb +65 -0
  247. data/app/helpers/captcha_helper.rb +90 -0
  248. data/app/helpers/content_helper.rb +35 -0
  249. data/app/helpers/frontend/application_helper.rb +41 -0
  250. data/app/helpers/frontend/nav_menu_helper.rb +177 -0
  251. data/app/helpers/frontend/seo_helper.rb +60 -0
  252. data/app/helpers/frontend/site_helper.rb +60 -0
  253. data/app/helpers/hooks_helper.rb +54 -0
  254. data/app/helpers/html_helper.rb +114 -0
  255. data/app/helpers/plugins_helper.rb +129 -0
  256. data/app/helpers/session_helper.rb +108 -0
  257. data/app/helpers/short_code_helper.rb +82 -0
  258. data/app/helpers/site_helper.rb +124 -0
  259. data/app/helpers/theme_helper.rb +51 -0
  260. data/app/helpers/uploader_helper.rb +144 -0
  261. data/app/helpers/user_roles_helper.rb +14 -0
  262. data/app/mailers/html_mailer.rb +47 -0
  263. data/app/models/ability.rb +113 -0
  264. data/app/models/category.rb +55 -0
  265. data/app/models/concerns/categories_tags_for_posts.rb +140 -0
  266. data/app/models/concerns/custom_fields_read.rb +221 -0
  267. data/app/models/concerns/metas.rb +133 -0
  268. data/app/models/concerns/metas_saved.rb +10 -0
  269. data/app/models/concerns/site_public.rb +23 -0
  270. data/app/models/custom_field.rb +34 -0
  271. data/app/models/custom_field_group.rb +121 -0
  272. data/app/models/custom_fields_relationship.rb +26 -0
  273. data/app/models/meta.rb +16 -0
  274. data/app/models/nav_menu.rb +41 -0
  275. data/app/models/nav_menu_item.rb +36 -0
  276. data/app/models/plugin.rb +57 -0
  277. data/app/models/plugins.rb +13 -0
  278. data/app/models/post.rb +89 -0
  279. data/app/models/post_comment.rb +44 -0
  280. data/app/models/post_default.rb +78 -0
  281. data/app/models/post_relationship.rb +26 -0
  282. data/app/models/post_tag.rb +15 -0
  283. data/app/models/post_type.rb +125 -0
  284. data/app/models/site.rb +337 -0
  285. data/app/models/term_relationship.rb +26 -0
  286. data/app/models/term_taxonomy.rb +156 -0
  287. data/app/models/theme.rb +33 -0
  288. data/app/models/themes.rb +13 -0
  289. data/app/models/user.rb +172 -0
  290. data/app/models/user_relationship.rb +17 -0
  291. data/app/models/user_role.rb +139 -0
  292. data/app/models/widget.rb +13 -0
  293. data/app/models/widget/assigned.rb +34 -0
  294. data/app/models/widget/main.rb +52 -0
  295. data/app/models/widget/sidebar.rb +28 -0
  296. data/app/views/_flash_messages.html.erb +39 -0
  297. data/app/views/admin/appearances/_external_menu.html.erb +16 -0
  298. data/app/views/admin/appearances/menu.html.erb +199 -0
  299. data/app/views/admin/appearances/themes/index.html.erb +68 -0
  300. data/app/views/admin/appearances/themes/preview.html.erb +1 -0
  301. data/app/views/admin/appearances/themes/theme_load_data.html.erb +40 -0
  302. data/app/views/admin/appearances/widgets/assign/_form.html.erb +35 -0
  303. data/app/views/admin/appearances/widgets/main/form.html.erb +27 -0
  304. data/app/views/admin/appearances/widgets/main/index.html.erb +91 -0
  305. data/app/views/admin/appearances/widgets/sidebar/form.html.erb +23 -0
  306. data/app/views/admin/categories/_form.html.erb +42 -0
  307. data/app/views/admin/categories/edit.html.erb +18 -0
  308. data/app/views/admin/categories/index.html.erb +81 -0
  309. data/app/views/admin/comments/form.html.erb +55 -0
  310. data/app/views/admin/comments/index.html.erb +58 -0
  311. data/app/views/admin/comments/reply.html.erb +197 -0
  312. data/app/views/admin/dashboard/index.html.erb +25 -0
  313. data/app/views/admin/installers/form.html.erb +19 -0
  314. data/app/views/admin/installers/welcome.html.erb +8 -0
  315. data/app/views/admin/media/iframe.html.erb +33 -0
  316. data/app/views/admin/media/index.html.erb +31 -0
  317. data/app/views/admin/plugins/_plugins_list.html.erb +59 -0
  318. data/app/views/admin/plugins/index.html.erb +37 -0
  319. data/app/views/admin/post_tags/_form.html.erb +34 -0
  320. data/app/views/admin/post_tags/edit.html.erb +18 -0
  321. data/app/views/admin/post_tags/index.html.erb +79 -0
  322. data/app/views/admin/posts/_filter_posts.html.erb +6 -0
  323. data/app/views/admin/posts/form.html.erb +294 -0
  324. data/app/views/admin/posts/index.html.erb +121 -0
  325. data/app/views/admin/posts/show.html.erb +20 -0
  326. data/app/views/admin/sessions/forgot.html.erb +51 -0
  327. data/app/views/admin/sessions/login.html.erb +39 -0
  328. data/app/views/admin/sessions/register.html.erb +63 -0
  329. data/app/views/admin/settings/custom_fields/_meta_data.html.erb +102 -0
  330. data/app/views/admin/settings/custom_fields/_render.html.erb +73 -0
  331. data/app/views/admin/settings/custom_fields/fields/audio.html.erb +4 -0
  332. data/app/views/admin/settings/custom_fields/fields/checkbox.html.erb +3 -0
  333. data/app/views/admin/settings/custom_fields/fields/checkboxes.html.erb +5 -0
  334. data/app/views/admin/settings/custom_fields/fields/colorpicker.html.erb +7 -0
  335. data/app/views/admin/settings/custom_fields/fields/date.html.erb +7 -0
  336. data/app/views/admin/settings/custom_fields/fields/editor.html.erb +4 -0
  337. data/app/views/admin/settings/custom_fields/fields/email.html.erb +3 -0
  338. data/app/views/admin/settings/custom_fields/fields/field_attrs.html.erb +10 -0
  339. data/app/views/admin/settings/custom_fields/fields/file.html.erb +4 -0
  340. data/app/views/admin/settings/custom_fields/fields/image.html.erb +4 -0
  341. data/app/views/admin/settings/custom_fields/fields/numeric.html.erb +4 -0
  342. data/app/views/admin/settings/custom_fields/fields/phone.html.erb +3 -0
  343. data/app/views/admin/settings/custom_fields/fields/posts.html.erb +17 -0
  344. data/app/views/admin/settings/custom_fields/fields/radio.html.erb +5 -0
  345. data/app/views/admin/settings/custom_fields/fields/select.html.erb +7 -0
  346. data/app/views/admin/settings/custom_fields/fields/select_eval.html.erb +3 -0
  347. data/app/views/admin/settings/custom_fields/fields/text_area.html.erb +3 -0
  348. data/app/views/admin/settings/custom_fields/fields/text_box.html.erb +3 -0
  349. data/app/views/admin/settings/custom_fields/fields/url.html.erb +3 -0
  350. data/app/views/admin/settings/custom_fields/fields/users.html.erb +8 -0
  351. data/app/views/admin/settings/custom_fields/fields/video.html.erb +4 -0
  352. data/app/views/admin/settings/custom_fields/form.html.erb +249 -0
  353. data/app/views/admin/settings/custom_fields/get_items.html.erb +199 -0
  354. data/app/views/admin/settings/custom_fields/index.html.erb +69 -0
  355. data/app/views/admin/settings/languages.html.erb +68 -0
  356. data/app/views/admin/settings/post_types/_form.html.erb +93 -0
  357. data/app/views/admin/settings/post_types/edit.html.erb +18 -0
  358. data/app/views/admin/settings/post_types/index.html.erb +80 -0
  359. data/app/views/admin/settings/site.html.erb +124 -0
  360. data/app/views/admin/settings/sites/form.html.erb +50 -0
  361. data/app/views/admin/settings/sites/index.html.erb +56 -0
  362. data/app/views/admin/taxonomy/_form.html.erb +62 -0
  363. data/app/views/admin/taxonomy/edit.html.erb +18 -0
  364. data/app/views/admin/taxonomy/index.html.erb +79 -0
  365. data/app/views/admin/user_roles/form.html.erb +168 -0
  366. data/app/views/admin/user_roles/index.html.erb +54 -0
  367. data/app/views/admin/users/form.html.erb +305 -0
  368. data/app/views/admin/users/index.html.erb +58 -0
  369. data/app/views/admin/users/profile.html.erb +118 -0
  370. data/app/views/admin/users/profile/_activity.html.erb +180 -0
  371. data/app/views/admin/users/profile/_settings.html.erb +15 -0
  372. data/app/views/admin/users/profile_edit.html.erb +305 -0
  373. data/app/views/default_theme/admin/settings.html.erb +1 -0
  374. data/app/views/default_theme/category.html.erb +25 -0
  375. data/app/views/default_theme/category.rss.builder +23 -0
  376. data/app/views/default_theme/index.html.erb +70 -0
  377. data/app/views/default_theme/index.rss.builder +21 -0
  378. data/app/views/default_theme/layouts/_footer.html.erb +18 -0
  379. data/app/views/default_theme/layouts/_header.html.erb +38 -0
  380. data/app/views/default_theme/layouts/index.html.erb +34 -0
  381. data/app/views/default_theme/partials/_breadcrumb.html.erb +10 -0
  382. data/app/views/default_theme/partials/_categories_list.html.erb +23 -0
  383. data/app/views/default_theme/partials/_comments.html.erb +33 -0
  384. data/app/views/default_theme/partials/_comments_list.html.erb +21 -0
  385. data/app/views/default_theme/partials/_flash_messages.html.erb +26 -0
  386. data/app/views/default_theme/partials/_forms.html.erb +19 -0
  387. data/app/views/default_theme/partials/_post_list_item.html.erb +13 -0
  388. data/app/views/default_theme/partials/_render_custom_field.html.erb +57 -0
  389. data/app/views/default_theme/partials/_search_form.html.erb +10 -0
  390. data/app/views/default_theme/partials/_sidebar.html.erb +56 -0
  391. data/app/views/default_theme/post.html.erb +40 -0
  392. data/app/views/default_theme/post.rss.builder +12 -0
  393. data/app/views/default_theme/post_tag.html.erb +17 -0
  394. data/app/views/default_theme/post_tag.rss.builder +22 -0
  395. data/app/views/default_theme/post_type.html.erb +25 -0
  396. data/app/views/default_theme/post_type.rss.builder +22 -0
  397. data/app/views/default_theme/profile.html.erb +18 -0
  398. data/app/views/default_theme/robots.text.erb +1 -0
  399. data/app/views/default_theme/search.html.erb +13 -0
  400. data/app/views/default_theme/sitemap.html.erb +0 -0
  401. data/app/views/html_mailer/other.html.erb +3 -0
  402. data/app/views/html_mailer/sender.html.erb +25 -0
  403. data/app/views/layouts/admin.html.erb +164 -0
  404. data/app/views/layouts/admin/_ajax.html.erb +2 -0
  405. data/app/views/layouts/admin/_flash_messages.html.erb +49 -0
  406. data/app/views/layouts/admin/_form_error.html.erb +10 -0
  407. data/app/views/layouts/admin/_sidebar.html.erb +31 -0
  408. data/app/views/layouts/admin/installer.html.erb +36 -0
  409. data/app/views/layouts/application.html.erb +15 -0
  410. data/app/views/layouts/login.html.erb +40 -0
  411. data/app/views/shortcode_templates/form.html.erb +1 -0
  412. data/app/views/shortcode_templates/widget.html.erb +11 -0
  413. data/config/initializers/active_record_extension.rb +24 -0
  414. data/config/initializers/assets.rb +17 -0
  415. data/config/initializers/cache_helper.rb +9 -0
  416. data/config/initializers/elfinder.rb +79 -0
  417. data/config/initializers/fix_ssl.rb +14 -0
  418. data/config/initializers/mobu.rb +24 -0
  419. data/config/initializers/page_caching.rb +35 -0
  420. data/config/initializers/rufus_cron.rb +44 -0
  421. data/config/locales/admin/en.yml +561 -0
  422. data/config/locales/admin/es.yml +560 -0
  423. data/config/locales/ar.yml +275 -0
  424. data/config/locales/common.yml +125 -0
  425. data/config/locales/de.yml +210 -0
  426. data/config/locales/en.yml +207 -0
  427. data/config/locales/es.yml +198 -0
  428. data/config/locales/fr.yml +207 -0
  429. data/config/locales/languages.yml +19 -0
  430. data/config/locales/pl.yml +237 -0
  431. data/config/locales/pt.yml +201 -0
  432. data/config/locales/routes.yml +23 -0
  433. data/config/routes.rb +10 -0
  434. data/config/routes/admin.rb +119 -0
  435. data/config/routes/frontend.rb +35 -0
  436. data/config/sitemap.rb +52 -0
  437. data/config/system.json +16 -0
  438. data/db/migrate/20150611161134_post_table_into_utf8.rb +115 -0
  439. data/lib/ca-bundle.crt +3554 -0
  440. data/lib/camaleon_cms.rb +4 -0
  441. data/lib/camaleon_cms/engine.rb +60 -0
  442. data/lib/camaleon_cms/version.rb +3 -0
  443. data/lib/captcha/bumpyroad.ttf +0 -0
  444. data/lib/captcha/captcha_0.jpg +0 -0
  445. data/lib/captcha/captcha_1.jpg +0 -0
  446. data/lib/captcha/captcha_10.jpg +0 -0
  447. data/lib/captcha/captcha_11.jpg +0 -0
  448. data/lib/captcha/captcha_2.jpg +0 -0
  449. data/lib/captcha/captcha_3.jpg +0 -0
  450. data/lib/captcha/captcha_4.jpg +0 -0
  451. data/lib/captcha/captcha_5.jpg +0 -0
  452. data/lib/captcha/captcha_6.jpg +0 -0
  453. data/lib/captcha/captcha_7.jpg +0 -0
  454. data/lib/captcha/captcha_8.jpg +0 -0
  455. data/lib/captcha/captcha_9.jpg +0 -0
  456. data/lib/ext/aes_crypt.rb +246 -0
  457. data/lib/ext/array.rb +54 -0
  458. data/lib/ext/hash.rb +41 -0
  459. data/lib/ext/string.rb +159 -0
  460. data/lib/ext/translator.rb +83 -0
  461. data/lib/generators/camaleon_cms/install_generator.rb +20 -0
  462. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/admin_controller.rb +25 -0
  463. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/assets/docs/images/screenshot_1.jpg +0 -0
  464. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/assets/docs/images/screenshot_2.jpg +0 -0
  465. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/assets/docs/images/screenshot_3.jpg +0 -0
  466. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/assets/docs/index.html +60 -0
  467. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/attack_helper.rb +99 -0
  468. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/config/config.json +31 -0
  469. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/config/custom_models.rb +4 -0
  470. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/config/locales/readme.txt +1 -0
  471. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/config/locales/translation.yml +36 -0
  472. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/config/routes_admin.txt +2 -0
  473. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/models/attack.rb +12 -0
  474. data/lib/generators/camaleon_cms/install_template/apps/plugins/attack/views/admin/settings.html.erb +49 -0
  475. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/admin_forms_controller.rb +93 -0
  476. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/css/admin/form-builder/formbuilder.css +70 -0
  477. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/css/contact-form.css +8 -0
  478. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/css/front/railsform.scss +94 -0
  479. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/css/readme.txt +1 -0
  480. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/docs/images/screenshot_1.jpg +0 -0
  481. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/docs/images/screenshot_2.jpg +0 -0
  482. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/docs/images/screenshot_3.jpg +0 -0
  483. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/docs/images/screenshot_4.jpg +0 -0
  484. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/docs/images/screenshot_5.jpg +0 -0
  485. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/docs/index.html +89 -0
  486. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/js/contact_form.js +2 -0
  487. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/js/form-builder/formbuilder.js +1271 -0
  488. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/js/form-builder/vendor.js +3072 -0
  489. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/assets/js/readme.txt +1 -0
  490. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/config/config.json +35 -0
  491. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/config/locales/readme.txt +1 -0
  492. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/config/locales/translation.yml +210 -0
  493. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/config/routes_admin.txt +4 -0
  494. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/config/routes_front.txt +2 -0
  495. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/contact_form_helper.rb +91 -0
  496. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/contact_form_html_helper.rb +157 -0
  497. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/front_controller.rb +106 -0
  498. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/models/contact_form.rb +26 -0
  499. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/admin_forms/_form.html.erb +33 -0
  500. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/admin_forms/edit.html.erb +375 -0
  501. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/admin_forms/index.html.erb +65 -0
  502. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/admin_forms/manual.html.erb +59 -0
  503. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/admin_forms/responses.html.erb +67 -0
  504. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/forms_shorcode.html.erb +27 -0
  505. data/lib/generators/camaleon_cms/install_template/apps/plugins/contact_form/views/front/index.html.erb +3 -0
  506. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/admin_controller.rb +35 -0
  507. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/assets/docs/images/screenshot_1.jpg +0 -0
  508. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/assets/docs/images/screenshot_2.jpg +0 -0
  509. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/assets/docs/index.html +58 -0
  510. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/config/config.json +21 -0
  511. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/config/locales/readme.txt +1 -0
  512. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/config/locales/translation.yml +37 -0
  513. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/config/routes_admin.txt +3 -0
  514. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/front_cache_helper.rb +154 -0
  515. data/lib/generators/camaleon_cms/install_template/apps/plugins/front_cache/views/admin/settings.html.erb +71 -0
  516. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/assets/docs/images/screenshot_1.jpg +0 -0
  517. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/assets/docs/images/screenshot_2.jpg +0 -0
  518. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/assets/docs/images/screenshot_3.jpg +0 -0
  519. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/assets/docs/images/screenshot_4.jpg +0 -0
  520. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/assets/docs/index.html +62 -0
  521. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/assets/js/form.js +29 -0
  522. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/config/config.json +24 -0
  523. data/lib/generators/camaleon_cms/install_template/apps/plugins/visibility_post/visibility_post_helper.rb +132 -0
  524. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/css/magnific-ver.css +394 -0
  525. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/css/main.css +15 -0
  526. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/css/style-ver.css.scss +224 -0
  527. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/css/wpbase.css +1 -0
  528. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/images/empe.jpg +0 -0
  529. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/images/image.png +0 -0
  530. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/images/loader.gif +0 -0
  531. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/images/zoom.png +0 -0
  532. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/js/hover.zoom.js +67 -0
  533. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/js/magnific.min.js +3 -0
  534. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/js/main-ver.js +46 -0
  535. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/js/main.js +18 -0
  536. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/assets/js/modernizr.custom.js +4 -0
  537. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/config/config.json +14 -0
  538. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/main_helper.rb +43 -0
  539. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/views/admin/settings.html.erb +4 -0
  540. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/views/index.html.erb +28 -0
  541. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/views/layouts/index.html.erb +85 -0
  542. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/views/partials/readme.txt +1 -0
  543. data/lib/generators/camaleon_cms/install_template/apps/themes/camaleon_first/views/template_sample_page.html.erb +6 -0
  544. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/css/main.css +13 -0
  545. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/css/style.css.scss +3395 -0
  546. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/css/styles.css.scss +175 -0
  547. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/COPYING.txt +9 -0
  548. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/Genericons-Regular.otf +0 -0
  549. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/LICENSE.txt +339 -0
  550. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/README.txt +123 -0
  551. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/font/genericons-regular-webfont.eot +0 -0
  552. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/font/genericons-regular-webfont.svg +135 -0
  553. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/font/genericons-regular-webfont.ttf +0 -0
  554. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/font/genericons-regular-webfont.woff +0 -0
  555. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/genericons/genericons.css +197 -0
  556. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/circle.png +0 -0
  557. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/dotted-line-2x.png +0 -0
  558. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/dotted-line-light-2x.png +0 -0
  559. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/dotted-line-light.png +0 -0
  560. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/dotted-line.png +0 -0
  561. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/headers/circle-thumbnail.png +0 -0
  562. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/headers/circle.png +0 -0
  563. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/headers/diamond-thumbnail.png +0 -0
  564. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/headers/diamond.png +0 -0
  565. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/headers/star-thumbnail.png +0 -0
  566. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/headers/star.png +0 -0
  567. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/image.png +0 -0
  568. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/search-icon-2x.png +0 -0
  569. data/lib/generators/camaleon_cms/install_template/apps/themes/default/assets/images/search-icon.png +0 -0
  570. data/lib/generators/camaleon_cms/install_template/apps/themes/default/config/config.json +19 -0
  571. data/lib/generators/camaleon_cms/install_template/apps/themes/default/default_helper.rb +36 -0
  572. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/admin/settings.html.erb +1 -0
  573. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/category.html.erb +16 -0
  574. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/index.html.erb +35 -0
  575. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/layouts/index.html.erb +83 -0
  576. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/page.html.erb +22 -0
  577. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_breadcrumb.html.erb +10 -0
  578. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_categories_list.html.erb +23 -0
  579. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_comments.html.erb +25 -0
  580. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_comments_list.html.erb +20 -0
  581. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_flash_messages.html.erb +26 -0
  582. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_forms.html.erb +19 -0
  583. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_post_list_item.html.erb +34 -0
  584. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_search_form.html.erb +8 -0
  585. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/partials/_sidebar.html.erb +50 -0
  586. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/post.html.erb +22 -0
  587. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/post_tag.html.erb +14 -0
  588. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/post_type.html.erb +33 -0
  589. data/lib/generators/camaleon_cms/install_template/apps/themes/default/views/search.html.erb +17 -0
  590. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/css/bootstrap/bootstrap.min.css +6735 -0
  591. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/css/main.css +13 -0
  592. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/css/styles.css.scss +175 -0
  593. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/images/image.png +0 -0
  594. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/js/main.js +15 -0
  595. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/js/plugins/bootstrap/bootstrap.min.js +6 -0
  596. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/js/plugins/jquery/jquery.min.js +4 -0
  597. data/lib/generators/camaleon_cms/install_template/apps/themes/new/assets/js/plugins/modal_elfinder.js +29 -0
  598. data/lib/generators/camaleon_cms/install_template/apps/themes/new/config/config.json +26 -0
  599. data/lib/generators/camaleon_cms/install_template/apps/themes/new/custom_helper.rb +37 -0
  600. data/lib/generators/camaleon_cms/install_template/apps/themes/new/data.json +1 -0
  601. data/lib/generators/camaleon_cms/install_template/apps/themes/new/image.png +0 -0
  602. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/admin/settings.html.erb +1 -0
  603. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/category.html.erb +33 -0
  604. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/index.html.erb +70 -0
  605. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/layouts/_footer.html.erb +18 -0
  606. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/layouts/_header.html.erb +38 -0
  607. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/layouts/index.html.erb +34 -0
  608. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/page.html.erb +24 -0
  609. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_breadcrumb.html.erb +10 -0
  610. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_categories_list.html.erb +23 -0
  611. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_comments.html.erb +32 -0
  612. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_comments_list.html.erb +21 -0
  613. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_flash_messages.html.erb +26 -0
  614. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_forms.html.erb +19 -0
  615. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_post_list_item.html.erb +13 -0
  616. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_search_form.html.erb +10 -0
  617. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/partials/_sidebar.html.erb +60 -0
  618. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/post.html.erb +20 -0
  619. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/post_tag.html.erb +22 -0
  620. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/post_type.html.erb +33 -0
  621. data/lib/generators/camaleon_cms/install_template/apps/themes/new/views/search.html.erb +18 -0
  622. data/lib/generators/camaleon_cms/install_template/plugin_routes.rb +311 -0
  623. data/lib/generators/camaleon_cms/install_template/system.json +11 -0
  624. data/lib/generators/cplugin_generator.rb +80 -0
  625. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/admin_controller.rb +9 -0
  626. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/assets/css/readme.txt +1 -0
  627. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/assets/images/readme.txt +1 -0
  628. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/assets/js/readme.txt +1 -0
  629. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/config/config.json +18 -0
  630. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/config/locales/readme.txt +1 -0
  631. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/config/routes_admin.txt +1 -0
  632. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/config/routes_front.txt +1 -0
  633. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/front_controller.rb +9 -0
  634. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/main_helper.rb +21 -0
  635. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/models/my_plugin.rb +12 -0
  636. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/views/admin/index.html.erb +2 -0
  637. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/views/front/index.html.erb +2 -0
  638. data/lib/generators/cplugin_template/app/apps/plugins/my_plugin/views/layouts/readme.txt +2 -0
  639. data/lib/generators/ctheme_generator.rb +63 -0
  640. data/lib/generators/ctheme_template/app/apps/themes/my_theme/assets/css/main.css +12 -0
  641. data/lib/generators/ctheme_template/app/apps/themes/my_theme/assets/images/image.png +0 -0
  642. data/lib/generators/ctheme_template/app/apps/themes/my_theme/assets/js/main.js +14 -0
  643. data/lib/generators/ctheme_template/app/apps/themes/my_theme/config/config.json +14 -0
  644. data/lib/generators/ctheme_template/app/apps/themes/my_theme/main_helper.rb +25 -0
  645. data/lib/generators/ctheme_template/app/apps/themes/my_theme/views/admin/settings.html.erb +4 -0
  646. data/lib/generators/ctheme_template/app/apps/themes/my_theme/views/index.html.erb +25 -0
  647. data/lib/generators/ctheme_template/app/apps/themes/my_theme/views/layouts/index.html.erb +71 -0
  648. data/lib/generators/ctheme_template/app/apps/themes/my_theme/views/partials/readme.txt +1 -0
  649. data/lib/tasks/camaleon_cms_tasks.rake +4 -0
  650. data/test/camaleon_cms_test.rb +7 -0
  651. data/test/integration/navigation_test.rb +10 -0
  652. data/test/test_helper.rb +19 -0
  653. metadata +699 -0
@@ -0,0 +1,38 @@
1
+ <div class="navbar navbar-default navbar-fixed-top">
2
+ <div class="container">
3
+ <div class="navbar-header">
4
+ <a id="logo" class="navbar-brand" href="<%= root_path %>"><%= image_tag current_site.the_logo, class: "img-responsive" %></a>
5
+ <button data-target="#navbar-main" data-toggle="collapse" type="button" class="navbar-toggle">
6
+ <span class="icon-bar"></span>
7
+ <span class="icon-bar"></span>
8
+ <span class="icon-bar"></span>
9
+ </button>
10
+ </div>
11
+ <div id="navbar-main" class="navbar-collapse collapse">
12
+ <%= raw get_nav_menu('main_menu', 'nav navbar-nav ') %>
13
+
14
+ <ul class="nav navbar-nav navbar-right">
15
+ <% if signin? %>
16
+ <li class="dropdown">
17
+ <a class="dropdown-toggle" href="#"><img src="<%= current_user.decorate.the_avatar %>" style="max-width: 24px; border-radius: 50%" alt=""/> <%= current_user.username %></a>
18
+ <ul class="dropdown-menu">
19
+ <li><a href="<%= admin_dashboard_path %>">Dashboard</a></li>
20
+ <li><a href="<%= admin_profile_path %>">Profile</a></li>
21
+ <li><a href="<%= admin_logout_path %>">Logout</a></li>
22
+ </ul>
23
+ </li>
24
+ <% else %>
25
+
26
+ <li class="dropdown">
27
+ <a id="login-user" class="dropdown-toggle" href="#">Login / Register</a>
28
+ <ul class="dropdown-menu">
29
+ <li><a href="<%= admin_login_path %>">Login</a></li>
30
+ <li><a href="<%= admin_register_path %>">Register</a></li>
31
+ </ul>
32
+ </li>
33
+ <% end %>
34
+ </ul>
35
+ <%= raw current_site.draw_languages("language list-inline pull-right", true) %>
36
+ </div>
37
+ </div>
38
+ </div>
@@ -0,0 +1,34 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <!-- META SECTION -->
5
+ <title>Atlant - Front-End Template</title>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
8
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
9
+ <!-- END META SECTION -->
10
+
11
+ <%= stylesheet_link_tag theme_asset_path("css/main") %>
12
+ <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
13
+ <%= javascript_include_tag theme_asset_path("js/main.js") %>
14
+ <%= raw the_head %>
15
+ </head>
16
+ <body>
17
+
18
+ <!-- container -->
19
+ <div class="container">
20
+ <!-- header -->
21
+ <%= render "layouts/header" %>
22
+ <!-- ./header -->
23
+
24
+ <div class="content">
25
+ <%= yield %>
26
+ </div>
27
+
28
+ <!-- footer -->
29
+ <%= render "layouts/footer" %>
30
+ <!-- ./footer -->
31
+ </div>
32
+ <!-- ./container -->
33
+ </body>
34
+ </html>
@@ -0,0 +1,24 @@
1
+ <div class="container-fluid">
2
+ <%= render partial: 'partials/breadcrumb', locals: {breadcrumb: @post.the_breadcrumb} %>
3
+ <div class="row">
4
+ <div class="col-md-12 post-view">
5
+ <article class="post-content">
6
+ <h1><%= @post.the_title %></h1>
7
+ <div class="author">
8
+ <time datetime=""><%= @post.the_created_at %></time>
9
+ </div>
10
+ <div class="item-content">
11
+ <%= raw @post.the_content %>
12
+ </div>
13
+
14
+ <!-- custom fields -->
15
+ <% if @post.render_fields.present? %>
16
+ <hr>
17
+ <h4><%= ct("extra_attributes") %></h4>
18
+ <%= raw @post.render_fields %>
19
+ <% end %>
20
+ </article>
21
+ </div>
22
+ </div>
23
+ </div>
24
+ <%= @post.render_fields %>
@@ -0,0 +1,10 @@
1
+ <div class="row">
2
+ <div class="col-md-9">
3
+ <ol class="breadcrumb">
4
+ <%= raw breadcrumb %>
5
+ </ol>
6
+ </div>
7
+ <div class="col-md-3">
8
+ <%= render partial: 'partials/search_form' %>
9
+ </div>
10
+ </div>
@@ -0,0 +1,23 @@
1
+ <div id="carousel_categories" class="carousel slide categories-carousel">
2
+ <!-- Carousel items -->
3
+ <div class="carousel-inner">
4
+ <% categories.each_slice(6).each_with_index do |_cats, index| %>
5
+ <div class='item <%= "active" if index == 0 %>'>
6
+ <div class='row'>
7
+ <% _cats.each do |cat| %>
8
+ <div class="col-md-2">
9
+ <a href="<%= cat.the_url %>" class="thumbnail text-center">
10
+ <img src="<%= cat.the_thumb_url %>" alt="Image" style="max-width:100%;">
11
+ <span class="category-title"><%= cat.the_title %></span>
12
+ </a>
13
+ </div>
14
+ <% end %>
15
+ </div>
16
+ </div>
17
+ <% end %>
18
+ </div><!--.carousel-inner-->
19
+ <% if categories.size > 6 %>
20
+ <a data-slide="prev" href="#carousel_categories" class="left carousel-control">‹</a>
21
+ <a data-slide="next" href="#carousel_categories" class="right carousel-control">›</a>
22
+ <% end %>
23
+ </div><!--.Carousel-->
@@ -0,0 +1,32 @@
1
+ <section class="comment-list">
2
+ <% if post.the_comments.count > 0 %>
3
+ <div class="row">
4
+ <div class="col-md-12">
5
+ <h2 class="page-header"><%= ct('comments')%></h2>
6
+ <section class="comment-list">
7
+ <%= render partial: "partials/comments_list", locals: { comments: post.the_comments, children: "" } %>
8
+ </section>
9
+ </div>
10
+ </div>
11
+ <% end %>
12
+
13
+ <div class="row">
14
+ <div class="col-md-12 col-sm-12">
15
+ <h3><%= ct('comment_new')%></h3>
16
+ <div class="panel panel-default">
17
+ <div class="panel-body">
18
+ <% if signin? %>
19
+ <%= form_for post, url:{action: :save_comment, post_id: post.id}, html: {method: "post", class: "form-comment"} do |f|%>
20
+ <input type="hidden" name="post_comment[post_id]" value="<%= post.id %>">
21
+ <input type="hidden" name="slug" value="<%= post.slug %>">
22
+ <textarea id="textarea_comments" name="post_comment[content]" class="form-control counted" placeholder="<%= ct('comment')%>"></textarea>
23
+ <button type="submit" class="btn btn-info pull-right"><%= ct('comment')%></button>
24
+ <% end %>
25
+ <% else %>
26
+ <div class="panel-login-comment"><%= ct('comment_msg')%> <a class="link-login-comment" href="<%= admin_path %>"><%= ct('login')%></a></div>
27
+ <% end %>
28
+ </div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </section>
@@ -0,0 +1,21 @@
1
+ <% comments.each do |comment| user = comment.comment_user.decorate %>
2
+ <div class="row <%= "answer" if children.present? %>">
3
+ <div class="image <%= "image_children" if children.present? %>">
4
+ <div class="thumbnail">
5
+ <%= image_tag user.the_avatar, class: "img-responsive"%>
6
+ </div><!-- /thumbnail -->
7
+ </div><!-- /col-sm-1 -->
8
+
9
+ <div class="text <%= "text_children" if children.present? %>">
10
+ <div class="panel panel-default">
11
+ <div class="panel-heading">
12
+ <strong class="<%= (children.present?)? "pull-right" : "" %>"><%= user.the_name %></strong> <small class="text-muted <%= (children.present?)? "" : "pull-right" %>"><%= comment.decorate.the_created_at %></small>
13
+ </div>
14
+ <div class="panel-body">
15
+ <%= raw comment.content %>
16
+ </div><!-- /panel-body -->
17
+ </div><!-- /panel panel-default -->
18
+ </div><!-- /col-sm-5 -->
19
+ </div>
20
+ <%= render partial: "partials/comments_list", locals: { comments: comment.children.approveds, children: "present" } if comment.children.present? %>
21
+ <% end %>
@@ -0,0 +1,26 @@
1
+ <% if flash[:notice] %>
2
+ <div class="flash_messages">
3
+ <div class="alert alert-success">
4
+ <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
5
+ <%= raw(flash[:notice]) %>
6
+ </div>
7
+ </div>
8
+ <% end %>
9
+
10
+ <% if flash[:error] %>
11
+ <div class="flash_messages">
12
+ <div class="alert alert-danger">
13
+ <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
14
+ <%= raw(flash[:error]) %>
15
+ </div>
16
+ </div>
17
+ <% end %>
18
+
19
+ <% if flash[:alert] %>
20
+ <div class="flash_messages">
21
+ <div class="alert alert-warning">
22
+ <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
23
+ <%= raw(flash[:alert]) %>
24
+ </div>
25
+ </div>
26
+ <% end %>
@@ -0,0 +1,19 @@
1
+ <% @form = current_site.forms.find_by_id(id) %>
2
+ <% options = @form.options[:fields]
3
+ settings = @form.meta[:_settings]
4
+ %>
5
+
6
+ <div class="text-column">
7
+ <%= form_for @form, url:{action: :save_form}, html: {method: "post", class: "railscf-form", multipart: true} do |f| %>
8
+
9
+ <%= hidden_field_tag "id", @form.id %>
10
+ <%= hidden_field_tag "post_id", post_id %>
11
+
12
+ <div class="row">
13
+ <%= render :partial => "/layouts/flash_messages", locals: @validation %>
14
+ </div>
15
+ <%= raw form_element_object(@form.id, options, post_id) %>
16
+
17
+ <button class="submit_btn" type="submit"><%= settings[:railscf_form_button][:name_button]%></button>
18
+ <% end %>
19
+ </div>
@@ -0,0 +1,13 @@
1
+ <div class="col-sm-6 col-md-4 post-list-item">
2
+ <div class="thumbnail">
3
+ <%= raw post.the_link_thumb({}, {style: "height: 200px; width: 100%; display: block;"}) %>
4
+ <div class="caption">
5
+ <h4 id="thumbnail-label">
6
+ <a href="<%= post.the_url %>"><%= post.the_title %></a>
7
+ </h4>
8
+ <small class="" style="display: block;"><%= post.the_created_at %></small>
9
+ <hr>
10
+ <p><%= raw post.the_excerpt %></p>
11
+ </div>
12
+ </div>
13
+ </div>
@@ -0,0 +1,10 @@
1
+ <%= form_tag(search_path, :method => "get", :class => "form-search form-horizontal") do %>
2
+
3
+ <div class="input-group">
4
+ <input type="text" name="q" class="form-control" placeholder="Search...">
5
+ <div class="input-group-btn">
6
+ <button type="submit" class="btn"><i class="fa fa-search"></i></button>
7
+ </div>
8
+ </div>
9
+ <% end %>
10
+
@@ -0,0 +1,60 @@
1
+ <% if post.has_thumb? %>
2
+ <div class="panel panel-default">
3
+ <div class="panel-body">
4
+ <%= raw post.the_link_thumb({}, {class: "img-responsive img-rounded col-md-12 col-lg-12"}) %>
5
+ </div>
6
+ </div>
7
+ <% end %>
8
+
9
+ <% categories = post.the_categories.decorate %>
10
+ <% if categories.present? %>
11
+ <div class="panel panel-default">
12
+ <div class="panel-heading">
13
+ Categories
14
+ </div>
15
+ <div class="panel-body">
16
+ <ul>
17
+ <% categories.each do |cat| %>
18
+ <li><a href="<%= cat.the_url %>"><%= cat.the_title %></a></li>
19
+ <% end %>
20
+ </ul>
21
+ </div>
22
+ </div>
23
+ <% end %>
24
+
25
+ <div class="panel panel-default">
26
+ <div class="panel-heading">
27
+ Latest Posts
28
+ </div>
29
+ <div class="panel-body">
30
+ <ul>
31
+ <% current_site.the_contents(@post_type.slug).order(created_at: :desc).limit(7).decorate.each do |p| %>
32
+ <li><a href="<%= p.the_url %>"><%= p.the_title %></a></li>
33
+ <% end %>
34
+ </ul>
35
+ </div>
36
+ </div>
37
+
38
+ <% tags = post.the_tags.decorate %>
39
+ <% if tags.present? %>
40
+ <div class="panel panel-default">
41
+ <div class="panel-heading">
42
+ TAGS
43
+ </div>
44
+ <div class="panel-body">
45
+ <% tags.each do |post_tag| %>
46
+ <a class="btn btn-default btn-xs" href="<%= post_tag.the_url %>"><%= post_tag.the_title %></a>
47
+ <% end %>
48
+ </div>
49
+ </div>
50
+ <% end %>
51
+
52
+ <!-- custom fields -->
53
+ <% if post.render_fields.present? %>
54
+ <div class="panel panel-default">
55
+ <div class="panel-heading"><%= ct("extra_attributes") %></div>
56
+ <div class="panel-body">
57
+ <%= raw @post.render_fields %>
58
+ </div>
59
+ </div>
60
+ <% end %>
@@ -0,0 +1,20 @@
1
+ <div class="container-fluid">
2
+ <%= render partial: 'partials/breadcrumb', locals: {breadcrumb: @post.the_breadcrumb} %>
3
+ <div class="row">
4
+ <div class="col-md-9 post-view">
5
+ <article class="post-content">
6
+ <h1><%= raw @post.the_title %></h1>
7
+ <div class="author">
8
+ <time datetime=""><%= @post.the_created_at %></time>
9
+ </div>
10
+ <div class="item-content">
11
+ <%= raw @post.the_content %>
12
+ </div>
13
+ </article>
14
+ <%= render partial: 'partials/comments', locals: {post: @post} if @post.can_commented? %>
15
+ </div>
16
+ <div class="col-md-3">
17
+ <%= render partial: 'partials/sidebar', locals: {post: @post} %>
18
+ </div>
19
+ </div>
20
+ </div>
@@ -0,0 +1,22 @@
1
+ <article id="tag-view" class="tag_<%= @post_tag.slug %>">
2
+ <%= render partial: 'partials/breadcrumb', locals: {breadcrumb: @post_tag.the_breadcrumb } %>
3
+ <h1><%= @post_tag.the_title %></h1>
4
+ <div class="content">
5
+ <%= raw @post_tag.the_content %>
6
+ </div><br><br>
7
+
8
+ <div class="panel panel-primary post_list no-line">
9
+ <div class="panel-heading">Content</div>
10
+ <div class="panel-body">
11
+ <div class="row">
12
+ <% @posts.each_with_index do |post, index| %>
13
+ <%= raw "<div class='clearfix'></div>" if index%3 == 0 && index > 0 %>
14
+ <%= render partial: 'partials/post_list_item', locals: {post: post.decorate} %>
15
+ <% end %>
16
+ </div>
17
+ <%= content_tag("div", raw(ct('no_contents_found')), class: "alert alert-warning") if @posts.empty? %>
18
+ <%= will_paginate @posts, renderer: BootstrapPagination::Rails if @posts.present? %>
19
+ </div>
20
+ </div>
21
+
22
+ </article>
@@ -0,0 +1,33 @@
1
+ <article id="post_type-view" class="post_type_<%= @post_type.slug %>">
2
+ <%= render partial: 'partials/breadcrumb', locals: {breadcrumb: @post_type.the_breadcrumb } %>
3
+ <h1><%= @post_type.the_title %></h1>
4
+ <div class="content">
5
+ <%= raw @post_type.the_content %>
6
+ </div><br><br>
7
+
8
+ <% if @categories.present? %>
9
+ <div class="panel panel-primary no-line">
10
+ <div class="panel-heading">Categories</div>
11
+ <div class="panel-body">
12
+ <%= render partial: "partials/categories_list", locals: {categories: @categories} %>
13
+ </div>
14
+ </div>
15
+ <% end %>
16
+
17
+ <div class="panel panel-primary post_list no-line">
18
+ <div class="panel-heading">Content</div>
19
+ <div class="panel-body">
20
+ <div class="row">
21
+ <% @posts.each_with_index do |post, index| %>
22
+ <%= raw "<div class='clearfix'></div>" if index%3 == 0 && index > 0 %>
23
+ <%= render partial: 'partials/post_list_item', locals: {post: post.decorate} %>
24
+ <% end %>
25
+ </div>
26
+ <%= content_tag("div", raw(ct('no_contents_found')), class: "alert alert-warning") if @posts.empty? %>
27
+ <%= will_paginate @posts, renderer: BootstrapPagination::Rails if @posts.present? %>
28
+ </div>
29
+ </div>
30
+
31
+ </article>
32
+
33
+
@@ -0,0 +1,18 @@
1
+ <article id="search-view" class="">
2
+
3
+ <%= render partial: 'partials/breadcrumb', locals: {breadcrumb: breadcrumb_draw } %>
4
+ <h1><%= ct('search_msg')%> <%= params[:q] %></h1>
5
+ <div class="panel panel-primary post_list no-line">
6
+ <div class="panel-heading">Content</div>
7
+ <div class="panel-body">
8
+ <div class="row">
9
+ <% @posts.each_with_index do |post, index| %>
10
+ <%= raw "<div class='clearfix'></div>" if index%3 == 0 && index > 0 %>
11
+ <%= render partial: 'partials/post_list_item', locals: {post: post.decorate} %>
12
+ <% end %>
13
+ </div>
14
+ <%= content_tag("div", raw(ct('no_contents_found')), class: "alert alert-warning") if @posts.empty? %>
15
+ <%= will_paginate @posts, renderer: BootstrapPagination::Rails if @posts.present? %>
16
+ </div>
17
+ </div>
18
+ </article>
@@ -0,0 +1,311 @@
1
+ require 'json'
2
+ class PluginRoutes
3
+ @@_vars = []
4
+ # load plugin routes if it is enabled
5
+ def self.load(env = "admin")
6
+ plugins = all_enabled_plugins
7
+ res = ""
8
+ if env == "front"
9
+ res << "namespace :plugins do \n"
10
+ plugins.each do |plugin|
11
+ res << "namespace '#{plugin["key"]}' do \n"
12
+ res << "#{File.open(File.join(plugin["path"], "config", "routes_#{env}.txt")).read}\n" rescue ""
13
+ res << "end\n"
14
+ end
15
+ res << "end\n"
16
+
17
+ elsif env == "admin" # admin
18
+ res << "scope 'admin', as: 'admin' do \n"
19
+ res << "namespace :plugins do \n"
20
+ plugins.each do |plugin|
21
+ res << "namespace '#{plugin["key"]}' do \n"
22
+ res << "#{File.open(File.join(plugin["path"], "config", "routes_#{env}.txt")).read}\n" rescue ""
23
+ res << "end\n"
24
+ end
25
+ res << "end\n"
26
+ res << "end\n"
27
+ else # main
28
+ plugins.each do |plugin|
29
+ res << "#{File.open(File.join(plugin["path"], "config", "routes_#{env}.txt")).read}\n" rescue ""
30
+ end
31
+ end
32
+ res + load_themes(env)
33
+ end
34
+
35
+ def self.load_themes(env = "admin")
36
+ plugins = all_enabled_themes
37
+ res = ""
38
+ if env == "front"
39
+ res << "namespace :themes do \n"
40
+ plugins.each do |plugin|
41
+ res << "namespace '#{plugin["key"]}' do \n"
42
+ res << "#{File.open(File.join(plugin["path"], "config", "routes_#{env}.txt")).read}\n" rescue ""
43
+ res << "end\n"
44
+ end
45
+ res << "end\n"
46
+
47
+ elsif env == "admin" # admin
48
+ res << "scope 'admin', as: 'admin' do \n"
49
+ res << "namespace :themes do \n"
50
+ plugins.each do |plugin|
51
+ res << "namespace '#{plugin["key"]}' do \n"
52
+ res << "#{File.open(File.join(plugin["path"], "config", "routes_#{env}.txt")).read}\n" rescue ""
53
+ res << "end\n"
54
+ end
55
+ res << "end\n"
56
+ res << "end\n"
57
+ else # main
58
+ plugins.each do |plugin|
59
+ res << "#{File.open(File.join(plugin["path"], "config", "routes_#{env}.txt")).read}\n" rescue ""
60
+ end
61
+ end
62
+ res
63
+ end
64
+
65
+ # return plugin information
66
+ def self.plugin_info(plugin_key)
67
+ return nil if plugin_key.start_with?(".") || !File.exist?(File.join(apps_dir, "plugins", plugin_key, "config", "config.json"))
68
+ r = cache_variable("plugin_#{plugin_key}"); return r unless r.nil?
69
+ res = JSON.parse(File.read(File.join(apps_dir, "plugins", plugin_key, "config", "config.json"))).with_indifferent_access
70
+ res["key"] = plugin_key
71
+ res["path"] = File.join(apps_dir, "plugins", plugin_key).to_s
72
+ res["kind"] = "plugin"
73
+ cache_variable("plugin_#{plugin_key}", res)
74
+ end
75
+
76
+ # return theme information
77
+ # if theme_name is nil, the use current site theme
78
+ def self.theme_info(theme_name)
79
+ return nil if theme_name.start_with?(".") || !File.exist?(File.join(apps_dir, "themes", theme_name, "config", "config.json"))
80
+ r = cache_variable("theme_#{theme_name}"); return r unless r.nil?
81
+ dir = apps_dir
82
+ res = JSON.parse(File.read(File.join(dir, "themes", theme_name, "config", "config.json"))).with_indifferent_access
83
+ res["key"] = theme_name
84
+ res["path"] = File.join(dir, "themes", theme_name).to_s
85
+ res["kind"] = "theme"
86
+ res["title"] = res["name"]
87
+ cache_variable("theme_#{theme_name}", res)
88
+ end
89
+
90
+ # return system information
91
+ def self.system_info
92
+ r = cache_variable("system_info"); return r unless r.nil?
93
+ res = {}
94
+ res = JSON.parse(File.read(File.join($camaleon_engine_dir, "config", "system.json"))).with_indifferent_access if $camaleon_engine_dir.present?
95
+ return cache_variable("system_info", res) unless File.exist?(system_file = File.join(apps_dir, "..", '..', "config", "system.json"))
96
+ res = res.merge(JSON.parse(File.read(system_file)).with_indifferent_access).with_indifferent_access
97
+ res["key"] = "system"
98
+ res["path"] = ''
99
+ res["kind"] = "system"
100
+ res[:hooks] = {} unless res[:hooks].present?
101
+ res[:hooks][:on_notification] = (res[:hooks][:on_notification] || []) + ["admin_system_notifications"]
102
+ cache_variable("system_info", res)
103
+ end
104
+
105
+ # update a system value
106
+ # key: attribute name
107
+ # value: new value for attribute
108
+ def self.system_info_set(key, val)
109
+ ff = File.read(File.join(apps_dir, "..", '..', "config", "system.json"))
110
+ File.open(File.join(apps_dir, "..", '..', "config", "system.json"), "w") do |f|
111
+ f.write(ff.sub(/"#{key}": ?\"(.*)\"/, "\"#{key}\": \"#{val}\""))
112
+ end
113
+ self.reload
114
+ end
115
+
116
+ # reload routes
117
+ def self.reload
118
+ @@_vars.each {|v| class_variable_set("@@cache_#{v}", nil) }
119
+ # WPRails::Application.routes_reloader.reload!
120
+ Rails.application.reload_routes!
121
+ end
122
+
123
+ # return all enabled plugins []
124
+ def self.enabled_plugins(site)
125
+ r = cache_variable("enable_plugins_site_#{site.id}"); return r unless r.nil?
126
+ res = []
127
+ enabled_ps = site.plugins.active.pluck(:slug)
128
+ all_plugins.each do |plugin|
129
+ res << plugin if enabled_ps.include?(plugin["key"])
130
+ end
131
+ res = res.sort_by{|e| e[:position] || 10 }
132
+ cache_variable("enable_plugins_site_#{site.id}", res)
133
+ end
134
+
135
+ # return all enabled apps for site (themes + system + plugins) []
136
+ # theme_slug: current theme slug
137
+ def self.enabled_apps(site, theme_slug = nil)
138
+ theme_slug = theme_slug || site.get_theme_slug
139
+ r = cache_variable("enabled_apps_#{site.id}_#{theme_slug}"); return r unless r.nil?
140
+ res = [system_info()] + enabled_plugins(site) + [theme_info(theme_slug)]
141
+ cache_variable("enabled_apps_#{site.id}_#{theme_slug}", res)
142
+ end
143
+
144
+ # return all enabled apps as []: system, themes, plugins
145
+ def self.all_enabled_apps
146
+ [system_info()] + all_enabled_themes + all_enabled_plugins
147
+ end
148
+
149
+ # return all enabled themes (a theme is enabled if at least one site is assigned)
150
+ def self.all_enabled_themes
151
+ r = cache_variable("all_enabled_themes"); return r unless r.nil?
152
+ res = []
153
+ get_sites.each do |site|
154
+ i = theme_info(site.get_theme_slug)
155
+ res << i if i.present?
156
+ end
157
+ cache_variable("all_enabled_themes", res)
158
+ end
159
+
160
+ # return all enabled plugins (a theme is enabled if at least one site has installed)
161
+ def self.all_enabled_plugins
162
+ r = cache_variable("all_enabled_plugins"); return r unless r.nil?
163
+ res, enabled_ps = [], []
164
+ get_sites.each { |site| enabled_ps += site.plugins.active.pluck(:slug) }
165
+ all_plugins.each do |plugin|
166
+ if enabled_ps.include?(plugin["key"])
167
+ res << plugin
168
+ end
169
+ end
170
+ cache_variable("all_enabled_plugins", res)
171
+ end
172
+
173
+ # all helpers of enabled plugins for site
174
+ def self.site_plugin_helpers(site)
175
+ r = cache_variable("site_plugin_helpers"); return r unless r.nil?
176
+ res = []
177
+ enabled_apps(site).each do |settings|
178
+ res += settings["helpers"] if settings["helpers"].present?
179
+ end
180
+ cache_variable("site_plugin_helpers", res)
181
+ end
182
+
183
+ # all helpers of enabled plugins
184
+ def self.plugin_helpers
185
+ r = cache_variable("plugins_helper"); return r unless r.nil?
186
+ res = []
187
+ all_enabled_apps.each do |settings|
188
+ res += settings["helpers"] if settings["helpers"].present?
189
+ end
190
+ cache_variable("plugins_helper", res)
191
+ end
192
+
193
+ # destroy plugin
194
+ def self.destroy_plugin(plugin_key)
195
+ FileUtils.rm_r(Rails.root.join("app", "apps", "plugins", plugin_key)) rescue ""
196
+ PluginRoutes.reload
197
+ end
198
+
199
+ # destroy theme
200
+ def self.destroy_theme(theme_key)
201
+ FileUtils.rm_r(Rails.root.join("app", "apps", "themes", theme_key)) rescue ""
202
+ PluginRoutes.reload
203
+ end
204
+
205
+ def self.cache_variable(var_name, value=nil)
206
+ @@_vars.push(var_name).uniq
207
+ cache = class_variable_get("@@cache_#{var_name}") rescue nil
208
+ return cache if value.nil?
209
+ class_variable_set("@@cache_#{var_name}", value)
210
+ value
211
+ end
212
+
213
+ # return all sites registered for Plugin routes
214
+ def self.get_sites
215
+ r = cache_variable("site_get_sites"); return r unless r.nil?
216
+ res = {}
217
+ begin
218
+ res = Site.eager_load(:metas).order(term_group: :desc).all
219
+ rescue
220
+ end
221
+ cache_variable("site_get_sites", res)
222
+ end
223
+
224
+ # return all locales for all sites joined by |
225
+ def self.all_locales
226
+ r = cache_variable("site_all_locales"); return r unless r.nil?
227
+ res = []
228
+ get_sites.each do |s|
229
+ res += s.get_languages
230
+ end
231
+ cache_variable("site_all_locales", res.uniq.join("|"))
232
+ end
233
+
234
+ # draw "all" gems registered for the plugins or themes and camaleon gems
235
+ def self.draw_gems
236
+ res = []
237
+ # recovering gem dependencies
238
+ if camaleon_gem = get_gem('camaleon')
239
+ res << File.read(File.join(camaleon_gem.gem_dir, "Gemfile")).gsub("source 'https://rubygems.org'", "")
240
+ else
241
+ gem_file = File.join(apps_dir, "..", "..", "lib", "Gemfile_camaleon")
242
+ res << File.read(gem_file).gsub("source 'https://rubygems.org'", "") if File.exist?(gem_file)
243
+ end
244
+
245
+ p_dir = File.join(apps_dir, "plugins")
246
+ if Dir.exist?(p_dir)
247
+ Dir.entries(p_dir).select do |entry|
248
+ f = File.join(apps_dir, "plugins", entry, "config", "Gemfile")
249
+ res << File.read(f) if File.exist?(f)
250
+ end
251
+ end
252
+
253
+ t_dir = File.join(apps_dir, "themes")
254
+ if Dir.exist?(t_dir)
255
+ Dir.entries(t_dir).select do |entry|
256
+ f = File.join(apps_dir, "themes", entry, "config", "Gemfile")
257
+ res << File.read(f) if File.exist?(f)
258
+ end
259
+ end
260
+ res.join("\n")
261
+ end
262
+
263
+ # return apps directory path
264
+ def self.apps_dir
265
+ dir = "#{File.dirname(__FILE__)}".split("/")
266
+ dir.pop
267
+ dir.join("/")+ '/app/apps'
268
+ end
269
+
270
+ def self.all_plugins
271
+ r = cache_variable("all_plugins"); return r unless r.nil?
272
+ res = []
273
+ p_dir = File.join(apps_dir, "plugins")
274
+ if Dir.exist?(p_dir)
275
+ Dir.entries(p_dir).select do |entry|
276
+ i = plugin_info(entry)
277
+ res << i unless i.nil?
278
+ end
279
+ end
280
+ cache_variable("all_plugins", res)
281
+ end
282
+
283
+ def self.all_themes
284
+ r = cache_variable("all_themes"); return r unless r.nil?
285
+ res = []
286
+ t_dir = File.join(apps_dir, "themes")
287
+ if Dir.exist?(t_dir)
288
+ Dir.entries(t_dir).select do |entry|
289
+ i = theme_info(entry)
290
+ res << i unless i.nil?
291
+ end
292
+ end
293
+ cache_variable("all_themes", res)
294
+ end
295
+
296
+ def self.all_apps
297
+ all_plugins+all_themes
298
+ end
299
+
300
+ # check if a gem is available or not
301
+ # Arguemnts:
302
+ # name: name of the gem
303
+ # return (Boolean) true/false
304
+ def self.get_gem(name)
305
+ Gem::Specification.find_by_name(name)
306
+ rescue Gem::LoadError
307
+ false
308
+ rescue
309
+ Gem.available?(name)
310
+ end
311
+ end