camaleon_cms_rails6 2.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +202 -0
- data/Rakefile +32 -0
- data/app/apps/plugins/attack/admin_controller.rb +17 -0
- data/app/apps/plugins/attack/attack_helper.rb +94 -0
- data/app/apps/plugins/attack/config/config.json +31 -0
- data/app/apps/plugins/attack/config/custom_models.rb +8 -0
- data/app/apps/plugins/attack/config/locales/readme.txt +1 -0
- data/app/apps/plugins/attack/config/locales/translation.yml +129 -0
- data/app/apps/plugins/attack/config/routes_admin.txt +2 -0
- data/app/apps/plugins/attack/models/attack.rb +3 -0
- data/app/apps/plugins/attack/views/admin/settings.html.erb +49 -0
- data/app/apps/plugins/authoring_post/authoring_post_helper.rb +51 -0
- data/app/apps/plugins/authoring_post/config/config.json +24 -0
- data/app/apps/plugins/front_cache/admin_controller.rb +29 -0
- data/app/apps/plugins/front_cache/config/config.json +21 -0
- data/app/apps/plugins/front_cache/config/initializer.rb +7 -0
- data/app/apps/plugins/front_cache/config/locales/readme.txt +1 -0
- data/app/apps/plugins/front_cache/config/locales/translation.yml +149 -0
- data/app/apps/plugins/front_cache/config/routes_admin.txt +3 -0
- data/app/apps/plugins/front_cache/front_cache_helper.rb +137 -0
- data/app/apps/plugins/front_cache/views/admin/settings.html.erb +81 -0
- data/app/apps/plugins/visibility_post/assets/js/form.js +30 -0
- data/app/apps/plugins/visibility_post/config/config.json +24 -0
- data/app/apps/plugins/visibility_post/visibility_post_helper.rb +124 -0
- data/app/apps/themes/camaleon_first/assets/css/magnific-ver.css +394 -0
- data/app/apps/themes/camaleon_first/assets/css/main.css +16 -0
- data/app/apps/themes/camaleon_first/assets/css/style-ver.css.scss +251 -0
- data/app/apps/themes/camaleon_first/assets/css/wpbase.css +1 -0
- data/app/apps/themes/camaleon_first/assets/images/empe.jpg +0 -0
- data/app/apps/themes/camaleon_first/assets/images/image.png +0 -0
- data/app/apps/themes/camaleon_first/assets/images/loader.gif +0 -0
- data/app/apps/themes/camaleon_first/assets/images/zoom.png +0 -0
- data/app/apps/themes/camaleon_first/assets/js/hover.zoom.js +67 -0
- data/app/apps/themes/camaleon_first/assets/js/magnific.min.js +3 -0
- data/app/apps/themes/camaleon_first/assets/js/main-ver.js +46 -0
- data/app/apps/themes/camaleon_first/assets/js/main.js +18 -0
- data/app/apps/themes/camaleon_first/assets/js/modernizr.custom.js +4 -0
- data/app/apps/themes/camaleon_first/config/config.json +14 -0
- data/app/apps/themes/camaleon_first/main_helper.rb +33 -0
- data/app/apps/themes/camaleon_first/views/index.html.erb +28 -0
- data/app/apps/themes/camaleon_first/views/layouts/camaleon_cms/mailer.html.erb +22 -0
- data/app/apps/themes/camaleon_first/views/layouts/index.html.erb +84 -0
- data/app/apps/themes/camaleon_first/views/mailer.html.erb +4 -0
- data/app/apps/themes/camaleon_first/views/partials/readme.txt +1 -0
- data/app/apps/themes/camaleon_first/views/template_sample_page.html.erb +6 -0
- data/app/apps/themes/default/assets/css/main.css +13 -0
- data/app/apps/themes/default/assets/css/style.css.scss +3398 -0
- data/app/apps/themes/default/assets/css/styles.css.scss +175 -0
- data/app/apps/themes/default/assets/genericons/COPYING.txt +9 -0
- data/app/apps/themes/default/assets/genericons/Genericons-Regular.otf +0 -0
- data/app/apps/themes/default/assets/genericons/LICENSE.txt +339 -0
- data/app/apps/themes/default/assets/genericons/README.txt +123 -0
- data/app/apps/themes/default/assets/genericons/font/genericons-regular-webfont.eot +0 -0
- data/app/apps/themes/default/assets/genericons/font/genericons-regular-webfont.svg +135 -0
- data/app/apps/themes/default/assets/genericons/font/genericons-regular-webfont.ttf +0 -0
- data/app/apps/themes/default/assets/genericons/font/genericons-regular-webfont.woff +0 -0
- data/app/apps/themes/default/assets/genericons/genericons.css +197 -0
- data/app/apps/themes/default/assets/images/circle.png +0 -0
- data/app/apps/themes/default/assets/images/dotted-line-2x.png +0 -0
- data/app/apps/themes/default/assets/images/dotted-line-light-2x.png +0 -0
- data/app/apps/themes/default/assets/images/dotted-line-light.png +0 -0
- data/app/apps/themes/default/assets/images/dotted-line.png +0 -0
- data/app/apps/themes/default/assets/images/headers/circle-thumbnail.png +0 -0
- data/app/apps/themes/default/assets/images/headers/circle.png +0 -0
- data/app/apps/themes/default/assets/images/headers/diamond-thumbnail.png +0 -0
- data/app/apps/themes/default/assets/images/headers/diamond.png +0 -0
- data/app/apps/themes/default/assets/images/headers/star-thumbnail.png +0 -0
- data/app/apps/themes/default/assets/images/headers/star.png +0 -0
- data/app/apps/themes/default/assets/images/image.png +0 -0
- data/app/apps/themes/default/assets/images/search-icon-2x.png +0 -0
- data/app/apps/themes/default/assets/images/search-icon.png +0 -0
- data/app/apps/themes/default/assets/js/main.js +13 -0
- data/app/apps/themes/default/config/config.json +19 -0
- data/app/apps/themes/default/default_helper.rb +28 -0
- data/app/apps/themes/default/views/admin/settings.html.erb +0 -0
- data/app/apps/themes/default/views/category.html.erb +16 -0
- data/app/apps/themes/default/views/index.html.erb +35 -0
- data/app/apps/themes/default/views/layouts/index.html.erb +84 -0
- data/app/apps/themes/default/views/page.html.erb +14 -0
- data/app/apps/themes/default/views/partials/_breadcrumb.html.erb +10 -0
- data/app/apps/themes/default/views/partials/_categories_list.html.erb +23 -0
- data/app/apps/themes/default/views/partials/_comments.html.erb +40 -0
- data/app/apps/themes/default/views/partials/_comments_list.html.erb +20 -0
- data/app/apps/themes/default/views/partials/_flash_messages.html.erb +26 -0
- data/app/apps/themes/default/views/partials/_forms.html.erb +19 -0
- data/app/apps/themes/default/views/partials/_post_list_item.html.erb +34 -0
- data/app/apps/themes/default/views/partials/_search_form.html.erb +8 -0
- data/app/apps/themes/default/views/partials/_sidebar.html.erb +50 -0
- data/app/apps/themes/default/views/post.html.erb +14 -0
- data/app/apps/themes/default/views/post_tag.html.erb +14 -0
- data/app/apps/themes/default/views/post_type.html.erb +33 -0
- data/app/apps/themes/default/views/search.html.erb +17 -0
- data/app/apps/themes/new/assets/css/main.css +14 -0
- data/app/apps/themes/new/assets/css/styles.css.scss +175 -0
- data/app/apps/themes/new/assets/images/image.png +0 -0
- data/app/apps/themes/new/assets/js/main.js +14 -0
- data/app/apps/themes/new/config/config.json +26 -0
- data/app/apps/themes/new/custom_helper.rb +31 -0
- data/app/apps/themes/new/image.png +0 -0
- data/app/apps/themes/new/views/admin/settings.html.erb +1 -0
- data/app/apps/themes/new/views/category.html.erb +33 -0
- data/app/apps/themes/new/views/index.html.erb +71 -0
- data/app/apps/themes/new/views/layouts/_footer.html.erb +17 -0
- data/app/apps/themes/new/views/layouts/_header.html.erb +38 -0
- data/app/apps/themes/new/views/layouts/index.html.erb +32 -0
- data/app/apps/themes/new/views/page.html.erb +16 -0
- data/app/apps/themes/new/views/post.html.erb +20 -0
- data/app/apps/themes/new/views/post_tag.html.erb +22 -0
- data/app/apps/themes/new/views/post_type.html.erb +33 -0
- data/app/apps/themes/new/views/search.html.erb +18 -0
- data/app/assets/config/camaleon-cms.js +7 -0
- data/app/assets/fonts/camaleon_cms/glyphicons-halflings-regular.eot +0 -0
- data/app/assets/fonts/camaleon_cms/glyphicons-halflings-regular.svg +288 -0
- data/app/assets/fonts/camaleon_cms/glyphicons-halflings-regular.ttf +0 -0
- data/app/assets/fonts/camaleon_cms/glyphicons-halflings-regular.woff +0 -0
- data/app/assets/fonts/camaleon_cms/glyphicons-halflings-regular.woff2 +0 -0
- data/app/assets/images/camaleon.png +0 -0
- data/app/assets/images/camaleon_cms/admin/admin_spinner.gif +0 -0
- data/app/assets/images/camaleon_cms/admin/glyphicons-halflings.png +0 -0
- data/app/assets/images/camaleon_cms/admin/intro/menus.png +0 -0
- data/app/assets/images/camaleon_cms/admin/no_image.jpg +0 -0
- data/app/assets/images/camaleon_cms/bg-tree.jpeg +0 -0
- data/app/assets/images/camaleon_cms/camaleon-dark.png +0 -0
- data/app/assets/images/camaleon_cms/camaleon.png +0 -0
- data/app/assets/images/camaleon_cms/category-icon.png +0 -0
- data/app/assets/images/camaleon_cms/favicon.ico +0 -0
- data/app/assets/images/camaleon_cms/image-not-found.png +0 -0
- data/app/assets/images/camaleon_cms/language/de.png +0 -0
- data/app/assets/images/camaleon_cms/language/en.png +0 -0
- data/app/assets/images/camaleon_cms/language/es.png +0 -0
- data/app/assets/images/camaleon_cms/language/fr.png +0 -0
- data/app/assets/images/camaleon_cms/language/it.png +0 -0
- data/app/assets/images/camaleon_cms/language/nl.png +0 -0
- data/app/assets/images/camaleon_cms/language/pl.png +0 -0
- data/app/assets/images/camaleon_cms/language/pt-BR.png +0 -0
- data/app/assets/images/camaleon_cms/language/pt.png +0 -0
- data/app/assets/images/camaleon_cms/language/ru.png +0 -0
- data/app/assets/images/camaleon_cms/language/uk.png +0 -0
- data/app/assets/images/camaleon_cms/language/zh-CN.png +0 -0
- data/app/assets/images/camaleon_cms/loader.gif +0 -0
- data/app/assets/images/camaleon_cms/users/no-image.jpg +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/_actions.js +91 -0
- data/app/assets/javascripts/camaleon_cms/admin/_bootstrap-datepicker.js +2558 -0
- data/app/assets/javascripts/camaleon_cms/admin/_bootstrap-select.js +7 -0
- data/app/assets/javascripts/camaleon_cms/admin/_custom_fields.js +273 -0
- data/app/assets/javascripts/camaleon_cms/admin/_data.js +69 -0
- data/app/assets/javascripts/camaleon_cms/admin/_i18n.js +32 -0
- data/app/assets/javascripts/camaleon_cms/admin/_jquery-ui.min.js +10 -0
- data/app/assets/javascripts/camaleon_cms/admin/_jquery.slugify.js +67 -0
- data/app/assets/javascripts/camaleon_cms/admin/_jquery.tagsinput.min.js +1 -0
- data/app/assets/javascripts/camaleon_cms/admin/_libraries.js +136 -0
- data/app/assets/javascripts/camaleon_cms/admin/_modal.js +156 -0
- data/app/assets/javascripts/camaleon_cms/admin/_post.js +317 -0
- data/app/assets/javascripts/camaleon_cms/admin/_posttype.js.coffee +27 -0
- data/app/assets/javascripts/camaleon_cms/admin/_translator.js +123 -0
- data/app/assets/javascripts/camaleon_cms/admin/_underscore.js +1536 -0
- data/app/assets/javascripts/camaleon_cms/admin/_user_profile.js +28 -0
- data/app/assets/javascripts/camaleon_cms/admin/admin-basic-manifest.js +3 -0
- data/app/assets/javascripts/camaleon_cms/admin/admin-manifest.js +55 -0
- data/app/assets/javascripts/camaleon_cms/admin/bootstrap-colorpicker.js +540 -0
- data/app/assets/javascripts/camaleon_cms/admin/custom_fields_form.js +94 -0
- data/app/assets/javascripts/camaleon_cms/admin/introjs/_intro.min.js +1317 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery-sieve.js +6 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery.nestable.js +485 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery.validate.js +123 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/de.js +20 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/es.js +27 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/fr.js +49 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/it.js +23 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/nl.js +33 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/pt-BR.js +74 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/ru.js +19 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/uk.js +23 -0
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/zh-CN.js +23 -0
- data/app/assets/javascripts/camaleon_cms/admin/lte/app.js +758 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/_moment.js +3606 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/ar.js +136 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/ca.js +79 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/de.js +76 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/es.js +79 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/fr.js +62 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/it.js +70 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/ja.js +65 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/nl.js +71 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/pl.js +105 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/pt-BR.js +60 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/pt.js +64 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/ru.js +166 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/uk.js +151 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/zh-CN.js +127 -0
- data/app/assets/javascripts/camaleon_cms/admin/nav_menu.js.coffee +139 -0
- data/app/assets/javascripts/camaleon_cms/admin/tageditor/_jquery.caret.min.js +2 -0
- data/app/assets/javascripts/camaleon_cms/admin/tageditor/_jquery.tag-editor.js +352 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/de.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/en.js +179 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/es.js +177 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/fr.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/it.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/nl.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/pt-BR.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/readme.md +3 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/ru.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/uk.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/zh-CN.js +228 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/filemanager/plugin.min.js +30 -0
- data/app/assets/javascripts/camaleon_cms/admin/uploader/_cropper.min.js +3003 -0
- data/app/assets/javascripts/camaleon_cms/admin/uploader/_jquery.form.js +1277 -0
- data/app/assets/javascripts/camaleon_cms/admin/uploader/_jquery.uploadfile.min.js +8 -0
- data/app/assets/javascripts/camaleon_cms/admin/uploader/_media_manager.js.coffee +455 -0
- data/app/assets/javascripts/camaleon_cms/admin/uploader/uploader_manifest.js +5 -0
- data/app/assets/javascripts/camaleon_cms/bootstrap.min.js +7 -0
- data/app/assets/stylesheets/camaleon_cms/admin/_bootstrap-datepicker.css.scss +373 -0
- data/app/assets/stylesheets/camaleon_cms/admin/_bootstrap-select.css +7 -0
- data/app/assets/stylesheets/camaleon_cms/admin/_custom_admin.css.scss +359 -0
- data/app/assets/stylesheets/camaleon_cms/admin/_jquery.tagsinput.css +72 -0
- data/app/assets/stylesheets/camaleon_cms/admin/admin-basic-manifest.css +16 -0
- data/app/assets/stylesheets/camaleon_cms/admin/admin-manifest.css +28 -0
- data/app/assets/stylesheets/camaleon_cms/admin/colorpicker.css.scss +96 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/bg.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/colorpicker/alpha.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/colorpicker/hue.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/colorpicker/saturation.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/girls-1.jpg +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/jquery/resize-icon.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/loading.gif +1 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/logo-small.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/logo.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/no_image.jpg +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/rormeleon-white.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/img/thumb_no_found.jpg +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/introjs/_introjs.min.css +1 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/_jquery-ui.scss +1226 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-icons_222222_256x240.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-icons_2e83ff_256x240.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-icons_454545_256x240.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-icons_888888_256x240.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/jquery/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/_admin.css.scss +4561 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-black-light.css +176 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-black.css +154 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-blue-light.css +167 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-blue.css +142 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-green-light.css +156 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-green.css +134 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-purple-light.css +156 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-purple.css +135 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-red-light.css +156 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-red.css +134 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-yellow-light.css +156 -0
- data/app/assets/stylesheets/camaleon_cms/admin/lte/skins/skin-yellow.css +134 -0
- data/app/assets/stylesheets/camaleon_cms/admin/nestable/jquery.nestable.css +103 -0
- data/app/assets/stylesheets/camaleon_cms/admin/tageditor/_jquery.tag-editor.css.scss +49 -0
- data/app/assets/stylesheets/camaleon_cms/admin/uploader/_cropper.min.css +9 -0
- data/app/assets/stylesheets/camaleon_cms/admin/uploader/_uploadfile.css.scss +256 -0
- data/app/assets/stylesheets/camaleon_cms/admin/uploader/uploader_manifest.css +4 -0
- data/app/assets/stylesheets/camaleon_cms/admin/widgets.css.scss +26 -0
- data/app/assets/stylesheets/camaleon_cms/bootstrap.min.css.scss +6799 -0
- data/app/controllers/camaleon_cms/admin/appearances/nav_menus_controller.rb +129 -0
- data/app/controllers/camaleon_cms/admin/appearances/themes_controller.rb +29 -0
- data/app/controllers/camaleon_cms/admin/appearances/widgets/assign_controller.rb +41 -0
- data/app/controllers/camaleon_cms/admin/appearances/widgets/main_controller.rb +55 -0
- data/app/controllers/camaleon_cms/admin/appearances/widgets/sidebar_controller.rb +56 -0
- data/app/controllers/camaleon_cms/admin/categories_controller.rb +80 -0
- data/app/controllers/camaleon_cms/admin/comments_controller.rb +90 -0
- data/app/controllers/camaleon_cms/admin/installers_controller.rb +32 -0
- data/app/controllers/camaleon_cms/admin/media_controller.rb +109 -0
- data/app/controllers/camaleon_cms/admin/plugins_controller.rb +46 -0
- data/app/controllers/camaleon_cms/admin/post_tags_controller.rb +81 -0
- data/app/controllers/camaleon_cms/admin/posts/drafts_controller.rb +58 -0
- data/app/controllers/camaleon_cms/admin/posts_controller.rb +212 -0
- data/app/controllers/camaleon_cms/admin/sessions_controller.rb +172 -0
- data/app/controllers/camaleon_cms/admin/settings/custom_fields_controller.rb +108 -0
- data/app/controllers/camaleon_cms/admin/settings/post_types_controller.rb +63 -0
- data/app/controllers/camaleon_cms/admin/settings/sites_controller.rb +87 -0
- data/app/controllers/camaleon_cms/admin/settings_controller.rb +86 -0
- data/app/controllers/camaleon_cms/admin/user_roles_controller.rb +74 -0
- data/app/controllers/camaleon_cms/admin/users_controller.rb +124 -0
- data/app/controllers/camaleon_cms/admin_controller.rb +82 -0
- data/app/controllers/camaleon_cms/apps/plugins_admin_controller.rb +19 -0
- data/app/controllers/camaleon_cms/apps/plugins_front_controller.rb +19 -0
- data/app/controllers/camaleon_cms/apps/themes_admin_controller.rb +12 -0
- data/app/controllers/camaleon_cms/apps/themes_front_controller.rb +12 -0
- data/app/controllers/camaleon_cms/camaleon_controller.rb +139 -0
- data/app/controllers/camaleon_cms/frontend_controller.rb +277 -0
- data/app/controllers/concerns/camaleon_cms/frontend_concern.rb +66 -0
- data/app/decorators/camaleon_cms/application_decorator.rb +54 -0
- data/app/decorators/camaleon_cms/category_decorator.rb +58 -0
- data/app/decorators/camaleon_cms/custom_field_decorator.rb +11 -0
- data/app/decorators/camaleon_cms/custom_fields_concern.rb +81 -0
- data/app/decorators/camaleon_cms/metas_decorator_methods.rb +11 -0
- data/app/decorators/camaleon_cms/nav_menu_item_decorator.rb +4 -0
- data/app/decorators/camaleon_cms/plugin_decorator.rb +3 -0
- data/app/decorators/camaleon_cms/post_comment_decorator.rb +39 -0
- data/app/decorators/camaleon_cms/post_decorator.rb +251 -0
- data/app/decorators/camaleon_cms/post_tag_decorator.rb +45 -0
- data/app/decorators/camaleon_cms/post_type_decorator.rb +87 -0
- data/app/decorators/camaleon_cms/site_decorator.rb +200 -0
- data/app/decorators/camaleon_cms/term_taxonomy_decorator.rb +93 -0
- data/app/decorators/camaleon_cms/theme_decorator.rb +18 -0
- data/app/decorators/camaleon_cms/user_decorator.rb +73 -0
- data/app/decorators/camaleon_cms/user_role_decorator.rb +12 -0
- data/app/decorators/camaleon_cms/widget_decorator.rb +4 -0
- data/app/helpers/camaleon_cms/admin/application_helper.rb +36 -0
- data/app/helpers/camaleon_cms/admin/breadcrumb_helper.rb +15 -0
- data/app/helpers/camaleon_cms/admin/category_helper.rb +24 -0
- data/app/helpers/camaleon_cms/admin/custom_fields_helper.rb +354 -0
- data/app/helpers/camaleon_cms/admin/menus_helper.rb +182 -0
- data/app/helpers/camaleon_cms/admin/post_type_helper.rb +67 -0
- data/app/helpers/camaleon_cms/camaleon_helper.rb +88 -0
- data/app/helpers/camaleon_cms/captcha_helper.rb +93 -0
- data/app/helpers/camaleon_cms/comment_helper.rb +48 -0
- data/app/helpers/camaleon_cms/content_helper.rb +29 -0
- data/app/helpers/camaleon_cms/email_helper.rb +56 -0
- data/app/helpers/camaleon_cms/frontend/application_helper.rb +36 -0
- data/app/helpers/camaleon_cms/frontend/content_select_helper.rb +161 -0
- data/app/helpers/camaleon_cms/frontend/nav_menu_helper.rb +237 -0
- data/app/helpers/camaleon_cms/frontend/seo_helper.rb +86 -0
- data/app/helpers/camaleon_cms/frontend/site_helper.rb +70 -0
- data/app/helpers/camaleon_cms/hooks_helper.rb +57 -0
- data/app/helpers/camaleon_cms/html_helper.rb +134 -0
- data/app/helpers/camaleon_cms/plugins_helper.rb +173 -0
- data/app/helpers/camaleon_cms/session_helper.rb +161 -0
- data/app/helpers/camaleon_cms/short_code_helper.rb +283 -0
- data/app/helpers/camaleon_cms/site_helper.rb +103 -0
- data/app/helpers/camaleon_cms/theme_helper.rb +95 -0
- data/app/helpers/camaleon_cms/uploader_helper.rb +329 -0
- data/app/helpers/camaleon_cms/user_roles_helper.rb +13 -0
- data/app/mailers/camaleon_cms/html_mailer.rb +87 -0
- data/app/models/camaleon_cms/ability.rb +109 -0
- data/app/models/camaleon_cms/category.rb +52 -0
- data/app/models/camaleon_cms/custom_field.rb +35 -0
- data/app/models/camaleon_cms/custom_field_group.rb +136 -0
- data/app/models/camaleon_cms/custom_fields_relationship.rb +27 -0
- data/app/models/camaleon_cms/media.rb +54 -0
- data/app/models/camaleon_cms/meta.rb +4 -0
- data/app/models/camaleon_cms/nav_menu.rb +29 -0
- data/app/models/camaleon_cms/nav_menu_item.rb +64 -0
- data/app/models/camaleon_cms/plugin.rb +76 -0
- data/app/models/camaleon_cms/post.rb +265 -0
- data/app/models/camaleon_cms/post_comment.rb +44 -0
- data/app/models/camaleon_cms/post_default.rb +78 -0
- data/app/models/camaleon_cms/post_relationship.rb +20 -0
- data/app/models/camaleon_cms/post_tag.rb +7 -0
- data/app/models/camaleon_cms/post_type.rb +189 -0
- data/app/models/camaleon_cms/site.rb +242 -0
- data/app/models/camaleon_cms/term_relationship.rb +18 -0
- data/app/models/camaleon_cms/term_taxonomy.rb +61 -0
- data/app/models/camaleon_cms/theme.rb +31 -0
- data/app/models/camaleon_cms/user.rb +18 -0
- data/app/models/camaleon_cms/user_role.rb +138 -0
- data/app/models/camaleon_cms/widget.rb +5 -0
- data/app/models/camaleon_cms/widget/assigned.rb +27 -0
- data/app/models/camaleon_cms/widget/main.rb +44 -0
- data/app/models/camaleon_cms/widget/sidebar.rb +20 -0
- data/app/models/concerns/camaleon_cms/categories_tags_for_posts.rb +132 -0
- data/app/models/concerns/camaleon_cms/custom_fields_read.rb +310 -0
- data/app/models/concerns/camaleon_cms/metas.rb +138 -0
- data/app/models/concerns/camaleon_cms/site_default_settings.rb +87 -0
- data/app/models/concerns/camaleon_cms/user_methods.rb +133 -0
- data/app/models/plugins.rb +5 -0
- data/app/models/themes.rb +5 -0
- data/app/uploaders/camaleon_cms_aws_uploader.rb +132 -0
- data/app/uploaders/camaleon_cms_local_uploader.rb +108 -0
- data/app/uploaders/camaleon_cms_uploader.rb +164 -0
- data/app/views/camaleon_cms/404.html.erb +4 -0
- data/app/views/camaleon_cms/500.html.erb +4 -0
- data/app/views/camaleon_cms/_flash_messages.html.erb +39 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_custom_fields.html.erb +6 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_custom_menus.html.erb +42 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_external_menu.html.erb +23 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_form.html.erb +13 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_left_menu_items.html.erb +77 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_menu_items.html.erb +19 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_menu_items_list.html.erb +12 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_menu_options.html.erb +21 -0
- data/app/views/camaleon_cms/admin/appearances/nav_menus/index.html.erb +14 -0
- data/app/views/camaleon_cms/admin/appearances/themes/index.html.erb +70 -0
- data/app/views/camaleon_cms/admin/appearances/themes/preview.html.erb +1 -0
- data/app/views/camaleon_cms/admin/appearances/themes/theme_load_data.html.erb +40 -0
- data/app/views/camaleon_cms/admin/appearances/widgets/assign/_form.html.erb +35 -0
- data/app/views/camaleon_cms/admin/appearances/widgets/main/_sidebar.html.erb +29 -0
- data/app/views/camaleon_cms/admin/appearances/widgets/main/form.html.erb +27 -0
- data/app/views/camaleon_cms/admin/appearances/widgets/main/index.html.erb +41 -0
- data/app/views/camaleon_cms/admin/appearances/widgets/sidebar/form.html.erb +23 -0
- data/app/views/camaleon_cms/admin/categories/_form.html.erb +34 -0
- data/app/views/camaleon_cms/admin/categories/edit.html.erb +14 -0
- data/app/views/camaleon_cms/admin/categories/index.html.erb +68 -0
- data/app/views/camaleon_cms/admin/comments/form.html.erb +12 -0
- data/app/views/camaleon_cms/admin/comments/form_answer.html.erb +12 -0
- data/app/views/camaleon_cms/admin/comments/index.html.erb +21 -0
- data/app/views/camaleon_cms/admin/comments/list.html.erb +36 -0
- data/app/views/camaleon_cms/admin/dashboard.html.erb +25 -0
- data/app/views/camaleon_cms/admin/installers/form.html.erb +19 -0
- data/app/views/camaleon_cms/admin/installers/welcome.html.erb +8 -0
- data/app/views/camaleon_cms/admin/media/_render_file_item.html.erb +57 -0
- data/app/views/camaleon_cms/admin/media/index.html.erb +70 -0
- data/app/views/camaleon_cms/admin/plugins/_plugins_list.html.erb +43 -0
- data/app/views/camaleon_cms/admin/plugins/index.html.erb +43 -0
- data/app/views/camaleon_cms/admin/post_tags/_form.html.erb +26 -0
- data/app/views/camaleon_cms/admin/post_tags/edit.html.erb +14 -0
- data/app/views/camaleon_cms/admin/post_tags/index.html.erb +59 -0
- data/app/views/camaleon_cms/admin/posts/_filter_posts.html.erb +5 -0
- data/app/views/camaleon_cms/admin/posts/_sidebar.html.erb +156 -0
- data/app/views/camaleon_cms/admin/posts/form.html.erb +96 -0
- data/app/views/camaleon_cms/admin/posts/index.html.erb +112 -0
- data/app/views/camaleon_cms/admin/posts/show.html.erb +20 -0
- data/app/views/camaleon_cms/admin/search.html.erb +73 -0
- data/app/views/camaleon_cms/admin/sessions/forgot.html.erb +44 -0
- data/app/views/camaleon_cms/admin/sessions/login.html.erb +47 -0
- data/app/views/camaleon_cms/admin/sessions/register.html.erb +63 -0
- data/app/views/camaleon_cms/admin/settings/_configuration_settings.html.erb +75 -0
- data/app/views/camaleon_cms/admin/settings/_email_settings.html.erb +58 -0
- data/app/views/camaleon_cms/admin/settings/_file_system_settings.html.erb +32 -0
- data/app/views/camaleon_cms/admin/settings/_media_settings.html.erb +14 -0
- data/app/views/camaleon_cms/admin/settings/_seo_settings.html.erb +22 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/_get_items.html.erb +185 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/_meta_data.html.erb +93 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/_render.html.erb +50 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/_render_category_simple.html.erb +25 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_audio.html.erb +4 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_categories.html.erb +11 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_checkbox.html.erb +8 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_checkboxes.html.erb +5 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_colorpicker.html.erb +7 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_date.html.erb +6 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_editor.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_email.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_field_attrs.html.erb +8 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_file.html.erb +4 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_image.html.erb +16 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_numeric.html.erb +4 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_phone.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_post_types.html.erb +8 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_posts.html.erb +14 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_private_file.html.erb +4 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_radio.html.erb +5 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_select.html.erb +7 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_select_eval.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_text_area.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_text_box.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_url.html.erb +3 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_users.html.erb +8 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_video.html.erb +4 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/form.html.erb +167 -0
- data/app/views/camaleon_cms/admin/settings/custom_fields/index.html.erb +111 -0
- data/app/views/camaleon_cms/admin/settings/languages.html.erb +60 -0
- data/app/views/camaleon_cms/admin/settings/post_types/_form.html.erb +171 -0
- data/app/views/camaleon_cms/admin/settings/post_types/edit.html.erb +14 -0
- data/app/views/camaleon_cms/admin/settings/post_types/index.html.erb +55 -0
- data/app/views/camaleon_cms/admin/settings/shortcodes.html.erb +37 -0
- data/app/views/camaleon_cms/admin/settings/site.html.erb +98 -0
- data/app/views/camaleon_cms/admin/settings/sites/form.html.erb +35 -0
- data/app/views/camaleon_cms/admin/settings/sites/index.html.erb +60 -0
- data/app/views/camaleon_cms/admin/settings/theme.html.erb +20 -0
- data/app/views/camaleon_cms/admin/user_roles/form.html.erb +156 -0
- data/app/views/camaleon_cms/admin/user_roles/index.html.erb +57 -0
- data/app/views/camaleon_cms/admin/users/form.html.erb +161 -0
- data/app/views/camaleon_cms/admin/users/index.html.erb +63 -0
- data/app/views/camaleon_cms/admin/users/profile.html.erb +1 -0
- data/app/views/camaleon_cms/admin/users/profile/_activity.html.erb +180 -0
- data/app/views/camaleon_cms/admin/users/profile/_settings.html.erb +15 -0
- data/app/views/camaleon_cms/default_theme/category.html.erb +26 -0
- data/app/views/camaleon_cms/default_theme/category.json.jbuilder +15 -0
- data/app/views/camaleon_cms/default_theme/category.rss.builder +23 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/audio.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/checkbox.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/checkboxes.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/colorpicker.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/date.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/editor.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/email.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/field_attrs.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/file.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/image.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/numeric.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/phone.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/posts.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/radio.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/select.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/select_eval.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/text_area.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/text_box.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/url.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/users.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/custom_fields/video.html.erb +3 -0
- data/app/views/camaleon_cms/default_theme/index.html.erb +70 -0
- data/app/views/camaleon_cms/default_theme/index.json.jbuilder +14 -0
- data/app/views/camaleon_cms/default_theme/partials/_breadcrumb.html.erb +10 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_category_entry.json.jbuilder +6 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_comments_entry.json.jbuilder +6 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_post_entry.json.jbuilder +6 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_post_type_entry.json.jbuilder +6 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_posts_entries.json.jbuilder +8 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_tag_entry.json.jbuilder +5 -0
- data/app/views/camaleon_cms/default_theme/partials/_cama_user_entry.json.jbuilder +5 -0
- data/app/views/camaleon_cms/default_theme/partials/_categories_list.html.erb +23 -0
- data/app/views/camaleon_cms/default_theme/partials/_comments.html.erb +48 -0
- data/app/views/camaleon_cms/default_theme/partials/_comments_list.html.erb +21 -0
- data/app/views/camaleon_cms/default_theme/partials/_comments_list2.html.erb +24 -0
- data/app/views/camaleon_cms/default_theme/partials/_flash_messages.html.erb +26 -0
- data/app/views/camaleon_cms/default_theme/partials/_forms.html.erb +19 -0
- data/app/views/camaleon_cms/default_theme/partials/_post_list_item.html.erb +13 -0
- data/app/views/camaleon_cms/default_theme/partials/_render_custom_field.html.erb +55 -0
- data/app/views/camaleon_cms/default_theme/partials/_search_form.html.erb +8 -0
- data/app/views/camaleon_cms/default_theme/partials/_sidebar.html.erb +66 -0
- data/app/views/camaleon_cms/default_theme/post_tag.html.erb +18 -0
- data/app/views/camaleon_cms/default_theme/post_tag.json.jbuilder +10 -0
- data/app/views/camaleon_cms/default_theme/post_tag.rss.builder +22 -0
- data/app/views/camaleon_cms/default_theme/post_type.html.erb +25 -0
- data/app/views/camaleon_cms/default_theme/post_type.json.jbuilder +13 -0
- data/app/views/camaleon_cms/default_theme/post_type.rss.builder +22 -0
- data/app/views/camaleon_cms/default_theme/profile.html.erb +18 -0
- data/app/views/camaleon_cms/default_theme/profile.json.jbuilder +4 -0
- data/app/views/camaleon_cms/default_theme/robots.text.erb +1 -0
- data/app/views/camaleon_cms/default_theme/rss.rss.builder +21 -0
- data/app/views/camaleon_cms/default_theme/search.html.erb +13 -0
- data/app/views/camaleon_cms/default_theme/search.json.jbuilder +1 -0
- data/app/views/camaleon_cms/default_theme/single.html.erb +32 -0
- data/app/views/camaleon_cms/default_theme/single.json.jbuilder +21 -0
- data/app/views/camaleon_cms/default_theme/single.rss.builder +12 -0
- data/app/views/camaleon_cms/default_theme/sitemap.html.erb +23 -0
- data/app/views/camaleon_cms/default_theme/sitemap.xml.builder +60 -0
- data/app/views/camaleon_cms/html_mailer/confirm_email.html.erb +3 -0
- data/app/views/camaleon_cms/html_mailer/mailer.html.erb +4 -0
- data/app/views/camaleon_cms/html_mailer/password_reset.html.erb +3 -0
- data/app/views/camaleon_cms/shortcode_templates/widget.html.erb +11 -0
- data/app/views/layouts/camaleon_cms/admin.html.erb +54 -0
- data/app/views/layouts/camaleon_cms/admin/_ajax.html.erb +8 -0
- data/app/views/layouts/camaleon_cms/admin/_flash_messages.html.erb +43 -0
- data/app/views/layouts/camaleon_cms/admin/_footer.html.erb +13 -0
- data/app/views/layouts/camaleon_cms/admin/_form_error.html.erb +10 -0
- data/app/views/layouts/camaleon_cms/admin/_header.html.erb +51 -0
- data/app/views/layouts/camaleon_cms/admin/_sidebar.html.erb +19 -0
- data/app/views/layouts/camaleon_cms/admin/installer.html.erb +35 -0
- data/app/views/layouts/camaleon_cms/application.html.erb +15 -0
- data/app/views/layouts/camaleon_cms/login.html.erb +22 -0
- data/app/views/layouts/camaleon_cms/mailer.html.erb +22 -0
- data/config/initializers/action_view.rb +56 -0
- data/config/initializers/active_record_extension.rb +104 -0
- data/config/initializers/assets.rb +27 -0
- data/config/initializers/custom_initializers.rb +10 -0
- data/config/initializers/mobu.rb +24 -0
- data/config/initializers/model_alias.rb +18 -0
- data/config/initializers/sass.rb +52 -0
- data/config/locales/ar.yml +275 -0
- data/config/locales/camaleon_cms/admin/ar.yml +683 -0
- data/config/locales/camaleon_cms/admin/de.yml +682 -0
- data/config/locales/camaleon_cms/admin/en.yml +682 -0
- data/config/locales/camaleon_cms/admin/es.yml +654 -0
- data/config/locales/camaleon_cms/admin/fr.yml +663 -0
- data/config/locales/camaleon_cms/admin/it.yml +633 -0
- data/config/locales/camaleon_cms/admin/js.yml +435 -0
- data/config/locales/camaleon_cms/admin/nl.yml +659 -0
- data/config/locales/camaleon_cms/admin/pt-BR.yml +643 -0
- data/config/locales/camaleon_cms/admin/pt.yml +641 -0
- data/config/locales/camaleon_cms/admin/ru.yml +670 -0
- data/config/locales/camaleon_cms/admin/uk.yml +670 -0
- data/config/locales/camaleon_cms/admin/zh-CH.yml +703 -0
- data/config/locales/camaleon_cms/common.yml +784 -0
- data/config/locales/camaleon_cms/languages.yml +167 -0
- data/config/locales/camaleon_cms/routes.yml +71 -0
- data/config/locales/de.yml +210 -0
- data/config/locales/en.yml +207 -0
- data/config/locales/es.yml +198 -0
- data/config/locales/fr.yml +207 -0
- data/config/locales/it.yml +205 -0
- data/config/locales/nl.yml +209 -0
- data/config/locales/pl.yml +237 -0
- data/config/locales/pt-BR.yml +203 -0
- data/config/locales/pt.yml +201 -0
- data/config/locales/ru.yml +207 -0
- data/config/locales/uk.yml +257 -0
- data/config/locales/zh-CH.yml +194 -0
- data/config/routes.rb +11 -0
- data/config/routes/admin.rb +148 -0
- data/config/routes/frontend.rb +96 -0
- data/config/system.json +19 -0
- data/db/migrate/20150611161134_post_table_into_utf8.rb +124 -0
- data/db/migrate/20150926095310_rename_column_posts.rb +18 -0
- data/db/migrate/20151212095328_add_confirm_token_to_users.rb +7 -0
- data/db/migrate/20160504155652_add_feature_to_posts.rb +5 -0
- data/db/migrate/20160504155653_move_first_name_of_users.rb +9 -0
- data/db/migrate/20160606135421_improve_menus_structure.rb +7 -0
- data/db/migrate/20160609121449_add_group_to_custom_field_values.rb +5 -0
- data/db/migrate/20161206211917_install_migrated_seo_plugin.rb +8 -0
- data/db/migrate/20161215202255_drop_user_relationship_table.rb +5 -0
- data/db/migrate/20180124132318_create_media.rb +17 -0
- data/db/migrate/20180704211100_adjust_field_length.rb +10 -0
- data/lib/camaleon_cms.rb +5 -0
- data/lib/camaleon_cms/engine.rb +84 -0
- data/lib/camaleon_cms/version.rb +3 -0
- data/lib/captcha/bumpyroad.ttf +0 -0
- data/lib/captcha/captcha_0.jpg +0 -0
- data/lib/captcha/captcha_1.jpg +0 -0
- data/lib/captcha/captcha_10.jpg +0 -0
- data/lib/captcha/captcha_11.jpg +0 -0
- data/lib/captcha/captcha_2.jpg +0 -0
- data/lib/captcha/captcha_3.jpg +0 -0
- data/lib/captcha/captcha_4.jpg +0 -0
- data/lib/captcha/captcha_5.jpg +0 -0
- data/lib/captcha/captcha_6.jpg +0 -0
- data/lib/captcha/captcha_7.jpg +0 -0
- data/lib/captcha/captcha_8.jpg +0 -0
- data/lib/captcha/captcha_9.jpg +0 -0
- data/lib/ext/array.rb +59 -0
- data/lib/ext/hash.rb +41 -0
- data/lib/ext/string.rb +162 -0
- data/lib/ext/translator.rb +84 -0
- data/lib/generators/camaleon_cms/gem_plugin_generator.rb +140 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/controllers/plugins/my_plugin/admin_controller.rb +18 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/controllers/plugins/my_plugin/front_controller.rb +8 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/helpers/plugins/my_plugin/main_helper.rb +29 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/models/plugins/my_plugin/my_plugin.rb +6 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/views/plugins/my_plugin/admin/index.html.erb +9 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/views/plugins/my_plugin/admin/settings.html.erb +21 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/views/plugins/my_plugin/front/index.html.erb +2 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/views/plugins/my_plugin/layouts/readme.txt +2 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/config/camaleon_plugin.json +14 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/config/initializers/custom_models.rb +5 -0
- data/lib/generators/camaleon_cms/install_generator.rb +43 -0
- data/lib/generators/camaleon_cms/install_template/apps/themes/readme.txt +0 -0
- data/lib/generators/camaleon_cms/install_template/plugin_routes.rb +22 -0
- data/lib/generators/camaleon_cms/install_template/system.json +11 -0
- data/lib/generators/camaleon_cms/theme_generator.rb +66 -0
- data/lib/generators/camaleon_cms/theme_template/assets/css/main.css +13 -0
- data/lib/generators/camaleon_cms/theme_template/assets/images/image.png +0 -0
- data/lib/generators/camaleon_cms/theme_template/assets/js/main.js +14 -0
- data/lib/generators/camaleon_cms/theme_template/config/config.json +14 -0
- data/lib/generators/camaleon_cms/theme_template/main_helper.rb +27 -0
- data/lib/generators/camaleon_cms/theme_template/views/admin/settings.html.erb +2 -0
- data/lib/generators/camaleon_cms/theme_template/views/index.html.erb +1 -0
- data/lib/generators/camaleon_cms/theme_template/views/layouts/index.html.erb +69 -0
- data/lib/generators/camaleon_cms/theme_template/views/partials/readme.txt +1 -0
- data/lib/plugin_routes.rb +439 -0
- data/lib/tasks/camaleon_cms/camaleon_tasks.rake +30 -0
- data/lib/tasks/camaleon_cms/rspec_test.rake +20 -0
- data/spec/dummy/README.rdoc +28 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/config/manifest.js +8 -0
- data/spec/dummy/app/assets/javascripts/application.js +13 -0
- data/spec/dummy/app/assets/stylesheets/application.css +15 -0
- data/spec/dummy/app/controllers/application_controller.rb +5 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/bin/setup +36 -0
- data/spec/dummy/bin/update +31 -0
- data/spec/dummy/bin/yarn +11 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/application.rb +27 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +41 -0
- data/spec/dummy/config/environments/production.rb +79 -0
- data/spec/dummy/config/environments/test.rb +44 -0
- data/spec/dummy/config/initializers/assets.rb +11 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/inflections.rb +16 -0
- data/spec/dummy/config/initializers/mime_types.rb +4 -0
- data/spec/dummy/config/initializers/session_store.rb +3 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +23 -0
- data/spec/dummy/config/routes.rb +4 -0
- data/spec/dummy/config/secrets.yml +22 -0
- data/spec/dummy/db/schema.rb +186 -0
- data/spec/factories/post.rb +44 -0
- data/spec/factories/post_type.rb +9 -0
- data/spec/factories/site.rb +18 -0
- data/spec/factories/user.rb +19 -0
- data/spec/features/admin/categories_spec.rb +25 -0
- data/spec/features/admin/comments_spec.rb +52 -0
- data/spec/features/admin/contact_form_spec.rb +60 -0
- data/spec/features/admin/content_groups_spec.rb +53 -0
- data/spec/features/admin/custom_fields_spec.rb +49 -0
- data/spec/features/admin/languages_spec.rb +37 -0
- data/spec/features/admin/media_spec.rb +50 -0
- data/spec/features/admin/menus_spec.rb +50 -0
- data/spec/features/admin/pages_spec.rb +35 -0
- data/spec/features/admin/plugins_spec.rb +29 -0
- data/spec/features/admin/posts_spec.rb +37 -0
- data/spec/features/admin/session_spec.rb +102 -0
- data/spec/features/admin/settings_spec.rb +17 -0
- data/spec/features/admin/shortcodes_spec.rb +11 -0
- data/spec/features/admin/sites_spec.rb +53 -0
- data/spec/features/admin/tags_spec.rb +34 -0
- data/spec/features/admin/themes_spec.rb +18 -0
- data/spec/features/admin/user_roles_spec.rb +66 -0
- data/spec/features/admin/users_spec.rb +81 -0
- data/spec/features/admin/widgets_spec.rb +59 -0
- data/spec/features/frontend/pages_spec.rb +136 -0
- data/spec/features/frontend/post_type_spec.rb +16 -0
- data/spec/helpers/email_helper_spec.rb +16 -0
- data/spec/helpers/short_code_helper_spec.rb +64 -0
- data/spec/helpers/uploader_helper_spec.rb +56 -0
- data/spec/mailers/send_mail_spec.rb +37 -0
- data/spec/models/post_spec.rb +50 -0
- data/spec/models/user_spec.rb +12 -0
- data/spec/rails_helper.rb +50 -0
- data/spec/routing/post_type_routes_spec.rb +12 -0
- data/spec/spec_helper.rb +167 -0
- data/spec/support/capybara_normalize_whitespace_patch.rb +17 -0
- data/spec/support/common.rb +119 -0
- data/spec/support/fixtures/rails.png +0 -0
- data/spec/support/wait_for_ajax.rb +30 -0
- metadata +1213 -0
@@ -0,0 +1,49 @@
|
|
1
|
+
<%= form_for(admin_plugins_attack_settings_path, html:{ id: "attack_form", class: "validate" }) do %>
|
2
|
+
<div class="panel panel-default">
|
3
|
+
|
4
|
+
<div class="panel-heading">
|
5
|
+
<h3 class="panel-title"> <%= t('plugin.attack.attack_security') %></h3>
|
6
|
+
</div>
|
7
|
+
<div class="panel-body">
|
8
|
+
<div class="form-group">
|
9
|
+
<div class="input-group">
|
10
|
+
<span class="input-group-addon"><%= t('plugin.attack.form.type_max_requests_time', type: 'GET') %> </span>
|
11
|
+
<%= text_field_tag("attack[get_max]", @attack[:get][:max], class: "required number form-control") %>
|
12
|
+
<span class="input-group-addon" style="border-left: 0; border-right: 0;"><%= t('plugin.attack.form.in') %></span>
|
13
|
+
<%= text_field_tag("attack[get_sec]", @attack[:get][:sec], class: "required number form-control") %>
|
14
|
+
<span class="input-group-addon"> <%= t('plugin.attack.form.seconds') %> </span>
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
<div class="form-group">
|
19
|
+
<div class="input-group">
|
20
|
+
<span class="input-group-addon"><%= t('plugin.attack.form.type_max_requests_time', type: 'POST') %> </span>
|
21
|
+
<%= text_field_tag("attack[post_max]", @attack[:post][:max], class: "required number form-control") %>
|
22
|
+
<span class="input-group-addon" style="border-left: 0; border-right: 0;"><%= t('plugin.attack.form.in') %></span>
|
23
|
+
<%= text_field_tag("attack[post_sec]", @attack[:post][:sec], class: "required number form-control") %>
|
24
|
+
<span class="input-group-addon"> <%= t('plugin.attack.form.seconds') %> </span>
|
25
|
+
</div>
|
26
|
+
</div>
|
27
|
+
<hr>
|
28
|
+
|
29
|
+
<div class="form-group">
|
30
|
+
<div class="input-group">
|
31
|
+
<span class="input-group-addon"><%= t('plugin.attack.form.ban_time_minutes') %> </span>
|
32
|
+
<%= text_field_tag("attack[ban]", @attack[:ban], class: "required number form-control") %>
|
33
|
+
<span class="input-group-addon" style="border-left: 0; border-right: 0;"><%= t('plugin.attack.form.minutes') %></span>
|
34
|
+
</div>
|
35
|
+
|
36
|
+
</div>
|
37
|
+
|
38
|
+
<div class="form-group">
|
39
|
+
<label><%= t('plugin.attack.form.ban_messages') %></label><br>
|
40
|
+
<%= text_field_tag("attack[msg]", @attack[:msg], class: "form-control") %>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
<div class="panel-footer">
|
44
|
+
<a class="btn btn-default" href="<%= url_for cama_admin_plugins_path %>"><%= t('camaleon_cms.admin.button.back') %></a>
|
45
|
+
<button class="btn btn-primary pull-right" type="submit"><%= t('camaleon_cms.admin.button.submit') %></button>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
|
49
|
+
<% end %>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module Plugins::AuthoringPost::AuthoringPostHelper
|
2
|
+
|
3
|
+
def plugin_authoring_post_the_content(args)
|
4
|
+
end
|
5
|
+
|
6
|
+
def plugin_authoring_on_active(plugin)
|
7
|
+
end
|
8
|
+
|
9
|
+
def plugin_authoring_on_inactive(plugin)
|
10
|
+
end
|
11
|
+
|
12
|
+
def plugin_authoring_post_list(args)
|
13
|
+
end
|
14
|
+
|
15
|
+
def plugin_authoring_create_post(args)
|
16
|
+
end
|
17
|
+
|
18
|
+
def plugin_authoring_new_post(args)
|
19
|
+
args[:extra_settings] << plugin_authoring_form_html(args[:post])
|
20
|
+
end
|
21
|
+
|
22
|
+
def plugin_authoring_can_visit(args)
|
23
|
+
end
|
24
|
+
|
25
|
+
def plugin_authoring_extra_columns(args)
|
26
|
+
end
|
27
|
+
|
28
|
+
def plugin_authoring_filter_post(args)
|
29
|
+
end
|
30
|
+
|
31
|
+
private
|
32
|
+
|
33
|
+
def plugin_authoring_form_html(post)
|
34
|
+
"
|
35
|
+
<div class='form-group'>
|
36
|
+
<label class='control-label'>#{t('camaleon_cms.admin.table.author')}</label>
|
37
|
+
<select id='post_user_id' #{can?(:edit_other, post.post_type) && (can?(:edit_publish, post.post_type) || !post.published?) ? '' : 'disabled'} name='post[user_id]' class='form-control select valid' aria-invalid='false'>#{plugin_authoring_authors_list(post)}</select>
|
38
|
+
</div>
|
39
|
+
"
|
40
|
+
end
|
41
|
+
|
42
|
+
def plugin_authoring_authors_list(post)
|
43
|
+
author_id = post.new_record? ? cama_current_user.id : post.author.id
|
44
|
+
ret = ''
|
45
|
+
current_site.users.where('role <> ?', 'client').order(:username).each do |user|
|
46
|
+
ret += "<option value='#{user.id}' #{user.id.eql?(author_id) ? 'selected' : ''}>#{user.username.titleize}#{user.fullname.eql?(user.username.titleize) ? '' : ' (' + user.fullname + ')' }</option>"
|
47
|
+
end
|
48
|
+
ret
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
{
|
2
|
+
"title": "Authoring Posts",
|
3
|
+
"descr": "Permit to change post author</a>",
|
4
|
+
"version": "0.1",
|
5
|
+
"key": "authoring_post",
|
6
|
+
"helpers": [
|
7
|
+
"Plugins::AuthoringPost::AuthoringPostHelper"
|
8
|
+
],
|
9
|
+
"options": [
|
10
|
+
],
|
11
|
+
"hooks": {
|
12
|
+
"on_active": ["plugin_authoring_on_active"],
|
13
|
+
"on_inactive": ["plugin_authoring_on_inactive"],
|
14
|
+
"list_post": ["plugin_authoring_post_list"],
|
15
|
+
"new_post":["plugin_authoring_new_post"],
|
16
|
+
"edit_post":["plugin_authoring_new_post"],
|
17
|
+
"created_post":["plugin_authoring_create_post"],
|
18
|
+
"updated_post":["plugin_authoring_create_post"],
|
19
|
+
"post_the_content": ["plugin_authoring_post_the_content"],
|
20
|
+
"filter_post": ["plugin_authoring_filter_post"],
|
21
|
+
"post_can_visit": ["plugin_authoring_can_visit"],
|
22
|
+
"list_post_extra_columns": ["plugin_authoring_extra_columns"]
|
23
|
+
}
|
24
|
+
}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
class Plugins::FrontCache::AdminController < CamaleonCms::Apps::PluginsAdminController
|
2
|
+
include Plugins::FrontCache::FrontCacheHelper
|
3
|
+
def settings
|
4
|
+
@caches = current_site.get_meta("front_cache_elements", {paths: []})
|
5
|
+
@caches[:paths] << "" unless @caches[:paths].present?
|
6
|
+
end
|
7
|
+
|
8
|
+
def save_settings
|
9
|
+
current_site.set_meta("front_cache_elements", {paths: ((params[:cache][:paths] || []).delete_if{|a| !a.present? } ||[]),
|
10
|
+
posts: (params[:cache][:posts]||[]),
|
11
|
+
post_types: (params[:cache][:post_type]||[]),
|
12
|
+
skip_posts: (params[:cache][:skip_posts]||[]),
|
13
|
+
cache_login: params[:cache][:cache_login],
|
14
|
+
home: params[:cache][:home],
|
15
|
+
preserve_cache_on_restart: params[:cache][:preserve_cache_on_restart],
|
16
|
+
invalidate_only: params[:cache][:invalidate_only],
|
17
|
+
cache_counter: current_site.get_meta("front_cache_elements")[:cache_counter] || 0
|
18
|
+
})
|
19
|
+
flash[:notice] = "#{t('plugin.front_cache.message.settings_saved')}"
|
20
|
+
redirect_to action: :settings
|
21
|
+
end
|
22
|
+
|
23
|
+
def clean_cache
|
24
|
+
flash[:notice] = "#{t('plugin.front_cache.message.cache_destroyed')}"
|
25
|
+
front_cache_clean()
|
26
|
+
redirect_to(request.referer || '/admin/plugins')
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
{
|
2
|
+
"title": "Front Cache",
|
3
|
+
"descr": "Please check documentation <a href='http://camaleon.tuzitio.com/store/plugins/3'>here.</a>",
|
4
|
+
"version": "0.2",
|
5
|
+
"key": "front_cache",
|
6
|
+
"position": 1,
|
7
|
+
"helpers": [
|
8
|
+
"Plugins::FrontCache::FrontCacheHelper"
|
9
|
+
],
|
10
|
+
"hooks": {
|
11
|
+
"admin_before_load": ["front_cache_post_requests"],
|
12
|
+
"front_before_load": ["front_cache_front_before_load", "front_cache_post_requests"],
|
13
|
+
"on_active": ["front_cache_on_active"],
|
14
|
+
"on_inactive": ["front_cache_on_inactive"],
|
15
|
+
"on_render": ["front_cache_on_render"],
|
16
|
+
"app_before_load": ["front_cache_before_load"],
|
17
|
+
"plugin_options":["front_cache_plugin_options"],
|
18
|
+
"front_after_load": ["front_cache_front_after_load"]
|
19
|
+
//here you can add all your hooks (read documentation)
|
20
|
+
}
|
21
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
Here all your plugin locales
|
@@ -0,0 +1,149 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
en:
|
3
|
+
plugin:
|
4
|
+
front_cache:
|
5
|
+
button:
|
6
|
+
add_new_path: 'Add new path'
|
7
|
+
custom_url_paths: 'Custom url paths'
|
8
|
+
custom_url_samples: 'Enter paths/urls like /contact or /my_section?p=a&... or /static-pages/(.*) or /test-([0-9]+)/?\?owen=true&var2=([a-z]+) or http://static.mydomain.com/(.*)'
|
9
|
+
clean_cache: 'Clean cache'
|
10
|
+
title: 'Frontend cache pages'
|
11
|
+
home_page: 'Home Page'
|
12
|
+
pages: 'Pages'
|
13
|
+
pages_of: 'Pages of'
|
14
|
+
skip_cache_pages: 'Skip Cache Pages'
|
15
|
+
preserve_cache_on_restart: 'Preserve cache on restart'
|
16
|
+
invalidate_only: 'Invalidate the cache instead of deleting it. (Recommended only if you use custom caching in your views. Not recommended when using FileStore, which is the Rails default cache)'
|
17
|
+
message:
|
18
|
+
please_checkpost_need_cache: 'Please check all posts or post types you need to cache.'
|
19
|
+
enabled_cache_inner_content_logged_users: 'Enable cache for inner content for logged users'
|
20
|
+
settings_saved: 'Settings saved!'
|
21
|
+
cache_destroyed: 'Cache destroyed!'
|
22
|
+
settings: 'Settings'
|
23
|
+
|
24
|
+
es:
|
25
|
+
plugin:
|
26
|
+
front_cache:
|
27
|
+
button:
|
28
|
+
add_new_path: 'Agregar nueva ruta'
|
29
|
+
custom_url_paths: 'Rutas url personalizadas'
|
30
|
+
clean_cache: 'Limpiar caché'
|
31
|
+
title: 'Páginas Frontend Caché'
|
32
|
+
home_page: 'Página de Inicio'
|
33
|
+
pages: 'Página'
|
34
|
+
pages_of: 'Página de'
|
35
|
+
skip_cache_pages: 'Saltar página del Caché'
|
36
|
+
preserve_cache_on_restart: 'Preservar caché al reiniciar'
|
37
|
+
invalidate_only: 'Invalide el caché en lugar de eliminarlo. (Recomendado sólo si utiliza el almacenamiento en caché personalizado en sus vistas No se recomienda cuando se utiliza FileStore, que es la caché predeterminada de Rails)'
|
38
|
+
message:
|
39
|
+
please_checkpost_need_cache: 'Por favor, compruebe todos los mensajes o los tipos de correos que necesita para almacenar en caché.'
|
40
|
+
enabled_cache_inner_content_logged_users: 'Habilitar caché de contenido interno para usuarios registrados'
|
41
|
+
settings_saved: 'Ajustes guardados!'
|
42
|
+
cache_destroyed: 'Caché destruida!'
|
43
|
+
settings: 'Ajustes'
|
44
|
+
|
45
|
+
|
46
|
+
nl:
|
47
|
+
plugin:
|
48
|
+
front_cache:
|
49
|
+
button:
|
50
|
+
add_new_path: 'URL toevoegen'
|
51
|
+
custom_url_paths: "Aangepaste URL's"
|
52
|
+
clean_cache: 'Cache opschonen'
|
53
|
+
title: "Frontend cache"
|
54
|
+
home_page: 'Home Page'
|
55
|
+
pages: "Pagina's"
|
56
|
+
pages_of: "Inhoud van"
|
57
|
+
skip_cache_pages: 'Cache overslaan'
|
58
|
+
preserve_cache_on_restart: 'Bewaar cache bij herstarten'
|
59
|
+
invalidate_only: 'De cache ongeldig maken, in plaats van het te verwijderen. (Alleen aanbevolen als u aangepaste caching gebruikt in uw weergaven. Niet aanbevolen bij het gebruik van FileStore, wat is de standaard cache van de Rails)'
|
60
|
+
message:
|
61
|
+
please_checkpost_need_cache: "Kijk alle berichten of inhoud type's na die je wil cachen."
|
62
|
+
enabled_cache_inner_content_logged_users: 'Activeer cache voor gelogde gebruikers'
|
63
|
+
settings_saved: 'instellingen opgeslagen!'
|
64
|
+
cache_destroyed: 'Cache opgeschoond!'
|
65
|
+
settings: 'instellingen'
|
66
|
+
|
67
|
+
pt-BR:
|
68
|
+
plugin:
|
69
|
+
front_cache:
|
70
|
+
button:
|
71
|
+
add_new_path: 'Adicionar novo caminho'
|
72
|
+
custom_url_paths: 'Caminhos de URL personalizados'
|
73
|
+
clean_cache: 'Limpar Cache'
|
74
|
+
title: 'Cache de Páginas de Front End'
|
75
|
+
home_page: 'Página Inicial'
|
76
|
+
pages: 'Páginas'
|
77
|
+
pages_of: 'Páginas de'
|
78
|
+
skip_cache_pages: 'Saltar Cache de Páginas'
|
79
|
+
preserve_cache_on_restart: 'Preserve o cache no reinício'
|
80
|
+
invalidate_only: 'Invalide o cache em vez de excluí-lo. (Recomendado apenas se você usar cache personalizado em suas visualizações. Não recomendado quando usar FileStore, que é o cache padrão do Rails)'
|
81
|
+
message:
|
82
|
+
please_checkpost_need_cache: 'Por favor verifique todas as publicações ou o tipo do publicação que precisa colocar em cache.'
|
83
|
+
enabled_cache_inner_content_logged_users: 'Permitir cache para conteúdo interno de utilizadores ligados'
|
84
|
+
settings_saved: 'Configurações Gravadas!'
|
85
|
+
cache_destroyed: 'Cache destruída!'
|
86
|
+
settings: 'Configurações'
|
87
|
+
|
88
|
+
pt-BR:
|
89
|
+
plugin:
|
90
|
+
front_cache:
|
91
|
+
button:
|
92
|
+
add_new_path: 'Adicionar novo caminho'
|
93
|
+
custom_url_paths: 'Caminhos de URL customizados'
|
94
|
+
clean_cache: 'Limpar Cache'
|
95
|
+
title: 'Cache de Páginas de Front End'
|
96
|
+
home_page: 'Página Inicial'
|
97
|
+
pages: 'Páginas'
|
98
|
+
pages_of: 'Páginas de'
|
99
|
+
skip_cache_pages: 'Pular Cache de Páginas'
|
100
|
+
preserve_cache_on_restart: 'Preserve o cache no reinício'
|
101
|
+
invalidate_only: 'Invalide o cache em vez de excluí-lo. (Recomendado apenas se você usar cache personalizado em suas visualizações. Não recomendado quando usar FileStore, que é o cache padrão do Rails)'
|
102
|
+
message:
|
103
|
+
please_checkpost_need_cache: 'Por favor cheque todos os posts ou o tipo do post que você precisa cachear.'
|
104
|
+
enabled_cache_inner_content_logged_users: 'Permitir cache para conteúdo interno de usuários logados'
|
105
|
+
settings_saved: 'Configurações Salvas!'
|
106
|
+
cache_destroyed: 'Cache destruído!'
|
107
|
+
settings: 'Configurações'
|
108
|
+
|
109
|
+
it:
|
110
|
+
plugin:
|
111
|
+
front_cache:
|
112
|
+
button:
|
113
|
+
add_new_path: 'Aggiungi un nuovo percorso'
|
114
|
+
custom_url_paths: 'URL personalizzate'
|
115
|
+
clean_cache: 'Pulisci la cache'
|
116
|
+
title: 'Frontend cache'
|
117
|
+
home_page: 'Home Page'
|
118
|
+
pages: 'Pagine'
|
119
|
+
pages_of: 'Pagine di'
|
120
|
+
skip_cache_pages: 'Pagine da non cachare'
|
121
|
+
preserve_cache_on_restart: 'Conserva la cache al riavvio'
|
122
|
+
invalidate_only: 'Invalidate la cache invece di cancellarla. (Consigliato solo se si utilizza la cache personalizzata nelle tue viste. Non è consigliata quando si utilizza FileStore, che è la cache predefinita Rails)'
|
123
|
+
message:
|
124
|
+
please_checkpost_need_cache: 'Per favore, verifica tutti i tipi di messaggi o e-mail che è necessario memorizzare nella cache.'
|
125
|
+
enabled_cache_inner_content_logged_users: 'Attiva il contenuto della cache interna per gli utenti registrati'
|
126
|
+
settings_saved: 'Impostazioni salvate!'
|
127
|
+
cache_destroyed: 'Cache distrutta!'
|
128
|
+
settings: 'Impostazioni'
|
129
|
+
|
130
|
+
zh-CN:
|
131
|
+
plugin:
|
132
|
+
front_cache:
|
133
|
+
button:
|
134
|
+
add_new_path: '添加新路径'
|
135
|
+
custom_url_paths: '自定义链接路径'
|
136
|
+
clean_cache: '清除缓存'
|
137
|
+
title: '字体缓存页面'
|
138
|
+
home_page: '主页'
|
139
|
+
pages: '页面'
|
140
|
+
pages_of: '页'
|
141
|
+
skip_cache_pages: '跳过缓存页面'
|
142
|
+
preserve_cache_on_restart: '重新启动时保存缓存'
|
143
|
+
invalidate_only: '使缓存无效,而不是删除它。 (仅当您在视图中使用自定义缓存时才推荐使用FileStore时,建议不要使用Rails默认缓存)'
|
144
|
+
message:
|
145
|
+
please_checkpost_need_cache: '请检查您需要缓存位内容.'
|
146
|
+
enabled_cache_inner_content_logged_users: '为已登录的用户启用内部内容的缓存'
|
147
|
+
settings_saved: '设置已保存!'
|
148
|
+
cache_destroyed: '缓存已清楚!'
|
149
|
+
settings: '设置'
|
@@ -0,0 +1,137 @@
|
|
1
|
+
module Plugins::FrontCache::FrontCacheHelper
|
2
|
+
|
3
|
+
# save as cache all pages configured on settings of this plugin for public users
|
4
|
+
def front_cache_front_before_load
|
5
|
+
if current_site.get_option("refresh_cache") # clear cache every restart server unless option checked in settings
|
6
|
+
front_cache_clean unless current_site.get_meta("front_cache_elements")[:preserve_cache_on_restart]
|
7
|
+
current_site.set_option("refresh_cache", false)
|
8
|
+
end
|
9
|
+
|
10
|
+
return if signin? || Rails.env == "development" || Rails.env == "test" || !request.get? # avoid cache if current visitor is logged in or development environment
|
11
|
+
|
12
|
+
cache_key = front_cache_plugin_cache_key
|
13
|
+
@caches = current_site.get_meta("front_cache_elements")
|
14
|
+
if !flash.keys.present? && front_cache_exist?(cache_key) # recover cache item
|
15
|
+
Rails.logger.info "Camaleon CMS - readed cache: #{front_cache_plugin_get_path(cache_key)}"
|
16
|
+
response.headers['PLUGIN_FRONT_CACHE'] = 'TRUE'
|
17
|
+
args = {data: front_cache_get(cache_key).gsub("{{form_authenticity_token}}", form_authenticity_token)}; hooks_run('front_cache_reading_cache', args)
|
18
|
+
render html: args[:data].html_safe
|
19
|
+
return
|
20
|
+
end
|
21
|
+
|
22
|
+
@_plugin_do_cache = false
|
23
|
+
if @caches[:paths].include?(request.original_url) || @caches[:paths].include?(request.path_info) || front_cache_plugin_match_path_patterns?(request.original_url, request.path_info) || (params[:action] == 'index' && params[:controller] == 'camaleon_cms/frontend' && @caches[:home].present?) # cache paths and home page
|
24
|
+
@_plugin_do_cache = true
|
25
|
+
elsif params[:action] == "post" && params[:controller] == 'camaleon_cms/frontend' && !params[:draft_id].present?
|
26
|
+
begin
|
27
|
+
post = current_site.the_posts.find_by_slug(params[:slug]).decorate
|
28
|
+
if post.can_visit? && post.visibility != "private"
|
29
|
+
post = post
|
30
|
+
if (@caches[:skip_posts] || []).include?(post.id.to_s)
|
31
|
+
@_plugin_do_cache = false
|
32
|
+
else
|
33
|
+
@_plugin_do_cache = true if (@caches[:post_types] || []).include?(post.post_type_id.to_s) || (@caches[:posts] || []).include?(post.id.to_s)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
rescue # skip post not found
|
37
|
+
end
|
38
|
+
end
|
39
|
+
response.headers['PLUGIN_FRONT_CACHE'] = 'TRUE' if @_plugin_do_cache
|
40
|
+
end
|
41
|
+
|
42
|
+
|
43
|
+
def front_cache_front_after_load
|
44
|
+
cache_key = front_cache_plugin_cache_key
|
45
|
+
if @_plugin_do_cache && !flash.keys.present?
|
46
|
+
args = {data: response.body
|
47
|
+
.gsub(/csrf-token" content="(.*?)"/, 'csrf-token" content="{{form_authenticity_token}}"')
|
48
|
+
.gsub(/name="authenticity_token" value="(.*?)"/, 'name="authenticity_token" value="{{form_authenticity_token}}"')}
|
49
|
+
hooks_run('front_cache_writing_cache', args)
|
50
|
+
front_cache_plugin_cache_create(cache_key, args[:data])
|
51
|
+
Rails.logger.info "Camaleon CMS - cache saved as: #{front_cache_plugin_get_path(cache_key)}"
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
# on install plugin
|
56
|
+
def front_cache_on_active(plugin)
|
57
|
+
current_site.set_meta("front_cache_elements", {paths: [],
|
58
|
+
posts: [],
|
59
|
+
post_types: [current_site.post_types.where(slug: "page").first.id],
|
60
|
+
skip_posts: [],
|
61
|
+
home: true,
|
62
|
+
cache_login: true,
|
63
|
+
cache_counter: 0}) unless current_site.get_meta("front_cache_elements", nil).present?
|
64
|
+
end
|
65
|
+
|
66
|
+
# on uninstall plugin
|
67
|
+
def front_cache_on_inactive(plugin)
|
68
|
+
# current_site.delete_meta("front_cache_elements")
|
69
|
+
end
|
70
|
+
|
71
|
+
# cache actions (for logged users)
|
72
|
+
def front_cache_on_render(args)
|
73
|
+
end
|
74
|
+
|
75
|
+
# expire cache for a page after comment registered or updated
|
76
|
+
def front_cache_before_load
|
77
|
+
end
|
78
|
+
|
79
|
+
def front_cache_plugin_options(arg)
|
80
|
+
arg[:links] << link_to(t('plugin.front_cache.settings'), admin_plugins_front_cache_settings_path)
|
81
|
+
arg[:links] << link_to(t('plugin.front_cache.clean_cache'), admin_plugins_front_cache_clean_path)
|
82
|
+
end
|
83
|
+
|
84
|
+
# save as cache all post requests
|
85
|
+
def front_cache_post_requests
|
86
|
+
if (request.post? || request.patch?)
|
87
|
+
front_cache_clean()
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
# clear all frontend cache items
|
92
|
+
def front_cache_clean
|
93
|
+
@caches = current_site.get_meta("front_cache_elements")
|
94
|
+
if @caches[:invalidate_only]
|
95
|
+
@caches[:cache_counter] += 1
|
96
|
+
current_site.set_meta("front_cache_elements", @caches)
|
97
|
+
else
|
98
|
+
Rails.cache.clear
|
99
|
+
@caches[:cache_counter] = 0
|
100
|
+
current_site.set_meta("front_cache_elements", @caches)
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
private
|
105
|
+
|
106
|
+
def front_cache_exist?(key)
|
107
|
+
!(Rails.cache.read(front_cache_plugin_get_path(key)).nil?)
|
108
|
+
end
|
109
|
+
|
110
|
+
def front_cache_get(key)
|
111
|
+
Rails.cache.read(front_cache_plugin_get_path(key))
|
112
|
+
end
|
113
|
+
|
114
|
+
def front_cache_plugin_cache_create(key, content)
|
115
|
+
Rails.cache.write(front_cache_plugin_get_path(key), content)
|
116
|
+
end
|
117
|
+
|
118
|
+
# return the physical path of cache directory
|
119
|
+
# key: (string, optional) the key of the cached page
|
120
|
+
def front_cache_plugin_get_path(key = nil)
|
121
|
+
unless key.nil?
|
122
|
+
"pages/#{@caches[:cache_counter]}/#{current_site.id.to_s}/#{key}"
|
123
|
+
else
|
124
|
+
"pages/#{@caches[:cache_counter]}/#{current_site.id.to_s}"
|
125
|
+
end
|
126
|
+
|
127
|
+
end
|
128
|
+
|
129
|
+
def front_cache_plugin_match_path_patterns?(key, key2)
|
130
|
+
@caches[:paths].any?{|path_pattern| key =~ Regexp.new(path_pattern) || key2 =~ Regexp.new(path_pattern) }
|
131
|
+
end
|
132
|
+
|
133
|
+
def front_cache_plugin_cache_key
|
134
|
+
uri = [request.protocol + request.host_with_port, request.fullpath].join('/')
|
135
|
+
uri.parameterize
|
136
|
+
end
|
137
|
+
end
|