camaleon_cms 2.1.1 → 2.1.1.4
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 +35 -1
- data/app/apps/plugins/attack/config/locales/translation.yml +20 -1
- data/app/apps/plugins/contact_form/config/locales/translation.yml +106 -1
- data/app/apps/plugins/contact_form/contact_form_helper.rb +44 -27
- data/app/apps/plugins/front_cache/config/locales/translation.yml +21 -1
- data/app/apps/plugins/front_cache/front_cache_helper.rb +1 -1
- data/app/apps/plugins/visibility_post/assets/js/form.js +1 -3
- data/app/apps/plugins/visibility_post/visibility_post_helper.rb +2 -4
- 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.png +0 -0
- data/app/assets/images/camaleon_cms/language/pt_br.png +0 -0
- data/app/assets/images/camaleon_cms/language/ru.png +0 -0
- data/app/assets/images/camaleon_cms/language/zh.png +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/_custom_fields.js +3 -11
- data/app/assets/javascripts/camaleon_cms/admin/_data.js +2 -6
- data/app/assets/javascripts/camaleon_cms/admin/_libraries.js +11 -229
- data/app/assets/javascripts/camaleon_cms/admin/_modal.js +11 -37
- data/app/assets/javascripts/camaleon_cms/admin/_post.js +27 -22
- data/app/assets/javascripts/camaleon_cms/admin/_translator.js +2 -1
- data/app/assets/javascripts/camaleon_cms/admin/admin-manifest.js +6 -2
- data/app/assets/javascripts/camaleon_cms/admin/bootstrap-datepicker.js +2557 -1689
- data/app/assets/javascripts/camaleon_cms/admin/jquery.validate.js +119 -1361
- data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/nl.js +33 -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.js +64 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/pt_br.js +60 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/ru.js +166 -0
- data/app/assets/javascripts/camaleon_cms/admin/momentjs/zh.js +127 -0
- data/app/assets/javascripts/camaleon_cms/admin/nav-menu.js +15 -25
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/nl.js +219 -0
- data/app/assets/javascripts/camaleon_cms/admin/uploader/_media_manager.js.coffee +82 -19
- data/app/assets/javascripts/camaleon_cms/admin/user_profile.js +8 -8
- data/app/assets/stylesheets/camaleon_cms/admin/_custom_admin.css.scss +19 -2
- data/app/assets/stylesheets/camaleon_cms/admin/admin-manifest.css +0 -4
- data/app/assets/stylesheets/camaleon_cms/admin/bootstrap-datepicker.css.scss +315 -414
- data/app/assets/stylesheets/camaleon_cms/admin/uploader/_uploadfile.css.scss +7 -3
- data/app/controllers/camaleon_cms/admin/appearances/nav_menus_controller.rb +9 -5
- data/app/controllers/camaleon_cms/admin/categories_controller.rb +5 -0
- data/app/controllers/camaleon_cms/admin/media_controller.rb +27 -10
- data/app/controllers/camaleon_cms/admin/posts_controller.rb +9 -19
- data/app/controllers/camaleon_cms/admin/sessions_controller.rb +3 -10
- data/app/controllers/camaleon_cms/admin/settings/custom_fields_controller.rb +0 -1
- data/app/controllers/camaleon_cms/admin/settings/sites_controller.rb +6 -1
- data/app/controllers/camaleon_cms/admin/users_controller.rb +1 -8
- data/app/controllers/camaleon_cms/admin_controller.rb +5 -4
- data/app/controllers/camaleon_cms/apps/plugins_front_controller.rb +0 -8
- data/app/controllers/camaleon_cms/camaleon_controller.rb +6 -1
- data/app/controllers/camaleon_cms/frontend_controller.rb +11 -8
- data/app/decorators/camaleon_cms/category_decorator.rb +2 -1
- data/app/decorators/camaleon_cms/post_decorator.rb +28 -1
- data/app/decorators/camaleon_cms/post_tag_decorator.rb +1 -0
- data/app/decorators/camaleon_cms/post_type_decorator.rb +17 -0
- data/app/decorators/camaleon_cms/site_decorator.rb +22 -7
- data/app/decorators/camaleon_cms/user_decorator.rb +1 -0
- data/app/helpers/camaleon_cms/admin/application_helper.rb +3 -2
- data/app/helpers/camaleon_cms/admin/custom_fields_helper.rb +13 -25
- data/app/helpers/camaleon_cms/admin/post_type_helper.rb +27 -2
- data/app/helpers/camaleon_cms/camaleon_helper.rb +0 -16
- data/app/helpers/camaleon_cms/captcha_helper.rb +9 -3
- data/app/helpers/camaleon_cms/email_helper.rb +27 -8
- data/app/helpers/camaleon_cms/frontend/nav_menu_helper.rb +21 -17
- data/app/helpers/camaleon_cms/frontend/seo_helper.rb +5 -3
- data/app/helpers/camaleon_cms/html_helper.rb +2 -2
- data/app/helpers/camaleon_cms/site_helper.rb +10 -14
- data/app/helpers/camaleon_cms/uploader_helper.rb +119 -31
- data/app/mailers/camaleon_cms/html_mailer.rb +26 -20
- data/app/models/camaleon_cms/custom_field.rb +1 -0
- data/app/models/camaleon_cms/custom_field_group.rb +2 -1
- data/app/models/camaleon_cms/nav_menu.rb +6 -7
- data/app/models/camaleon_cms/nav_menu_item.rb +2 -1
- data/app/models/camaleon_cms/post.rb +29 -2
- data/app/models/camaleon_cms/post_type.rb +20 -1
- data/app/models/camaleon_cms/site.rb +19 -19
- data/app/models/camaleon_cms/term_taxonomy.rb +1 -1
- data/app/models/concerns/camaleon_cms/custom_fields_read.rb +6 -4
- data/app/models/concerns/camaleon_cms/metas.rb +5 -4
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_custom_fields.html.erb +4 -2
- data/app/views/camaleon_cms/admin/appearances/nav_menus/_external_menu.html.erb +1 -1
- data/app/views/camaleon_cms/admin/appearances/nav_menus/index.html.erb +3 -6
- data/app/views/camaleon_cms/admin/categories/index.html.erb +1 -0
- data/app/views/camaleon_cms/admin/media/_files_list.html.erb +3 -3
- data/app/views/camaleon_cms/admin/media/_render_file_item.html.erb +3 -2
- data/app/views/camaleon_cms/admin/media/index.html.erb +31 -4
- data/app/views/camaleon_cms/admin/posts/_sidebar.html.erb +10 -1
- data/app/views/camaleon_cms/admin/posts/form.html.erb +6 -2
- data/app/views/camaleon_cms/admin/posts/index.html.erb +4 -4
- data/app/views/camaleon_cms/admin/search.html.erb +5 -3
- data/app/views/camaleon_cms/admin/settings/_file_system_settings.html.erb +5 -5
- data/app/views/camaleon_cms/admin/settings/custom_fields/_get_items.html.erb +2 -1
- data/app/views/camaleon_cms/admin/settings/custom_fields/_render.html.erb +1 -1
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_date.html.erb +3 -4
- data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_image.html.erb +1 -1
- data/app/views/camaleon_cms/admin/settings/custom_fields/form.html.erb +2 -2
- data/app/views/camaleon_cms/admin/settings/post_types/_form.html.erb +11 -1
- data/app/views/camaleon_cms/admin/settings/post_types/index.html.erb +1 -0
- data/app/views/camaleon_cms/admin/users/form.html.erb +30 -55
- data/app/views/camaleon_cms/html_mailer/mailer.html.erb +1 -1
- data/app/views/camaleon_cms/html_mailer/password_reset.html.erb +3 -0
- data/app/views/layouts/camaleon_cms/admin.html.erb +4 -1
- data/app/views/layouts/camaleon_cms/admin/_ajax.html.erb +3 -1
- data/app/views/layouts/camaleon_cms/admin/_footer.html.erb +1 -1
- data/app/views/layouts/camaleon_cms/admin/_header.html.erb +1 -1
- data/config/initializers/assets.rb +4 -2
- data/config/initializers/model_alias.rb +11 -0
- data/config/locales/camaleon_cms/admin/en.yml +2 -0
- data/config/locales/camaleon_cms/admin/es.yml +2 -1
- data/config/locales/camaleon_cms/admin/it.yml +1 -0
- data/config/locales/camaleon_cms/admin/js.yml +42 -1
- data/config/locales/camaleon_cms/admin/nl.yml +659 -0
- data/config/locales/camaleon_cms/admin/pt_br.yml +1 -0
- data/config/locales/camaleon_cms/admin/ru.yml +659 -0
- data/config/locales/camaleon_cms/common.yml +127 -0
- data/config/locales/camaleon_cms/languages.yml +16 -0
- data/config/locales/camaleon_cms/routes.yml +8 -0
- data/config/locales/nl.yml +209 -0
- data/config/routes.rb +1 -1
- data/config/routes/admin.rb +5 -4
- data/config/routes/frontend.rb +16 -3
- data/config/system.json +2 -3
- data/lib/camaleon_cms/engine.rb +5 -1
- data/lib/camaleon_cms/version.rb +1 -1
- data/lib/ext/array.rb +5 -0
- data/lib/generators/camaleon_cms/gem_plugin_generator.rb +1 -1
- data/lib/generators/camaleon_cms/gem_plugin_template/app/models/plugins/my_plugin/my_plugin.rb +1 -2
- data/lib/generators/camaleon_cms/gem_plugin_template/config/{custom_models.rb → initializers/custom_models.rb} +0 -0
- data/lib/plugin_routes.rb +38 -63
- data/lib/tasks/camaleon_cms/camaleon_tasks.rake +18 -0
- data/lib/tasks/camaleon_cms/rspec_test.rake +7 -4
- metadata +43 -54
- data/app/assets/javascripts/camaleon_cms/admin/bootstrap-datetimepicker.min.js +0 -26
- data/app/assets/javascripts/camaleon_cms/admin/plugins.js +0 -637
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-cool.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-cry.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-embarassed.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-foot-in-mouth.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-frown.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-innocent.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-kiss.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-laughing.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-money-mouth.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-sealed.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-smile.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-surprised.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-tongue-out.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-undecided.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-wink.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-yell.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/visualblocks/css/visualblocks.css +0 -135
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/content.min.css.scss +0 -4
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.eot +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.svg +0 -62
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.ttf +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.woff +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.svg +0 -83
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/anchor.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/loader.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/object.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/trans.gif +0 -0
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/themes/modern/theme.min.js +0 -1
- data/app/assets/javascripts/camaleon_cms/admin/tinymce/tinymce.min.js +0 -11
- data/app/assets/stylesheets/camaleon_cms/admin/bootstrap-datetimepicker.css.scss +0 -339
@@ -44,17 +44,17 @@
|
|
44
44
|
</tr>
|
45
45
|
</thead>
|
46
46
|
<tbody>
|
47
|
-
<% @posts.eager_load(:categories, :post_tags).each do |f|
|
47
|
+
<% (@post_type.manage_hierarchy? ? cama_hierarchy_post_list(@posts.eager_load(:categories, :post_tags).decorate.to_a) : @posts.eager_load(:categories, :post_tags).decorate).each do |f| title = f.the_hierarchy_title %>
|
48
48
|
<tr data-id="<%= f.id %>" class="<%= "sortable" if can? :update, f %>">
|
49
49
|
<td><%= f.id %></td>
|
50
50
|
<td>
|
51
51
|
<% if !f.trash? && (can? :update, f) %>
|
52
|
-
<%= link_to
|
52
|
+
<%= link_to title, {action: :edit, id: f.id}, class: "cama_ajax_request" %>
|
53
53
|
<% else %>
|
54
|
-
<%=
|
54
|
+
<%= title %>
|
55
55
|
<% end %>
|
56
56
|
</td>
|
57
|
-
<%= content_tag :td,
|
57
|
+
<%= content_tag :td, link_to(f.parent.decorate.the_title, {action: :edit, id: f.post_parent}, class: "cama_ajax_request") if @lists_tab == "draft" && f.post_parent.present? %>
|
58
58
|
<td><%= link_to raw(f.the_status), {action: :index, s: f.status}, class: "cama_ajax_request" %> </td>
|
59
59
|
<td><%= f.author.fullname %></td>
|
60
60
|
<% if @post_type.manage_categories? %>
|
@@ -39,15 +39,17 @@
|
|
39
39
|
<th><%= t('camaleon_cms.admin.table.id') %></th>
|
40
40
|
<th><%= t('camaleon_cms.admin.table.name') %></th>
|
41
41
|
<th><%= t('camaleon_cms.admin.table.post_type') %></th>
|
42
|
+
<%= content_tag :th, t('camaleon_cms.admin.table.status') if params[:kind] == "content" %>
|
42
43
|
<th><%= t('camaleon_cms.admin.table.actions') %></th>
|
43
44
|
</tr>
|
44
45
|
</thead>
|
45
46
|
<tbody>
|
46
|
-
<% @items.decorate.each do |f| %>
|
47
|
+
<% (params[:kind] == "content" ? cama_hierarchy_post_list(@items.decorate.to_a) : @items.decorate).each do |f| title = (params[:kind] == "content" ? f.the_hierarchy_title : f.the_title) %>
|
47
48
|
<tr>
|
48
49
|
<td><%= f.id %></td>
|
49
|
-
<td><%=
|
50
|
-
<td><%= f.post_type.decorate.the_title rescue "" %></td>
|
50
|
+
<td><%= title %></td>
|
51
|
+
<td><%= f.post_type.decorate.the_title rescue "-not found PostType-" %></td>
|
52
|
+
<%= content_tag :td, raw(f.the_status) if params[:kind] == "content" %>
|
51
53
|
<td>
|
52
54
|
<a href="<%= f.the_url %>" class="btn btn-info btn-xs" target="_blank" title="<%= t('camaleon_cms.admin.button.preview') %>"><i class="fa fa-eye"></i></a>
|
53
55
|
<a href="<%= f.the_edit_url %>" class="btn btn-info btn-xs" target="_blank" title="<%= t('camaleon_cms.admin.button.edit') %>"><i class="fa fa-pencil"></i></a>
|
@@ -5,23 +5,23 @@
|
|
5
5
|
</div>
|
6
6
|
|
7
7
|
<div class="form-group">
|
8
|
-
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_access_key')
|
8
|
+
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_access_key') %> <small>(Sample: AKIAJAwdgTSHWLAD5VGA)</small><br>
|
9
9
|
<%= text_field :options, :filesystem_s3_access_key, :class => "form-control required", value: @site.get_option("filesystem_s3_access_key") %>
|
10
10
|
</div>
|
11
11
|
<div class="form-group">
|
12
|
-
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_secret_key')
|
12
|
+
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_secret_key') %> <small>(Sample: f5T2CntRcPQBPzACBHUyvM4zEpkiZdH/77N85seBM)</small><br>
|
13
13
|
<%= text_field :options, :filesystem_s3_secret_key, :class => "form-control required", value: @site.get_option("filesystem_s3_secret_key") %>
|
14
14
|
</div>
|
15
15
|
<div class="form-group">
|
16
|
-
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_bucket_name')
|
16
|
+
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_bucket_name') %> <small>(Sample: my_bucket)</small><br>
|
17
17
|
<%= text_field :options, :filesystem_s3_bucket_name, :class => "form-control required", value: @site.get_option("filesystem_s3_bucket_name") %>
|
18
18
|
</div>
|
19
19
|
<div class="form-group">
|
20
|
-
<%= label_tag t('camaleon_cms.admin.settings.filesystem_region')
|
20
|
+
<%= label_tag t('camaleon_cms.admin.settings.filesystem_region', default: 'filesystem_region') %> <small>(Sample: us-west-2)</small><br>
|
21
21
|
<%= text_field :options, :filesystem_region, :class => "form-control required", value: @site.get_option("filesystem_region") %>
|
22
22
|
</div>
|
23
23
|
<div class="form-group">
|
24
|
-
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_endpoint')
|
24
|
+
<%= label_tag t('camaleon_cms.admin.settings.filesystem_s3_endpoint', default: 'filesystem_s3_endpoint') %> <small>(Sample: s3-us-west-2.amazonaws.com)</small><br>
|
25
25
|
<%= text_field :options, :filesystem_s3_endpoint, :class => "form-control required", value: @site.get_option("filesystem_s3_endpoint") %>
|
26
26
|
</div>
|
27
27
|
</div>
|
@@ -3,7 +3,7 @@
|
|
3
3
|
@item_options_value = @item_options_value || {}
|
4
4
|
@item_id = @item_value[:id] || ''
|
5
5
|
@index = "#{@item_id}_#{Time.now.to_i}_#{rand(999...99999)}"
|
6
|
-
@field_config =
|
6
|
+
@field_config = cama_custom_field_elements[@key.to_sym]
|
7
7
|
colors = ['primary','success','warning','colorful','info','danger']
|
8
8
|
%>
|
9
9
|
|
@@ -64,6 +64,7 @@
|
|
64
64
|
else
|
65
65
|
html += "#{text_field(:field_options, input[:key], index: @index , value: @item_options_value[input[:key].to_sym] || '', class: 'form-control') }"
|
66
66
|
end
|
67
|
+
html += "<small>#{input[:description]}</small>" if input[:description].present?
|
67
68
|
end
|
68
69
|
end
|
69
70
|
%>
|
@@ -42,7 +42,7 @@
|
|
42
42
|
<i class="fa fa-arrows"></i> <i class="fa fa-times text-danger"></i>
|
43
43
|
</div>
|
44
44
|
<% end %>
|
45
|
-
<%= render "camaleon_cms/admin/settings/custom_fields/fields/#{@field.options[:field_key]}" %>
|
45
|
+
<%= render cama_custom_field_elements[@field.options[:field_key].to_sym][:render] || "camaleon_cms/admin/settings/custom_fields/fields/#{@field.options[:field_key]}" %>
|
46
46
|
</div>
|
47
47
|
</div>
|
48
48
|
|
@@ -1,7 +1,6 @@
|
|
1
|
-
|
2
|
-
<div class="group-input-
|
3
|
-
|
4
|
-
<input type="text" name="<%= @field_name %>[<%= @field.slug %>][values][]" class="input-value <%= "required" if @field.options[:required].to_s.to_bool %>" <%= "readonly" if @field.options[:readonly].present? %> <%= "disabled" if @field.options[:disabled].present? %>/>
|
1
|
+
<div class="group-input-fields-content" data-callback-function="custom_field_date" style="max-width: 300px;">
|
2
|
+
<div class="input-group date date-input-box <%= "is_datetimepicker" if @field.options[:type_date].to_s.to_bool %>">
|
3
|
+
<input type="text" data-locale='<%= current_locale %>' name="<%= @field_name %>[<%= @field.slug %>][values][]" class="input-value form-control <%= "required" if @field.options[:required].to_s.to_bool %>" <%= "readonly" if @field.options[:readonly].present? %> <%= "disabled" if @field.options[:disabled].present? %>/>
|
5
4
|
<span class="add-on input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
|
6
5
|
</div>
|
7
6
|
</div>
|
@@ -1,4 +1,4 @@
|
|
1
1
|
<div class="group-input-fields-content input-group">
|
2
|
-
<input type="url" name="<%= @field_name %>[<%= @field.slug %>][values][]" class="form-control input-value <%= "required" if @field.options[:required].to_s.to_bool %>" <%= "readonly" if @field.options[:readonly].present? %> <%= "disabled" if @field.options[:disabled].present? %>/>
|
2
|
+
<input data-dimension="<%= @field.options[:dimension] %>" type="url" name="<%= @field_name %>[<%= @field.slug %>][values][]" class="form-control input-value <%= "required" if @field.options[:required].to_s.to_bool %>" <%= "readonly" if @field.options[:readonly].present? %> <%= "disabled" if @field.options[:disabled].present? %>/>
|
3
3
|
<span class="input-group-addon btn_upload" onclick="load_upload_image_field(this);return false;"><i class="fa fa-upload"></i> <%= t('camaleon_cms.admin.button.upload_image')%></span>
|
4
4
|
</div>
|
@@ -6,7 +6,7 @@
|
|
6
6
|
<!-- PAGE CONTENT WRAPPER -->
|
7
7
|
<div class="page-content-wrap" id="cama_custom_field_form" data-group_class_name="<%= @field_group.object_class %>,<%= @field_group.objectid %>">
|
8
8
|
<div class="row">
|
9
|
-
<%= form_for @field_group, as: "custom_field_group", url:{action: @field_group.new_record? ? :create : :update}, html: {class: 'validate-custom-field cama_ajax_request'} do |f| %>
|
9
|
+
<%= form_for @field_group, as: "custom_field_group", url:{action: @field_group.new_record? ? :create : :update}, html: {class: 'validate-custom-field validate cama_ajax_request'} do |f| %>
|
10
10
|
<div class="col-md-4">
|
11
11
|
<div class="panel panel-default">
|
12
12
|
<div class="panel-heading">
|
@@ -125,7 +125,7 @@
|
|
125
125
|
</div>
|
126
126
|
<div class="panel-body">
|
127
127
|
<div id="content-items-default" class="form-group input-group-sm">
|
128
|
-
<%
|
128
|
+
<% cama_custom_field_elements.each do |i,item| %>
|
129
129
|
<% next if item[:key] == "select_eval" %>
|
130
130
|
<a id="item-<%= item[:key] %>" class="btn btn-default" href="<%= get_items_cama_admin_settings_custom_fields_path(item[:key]) %>" style="margin-bottom: 4px"><%= item[:label] %></a>
|
131
131
|
<% end %>
|
@@ -102,6 +102,11 @@
|
|
102
102
|
<label class="check0"><input name="meta[has_keywords]" type="checkbox" class="icheckbox0" value="true" <%= 'checked' if @post_type.get_option('has_keywords', true) %>/> <%= t('camaleon_cms.admin.table.manage_keywords') %></label>
|
103
103
|
<%= raw cama_html_tooltip("#{t('camaleon_cms.admin.post_type.tooltip.permission_add_keywords')}", 'right') %>
|
104
104
|
</div>
|
105
|
+
<div class="form-group">
|
106
|
+
<input name="meta[has_parent_structure]" type="hidden" value="false"/>
|
107
|
+
<label class="check0"><input name="meta[has_parent_structure]" type="checkbox" class="icheckbox0" value="true" <%= 'checked' if @post_type.manage_hierarchy? %>/> <%= t('camaleon_cms.admin.table.manage_parent_structure', default: 'Manage page hierarchy') %></label>
|
108
|
+
<%= raw cama_html_tooltip("#{t('camaleon_cms.admin.post_type.tooltip.permission_to_support_parent_structure', default: "Permit to posts indicate the parent page")}", 'right') %>
|
109
|
+
</div>
|
105
110
|
</div>
|
106
111
|
<div role="tabpanel" class="tab-pane" id="post_type_setting_front">
|
107
112
|
<div class="form-group">
|
@@ -134,8 +139,13 @@
|
|
134
139
|
<script>
|
135
140
|
jQuery(function($){
|
136
141
|
var form = $("#post_type_form");
|
137
|
-
// form.find("input[type='checkbox'][name='meta[has_layout]'], input[type='checkbox'][name='meta[has_template]']").change(function(){ var n = $(this).closest(".form-group").next(); if($(this).is(":checked")) n.fadeIn(); else n.fadeOut(); }).trigger("change");
|
138
142
|
form.find('.unput_upload').input_upload();
|
143
|
+
form.find("[name='meta[has_parent_structure]']").change(function(){ // permit hierarchy route only for post types enabled "Manage page hierarchy"
|
144
|
+
var item = form.find("#meta_contents_route_format_hierarchy_post");
|
145
|
+
item.parent().siblings().find("input").prop("disabled", $(this).is(":checked"));
|
146
|
+
if($(this).is(":checked")) item.prop("checked", true).prop("disabled", false);
|
147
|
+
else item.prop("disabled", true)
|
148
|
+
}).trigger("change");
|
139
149
|
});
|
140
150
|
</script>
|
141
151
|
|
@@ -33,6 +33,7 @@
|
|
33
33
|
<td><%= item.the_slug %></td>
|
34
34
|
<td><%= item.count %></td>
|
35
35
|
<td>
|
36
|
+
<%= link_to raw('<i class="fa fa-eye"></i>'), item.the_url, class: "btn btn-primary btn-xs", title: "#{t('camaleon_cms.common.visit')}", target: '_blank' %>
|
36
37
|
<%= link_to raw('<i class="fa fa-pencil"></i>'), {action: :edit, id: item.id }, class: "btn btn-default btn-xs cama_ajax_request", title: "#{t('camaleon_cms.admin.button.edit')}" %>
|
37
38
|
<%= link_to raw('<i class="fa fa-times"></i>'), { action: :destroy, id: item.id },method: :delete, data: { confirm: t('camaleon_cms.admin.message.delete_item') }, class: "btn btn-danger btn-xs cama_ajax_request", title: "#{t('camaleon_cms.admin.button.delete')}" unless item.get_option('not_deleted', false) %>
|
38
39
|
</td>
|
@@ -21,64 +21,53 @@
|
|
21
21
|
<h3><span class="fa fa-user"></span> <%= @user.fullname if !@user.new_record? %></h3>
|
22
22
|
<p><%= @user.new_record? ? "" : @user.get_meta("slogan") %></p>
|
23
23
|
<div class="text-center" id="user_image">
|
24
|
-
|
25
24
|
<img src="<%= @user.new_record? || !@user.get_meta("avatar") ? asset_path("camaleon_cms/admin/img/no_image.jpg") : @user.get_meta("avatar") %>" class="img-thumbnail input_upload"/>
|
26
25
|
</div>
|
27
26
|
</div>
|
28
27
|
<div class="panel-body user-form-left form-group-separated">
|
29
28
|
|
30
|
-
<div class="
|
31
|
-
<
|
32
|
-
<a href="#" class="btn btn-primary btn-block btn-rounded" data-toggle="modal" data-target="#modal_change_photo"><%= t('camaleon_cms.admin.button.change_photo')%></a>
|
33
|
-
</div>
|
29
|
+
<div class="">
|
30
|
+
<a href="#" class="btn btn-primary btn-block btn-rounded" data-toggle="modal" data-target="#modal_change_photo"><%= t('camaleon_cms.admin.button.change_photo')%></a>
|
34
31
|
</div>
|
35
32
|
|
36
|
-
<div class="
|
37
|
-
<label class="
|
38
|
-
|
39
|
-
<%= f.text_field :id, :class => "form-control required", disabled: "disabled" %>
|
40
|
-
</div>
|
33
|
+
<div class="">
|
34
|
+
<label class="control-label">#<%= t('camaleon_cms.admin.table.id')%></label>
|
35
|
+
<%= f.text_field :id, :class => "form-control required", disabled: "disabled" %>
|
41
36
|
</div>
|
42
37
|
|
43
|
-
<div class="
|
44
|
-
<label class="
|
45
|
-
|
46
|
-
<%= f.text_field :username, :class => "form-control required" %>
|
47
|
-
</div>
|
38
|
+
<div class="">
|
39
|
+
<label class="control-label"><%= t('camaleon_cms.admin.table.login')%></label>
|
40
|
+
<%= f.text_field :username, :class => "form-control required" %>
|
48
41
|
</div>
|
49
42
|
|
50
|
-
<div class="
|
51
|
-
<label class="
|
52
|
-
|
53
|
-
<%= f.email_field :email, :class => "form-control required email"%>
|
54
|
-
</div>
|
43
|
+
<div class="">
|
44
|
+
<label class="control-label"><%= t('camaleon_cms.admin.table.e_mail')%></label>
|
45
|
+
<%= f.email_field :email, :class => "form-control required email"%>
|
55
46
|
</div>
|
56
47
|
<% if @user.new_record? %>
|
57
|
-
<div class="
|
58
|
-
<label class="
|
59
|
-
|
60
|
-
|
61
|
-
|
48
|
+
<div class="">
|
49
|
+
<label class="control-label"><%= t('camaleon_cms.admin.table.password')%></label>
|
50
|
+
<%= f.password_field :password, :class => "form-control required" %>
|
51
|
+
</div>
|
52
|
+
<div class="">
|
53
|
+
<label class="control-label"><%= t('camaleon_cms.admin.table.repeat_new')%></label>
|
54
|
+
<%= f.password_field :password_confirm, :class => "form-control required", "equalTo"=>"#user_password" %>
|
62
55
|
</div>
|
63
56
|
<% end %>
|
64
57
|
|
65
|
-
<div class="
|
66
|
-
<%= f.label "#{t('camaleon_cms.admin.table.role')}", class: "
|
67
|
-
<div class="
|
58
|
+
<div class="">
|
59
|
+
<%= f.label "#{t('camaleon_cms.admin.table.role')}", class: "control-label" %>
|
60
|
+
<div class="">
|
68
61
|
<%= f.select :role,current_site.user_roles.reorder(:name).all.map{|role| [role.name, role.slug]}, {}, {:class => "form-control required"}%>
|
69
62
|
</div>
|
70
63
|
</div>
|
71
|
-
|
72
|
-
<div class="
|
73
|
-
<
|
74
|
-
<button type="submit" class="btn btn-success btn-block" ><%= @user.new_record? ? t('camaleon_cms.admin.button.create') : t('camaleon_cms.admin.button.update') %></button>
|
75
|
-
</div>
|
64
|
+
<hr>
|
65
|
+
<div class="">
|
66
|
+
<button type="submit" class="btn btn-success btn-block" ><%= @user.new_record? ? t('camaleon_cms.admin.button.create') : t('camaleon_cms.admin.button.update') %></button>
|
76
67
|
</div>
|
77
68
|
<% if !@user.new_record? %>
|
78
|
-
<div class="
|
79
|
-
<
|
80
|
-
<a href="#" class="btn btn-danger btn-block btn-rounded" data-toggle="modal" data-target="#modal_change_password"><%= t('camaleon_cms.admin.button.change_password') %></a>
|
81
|
-
</div>
|
69
|
+
<div class="">
|
70
|
+
<a href="#" class="btn btn-danger btn-block btn-rounded" data-toggle="modal" data-target="#modal_change_password"><%= t('camaleon_cms.admin.button.change_password') %></a>
|
82
71
|
</div>
|
83
72
|
<% end %>
|
84
73
|
|
@@ -196,28 +185,14 @@
|
|
196
185
|
<h4 class="modal-title" id="smallModalHead"><%= t('camaleon_cms.admin.button.change_password') %></h4>
|
197
186
|
</div>
|
198
187
|
<%= form_for @user, as: "user", url: @user.new_record? ? cama_admin_users_path : cama_admin_user_updated_ajax_path(@user), html:{id: "profie-form-ajax-password", class: 'validate-password form-ajax-password modal-body'} do |f| %>
|
199
|
-
<p><%= t('camaleon_cms.admin.message.change_password') %></p>
|
200
188
|
<div class="form-group">
|
201
|
-
<label class="
|
202
|
-
<
|
203
|
-
<input type="password" class="form-control required" name="password[password_old]"/>
|
204
|
-
</div>
|
189
|
+
<label class="control-label"><%= t('camaleon_cms.admin.table.new_password') %></label>
|
190
|
+
<input id="pass_new" type="password" class="form-control required" name="password[password]"/>
|
205
191
|
</div>
|
206
|
-
<div class="clearfix"></div><br>
|
207
192
|
<div class="form-group">
|
208
|
-
<label class="
|
209
|
-
<
|
210
|
-
<input id="pass_new" type="password" class="form-control required" name="password[password]"/>
|
211
|
-
</div>
|
212
|
-
</div>
|
213
|
-
<div class="clearfix"></div><br>
|
214
|
-
<div class="form-group">
|
215
|
-
<label class="col-md-3 control-label"><%= t('camaleon_cms.admin.table.repeat_new') %></label>
|
216
|
-
<div class="col-md-9">
|
217
|
-
<input type="password" class="form-control required" name="password[password_confirmation]" equalTo="#pass_new"/>
|
218
|
-
</div>
|
193
|
+
<label class="control-label"><%= t('camaleon_cms.admin.table.repeat_new') %></label>
|
194
|
+
<input type="password" class="form-control required" name="password[password_confirmation]" equalTo="#pass_new"/>
|
219
195
|
</div>
|
220
|
-
<div class="clearfix"></div>
|
221
196
|
<div class="modal-footer">
|
222
197
|
<button type="submit" class="btn btn-primary"><%= t('camaleon_cms.admin.button.proccess') %></button>
|
223
198
|
<button type="button" class="btn btn-default" data-dismiss="modal"><%= t('camaleon_cms.admin.button.close') %></button>
|
@@ -17,7 +17,10 @@
|
|
17
17
|
var I18n_data = <%= I18n.backend.send(:translations)[current_locale.to_sym][:camaleon_cms][:admin][:js].to_json.html_safe rescue "{}" %>
|
18
18
|
</script>
|
19
19
|
<%= javascript_include_tag "camaleon_cms/admin/admin-manifest" %>
|
20
|
-
|
20
|
+
|
21
|
+
<%= javascript_include_tag "camaleon_cms/admin/jquery_validate/#{current_locale}.js" if current_locale != 'en' %>
|
22
|
+
<%= javascript_include_tag "camaleon_cms/admin/momentjs/#{current_locale}.js" if current_locale != 'en' %>
|
23
|
+
|
21
24
|
<%= raw the_head({}, false) %>
|
22
25
|
<%= yield :head if content_for? :head %>
|
23
26
|
<!--[if lt IE 9]>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
<section class="content" id="admin_content" data-title="<%= raw cama_admin_title_draw %>" data-url="<%= request.original_url if params[:cama_ajax_request] == "redirect" %>">
|
2
|
-
|
2
|
+
<% unless params[:cama_skip_breadcrumb] %>
|
3
|
+
<ol class="breadcrumb"><%= render_breadcrumbs :tag => :li, :separator => "" %></ol>
|
4
|
+
<% end %>
|
3
5
|
<%= render "/layouts/camaleon_cms/admin/flash_messages" %>
|
4
6
|
<%= cama_draw_custom_assets %>
|
5
7
|
<%= yield %>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<header class="main-header" id="main-header">
|
2
2
|
<!-- Logo -->
|
3
|
-
<a href="<%= current_site.the_admin_url%>" class="logo"
|
3
|
+
<a href="<%= current_site.the_admin_url%>" class="logo">
|
4
4
|
<img src="<%= current_site.the_logo %>" alt="<%= current_site.the_title %>">
|
5
5
|
</a>
|
6
6
|
<!-- Header Navbar: style can be found in header.less -->
|
@@ -11,6 +11,8 @@
|
|
11
11
|
# Version of your assets, change this if you want to expire all your assets.
|
12
12
|
Rails.application.config.assets.version = '1.0'
|
13
13
|
|
14
|
+
Rails.application.config.tinymce.install = :compile
|
15
|
+
|
14
16
|
# Add additional assets to the asset load path
|
15
17
|
# Rails.application.config.assets.paths << Emoji.images_path
|
16
18
|
|
@@ -19,8 +21,8 @@ Rails.application.config.assets.precompile << Proc.new { |path|
|
|
19
21
|
name = File.basename(path)
|
20
22
|
content_type = MIME::Types.type_for(name).first.content_type rescue ""
|
21
23
|
res = false
|
22
|
-
if (path =~ /\.(css|js|svg|ttf|woff|eot|swf|pdf)\z/ || content_type.scan(/(javascript|image\/|audio|video|font)/).any?) && !name.start_with?("_")
|
24
|
+
if (path =~ /\.(css|js|svg|ttf|woff|eot|swf|pdf)\z/ || content_type.scan(/(javascript|image\/|audio|video|font)/).any?) && !name.start_with?("_") && !path.include?('/views/')
|
23
25
|
res = true
|
24
26
|
end
|
25
27
|
res
|
26
|
-
}
|
28
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
module Cama
|
2
|
+
end
|
3
|
+
Cama::Site = CamaleonCms::Site
|
4
|
+
Cama::Post = CamaleonCms::Post
|
5
|
+
Cama::Category = CamaleonCms::Category
|
6
|
+
Cama::PostTag = CamaleonCms::PostTag
|
7
|
+
Cama::PostType = CamaleonCms::PostType
|
8
|
+
Cama::TermTaxonomy = CamaleonCms::TermTaxonomy
|
9
|
+
Cama::TermRelationship = CamaleonCms::TermRelationship
|
10
|
+
Cama::User = CamaleonCms::User
|
11
|
+
|
@@ -59,6 +59,7 @@ en:
|
|
59
59
|
upload_image: 'Upload Image'
|
60
60
|
upload_icon: 'Upload Icon'
|
61
61
|
upload_video: 'Upload Video'
|
62
|
+
drag_drop: 'Drag & drop files'
|
62
63
|
view_draft: 'View Draft'
|
63
64
|
view_page: 'View Page'
|
64
65
|
yes: 'Yes'
|
@@ -170,6 +171,7 @@ en:
|
|
170
171
|
media_manager: 'Media Manager'
|
171
172
|
home: "Home"
|
172
173
|
info: "Information"
|
174
|
+
external: "Upload From URL"
|
173
175
|
menus:
|
174
176
|
link_url: 'Link URL'
|
175
177
|
message:
|
@@ -51,6 +51,7 @@ es:
|
|
51
51
|
update_menu: 'Actualización de Menú'
|
52
52
|
upload_audio: 'Subir Audio'
|
53
53
|
upload_file: 'Subir Archivo'
|
54
|
+
drag_drop: 'Arrastra & suelta archivos'
|
54
55
|
upload_image: 'Subir Imagen'
|
55
56
|
upload_icon: 'Subir Icono'
|
56
57
|
upload_video: 'Subir Video'
|
@@ -523,7 +524,7 @@ es:
|
|
523
524
|
list_user_roles: 'Roles de Usuario'
|
524
525
|
message:
|
525
526
|
error: 'Usuario no encontrado.'
|
526
|
-
error_captcha: '
|
527
|
+
error_captcha: 'Código de seguridad incorrecto'
|
527
528
|
created: 'El usuario ha sido creado.'
|
528
529
|
updated: 'El usuario ha sido actualizado.'
|
529
530
|
deleted: 'El usuario ha sido eliminado.'
|
@@ -124,4 +124,45 @@ it:
|
|
124
124
|
close: 'Chiudi'
|
125
125
|
settings: 'Impostazioni'
|
126
126
|
save: "Salvare"
|
127
|
-
submit: "Presentare"
|
127
|
+
submit: "Presentare"
|
128
|
+
nl:
|
129
|
+
camaleon_cms:
|
130
|
+
admin:
|
131
|
+
js:
|
132
|
+
msg:
|
133
|
+
approved: 'Goedgekeurd'
|
134
|
+
draft: 'Concept succesvol opgeslagen'
|
135
|
+
updated_success: 'Succesvol bijgewerkt'
|
136
|
+
edit_menu: 'Plaatst elk item in de gewenste volgorde. Klik op het icoontje van een potlood om het item te bewerken en klik op het icoon in de vorm van x om het item te verwijderen.'
|
137
|
+
delete_item: 'Wil je dit item echt verwijderen?'
|
138
|
+
remove_items_submenu: 'Wilt je dit item en alle submenu-items echt verwijden?'
|
139
|
+
you_must_upload_image: 'Je moet een afbeelding te uploaden'
|
140
|
+
you_must_upload_video: 'Je moet een video te uploaden'
|
141
|
+
no_response_fields: 'Geen reactie velden '
|
142
|
+
you_must_upload_json_file: 'Je moet een JSON bestand uploaden'
|
143
|
+
no_templates_defined: 'Geen sjablonen ingesteld'
|
144
|
+
avatar_updated: 'Avatar bijgewerkt'
|
145
|
+
form_error: 'Formulier fout'
|
146
|
+
option_title: 'Optie titel'
|
147
|
+
permalink: 'Permalink'
|
148
|
+
recover: 'Herstelts...'
|
149
|
+
type_contents: 'Type Inhoud'
|
150
|
+
confirm_del: "Wil je dit item echt verwijderen?"
|
151
|
+
media_title: 'Media Uploader'
|
152
|
+
|
153
|
+
button:
|
154
|
+
edit: "Bewerk"
|
155
|
+
accept: "Accepteer"
|
156
|
+
cancel: "Annuleer"
|
157
|
+
delete: "Verwijder"
|
158
|
+
clone: "Kopiëren"
|
159
|
+
add_tag: 'Tag toevoegen'
|
160
|
+
close: 'Sluiten'
|
161
|
+
settings: 'Instellingen'
|
162
|
+
save: "Opslaan"
|
163
|
+
submit: "Verstuur"
|
164
|
+
name: "Naam"
|
165
|
+
size: "Grootte"
|
166
|
+
insert: "Invoegen"
|
167
|
+
url: "URL"
|
168
|
+
root: "root"
|