camaleon_cms 0.2.1 → 1.0
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.
- checksums.yaml +4 -4
- data/README.md +266 -0
- data/app/apps/plugins/attack/config/config.json +1 -1
- data/app/apps/plugins/contact_form/config/config.json +1 -1
- data/app/apps/plugins/contact_form/contact_form_html_helper.rb +15 -10
- data/app/apps/plugins/contact_form/front_controller.rb +1 -0
- data/app/apps/plugins/contact_form/views/admin_forms/edit.html.erb +1 -2
- data/app/apps/plugins/contact_form/views/admin_forms/index.html.erb +1 -1
- data/app/apps/plugins/contact_form/views/admin_forms/responses.html.erb +1 -1
- data/app/apps/plugins/contact_form/views/forms_shorcode.html.erb +6 -6
- data/app/apps/plugins/front_cache/config/config.json +1 -1
- data/app/apps/plugins/front_cache/views/admin/settings.html.erb +1 -1
- data/app/apps/plugins/visibility_post/config/config.json +1 -1
- data/app/apps/themes/camaleon_first/assets/css/style-ver.css.scss +59 -32
- data/app/apps/themes/camaleon_first/views/layouts/index.html.erb +2 -2
- data/app/apps/themes/default/assets/css/style.css.scss +3 -0
- data/app/apps/themes/default/views/category.html.erb +1 -1
- data/app/apps/themes/default/views/post_tag.html.erb +1 -1
- data/app/apps/themes/default/views/post_type.html.erb +1 -1
- data/app/apps/themes/default/views/search.html.erb +1 -1
- data/app/apps/themes/new/views/category.html.erb +1 -1
- data/app/apps/themes/new/views/layouts/index.html.erb +2 -2
- data/app/apps/themes/new/views/post_tag.html.erb +1 -1
- data/app/apps/themes/new/views/post_type.html.erb +1 -1
- data/app/apps/themes/new/views/search.html.erb +1 -1
- data/app/assets/{stylesheets/admin/bootstrap/images → images/admin}/glyphicons-halflings.png +0 -0
- data/app/assets/javascripts/admin/actions.js +12 -205
- data/app/assets/javascripts/admin/admin-basic-manifest.js +3 -0
- data/app/assets/javascripts/admin/admin-manifest.js +14 -4
- data/app/assets/javascripts/admin/custom_fields.js +4 -2
- data/app/assets/javascripts/admin/data.js +49 -20
- data/app/assets/javascripts/admin/elfinder/upload_elfinder.js +4 -4
- data/app/assets/javascripts/admin/grid-editor.js +390 -113
- data/app/assets/javascripts/admin/i18n.js +22 -0
- data/app/assets/javascripts/admin/jquery.validate.js +2 -54
- data/app/assets/javascripts/admin/{core.js → libraries.js} +92 -76
- data/app/assets/javascripts/admin/login_manifest.js +0 -3
- data/app/assets/javascripts/admin/lte/app.js +758 -0
- data/app/assets/javascripts/admin/modal.js +76 -22
- data/app/assets/javascripts/admin/nav-menu.js +98 -39
- data/app/assets/javascripts/admin/post.js +28 -29
- data/app/assets/javascripts/admin/tinymce/skins/lightgray/content.min.css.scss +1 -1
- data/app/assets/javascripts/admin/tinymce/tinymce.min.js +11 -11
- data/app/assets/javascripts/admin/translator.js +9 -7
- data/app/assets/javascripts/admin/widgets.js +1 -0
- data/app/assets/stylesheets/admin/admin-basic-manifest.css +15 -0
- data/app/assets/stylesheets/admin/admin-manifest.css +7 -11
- data/app/assets/stylesheets/admin/bootstrap-datepicker.css.scss +472 -0
- data/app/assets/stylesheets/admin/bootstrap-datetimepicker.css.scss +339 -0
- data/app/assets/stylesheets/admin/colorpicker.css.scss +95 -0
- data/app/assets/stylesheets/admin/custom_admin.css.scss +160 -0
- data/app/assets/stylesheets/admin/elfinder-manifest.css +1 -1
- data/app/assets/stylesheets/admin/grid-editor.css.scss +14 -299
- data/app/assets/stylesheets/admin/lte/admin.css.scss +4747 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-black-light.css +176 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-black.css +154 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-blue-light.css +167 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-blue.css +142 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-green-light.css +156 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-green.css +134 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-purple-light.css +156 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-purple.css +134 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-red-light.css +156 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-red.css +134 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-yellow-light.css +156 -0
- data/app/assets/stylesheets/admin/lte/skins/skin-yellow.css +134 -0
- data/app/assets/stylesheets/admin/nav-menu.css.scss +33 -0
- data/app/controllers/admin/appearances/nav_menus_controller.rb +13 -10
- data/app/controllers/admin/appearances/themes_controller.rb +1 -2
- data/app/controllers/admin/appearances_controller.rb +0 -4
- data/app/controllers/admin/categories_controller.rb +9 -15
- data/app/controllers/admin/comments_controller.rb +8 -14
- data/app/controllers/admin/grid_editor_controller.rb +55 -0
- data/app/controllers/admin/installers_controller.rb +1 -1
- data/app/controllers/admin/media_controller.rb +1 -3
- data/app/controllers/admin/plugins_controller.rb +2 -2
- data/app/controllers/admin/post_tags_controller.rb +9 -18
- data/app/controllers/admin/posts/drafts_controller.rb +1 -9
- data/app/controllers/admin/posts_controller.rb +12 -15
- data/app/controllers/admin/sessions_controller.rb +6 -7
- data/app/controllers/admin/settings/custom_fields_controller.rb +4 -9
- data/app/controllers/admin/settings/post_types_controller.rb +6 -16
- data/app/controllers/admin/settings/sites_controller.rb +5 -7
- data/app/controllers/admin/settings_controller.rb +0 -4
- data/app/controllers/admin/user_roles_controller.rb +8 -8
- data/app/controllers/admin/users_controller.rb +8 -9
- data/app/controllers/admin_controller.rb +4 -5
- data/app/controllers/apps/plugins_admin_controller.rb +3 -3
- data/app/controllers/apps/plugins_front_controller.rb +2 -2
- data/app/controllers/apps/themes_admin_controller.rb +2 -2
- data/app/controllers/apps/themes_front_controller.rb +2 -2
- data/app/controllers/camaleon_controller.rb +0 -1
- data/app/controllers/concerns/frontend_concern.rb +1 -2
- data/app/controllers/frontend_controller.rb +25 -9
- data/app/decorators/category_decorator.rb +0 -1
- data/app/decorators/custom_field_decorator.rb +0 -1
- data/app/decorators/custom_fields_concern.rb +9 -3
- data/app/decorators/post_comment_decorator.rb +0 -1
- data/app/decorators/post_decorator.rb +10 -4
- data/app/decorators/post_tag_decorator.rb +0 -1
- data/app/decorators/post_type_decorator.rb +0 -1
- data/app/decorators/site_decorator.rb +35 -11
- data/app/decorators/term_taxonomy_decorator.rb +1 -3
- data/app/decorators/theme_decorator.rb +0 -1
- data/app/decorators/user_decorator.rb +7 -5
- data/app/decorators/widget_decorator.rb +0 -1
- data/app/helpers/admin/application_helper.rb +14 -0
- data/app/helpers/admin/menus_helper.rb +8 -8
- data/app/helpers/camaleon_helper.rb +10 -3
- data/app/helpers/captcha_helper.rb +2 -2
- data/app/helpers/frontend/application_helper.rb +0 -1
- data/app/helpers/frontend/nav_menu_helper.rb +2 -1
- data/app/helpers/frontend/seo_helper.rb +1 -2
- data/app/helpers/frontend/site_helper.rb +4 -4
- data/app/helpers/hooks_helper.rb +2 -5
- data/app/helpers/html_helper.rb +9 -7
- data/app/helpers/plugins_helper.rb +34 -8
- data/app/helpers/session_helper.rb +1 -2
- data/app/helpers/short_code_helper.rb +91 -10
- data/app/helpers/site_helper.rb +17 -8
- data/app/helpers/theme_helper.rb +34 -7
- data/app/helpers/uploader_helper.rb +6 -2
- data/app/mailers/html_mailer.rb +15 -6
- data/app/models/category.rb +2 -1
- data/app/models/concerns/custom_fields_read.rb +14 -3
- data/app/models/concerns/metas.rb +7 -4
- data/app/models/custom_field_group.rb +3 -0
- data/app/models/{concerns/metas_saved.rb → grid_template.rb} +7 -2
- data/app/models/meta.rb +0 -1
- data/app/models/nav_menu.rb +15 -1
- data/app/models/nav_menu_item.rb +10 -0
- data/app/models/post.rb +100 -6
- data/app/models/post_comment.rb +6 -0
- data/app/models/post_default.rb +9 -8
- data/app/models/post_relationship.rb +2 -0
- data/app/models/post_type.rb +36 -24
- data/app/models/site.rb +7 -16
- data/app/models/term_taxonomy.rb +3 -2
- data/app/models/theme.rb +5 -0
- data/app/models/widget/assigned.rb +3 -2
- data/app/views/admin/appearances/nav_menus/_custom_fields.html.erb +6 -0
- data/app/views/admin/appearances/{_external_menu.html.erb → nav_menus/_external_menu.html.erb} +8 -10
- data/app/views/admin/appearances/nav_menus/_menu_form.html.erb +35 -0
- data/app/views/admin/appearances/nav_menus/_menu_list.html.erb +22 -0
- data/app/views/admin/appearances/nav_menus/index.html.erb +110 -0
- data/app/views/admin/appearances/themes/index.html.erb +4 -3
- data/app/views/admin/appearances/widgets/main/_sidebar.html.erb +29 -0
- data/app/views/admin/appearances/widgets/main/form.html.erb +1 -1
- data/app/views/admin/appearances/widgets/main/index.html.erb +19 -41
- data/app/views/admin/categories/edit.html.erb +2 -6
- data/app/views/admin/categories/index.html.erb +7 -11
- data/app/views/admin/comments/form.html.erb +4 -7
- data/app/views/admin/comments/index.html.erb +24 -41
- data/app/views/admin/comments/reply.html.erb +9 -10
- data/app/views/admin/grid_editor/form.html.erb +31 -0
- data/app/views/admin/grid_editor/index.html.erb +29 -0
- data/app/views/admin/media/index.html.erb +3 -15
- data/app/views/admin/plugins/_plugins_list.html.erb +1 -2
- data/app/views/admin/post_tags/edit.html.erb +2 -6
- data/app/views/admin/post_tags/index.html.erb +3 -8
- data/app/views/admin/posts/_sidebar.html.erb +136 -0
- data/app/views/admin/posts/form.html.erb +87 -281
- data/app/views/admin/posts/index.html.erb +89 -104
- data/app/views/admin/sessions/forgot.html.erb +7 -13
- data/app/views/admin/sessions/login.html.erb +21 -11
- data/app/views/admin/sessions/register.html.erb +3 -6
- data/app/views/admin/settings/custom_fields/_meta_data.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/_render.html.erb +6 -14
- data/app/views/admin/settings/custom_fields/fields/audio.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/fields/field_attrs.html.erb +3 -5
- data/app/views/admin/settings/custom_fields/fields/file.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/fields/image.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/fields/posts.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/fields/select.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/fields/users.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/fields/video.html.erb +1 -1
- data/app/views/admin/settings/custom_fields/form.html.erb +11 -9
- data/app/views/admin/settings/custom_fields/get_items.html.erb +3 -6
- data/app/views/admin/settings/custom_fields/index.html.erb +3 -10
- data/app/views/admin/settings/languages.html.erb +2 -10
- data/app/views/admin/settings/post_types/_form.html.erb +1 -1
- data/app/views/admin/settings/post_types/edit.html.erb +2 -6
- data/app/views/admin/settings/post_types/index.html.erb +4 -12
- data/app/views/admin/settings/site.html.erb +143 -149
- data/app/views/admin/settings/sites/form.html.erb +4 -19
- data/app/views/admin/settings/sites/index.html.erb +8 -9
- data/app/views/admin/taxonomy/index.html.erb +1 -1
- data/app/views/admin/user_roles/form.html.erb +2 -3
- data/app/views/admin/user_roles/index.html.erb +2 -8
- data/app/views/admin/users/form.html.erb +14 -9
- data/app/views/admin/users/index.html.erb +3 -8
- data/app/views/admin/users/profile_edit.html.erb +21 -14
- data/app/views/default_theme/custom_fields/audio.html.erb +3 -0
- data/app/views/default_theme/custom_fields/checkbox.html.erb +3 -0
- data/app/views/default_theme/custom_fields/checkboxes.html.erb +3 -0
- data/app/views/default_theme/custom_fields/colorpicker.html.erb +3 -0
- data/app/views/default_theme/custom_fields/date.html.erb +3 -0
- data/app/views/default_theme/custom_fields/editor.html.erb +3 -0
- data/app/views/default_theme/custom_fields/email.html.erb +3 -0
- data/app/views/default_theme/custom_fields/field_attrs.html.erb +3 -0
- data/app/views/default_theme/custom_fields/file.html.erb +3 -0
- data/app/views/default_theme/custom_fields/image.html.erb +3 -0
- data/app/views/default_theme/custom_fields/numeric.html.erb +3 -0
- data/app/views/default_theme/custom_fields/phone.html.erb +3 -0
- data/app/views/default_theme/custom_fields/posts.html.erb +3 -0
- data/app/views/default_theme/custom_fields/radio.html.erb +3 -0
- data/app/views/default_theme/custom_fields/select.html.erb +3 -0
- data/app/views/default_theme/custom_fields/select_eval.html.erb +3 -0
- data/app/views/default_theme/custom_fields/text_area.html.erb +3 -0
- data/app/views/default_theme/custom_fields/text_box.html.erb +3 -0
- data/app/views/default_theme/custom_fields/url.html.erb +3 -0
- data/app/views/default_theme/custom_fields/users.html.erb +3 -0
- data/app/views/default_theme/custom_fields/video.html.erb +3 -0
- data/app/views/default_theme/layouts/index.html.erb +2 -2
- data/app/views/default_theme/{post.html.erb → single.html.erb} +1 -1
- data/app/views/default_theme/{post.rss.builder → single.rss.builder} +0 -0
- data/app/views/layouts/admin.html.erb +35 -133
- data/app/views/layouts/admin/_flash_messages.html.erb +1 -15
- data/app/views/layouts/admin/_footer.html.erb +6 -0
- data/app/views/layouts/admin/_header.html.erb +51 -0
- data/app/views/layouts/admin/_sidebar.html.erb +21 -30
- data/app/views/layouts/admin/installer.html.erb +2 -2
- data/app/views/layouts/login.html.erb +15 -33
- data/config/initializers/active_record_extension.rb +14 -2
- data/config/initializers/assets.rb +21 -7
- data/config/initializers/page_caching.rb +1 -2
- data/config/locales/admin/en.yml +17 -9
- data/config/locales/admin/es.yml +8 -3
- data/config/locales/admin/it.yml +4 -2
- data/config/locales/admin/js.yml +147 -0
- data/config/routes/admin.rb +4 -4
- data/config/routes/frontend.rb +2 -2
- data/config/system.json +1 -0
- data/db/migrate/20150926095310_rename_column_posts.rb +18 -0
- data/lib/camaleon_cms.rb +1 -1
- data/lib/camaleon_cms/engine.rb +17 -2
- data/lib/camaleon_cms/version.rb +1 -1
- data/lib/generators/camaleon_cms/gem_plugin_generator.rb +122 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/controllers/plugins/my_plugin/admin_controller.rb +8 -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 +22 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/models/plugins/my_plugin/my_plugin.rb +12 -0
- data/lib/generators/camaleon_cms/gem_plugin_template/app/views/plugins/my_plugin/admin/index.html.erb +2 -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 +21 -0
- data/lib/generators/camaleon_cms/install_generator.rb +1 -2
- data/lib/generators/camaleon_cms/install_template/plugin_routes.rb +1 -10
- data/lib/generators/ctheme_template/app/apps/themes/my_theme/config/config.json +5 -5
- data/lib/generators/ctheme_template/app/apps/themes/my_theme/main_helper.rb +6 -5
- data/lib/generators/ctheme_template/app/apps/themes/my_theme/views/layouts/index.html.erb +2 -2
- data/lib/plugin_routes.rb +40 -2
- metadata +257 -22
- data/app/assets/stylesheets/admin/animate/animate.min.css +0 -6
- data/app/assets/stylesheets/admin/bootstrap/bootstrap-datetimepicker.css.scss +0 -339
- data/app/assets/stylesheets/admin/bootstrap/bootstrap.min.css +0 -5
- data/app/assets/stylesheets/admin/core.scss +0 -349
- data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.eot +0 -0
- data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.svg +0 -1831
- data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.ttf +0 -0
- data/app/assets/stylesheets/admin/fonts/OpenSans-Regular-webfont.woff +0 -0
- data/app/assets/stylesheets/admin/nav-menu.css +0 -54
- data/app/assets/stylesheets/admin/theme-default.scss +0 -8462
- data/app/models/concerns/site_public.rb +0 -23
- data/app/views/admin/appearances/menu.html.erb +0 -199
- data/lib/Gemfile +0 -25
@@ -9,7 +9,7 @@
|
|
9
9
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
10
10
|
|
11
11
|
<%= stylesheet_link_tag "admin/admin-manifest", media: "all" %>
|
12
|
-
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.
|
12
|
+
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
|
13
13
|
<script>
|
14
14
|
var root_url = '<%= root_url %>';
|
15
15
|
var NO_IMAGE_URL = '<%= asset_url("image-not-found.png") %>';
|
@@ -17,148 +17,50 @@
|
|
17
17
|
var ADMIN_TRANSLATIONS = <%= raw current_site.get_languages.to_json %>;
|
18
18
|
String.prototype.to_url = function () { return root_url.slice(0, root_url.length - 1) + this; };
|
19
19
|
window.run = [];
|
20
|
-
var
|
21
|
-
var
|
22
|
-
accept: '<%= t('admin.button.accept') %>',
|
23
|
-
cancel: '<%= t('admin.button.cancel') %>',
|
24
|
-
add_tag: '<%= t('admin.post.add_tag') %>',
|
25
|
-
approved: '<%= t('admin.comments.message.approved') %>',
|
26
|
-
close: '<%= t('admin.button.close') %>',
|
27
|
-
edit: '<%= t('admin.button.edit') %>',
|
28
|
-
"delete": '<%= t('admin.button.delete') %>',
|
29
|
-
post_draft: '<%= t('admin.post.message.draft') %>',
|
30
|
-
label_required: '<%= t('plugin.contact_form.label_required') %>',
|
31
|
-
placeholder_required: '<%= t('plugin.contact_form.placeholder_required') %>',
|
32
|
-
message_updated_success: '<%= t('admin.message.updated_success') %>',
|
33
|
-
message_edit_menu: '<%= t('admin.message.edit_menu') %>',
|
34
|
-
message_delete_item: '<%= t('admin.message.delete_item') %>',
|
35
|
-
message_remove_items_submenu: '<%= t('admin.message.remove_items_submenu') %>',
|
36
|
-
message_you_must_upload_image: '<%= t('admin.message.you_must_upload_image') %>',
|
37
|
-
message_you_must_upload_video: '<%= t('admin.message.you_must_upload_video') %>',
|
38
|
-
message_no_response_fields: '<%= t('admin.message.no_response_fields') %>',
|
39
|
-
message_you_must_upload_json_file: '<%= t('admin.message.you_must_upload_json_file')%>',
|
40
|
-
msg_no_templates_defined: '<%= t('admin.message.no_templates_defined') %>',
|
41
|
-
msg_avatar_updated: '<%= t('admin.message.avatar_updated')%>',
|
42
|
-
msg_form_error: '<%= t('admin.message.form_error')%>',
|
43
|
-
option_title: '<%= t('admin.settings.option_title') %>',
|
44
|
-
permalink: '<%= t('admin.post.permalink')%>',
|
45
|
-
pending: '<%= t('admin.comments.message.pending') %>',
|
46
|
-
preview: '<%= t('admin.button.preview')%>',
|
47
|
-
spam: '<%= t('admin.comments.message.spam') %>',
|
48
|
-
view_page: '<%= t('admin.button.view_page')%>',
|
49
|
-
view_draft: '<%= t('admin.button.view_draft') %>',
|
50
|
-
mgs_save_draft: '<%= t('admin.post.message.draft') %>',
|
51
|
-
mgs_recover: '<%= t('admin.post.message.recover') %>',
|
52
|
-
close: '<%= t('admin.button.close')%>',
|
53
|
-
processing: '<%= t('admin.message.processing')%>',
|
54
|
-
type_contents: '<%= t('admin.plugins.type_contents')%>',
|
55
|
-
upload_image: '<%= t('admin.button.upload_image')%>'
|
56
|
-
};
|
20
|
+
var tinymce_assets = {language_url: "<%= asset_path("admin/tinymce/langs/#{current_locale}.js") %>", custom_css: <%= r = {css_assets: []}; hooks_run("tinymce_custom_css", r); raw(r[:css_assets].to_json); %>};
|
21
|
+
var I18n_data = <%= I18n.backend.send(:translations)[current_locale.to_sym][:admin][:js].to_json.html_safe %>
|
57
22
|
</script>
|
58
23
|
<%= javascript_include_tag "admin/admin-manifest" %>
|
59
|
-
<%= javascript_include_tag "admin/#{current_locale}.js" if current_locale != "en" %>
|
60
|
-
<%= javascript_include_tag "admin/elfinder/i18n/elfinder.#{current_locale}.js" if current_locale != "en" %>
|
61
|
-
<%= raw the_head(false) %>
|
24
|
+
<%= javascript_include_tag "admin/#{current_locale}.js" if current_locale != "en" %> <!-- validator translations -->
|
25
|
+
<%= javascript_include_tag "admin/elfinder/i18n/elfinder.#{current_locale}.js" if current_locale != "en" %> <!-- elfinder translations -->
|
26
|
+
<%= raw the_head({}, false) %>
|
27
|
+
|
28
|
+
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
29
|
+
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
30
|
+
<!--[if lt IE 9]>
|
31
|
+
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
32
|
+
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
33
|
+
<![endif]-->
|
62
34
|
</head>
|
63
|
-
<body class="
|
64
|
-
<%= raw content_before_draw %>
|
65
|
-
|
66
|
-
<div class="page-container" id="page-container">
|
35
|
+
<body class="hold-transition skin-blue sidebar-mini">
|
36
|
+
<%= raw content_before_draw %>
|
37
|
+
<div class="wrapper">
|
67
38
|
|
68
|
-
|
69
|
-
<div class="page-sidebar page-sidebar-fixed0 scroll0" id="admin_sidebar">
|
70
|
-
<!-- START X-NAVIGATION -->
|
39
|
+
<%= render partial: "layouts/admin/header" %>
|
71
40
|
<%= render partial: "layouts/admin/sidebar", locals: {_admin_menu_draw: _admin_menu_draw} %>
|
72
41
|
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
<!-- START X-NAVIGATION VERTICAL -->
|
81
|
-
<ul class="x-navigation x-navigation-horizontal x-navigation-panel hidden" id="admin_header">
|
82
|
-
<!-- TOGGLE NAVIGATION -->
|
83
|
-
<li class="xn-icon-button">
|
84
|
-
<a href="#" class="x-navigation-minimize"><span class="fa fa-dedent"></span></a>
|
85
|
-
</li>
|
86
|
-
<li class="xn-icon-button pull-right">
|
87
|
-
<a href="#" class="mb-control" data-box="#mb-signout"><span class="fa fa-power-off"></span></a>
|
88
|
-
</li>
|
89
|
-
<!-- END TOGGLE NAVIGATION -->
|
90
|
-
</ul>
|
91
|
-
<!-- END X-NAVIGATION VERTICAL -->
|
42
|
+
<div class="content-wrapper">
|
43
|
+
<!-- Content Header (Page header) -->
|
44
|
+
<section class="content-header">
|
45
|
+
<ol class="breadcrumb">
|
46
|
+
<%= raw admin_breadcrumb_draw() %>
|
47
|
+
</ol>
|
48
|
+
</section>
|
92
49
|
|
93
|
-
|
94
|
-
|
95
|
-
<
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
<div class="btn-group" role="group">
|
101
|
-
<a class="btn dropdown-toggle btn-lg <%= site == current_site ? "btn-success" : "btn-primary" %>" data-toggle="dropdown" href="#" role="button" aria-expanded="false"> <%= site.the_title %> <span class="caret"></span></a>
|
102
|
-
<ul class="dropdown-menu" role="menu">
|
103
|
-
<li><a href="<%= site.the_admin_url %>" class=""><i class="fa fa-dashboard"></i> <%= t('admin.sidebar_top.admin_panel') %></a></li>
|
104
|
-
<li><a href="<%= site.the_url(locale: false) %>" class="" target="_blank"><i class="fa fa-globe"></i> <%= t('admin.sidebar_top.visit') %></a></li>
|
105
|
-
</ul>
|
106
|
-
</div>
|
107
|
-
<% end %>
|
108
|
-
<% else %>
|
109
|
-
<div class="btn-group" role="group">
|
110
|
-
<a class="btn dropdown-toggle btn-lg btn-success" data-toggle="dropdown" href="#" role="button" aria-expanded="false"> <%= current_site.the_title %> <span class="caret"></span></a>
|
111
|
-
<ul class="dropdown-menu" role="menu">
|
112
|
-
<li><a href="<%= current_site.the_admin_url %>" class=""><i class="fa fa-dashboard"></i> <%= t('admin.sidebar_top.admin_panel') %></a></li>
|
113
|
-
<li><a href="<%= current_site.the_url(locale: false) %>" class="" target="_blank"><i class="fa fa-globe"></i> <%= t('admin.sidebar_top.visit') %></a></li>
|
114
|
-
</ul>
|
115
|
-
</div>
|
116
|
-
<% end %>
|
117
|
-
</div>
|
118
|
-
|
119
|
-
<a id="admin_logout" data-box="#mb-signout" class="pull-right btn btn-primary btn-lg" href="#"><span class="fa fa-power-off"></span></a>
|
50
|
+
<!-- Main content -->
|
51
|
+
<!-- box box-info -->
|
52
|
+
<section class="content" id="admin_content">
|
53
|
+
<%= render "/layouts/admin/flash_messages" %>
|
54
|
+
<%= yield %>
|
55
|
+
</section>
|
56
|
+
<!-- /.content -->
|
120
57
|
</div>
|
121
58
|
|
122
|
-
|
123
|
-
|
124
|
-
<%= raw admin_breadcrumb_draw() %>
|
125
|
-
</ul>
|
126
|
-
<!-- END BREADCRUMB -->
|
127
|
-
|
128
|
-
<div id="admin_content">
|
129
|
-
<%= render partial: "layouts/admin/flash_messages" %>
|
130
|
-
<%= yield %>
|
131
|
-
</div>
|
132
|
-
<!-- END PAGE CONTENT -->
|
133
|
-
</div>
|
134
|
-
<!-- END PAGE CONTAINER -->
|
135
|
-
|
136
|
-
<div class="message-box animated fadeIn" data-sound="alert" id="mb-signout">
|
137
|
-
<div class="mb-container">
|
138
|
-
<div class="mb-middle">
|
139
|
-
<div class="mb-title"><span class="fa fa-sign-out"></span> <%= raw t('admin.logout.logout_html') %> </div>
|
140
|
-
<div class="mb-content">
|
141
|
-
<p><%= t('admin.message.are_you_sure_you_want_log_out_int') %></p>
|
142
|
-
|
143
|
-
<p><%= t('admin.message.press_no_continue_work_press_yes_logout') %></p>
|
144
|
-
</div>
|
145
|
-
<div class="mb-footer">
|
146
|
-
<div class="pull-right">
|
147
|
-
<a href="<%= admin_logout_path %>" class="btn btn-success btn-lg"><%= t('admin.button.out_yes') %></a>
|
148
|
-
<button class="btn btn-default btn-lg mb-control-close"><%= t('admin.button.out_not') %></button>
|
149
|
-
</div>
|
150
|
-
</div>
|
151
|
-
</div>
|
152
|
-
</div>
|
59
|
+
<%= render partial: "layouts/admin/footer" %>
|
60
|
+
<%= raw content_after_draw %>
|
153
61
|
</div>
|
154
62
|
|
155
|
-
|
156
|
-
|
157
|
-
<audio id="audio-fail" src="<%= asset_path("audio/fail.mp3") %>" preload="auto"></audio>
|
158
|
-
<!-- END PRELOADS -->
|
159
|
-
|
160
|
-
</div>
|
161
|
-
<script> jQuery(function () { while (run.length > 0) { (run.shift())(); } }); </script>
|
162
|
-
<%= raw content_after_draw %>
|
63
|
+
<script> jQuery(function () { while (run.length > 0) { (run.shift())(); } }); </script>
|
64
|
+
<%= raw content_after_draw %>
|
163
65
|
</body>
|
164
66
|
</html>
|
@@ -31,18 +31,4 @@
|
|
31
31
|
<%= raw(flash[:alert]) %>
|
32
32
|
</div>
|
33
33
|
</div>
|
34
|
-
<% end %>
|
35
|
-
|
36
|
-
|
37
|
-
<style>
|
38
|
-
.flash_messages{
|
39
|
-
margin-left: 10%;
|
40
|
-
margin-right: 10%;
|
41
|
-
width: 80%;
|
42
|
-
}
|
43
|
-
.template-admin .flash_messages{
|
44
|
-
display: inline-block;
|
45
|
-
text-align: center;
|
46
|
-
}
|
47
|
-
</style>
|
48
|
-
|
34
|
+
<% end %>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
<header class="main-header">
|
2
|
+
<!-- Logo -->
|
3
|
+
<a href="<%= current_site.the_url%>" class="logo" target="_blank">
|
4
|
+
<img src="<%= current_site.the_logo %>" alt="<%= current_site.the_title %>">
|
5
|
+
</a>
|
6
|
+
<!-- Header Navbar: style can be found in header.less -->
|
7
|
+
<nav class="navbar navbar-static-top" role="navigation">
|
8
|
+
<!-- Sidebar toggle button-->
|
9
|
+
<a href="#" class="sidebar-toggle" data-toggle="offcanvas" role="button">
|
10
|
+
<span class="sr-only">Toggle navigation</span>
|
11
|
+
<span class="icon-bar"></span>
|
12
|
+
<span class="icon-bar"></span>
|
13
|
+
<span class="icon-bar"></span>
|
14
|
+
</a>
|
15
|
+
|
16
|
+
<div class="navbar-custom-menu">
|
17
|
+
<ul class="nav navbar-nav">
|
18
|
+
<%= r = {html: ""}; hooks_run("admin_notifications", r); raw(r[:html]); %>
|
19
|
+
<li class="dropdown user user-menu">
|
20
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
21
|
+
<img src="<%= current_user.the_avatar %>" class="user-image" alt="User Image">
|
22
|
+
<span class="hidden-xs"><%= current_user.fullname %></span>
|
23
|
+
</a>
|
24
|
+
<ul class="dropdown-menu">
|
25
|
+
<!-- User image -->
|
26
|
+
<li class="user-header">
|
27
|
+
<img src="<%= current_user.the_avatar %>" class="img-circle" alt="User Image">
|
28
|
+
<p>
|
29
|
+
<%= current_user.fullname %> - <%= current_user.the_role %>
|
30
|
+
<small><%= t("admin.header.member_since", time: l(current_user.created_at.to_date, format: :long) ) %></small>
|
31
|
+
</p>
|
32
|
+
</li>
|
33
|
+
<!-- Menu Footer-->
|
34
|
+
<li class="user-footer">
|
35
|
+
<div class="pull-left">
|
36
|
+
<a href="<%= admin_profile_edit_path %>" class="btn btn-primary"><%= t("admin.users.profile") %></a>
|
37
|
+
</div>
|
38
|
+
<div class="pull-right">
|
39
|
+
<a href="<%= admin_logout_path %>" class="btn btn-danger"><%= t("admin.logout.logout") %></a>
|
40
|
+
</div>
|
41
|
+
</li>
|
42
|
+
</ul>
|
43
|
+
</li>
|
44
|
+
<!-- Control Sidebar Toggle Button -->
|
45
|
+
<li class="hidden">
|
46
|
+
<a href="#" data-toggle="control-sidebar"><i class="fa fa-gears"></i></a>
|
47
|
+
</li>
|
48
|
+
</ul>
|
49
|
+
</div>
|
50
|
+
</nav>
|
51
|
+
</header>
|
@@ -1,31 +1,22 @@
|
|
1
|
-
<
|
2
|
-
|
3
|
-
<
|
4
|
-
|
5
|
-
|
1
|
+
<aside class="main-sidebar">
|
2
|
+
<!-- sidebar: style can be found in sidebar.less -->
|
3
|
+
<section class="sidebar">
|
4
|
+
<!-- search form -->
|
5
|
+
<form action="#" method="get" class="sidebar-form">
|
6
|
+
<div class="input-group">
|
7
|
+
<input type="text" name="q" class="form-control" placeholder="Search...">
|
8
|
+
<span class="input-group-btn">
|
9
|
+
<button type="submit" name="search" id="search-btn" class="btn btn-flat"><i class="fa fa-search"></i>
|
10
|
+
</button>
|
11
|
+
</span>
|
12
|
+
</div>
|
13
|
+
</form>
|
14
|
+
<!-- /.search form -->
|
6
15
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
</div>
|
15
|
-
<div class="profile-data">
|
16
|
-
<div class="profile-data-name"><%= current_user.the_name %></div>
|
17
|
-
<div class="profile-data-title"><%= current_user.the_slogan %></div>
|
18
|
-
<div class="profile-data-title"><small><%= current_user.role %></small></div>
|
19
|
-
</div>
|
20
|
-
<div class="profile-controls">
|
21
|
-
<a href="<%= admin_profile_path %>" class="profile-control-left"><span class="fa fa-info"></span></a>
|
22
|
-
<a href="<%= admin_profile_edit_path %>" class="profile-control-right"><span class="fa fa-edit"></span></a>
|
23
|
-
</div>
|
24
|
-
</div>
|
25
|
-
</li>
|
26
|
-
|
27
|
-
<li class="xn-title"><%= t('admin.sidebar.navigation')%></li>
|
28
|
-
|
29
|
-
<%= raw _admin_menu_draw %>
|
30
|
-
|
31
|
-
</ul>
|
16
|
+
<ul class="sidebar-menu">
|
17
|
+
<li class="header"><%= t("admin.sidebar.main_navigation") %></li>
|
18
|
+
<%= raw _admin_menu_draw %>
|
19
|
+
</ul>
|
20
|
+
</section>
|
21
|
+
<!-- /.sidebar -->
|
22
|
+
</aside>
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
11
11
|
|
12
12
|
<%= stylesheet_link_tag "admin/theme-default", "admin/bootstrap/bootstrap.min.css", media: "all" %>
|
13
|
-
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.
|
13
|
+
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
|
14
14
|
<%= javascript_include_tag "admin/login_manifest" %>
|
15
15
|
<script>
|
16
16
|
jQuery(function(){
|
@@ -33,4 +33,4 @@
|
|
33
33
|
</div>
|
34
34
|
|
35
35
|
</body>
|
36
|
-
</html>
|
36
|
+
</html>
|
@@ -1,40 +1,22 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
2
|
<html lang="en" class="body-full-height">
|
3
3
|
<head>
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
<!--link rel="icon" href="favicon.ico" type="image/x-icon" /-->
|
13
|
-
|
14
|
-
<%#= stylesheet_link_tag "admin", media: "all" %>
|
15
|
-
<%= stylesheet_link_tag "admin/theme-default", "admin/bootstrap/bootstrap.min.css", media: "all" %>
|
16
|
-
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
|
17
|
-
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
7
|
+
<%= raw the_head({title: (content_for?(:content) ? yield(:content) : t('admin.login.login'))}, false) if current_site.present? %>
|
8
|
+
<%= stylesheet_link_tag "admin/admin-basic-manifest", media: "all" %>
|
9
|
+
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
|
10
|
+
<%= javascript_include_tag "admin/admin-basic-manifest" %>
|
18
11
|
</head>
|
19
|
-
<body>
|
20
|
-
<div class="login-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
<div class="login-footer">
|
28
|
-
<div class="pull-left">
|
29
|
-
|
30
|
-
</div>
|
31
|
-
<div class="pull-right">
|
32
|
-
|
33
|
-
</div>
|
12
|
+
<body class="hold-transition login-page">
|
13
|
+
<div class="col-md-4 col-md-offset-4 col-sm-6 col-sm-offset-3 login-box">
|
14
|
+
<div class="login-logo">
|
15
|
+
<%= link_to(image_tag(current_site.the_logo), admin_login_path) rescue "Camaleon CMS" %>
|
16
|
+
</div>
|
17
|
+
<div class="login-box-body">
|
18
|
+
<%= yield %>
|
34
19
|
</div>
|
35
|
-
</div>
|
36
|
-
|
37
20
|
</div>
|
38
|
-
<%= javascript_include_tag "admin/login_manifest" %>
|
39
21
|
</body>
|
40
|
-
</html>
|
22
|
+
</html>
|
@@ -11,7 +11,6 @@ module ActiveRecordExtras
|
|
11
11
|
extend ActiveSupport::Concern
|
12
12
|
|
13
13
|
module ClassMethods
|
14
|
-
|
15
14
|
def update_or_create(attributes = {})
|
16
15
|
assign_or_new(attributes).save
|
17
16
|
end
|
@@ -29,4 +28,17 @@ module ActiveRecordExtras
|
|
29
28
|
end
|
30
29
|
end
|
31
30
|
|
32
|
-
ActiveRecord::Base.send :include, ActiveRecordExtras::Relation
|
31
|
+
ActiveRecord::Base.send :include, ActiveRecordExtras::Relation
|
32
|
+
|
33
|
+
ActiveRecord::Associations::CollectionProxy.class_eval do
|
34
|
+
# order a collection by custom fields
|
35
|
+
# Arguments:
|
36
|
+
# key: (String) Custom field key
|
37
|
+
# order: (String) order direction (ASC | DESC)
|
38
|
+
# sample: Site.first.posts.sort_by_field("untitled-field-attributes", "desc")
|
39
|
+
def sort_by_field(key, order = "ASC")
|
40
|
+
# class_name = self.build.class.name
|
41
|
+
# table_name = class_name.classify.table_name
|
42
|
+
self.includes(:custom_field_values).where("#{CustomFieldsRelationship.table_name}.custom_field_slug = ? and #{CustomFieldsRelationship.table_name}.object_class = ?", key, self.build.class.name).reorder("#{CustomFieldsRelationship.table_name}.value #{order}")
|
43
|
+
end
|
44
|
+
end
|
@@ -17,13 +17,27 @@ Rails.application.config.assets.version = '1.0'
|
|
17
17
|
# Precompile additional assets.
|
18
18
|
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
|
19
19
|
# Rails.application.config.assets.precompile += %w( search.js )
|
20
|
-
Rails.application.config.assets.precompile += [/.*\.js/,/.*\.css/]
|
20
|
+
# Rails.application.config.assets.precompile += [/.*\.js/,/.*\.css/]
|
21
21
|
|
22
|
-
Rails.application.config.assets.precompile += Dir[Rails.root.join("app", "apps", "themes", "*", "assets", "**", "*.{js,css,png,jpg,gif}")]
|
23
|
-
Rails.application.config.assets.precompile += Dir[Rails.root.join("app", "apps", "plugins", "*", "assets", "**", "*.{js,css,png,jpg,gif}")]
|
22
|
+
# Rails.application.config.assets.precompile += Dir[Rails.root.join("app", "apps", "themes", "*", "assets", "**", "^(?!_)*.{js,css,png,jpg,gif}")]
|
23
|
+
# Rails.application.config.assets.precompile += Dir[Rails.root.join("app", "apps", "plugins", "*", "assets", "**", "^(?!_)*.{js,css,png,jpg,gif}")]
|
24
|
+
#
|
25
|
+
# Rails.application.config.assets.precompile += Dir[File.join($camaleon_engine_dir, "app", "apps", "themes", "*", "assets", "**", "^(?!_)*.{js,css,png,jpg,gif}")]
|
26
|
+
# Rails.application.config.assets.precompile += Dir[File.join($camaleon_engine_dir, "app", "apps", "plugins", "*", "assets", "**", "^(?!_)*.{js,css,png,jpg,gif}")]
|
24
27
|
|
25
|
-
Rails.application.config.assets.precompile +=
|
26
|
-
Rails.application.config.assets.precompile +=
|
28
|
+
# Rails.application.config.assets.precompile += %w( themes/*/assets/css/^(?!_)* )
|
29
|
+
# Rails.application.config.assets.precompile += %w( plugins/*/assets/js/^(?!_)* )
|
30
|
+
# Rails.application.config.assets.precompile += %w( themes/*/assets/[images|img]/* )
|
31
|
+
# Rails.application.config.assets.precompile += %w( plugins/*/assets/[images|img]/* )
|
32
|
+
# Rails.application.config.assets.precompile += %w( plugins/*/assets/* )
|
27
33
|
|
28
|
-
|
29
|
-
Rails.application.config.assets.precompile
|
34
|
+
# This will precompile any assets, not just JavaScript (.js, .coffee, .swf, .css, .scss)
|
35
|
+
# Rails.application.config.assets.precompile << /(^[^_\/]|\/[^_])[^\/]*$/
|
36
|
+
Rails.application.config.assets.precompile << Proc.new { |path|
|
37
|
+
content_type = MIME::Types.type_for(File.basename(path)).first.content_type rescue ""
|
38
|
+
res = false
|
39
|
+
if (path =~ /\.(css|js|svg|ttf|woff|eot|swf|pdf)\z/ || content_type.scan(/(javascript|image\/|audio|video|font)/).any?) && !path.start_with?("_")
|
40
|
+
res = true
|
41
|
+
end
|
42
|
+
res
|
43
|
+
}
|