camaleon_cms 2.5.3.1 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/app/apps/plugins/front_cache/front_cache_helper.rb +1 -1
  3. data/app/assets/images/camaleon_cms/language/md.png +0 -0
  4. data/app/models/camaleon_cms/ability.rb +94 -92
  5. data/app/models/camaleon_cms/category.rb +45 -44
  6. data/app/models/camaleon_cms/custom_field.rb +26 -25
  7. data/app/models/camaleon_cms/custom_field_group.rb +115 -114
  8. data/app/models/camaleon_cms/custom_fields_relationship.rb +21 -19
  9. data/app/models/camaleon_cms/media.rb +48 -44
  10. data/app/models/camaleon_cms/meta.rb +5 -3
  11. data/app/models/camaleon_cms/nav_menu.rb +27 -24
  12. data/app/models/camaleon_cms/nav_menu_item.rb +58 -54
  13. data/app/models/camaleon_cms/plugin.rb +62 -60
  14. data/app/models/camaleon_cms/post.rb +205 -227
  15. data/app/models/camaleon_cms/post_comment.rb +44 -42
  16. data/app/models/camaleon_cms/post_default.rb +65 -62
  17. data/app/models/camaleon_cms/post_relationship.rb +1 -2
  18. data/app/models/camaleon_cms/post_tag.rb +9 -6
  19. data/app/models/camaleon_cms/post_type.rb +170 -163
  20. data/app/models/camaleon_cms/site.rb +211 -203
  21. data/app/models/camaleon_cms/term_relationship.rb +16 -14
  22. data/app/models/camaleon_cms/term_taxonomy.rb +49 -54
  23. data/app/models/camaleon_cms/theme.rb +24 -23
  24. data/app/models/camaleon_cms/user.rb +18 -13
  25. data/app/models/camaleon_cms/user_role.rb +130 -128
  26. data/app/models/camaleon_cms/widget/assigned.rb +25 -21
  27. data/app/models/camaleon_cms/widget/main.rb +40 -36
  28. data/app/models/camaleon_cms/widget/sidebar.rb +20 -16
  29. data/app/validators/camaleon_cms/post_uniq_validator.rb +28 -0
  30. data/app/validators/camaleon_cms/uniq_validator.rb +9 -0
  31. data/config/locales/camaleon_cms/admin/ar.yml +1 -0
  32. data/config/locales/camaleon_cms/admin/de.yml +1 -0
  33. data/config/locales/camaleon_cms/admin/en.yml +82 -21
  34. data/config/locales/camaleon_cms/admin/fr.yml +1 -0
  35. data/config/locales/camaleon_cms/admin/it.yml +1 -0
  36. data/config/locales/camaleon_cms/admin/js/de.yml +51 -0
  37. data/config/locales/camaleon_cms/admin/js/en.yml +51 -0
  38. data/config/locales/camaleon_cms/admin/js/es.yml +53 -0
  39. data/config/locales/camaleon_cms/admin/js/it.yml +44 -0
  40. data/config/locales/camaleon_cms/admin/js/nl.yml +42 -0
  41. data/config/locales/camaleon_cms/admin/js/pt-BR.yml +44 -0
  42. data/config/locales/camaleon_cms/admin/js/ru.yml +51 -0
  43. data/config/locales/camaleon_cms/admin/js/uk.yml +51 -0
  44. data/config/locales/camaleon_cms/admin/js/zh-CN.yml +51 -0
  45. data/config/locales/camaleon_cms/admin/nl.yml +1 -0
  46. data/config/locales/camaleon_cms/admin/ru.yml +1 -0
  47. data/config/locales/camaleon_cms/admin/uk.yml +2 -1
  48. data/config/locales/camaleon_cms/admin/zh-CH.yml +1 -0
  49. data/config/locales/camaleon_cms/common.md +3 -0
  50. data/config/locales/camaleon_cms/common/ar.yml +66 -0
  51. data/config/locales/camaleon_cms/common/de.yml +66 -0
  52. data/config/locales/camaleon_cms/common/en.yml +63 -0
  53. data/config/locales/camaleon_cms/common/es.yml +66 -0
  54. data/config/locales/camaleon_cms/common/fr.yml +66 -0
  55. data/config/locales/camaleon_cms/common/it.yml +63 -0
  56. data/config/locales/camaleon_cms/common/md.yml +60 -0
  57. data/config/locales/camaleon_cms/common/nl.yml +64 -0
  58. data/config/locales/camaleon_cms/common/pt-BR.yml +65 -0
  59. data/config/locales/camaleon_cms/common/pt.yml +65 -0
  60. data/config/locales/camaleon_cms/common/ru.yml +66 -0
  61. data/config/locales/camaleon_cms/common/uk.yml +64 -0
  62. data/config/locales/camaleon_cms/common/zh-CN.yml +66 -0
  63. data/config/locales/camaleon_cms/languages/ar.yml +16 -0
  64. data/config/locales/camaleon_cms/languages/de.yml +16 -0
  65. data/config/locales/camaleon_cms/languages/en.yml +16 -0
  66. data/config/locales/camaleon_cms/languages/es.yml +16 -0
  67. data/config/locales/camaleon_cms/languages/it.yml +16 -0
  68. data/config/locales/camaleon_cms/languages/md.yml +15 -0
  69. data/config/locales/camaleon_cms/languages/nl.yml +16 -0
  70. data/config/locales/camaleon_cms/languages/pt-BR.yml +16 -0
  71. data/config/locales/camaleon_cms/languages/pt.yml +16 -0
  72. data/config/locales/camaleon_cms/languages/ru.yml +16 -0
  73. data/config/locales/camaleon_cms/languages/uk.yml +16 -0
  74. data/config/locales/camaleon_cms/languages/zh-CN.yml +16 -0
  75. data/config/locales/camaleon_cms/routes/de.yml +8 -0
  76. data/config/locales/camaleon_cms/routes/es.yml +8 -0
  77. data/config/locales/camaleon_cms/routes/fr.yml +8 -0
  78. data/config/locales/camaleon_cms/routes/it.yml +8 -0
  79. data/config/locales/camaleon_cms/routes/md.yml +8 -0
  80. data/config/locales/camaleon_cms/routes/pt-BR.yml +8 -0
  81. data/config/locales/camaleon_cms/routes/pt.yml +8 -0
  82. data/config/locales/camaleon_cms/routes/ru.yml +8 -0
  83. data/config/locales/camaleon_cms/routes/uk.yml +8 -0
  84. data/config/locales/camaleon_cms/routes/zh-CN.yml +8 -0
  85. data/config/locales/md.yml +207 -0
  86. data/lib/camaleon_cms/version.rb +1 -1
  87. data/spec/dummy/config/application.rb +14 -2
  88. metadata +102 -109
  89. data/config/locales/camaleon_cms/admin/js.yml +0 -435
  90. data/config/locales/camaleon_cms/common.yml +0 -786
  91. data/config/locales/camaleon_cms/languages.yml +0 -167
  92. data/config/locales/camaleon_cms/routes.yml +0 -71
  93. data/spec/dummy/db/development.sqlite3 +0 -0
  94. data/spec/dummy/db/test.sqlite3 +0 -0
  95. data/spec/dummy/log/development.log +0 -254
  96. data/spec/dummy/log/test.log +0 -46384
  97. data/spec/dummy/public/media/1/rails_tmp.png +0 -0
  98. data/spec/dummy/public/media/1/rails_tmp_1.png +0 -0
  99. data/spec/dummy/public/media/1/rails_tmp_2.png +0 -0
  100. data/spec/dummy/public/media/1/rails_tmp_3.png +0 -0
  101. data/spec/dummy/public/media/1/sample/rails_tmp.png +0 -0
  102. data/spec/dummy/public/media/1/sample/thumb/rails_tmp-png.png +0 -0
  103. data/spec/dummy/public/media/1/slide33.jpg +0 -0
  104. data/spec/dummy/public/media/1/thumb/rails_tmp-png.png +0 -0
  105. data/spec/dummy/public/media/1/thumb/rails_tmp-png_20x.png +0 -0
  106. data/spec/dummy/public/media/1/thumb/rails_tmp-png_300x300.png +0 -0
  107. data/spec/dummy/public/media/1/thumb/rails_tmp-png_505x350.png +0 -0
  108. data/spec/dummy/public/media/1/thumb/rails_tmp_1-png.png +0 -0
  109. data/spec/dummy/public/media/1/thumb/rails_tmp_2-png.png +0 -0
  110. data/spec/dummy/public/media/1/thumb/rails_tmp_3-png.png +0 -0
  111. data/spec/dummy/public/media/1/thumb/slide33-jpg.jpg +0 -0
  112. data/spec/dummy/tmp/capybara/screenshot_2019-09-04-09-19-13.472.html +0 -457
  113. data/spec/dummy/tmp/capybara/screenshot_2019-09-04-09-19-13.472.png +0 -0
  114. data/spec/dummy/tmp/capybara/screenshot_2019-09-04-09-19-28.693.html +0 -428
  115. data/spec/dummy/tmp/capybara/screenshot_2019-09-04-09-19-28.693.png +0 -0
  116. data/spec/dummy/tmp/capybara/screenshot_2019-09-04-09-22-45.502.html +0 -337
  117. data/spec/dummy/tmp/capybara/screenshot_2019-09-04-09-22-45.502.png +0 -0
  118. data/spec/support/fixtures/rails_tmp.png +0 -0
@@ -1,27 +1,31 @@
1
- class CamaleonCms::Widget::Assigned < CamaleonCms::PostDefault
2
- default_scope ->{ where(post_class: self.name).order(:taxonomy_id) }
3
- # post_parent: sidebar_id
4
- # visibility: widget_id
5
- # comment_count: item_order
6
- # TODO rename all attribute names (changed comment_count into taxonomy_id)
7
- alias_attribute :widget_id, :visibility
8
- alias_attribute :sidebar_id, :post_parent
9
- alias_attribute :item_order, :taxonomy_id
1
+ module CamaleonCms
2
+ module Widget
3
+ class Assigned < CamaleonCms::PostDefault
4
+ default_scope ->{ where(post_class: self.name).order(:taxonomy_id) }
5
+ # post_parent: sidebar_id
6
+ # visibility: widget_id
7
+ # comment_count: item_order
8
+ # TODO rename all attribute names (changed comment_count into taxonomy_id)
9
+ alias_attribute :widget_id, :visibility
10
+ alias_attribute :sidebar_id, :post_parent
11
+ alias_attribute :item_order, :taxonomy_id
10
12
 
11
- # attr_accessible :widget_id, :sidebar_id, :item_order
13
+ # attr_accessible :widget_id, :sidebar_id, :item_order
12
14
 
13
- has_many :metas, ->{ where(object_class: 'Widget::Assigned')}, :class_name => "CamaleonCms::Meta", foreign_key: :objectid, dependent: :destroy
14
- belongs_to :sidebar, class_name: "CamaleonCms::Widget::Sidebar", foreign_key: :post_parent
15
- belongs_to :widget, class_name: "CamaleonCms::Widget::Main", foreign_key: :visibility
16
- after_initialize :fix_slug2
17
- before_create :set_order
15
+ has_many :metas, ->{ where(object_class: 'Widget::Assigned')}, class_name: 'CamaleonCms::Meta', foreign_key: :objectid, dependent: :destroy
16
+ belongs_to :sidebar, class_name: 'CamaleonCms::Widget::Sidebar', foreign_key: :post_parent
17
+ belongs_to :widget, class_name: 'CamaleonCms::Widget::Main', foreign_key: :visibility
18
+ after_initialize :fix_slug2
19
+ before_create :set_order
18
20
 
19
- def fix_slug2
20
- self.slug = "slug_assigned" unless self.slug.present?
21
- end
21
+ def fix_slug2
22
+ self.slug = 'slug_assigned' if slug.blank?
23
+ end
22
24
 
23
- private
24
- def set_order
25
- self.item_order = self.sidebar.assigned.count + 1
25
+ private
26
+ def set_order
27
+ self.item_order = sidebar.assigned.count + 1
28
+ end
29
+ end
26
30
  end
27
31
  end
@@ -1,44 +1,48 @@
1
- class CamaleonCms::Widget::Main < CamaleonCms::TermTaxonomy
2
- default_scope { where(taxonomy: :widget) }
3
- # attr_accessible :excerpt, :renderer
4
- # name: "title"
5
- # description: "content for this"
6
- # slug: "key for this"
7
- # status = simple or complex (default)
8
- # excerpt: string for message
9
- # renderer: string (path to the template for render this widget)
1
+ module CamaleonCms
2
+ module Widget
3
+ class Main < CamaleonCms::TermTaxonomy
4
+ default_scope { where(taxonomy: :widget) }
5
+ # attr_accessible :excerpt, :renderer
6
+ # name: "title"
7
+ # description: "content for this"
8
+ # slug: "key for this"
9
+ # status = simple or complex (default)
10
+ # excerpt: string for message
11
+ # renderer: string (path to the template for render this widget)
10
12
 
11
- has_many :metas, ->{ where(object_class: 'Widget::Main')}, :class_name => "CamaleonCms::Meta", foreign_key: :objectid, dependent: :destroy
12
- belongs_to :owner, class_name: CamaManager.get_user_class_name, foreign_key: :user_id
13
- belongs_to :site, :class_name => "CamaleonCms::Site", foreign_key: :parent_id
13
+ has_many :metas, ->{ where(object_class: 'Widget::Main')}, class_name: 'CamaleonCms::Meta', foreign_key: :objectid, dependent: :destroy
14
+ belongs_to :owner, class_name: CamaManager.get_user_class_name, foreign_key: :user_id
15
+ belongs_to :site, class_name: 'CamaleonCms::Site', foreign_key: :parent_id
14
16
 
15
- has_many :assigned, class_name: "CamaleonCms::Widget::Assigned", foreign_key: :visibility, dependent: :destroy
16
- before_save :check_excerpt
17
- def is_simple?
18
- self.status == "simple"
19
- end
17
+ has_many :assigned, class_name: 'CamaleonCms::Widget::Assigned', foreign_key: :visibility, dependent: :destroy
18
+ before_save :check_excerpt
19
+ def is_simple?
20
+ self.status == 'simple'
21
+ end
20
22
 
21
- def excerpt=(value)
22
- @excerpt = value
23
- end
24
- def excerpt
25
- self.get_option("excerpt")
26
- end
23
+ def excerpt=(value)
24
+ @excerpt = value
25
+ end
26
+ def excerpt
27
+ self.get_option('excerpt')
28
+ end
27
29
 
28
- def renderer=(value)
29
- @renderer = value
30
- end
31
- def renderer
32
- self.get_option("renderer")
33
- end
30
+ def renderer=(value)
31
+ @renderer = value
32
+ end
33
+ def renderer
34
+ self.get_option('renderer')
35
+ end
34
36
 
35
- def short_code
36
- "[widget #{self.slug}]"
37
- end
37
+ def short_code
38
+ "[widget #{self.slug}]"
39
+ end
38
40
 
39
- private
40
- def check_excerpt
41
- self.set_option("excerpt", @excerpt)
42
- self.set_option("renderer", @renderer)
41
+ private
42
+ def check_excerpt
43
+ self.set_option('excerpt', @excerpt)
44
+ self.set_option('renderer', @renderer)
45
+ end
46
+ end
43
47
  end
44
48
  end
@@ -1,20 +1,24 @@
1
- class CamaleonCms::Widget::Sidebar < CamaleonCms::TermTaxonomy
2
- default_scope { where(taxonomy: :sidebar) }
3
- has_many :metas, ->{ where(object_class: 'Widget::Sidebar')}, :class_name => "CamaleonCms::Meta", foreign_key: :objectid, dependent: :destroy
4
- has_many :assigned, foreign_key: :post_parent, dependent: :destroy
5
- belongs_to :site, :class_name => "CamaleonCms::Site", foreign_key: :parent_id
1
+ module CamaleonCms
2
+ module Widget
3
+ class Sidebar < CamaleonCms::TermTaxonomy
4
+ default_scope { where(taxonomy: :sidebar) }
6
5
 
7
- #scopes
8
- scope :default_sidebar, -> { where(:slug => 'default-sidebar') }
9
- scope :all_sidebar, -> { where("slug != 'default-sidebar'") }
6
+ has_many :metas, ->{ where(object_class: 'Widget::Sidebar')}, class_name: 'CamaleonCms::Meta', foreign_key: :objectid, dependent: :destroy
7
+ has_many :assigned, foreign_key: :post_parent, dependent: :destroy
8
+ belongs_to :site, class_name: 'CamaleonCms::Site', foreign_key: :parent_id
10
9
 
11
- # assign the widget into this sidebar
12
- # widget: string(slug)/object
13
- # data: {title, content}
14
- def add_widget(widget, data = {})
15
- widget = self.site.widgets.where(slug: widget).first if widget.is_a?(String)
16
- data[:widget_id] = widget.id
17
- self.assigned.create(data)
18
- end
10
+ #scopes
11
+ scope :default_sidebar, -> { where(slug: 'default-sidebar') }
12
+ scope :all_sidebar, -> { where('slug != \'default-sidebar\'') }
19
13
 
14
+ # assign the widget into this sidebar
15
+ # widget: string(slug)/object
16
+ # data: {title, content}
17
+ def add_widget(widget, data = {})
18
+ widget = site.widgets.where(slug: widget).first if widget.is_a?(String)
19
+ data[:widget_id] = widget.id
20
+ self.assigned.create(data)
21
+ end
22
+ end
23
+ end
20
24
  end
@@ -0,0 +1,28 @@
1
+ module CamaleonCms
2
+ class PostUniqValidator < ActiveModel::Validator
3
+ def validate(record)
4
+ unless record.draft?
5
+ slug_array = record.slug.to_s.translations_array
6
+ ptype = record.post_type
7
+ if ptype.present? # only for posts that belongs to a post type model
8
+ posts = ptype.site.posts
9
+ .where("(#{slug_array.map {|s| "#{CamaleonCms::Post.table_name}.slug LIKE '%-->#{s}<!--%'"}.join(" OR ")} ) OR #{CamaleonCms::Post.table_name}.slug = ?", record.slug)
10
+ .where.not(id: record.id)
11
+ .where.not(status: [:draft, :draft_child, :trash])
12
+ if posts.size > 0
13
+ if slug_array.size > 1
14
+ record.errors[:base] << "#{I18n.t('camaleon_cms.admin.post.message.requires_different_slug')}: #{posts.pluck(:slug).map{|slug| record.slug.to_s.translations.map{|lng, r_slug| "#{r_slug} (#{lng})" if slug.translations_array.include?(r_slug) }.join(",") }.join(",").split(",").uniq.clean_empty.join(", ")} "
15
+ else
16
+ record.errors[:base] << "#{I18n.t('camaleon_cms.admin.post.message.requires_different_slug')}: #{record.slug.to_s} "
17
+ end
18
+ end
19
+
20
+ # avoid recursive page parent
21
+ record.errors[:base] << I18n.t('camaleon_cms.admin.post.message.recursive_hierarchy', default: 'Parent Post Recursive') if record.post_parent.present? && ptype.manage_hierarchy? && record.parents.cama_pluck(:id).include?(record.id)
22
+ else
23
+ # validation for other classes
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,9 @@
1
+ module CamaleonCms
2
+ class UniqValidator < ActiveModel::Validator
3
+ def validate(record)
4
+ unless record.skip_slug_validation?
5
+ record.errors[:base] << "#{I18n.t('camaleon_cms.admin.post.message.requires_different_slug')}" if CamaleonCms::TermTaxonomy.where(slug: record.slug).where.not(id: record.id).where("#{CamaleonCms::TermTaxonomy.table_name}.taxonomy" => record.taxonomy).where("#{CamaleonCms::TermTaxonomy.table_name}.parent_id" => record.parent_id).size > 0
6
+ end
7
+ end
8
+ end
9
+ end
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
  ar:
2
3
  camaleon_cms:
3
4
  see_intro: "See intro"
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
  de:
2
3
  camaleon_cms:
3
4
  see_intro: 'Intro ansehen'
@@ -1,16 +1,20 @@
1
+ # encoding: utf-8
1
2
  en:
2
3
  camaleon_cms:
4
+ captcha_placeholder: Please enter the text from the image
3
5
  see_intro: "See intro"
4
6
  welcome_message: "Welcome to Camaleon CMS"
5
7
  page_not_exist: "<h1>ooops...</h1><h5>The page you're looking for does not exist.</h5>"
6
8
  page_error_500: "<h1>ooops...</h1><h5>Error 500 Internal Server Error. Please contact to the administrator.</h5>"
9
+ errors_found_msg: Several errors were found, please check.
7
10
  admin:
8
- request_error_message: "An error occurred, please contact to the administrator."
11
+ request_error_message: "An error occurred, please contact the administrator."
9
12
  authorization_error: "You don't have authorization for this section."
10
13
  header:
11
14
  member_since: "Member since %{time}"
12
15
  button:
13
16
  activity: 'Activity'
17
+ add_new_group: Add New Group
14
18
  add_new_field: 'Add new field'
15
19
  add_option: 'Add option'
16
20
  add_menu: 'Add to Menu'
@@ -86,7 +90,6 @@ en:
86
90
  spam: 'Spam'
87
91
  there_no_comments: 'There are no comments.'
88
92
  updated: 'The comment has been updated.'
89
-
90
93
  tooltip:
91
94
  approved_comment: 'Approve Comment'
92
95
  comment_pending: 'Comment To Pending'
@@ -94,12 +97,14 @@ en:
94
97
  reply_comment: 'Reply Comment'
95
98
  delete_comment: 'Delete Comment'
96
99
  custom_field:
100
+ custom_group_support_multiple: Support multiple groups
97
101
  message:
98
102
  custom_group_error: 'Error custom field group'
99
103
  custom_created: 'The custom field group has been created.'
100
104
  custom_updated: 'The custom field group has been updated.'
101
105
  fields:
102
106
  text_box: 'Text Box'
107
+ private_file: Private File
103
108
  text_area: 'Text Area'
104
109
  select: 'Select'
105
110
  colorpicker: 'Colorpicker'
@@ -122,8 +127,30 @@ en:
122
127
  field_attrs: 'Field Attributes'
123
128
  website: 'Website'
124
129
  multiple_choice: 'Radio Button'
125
-
126
-
130
+ video: Video
131
+ audio: Audio
132
+ editor: Editor
133
+ radio: Radio
134
+ checkbox: Check Box
135
+ checkboxes: Check Boxes
136
+ url: URL
137
+ appearances:
138
+ nav_menus:
139
+ menu_items:
140
+ edit_menu_item: Edit Menu Item
141
+ edit_custom_settings: Edit Custom Settings
142
+ update:
143
+ updated_menu: The menu was updated
144
+ create:
145
+ created_menu: The menu was created
146
+ destroy:
147
+ deleted_menu: The menu was deleted
148
+ menu_options:
149
+ edit_menu: Edit Menu
150
+ delete_menu: Delete Menu
151
+ create_menu: Create Menu
152
+ external_menu:
153
+ root_alert_info: 'You can use <b> root_url </b> as initial url'
127
154
  login:
128
155
  already_have_account: 'Already have account?'
129
156
  authentication: 'Authentication'
@@ -186,6 +213,7 @@ en:
186
213
  clear_cache: 'Clear Cache'
187
214
  name_required: 'File name is required'
188
215
  menus:
216
+ menus: Menus
189
217
  link_url: 'Link URL'
190
218
  target: 'Target'
191
219
  targets:
@@ -233,6 +261,7 @@ en:
233
261
  no_templates_defined: 'No templates defined'
234
262
  avatar_updated: 'Updated Avatar'
235
263
  form_error: 'Form Error'
264
+ was_removed.: was removed
236
265
  page_title:
237
266
  page_title: 'Page Title'
238
267
  create: 'Create'
@@ -248,6 +277,7 @@ en:
248
277
  add_tag: 'Add a Tag'
249
278
  clone: 'Clone'
250
279
  clone_content: 'Clone content'
280
+ is_featured: 'Is Featured?'
251
281
  label_required: 'Required Label'
252
282
  placeholder_required: 'Required Placeholder'
253
283
  message:
@@ -308,6 +338,7 @@ en:
308
338
  trash: 'Trash'
309
339
  tooltip:
310
340
  permission_asing_categories: 'Permit to manage your post contents by categories'
341
+ permission_to_support_parent_structure: Permission to Support Parent Structure
311
342
  permission_add_tags: 'Enable the field to enter tags in post content'
312
343
  permission_add_content: 'Enable the editor to enter the post content'
313
344
  permission_add_content_summary: 'Enable the field to enter the post summary'
@@ -330,6 +361,7 @@ en:
330
361
  upgrade_to: "Upgrade to"
331
362
  settings:
332
363
  activate_create_account: 'Activate Create Account'
364
+ file_actions_in_modals: Show File Actions in Modals
333
365
  activate_login_social_networks: 'Activate Login Social Networks'
334
366
  add_field_group: 'Add Field Group'
335
367
  admin_language: 'Admin language'
@@ -349,7 +381,7 @@ en:
349
381
  input_only_date: 'Input only the date'
350
382
  input_date_time: 'Input date and time'
351
383
  languages_configuration: 'Languages configuration'
352
- list_custom_fields_group: 'List Custom Fields Group'
384
+ list_custom_fields_group: List Custom Fields Group
353
385
  list_sites: 'List Sites'
354
386
  login_twitter: 'Twitter'
355
387
  login_facebook: 'Facebook'
@@ -362,6 +394,7 @@ en:
362
394
  email_pass: "User Password"
363
395
  email_from: "Email From"
364
396
  email_cc: "Email CC"
397
+ post_tags_in: Post Tags In
365
398
  twitter_card: "Twitter Card"
366
399
  author: "Author Name"
367
400
  seo_setting: "Seo Settings"
@@ -380,6 +413,9 @@ en:
380
413
  message:
381
414
  language_updated: 'Your languages was configured.'
382
415
  site_updated: 'The site has been updated.'
416
+ comment_anonymous: Allow anonymous comments
417
+ aws: 'Save Files in AWS S3'
418
+ filesystem_settings: Filesystem Settings
383
419
  new_custom_field_group: 'New Custom Field Group'
384
420
  options_select: 'Options select'
385
421
  option_title: 'Option Title'
@@ -395,11 +431,24 @@ en:
395
431
  posts_in: 'Posts in'
396
432
  in_post_type_settings_of: 'In Post Type settings of'
397
433
  settings: 'Settings'
434
+ media_settings: Multimedia Settings
435
+ filesystem_max_file_size: 'Max. Upload Size [MB]'
436
+ filesystem_thumb_size: 'Thumbnail size [100x100]'
437
+ filesystem_s3_cloudfront: Cloudfront URL
438
+ custom_fields_show_shortcodes: 'Show shortcodes for custom fields?'
439
+ enable_captcha_for_comments: 'Activate captcha in public comments?'
440
+ configuration_settings:
441
+ maintenance_page: Page to show in maintenance mode
442
+ inactive_page: Page to display for inactive site
443
+ status: Site Status
444
+ default_page: Default page
445
+ maintenance_ips: Maintenance IPs (Separated by commas)
398
446
  tooltip:
399
447
  add_custom_field_posts: 'Add Custom Field in Posts of '
400
448
  add_custom_field_categories: 'Add Custom Field in Categories of '
401
449
  add_custom_field_users: 'Add Custom Field in Users '
402
450
  add_custom_field_sites: 'Add Custom Field in Site '
451
+ add_custom_field_tags: 'Add Custom Field in Post Tags of '
403
452
  add_custom_field_themes: 'Add Custom Field in Theme '
404
453
  add_custom_field_widget: 'Add Custom Field in Widget '
405
454
  untitled: 'Untitled'
@@ -549,6 +598,9 @@ en:
549
598
  more_actions: 'More actions'
550
599
  more_actions_info: 'More actions...'
551
600
  shorcodes: "Shortcodes"
601
+ manage_parent_structure: Manage Parent Structure
602
+ manage_single_category: Manage a single category
603
+ permit_is_featured: Allow Featured Articles
552
604
  themes:
553
605
  footer_copyright: 'Footer Copyright'
554
606
  theme_select: 'Select Theme'
@@ -568,21 +620,24 @@ en:
568
620
  edit_profile: 'Edit Profile'
569
621
  list_users: 'List Users'
570
622
  list_user_roles: 'User Roles'
623
+ post_types: Post Types
571
624
  message:
572
- error: 'Not found user.'
573
- error_captcha: 'Oh! Its error with CAPTCHA!'
574
- created: 'The user has been created.'
575
- updated: 'The user has been updated.'
576
- deleted: 'The user has been deleted.'
577
- incorrect_old_password: 'Incorrect old password'
578
- rol_error: 'Not found group user.'
579
- rol_created: 'The user role has been created.'
580
- rol_updated: 'The user role has been updated.'
581
- rol_deleted: 'The user role has been deleted.'
582
- requires_different_name: 'Requires different name'
583
- requires_different_username: 'Requires different username'
584
- requires_different_email: 'Requires different email'
585
- created_pending_validate_email: "The user has been created, please confirm your email"
625
+ error: 'Not found user.'
626
+ error_captcha: 'Oh! Its error with CAPTCHA!'
627
+ created: 'The user has been created.'
628
+ updated: 'The user has been updated.'
629
+ deleted: 'The user has been deleted.'
630
+ incorrect_old_password: 'Incorrect old password'
631
+ rol_error: 'Not found group user.'
632
+ rol_created: 'The user role has been created.'
633
+ rol_updated: 'The user role has been updated.'
634
+ rol_deleted: 'The user role has been deleted.'
635
+ requires_different_name: 'Requires different name'
636
+ requires_different_username: 'Requires different username'
637
+ requires_different_email: 'Requires different email'
638
+ created_pending_validate_email: "The user has been created, please confirm your email"
639
+ role_can_not_be_deleted: Role can not be deleted
640
+ user_can_not_delete_own_account: You cannot delete your own account
586
641
  new_photo: 'New Photo'
587
642
  others_permissions: 'Others permissions'
588
643
  profile: 'Profile'
@@ -595,7 +650,7 @@ en:
595
650
  media: 'Media'
596
651
  publish: 'Publish'
597
652
  themes: 'Themes'
598
- html_create_or_edit: 'Create<br>or Edit'
653
+ html_create_or_edit: 'Create<br>or Edit'
599
654
  html_edit_other: 'Edit <br> Other'
600
655
  html_edit_publish: 'Edit <br> Publish'
601
656
  html_delete_other: 'Delete <br> Other'
@@ -664,7 +719,6 @@ en:
664
719
  intro:
665
720
  profile: "In this place you can see your profile options."
666
721
  content: "This block contains all content groups of your site. Each content can have different structure configured in settings => Content Groups"
667
- #dashboard: "In this section you can see "
668
722
  media: "This section manages all your public media files."
669
723
  comments: "This section manages all the comments of your contents."
670
724
  appearance: "Manage all the information related to Public Interface."
@@ -680,3 +734,10 @@ en:
680
734
  post_type: "In this module you can manage your content groups without programing anything."
681
735
  languages: "This module permits you to manage all languages for your site. Also you can configure the language for your admin panel."
682
736
  shortcodes: "In this section you can see all available shortcodes to use in your contents."
737
+
738
+ models:
739
+ site:
740
+ status_options:
741
+ active: Active
742
+ inactive: Inactive
743
+ maintenance: In maintenance