camaleon_cms 2.5.3.1 → 2.6.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.

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