biovision-base 0.21.180812.0 → 0.22.180920.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/biovision/base/biovision.scss +14 -17
- data/app/assets/stylesheets/biovision/base/buttons/buttons-common.scss +2 -1
- data/app/assets/stylesheets/biovision/base/default.scss +8 -8
- data/app/controllers/media_files_controller.rb +1 -0
- data/app/helpers/biovision_users_helper.rb +6 -5
- data/app/models/concerns/meta_texts.rb +15 -0
- data/app/views/about/editable.html.erb +10 -6
- data/app/views/agents/_form.html.erb +3 -0
- data/app/views/browsers/_form.html.erb +3 -0
- data/app/views/codes/_form.html.erb +2 -0
- data/app/views/editable_blocks/_form.html.erb +2 -0
- data/app/views/editable_pages/_form.html.erb +2 -0
- data/app/views/index/index.html.erb +1 -1
- data/app/views/layouts/application/_footer.html.erb +1 -1
- data/app/views/layouts/application/_header.html.erb +1 -1
- data/app/views/link_block_items/_form.html.erb +2 -0
- data/app/views/link_blocks/_form.html.erb +2 -0
- data/app/views/media_files/_form.html.erb +2 -0
- data/app/views/media_folders/_form.html.erb +2 -0
- data/app/views/metrics/_form.html.erb +2 -0
- data/app/views/privilege_groups/_form.html.erb +3 -0
- data/app/views/privileges/_form.html.erb +2 -0
- data/app/views/shared/entity/_meta_texts.html.erb +14 -0
- data/app/views/shared/entity/_timestamps.html.erb +9 -0
- data/app/views/shared/forms/_meta_texts.html.erb +51 -0
- data/app/views/shared/forms/_wysiwyg.html.erb +14 -6
- data/app/views/stored_values/_form.html.erb +2 -0
- data/app/views/tokens/_form.html.erb +2 -0
- data/app/views/users/_form.html.erb +3 -6
- data/config/locales/common-en.yml +10 -0
- data/config/locales/common-ru.yml +10 -0
- data/config/locales/common-sv.yml +10 -0
- data/config/locales/editable-pages-en.yml +3 -0
- data/config/locales/editable-pages-sv.yml +3 -0
- data/config/routes.rb +1 -9
- data/lib/biovision/base/version.rb +1 -1
- metadata +6 -3
- data/app/controllers/api/embed_controller.rb +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e26d43272af3cd8b34dd325f8dec9a0728d5eeecd8b5108493c10c4260f97916
|
4
|
+
data.tar.gz: 694106f3d60380e268c2a93f57439bfcee085ed4e11022acf4001cde0b02f159
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 067ee5df601cebc75b36340c507f30ee0f6e89a149e1ccc5deb67e716d1d3a8b58ef7ce132a1b6b254005ec118146a45c19b76343a98912de6ee66a0cb7838de
|
7
|
+
data.tar.gz: 3d0a6eb7e677b759495c67a289d3e46d97807632ecb557fba1f9d548373c6c055b1533f50906f2ba57d96fc7bea8a6f86280e83e413cdb013a569cd2b25daeef
|
@@ -42,25 +42,22 @@ h6 {
|
|
42
42
|
margin: 0;
|
43
43
|
}
|
44
44
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
color: $link-color;
|
52
|
-
text-decoration: none;
|
53
|
-
transition: color .125s;
|
54
|
-
}
|
45
|
+
a {
|
46
|
+
&:link {
|
47
|
+
color: $link-color;
|
48
|
+
text-decoration: none;
|
49
|
+
transition: color .125s;
|
50
|
+
}
|
55
51
|
|
56
|
-
|
57
|
-
|
58
|
-
}
|
52
|
+
&:visited {
|
53
|
+
color: $link-color-visited;
|
54
|
+
}
|
59
55
|
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
56
|
+
&:active,
|
57
|
+
&:hover {
|
58
|
+
color: $link-color-hover;
|
59
|
+
text-decoration: underline;
|
60
|
+
}
|
64
61
|
}
|
65
62
|
|
66
63
|
figure {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
$font-size-normal: 1.
|
1
|
+
$font-size-normal: 1.6rem !default;
|
2
2
|
$font-family-main: "Roboto", sans-serif !default;
|
3
3
|
|
4
4
|
$button-action-bg-a: #2e3c8e !default;
|
@@ -37,6 +37,7 @@ $button-destroy-text-b: $button-destroy-text-a !default;
|
|
37
37
|
cursor: pointer;
|
38
38
|
display: inline-block;
|
39
39
|
font: #{$font-size-normal}/1.5 $font-family-main;
|
40
|
+
font-size: var(--font-size-normal, #{$font-size-normal});
|
40
41
|
padding: 0 1.2rem;
|
41
42
|
text-decoration: none;
|
42
43
|
transition: .125s;
|
@@ -11,6 +11,14 @@ $font-size-decreased: 1.3rem !default;
|
|
11
11
|
$font-size-small: 1.1rem !default;
|
12
12
|
$font-size-xs: 1rem !default;
|
13
13
|
|
14
|
+
$spacer-xxs: .4rem !default;
|
15
|
+
$spacer-xs: .8rem !default;
|
16
|
+
$spacer-s: 1.6rem !default;
|
17
|
+
$spacer-m: 3.2rem !default;
|
18
|
+
$spacer-l: 4.8rem !default;
|
19
|
+
$spacer-xl: 6.4rem !default;
|
20
|
+
$spacer-xxl: 9.6rem !default;
|
21
|
+
|
14
22
|
$content-width: 100rem !default;
|
15
23
|
$content-width-min: 32rem !default;
|
16
24
|
|
@@ -36,11 +44,3 @@ $background-footer: #fff !default;
|
|
36
44
|
$link-color: rgb(20, 127, 255) !default;
|
37
45
|
$link-color-visited: rgb(20, 77, 250) !default;
|
38
46
|
$link-color-hover: rgb(255, 77, 20) !default;
|
39
|
-
|
40
|
-
$spacer-xxs: .4rem;
|
41
|
-
$spacer-xs: .8rem;
|
42
|
-
$spacer-s: 1.6rem;
|
43
|
-
$spacer-m: 3.2rem;
|
44
|
-
$spacer-l: 4.8rem;
|
45
|
-
$spacer-xl: 6.4rem;
|
46
|
-
$spacer-xxl: 9.6rem;
|
@@ -1,6 +1,7 @@
|
|
1
1
|
class MediaFilesController < ApplicationController
|
2
2
|
skip_before_action :verify_authenticity_token, only: :ckeditor
|
3
3
|
|
4
|
+
before_action :restrict_anonymous_access
|
4
5
|
before_action :set_entity, only: [:edit, :update, :destroy]
|
5
6
|
before_action :restrict_editing, only: [:edit, :update, :destroy]
|
6
7
|
|
@@ -15,28 +15,29 @@ module BiovisionUsersHelper
|
|
15
15
|
end
|
16
16
|
|
17
17
|
# @param [User] entity
|
18
|
-
|
18
|
+
# @param [String] text
|
19
|
+
def user_link(entity, text = entity&.profile_name)
|
19
20
|
return I18n.t(:anonymous) if entity.nil? || entity.deleted?
|
20
21
|
|
21
|
-
text = entity.profile_name
|
22
22
|
link_to(text, user_profile_path(slug: entity.screen_name), class: 'profile')
|
23
23
|
end
|
24
24
|
|
25
25
|
# @param [User] entity
|
26
|
-
|
26
|
+
# @param [String] text
|
27
|
+
def admin_user_link(entity, text = entity&.profile_name)
|
27
28
|
return I18n.t(:anonymous) if entity.nil?
|
28
29
|
|
29
|
-
text = entity.profile_name
|
30
30
|
link_to(text, admin_user_path(id: entity.id), class: 'profile')
|
31
31
|
end
|
32
32
|
|
33
33
|
# @param [ForeignUser] entity
|
34
|
-
# @param [String]
|
34
|
+
# @param [String] text
|
35
35
|
def admin_foreign_user_link(entity, text = entity.long_slug)
|
36
36
|
link_to(text, admin_foreign_user_path(id: entity.id))
|
37
37
|
end
|
38
38
|
|
39
39
|
# @param [User] entity
|
40
|
+
# @deprecated use #admin_user_link
|
40
41
|
def editor_user_link(entity)
|
41
42
|
return t(:anonymous) if entity.nil?
|
42
43
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module MetaTexts
|
2
|
+
extend ActiveSupport::Concern
|
3
|
+
|
4
|
+
included do
|
5
|
+
validates_length_of :meta_description, maximum: 500
|
6
|
+
validates_length_of :meta_keywords, maximum: 250
|
7
|
+
validates_length_of :meta_title, maximum: 250
|
8
|
+
|
9
|
+
protected
|
10
|
+
|
11
|
+
def self.meta_text_fields
|
12
|
+
%i[meta_description meta_keywords meta_title]
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,11 +1,15 @@
|
|
1
1
|
<% if @editable_page.nil? %>
|
2
|
-
|
2
|
+
<% content_for :meta_title, t('.title') %>
|
3
3
|
|
4
|
-
|
5
|
-
|
4
|
+
<article>
|
5
|
+
<h1><%= t('.heading') %></h1>
|
6
6
|
|
7
|
-
|
8
|
-
|
7
|
+
<div class="message-box-warning"><%= t('.message') %></div>
|
8
|
+
</article>
|
9
9
|
<% else %>
|
10
|
-
|
10
|
+
<% content_for :breadcrumbs do %>
|
11
|
+
<span><%= @editable_page.title %></span>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<%= render partial: 'editable_pages/editable_page', locals: { entity: @editable_page } %>
|
11
15
|
<% end %>
|
@@ -168,6 +168,8 @@
|
|
168
168
|
<%= render(partial: 'shared/forms/entity_flags', locals: { f: f }) %>
|
169
169
|
</dl>
|
170
170
|
|
171
|
+
<%= render 'shared/forms/state_container' %>
|
172
|
+
|
171
173
|
<div class="buttons">
|
172
174
|
<%= hidden_field_tag :entity_id, entity.id %>
|
173
175
|
<%= f.button t(:save), type: :submit, class: 'button-save' %>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<% if @editable_page.nil? %>
|
2
2
|
<% content_for :meta_title, t('.title') %>
|
3
|
-
<% content_for :
|
3
|
+
<% content_for :meta_description, t('.description') %>
|
4
4
|
<% else %>
|
5
5
|
<%= render partial: 'editable_pages/entity/metadata', locals: { entity: @editable_page } %>
|
6
6
|
<% end %>
|
@@ -151,6 +151,8 @@
|
|
151
151
|
<%= render partial: 'shared/forms/entity_flags', locals: { f: f } %>
|
152
152
|
</dl>
|
153
153
|
|
154
|
+
<%= render 'shared/forms/state_container' %>
|
155
|
+
|
154
156
|
<div class="buttons">
|
155
157
|
<%= f.hidden_field :link_block_id if entity.id.nil? %>
|
156
158
|
<%= hidden_field_tag :entity_id, entity.id %>
|
@@ -92,6 +92,8 @@
|
|
92
92
|
<%= render(partial: 'shared/forms/entity_flags', locals: { f: f }) %>
|
93
93
|
</dl>
|
94
94
|
|
95
|
+
<%= render 'shared/forms/state_container' %>
|
96
|
+
|
95
97
|
<div class="buttons">
|
96
98
|
<%= hidden_field_tag :entity_id, entity.id %>
|
97
99
|
<%= f.button t(:save), type: :submit, class: 'button-save' %>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<% unless entity.meta_title.blank? %>
|
2
|
+
<dt><%= t('.meta_title') %></dt>
|
3
|
+
<dd><%= entity.meta_title %></dd>
|
4
|
+
<% end %>
|
5
|
+
|
6
|
+
<% unless entity.meta_description.blank? %>
|
7
|
+
<dt><%= t('.meta_description') %></dt>
|
8
|
+
<dd><%= entity.meta_description %></dd>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<% unless entity.meta_keywords.blank? %>
|
12
|
+
<dt><%= t('.meta_keywords') %></dt>
|
13
|
+
<dd><%= entity.meta_keywords %></dd>
|
14
|
+
<% end %>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
<% model_name = f.object.class.to_s.underscore %>
|
2
|
+
<dt><%= f.label :meta_title %></dt>
|
3
|
+
<dd>
|
4
|
+
<%=
|
5
|
+
f.text_field(
|
6
|
+
:meta_title,
|
7
|
+
id: "#{model_name}_meta_title",
|
8
|
+
size: nil,
|
9
|
+
maxlength: 250,
|
10
|
+
data: {
|
11
|
+
check: :meta_title
|
12
|
+
}
|
13
|
+
)
|
14
|
+
%>
|
15
|
+
<div class="check-result-error hidden" data-field="meta_title"></div>
|
16
|
+
<div class="guideline"><%= t('.guidelines.meta_title') %></div>
|
17
|
+
</dd>
|
18
|
+
|
19
|
+
<dt><%= f.label :meta_description %></dt>
|
20
|
+
<dd>
|
21
|
+
<%=
|
22
|
+
f.text_field(
|
23
|
+
:meta_description,
|
24
|
+
id: "#{model_name}_meta_description",
|
25
|
+
size: nil,
|
26
|
+
maxlength: 500,
|
27
|
+
data: {
|
28
|
+
check: :meta_description
|
29
|
+
}
|
30
|
+
)
|
31
|
+
%>
|
32
|
+
<div class="check-result-error hidden" data-field="meta_description"></div>
|
33
|
+
<div class="guideline"><%= t('.guidelines.meta_description') %></div>
|
34
|
+
</dd>
|
35
|
+
|
36
|
+
<dt><%= f.label :meta_keywords %></dt>
|
37
|
+
<dd>
|
38
|
+
<%=
|
39
|
+
f.text_field(
|
40
|
+
:meta_keywords,
|
41
|
+
id: "#{model_name}_meta_keywords",
|
42
|
+
size: nil,
|
43
|
+
maxlength: 250,
|
44
|
+
data: {
|
45
|
+
check: :meta_keywords
|
46
|
+
}
|
47
|
+
)
|
48
|
+
%>
|
49
|
+
<div class="check-result-error hidden" data-field="meta_keywords"></div>
|
50
|
+
<div class="guideline"><%= t('.guidelines.meta_keywords') %></div>
|
51
|
+
</dd>
|
@@ -1,11 +1,19 @@
|
|
1
|
-
<script src="
|
1
|
+
<script src="https://cdn.ckeditor.com/ckeditor5/11.0.1/classic/ckeditor.js"></script>
|
2
2
|
<script>
|
3
|
+
'use strict';
|
3
4
|
document.addEventListener('DOMContentLoaded', function () {
|
4
|
-
document.querySelectorAll('form [data-wysiwyg]').forEach(function(editor) {
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
document.querySelectorAll('form [data-wysiwyg]').forEach(function (editor) {
|
6
|
+
editor.required = false;
|
7
|
+
ClassicEditor
|
8
|
+
.create(editor, {
|
9
|
+
image: {
|
10
|
+
toolbar: ['imageTextAlternative']
|
11
|
+
},
|
12
|
+
ckfinder: {
|
13
|
+
uploadUrl: '/media_files/ckeditor'
|
14
|
+
}
|
15
|
+
})
|
16
|
+
.catch(error => console.error(error));
|
9
17
|
});
|
10
18
|
});
|
11
19
|
</script>
|
@@ -126,14 +126,11 @@
|
|
126
126
|
<div class="guideline"><%= t('.guidelines.notice') %></div>
|
127
127
|
</dd>
|
128
128
|
|
129
|
-
<%=
|
130
|
-
render(
|
131
|
-
partial: 'shared/forms/entity_flags',
|
132
|
-
locals: { f: f, entity: entity, model_name: model_name }
|
133
|
-
)
|
134
|
-
%>
|
129
|
+
<%= render(partial: 'shared/forms/entity_flags', locals: { f: f }) %>
|
135
130
|
</dl>
|
136
131
|
|
132
|
+
<%= render 'shared/forms/state_container' %>
|
133
|
+
|
137
134
|
<div class="buttons">
|
138
135
|
<%= f.hidden_field :consent if entity.id.nil? %>
|
139
136
|
<%= f.button t(:save), type: :submit, class: 'button-save' %>
|
@@ -101,6 +101,11 @@ en:
|
|
101
101
|
next: "→"
|
102
102
|
truncate: "…"
|
103
103
|
shared:
|
104
|
+
entity:
|
105
|
+
meta_texts:
|
106
|
+
meta_title: "meta: title"
|
107
|
+
meta_description: "meta: description"
|
108
|
+
meta_keywords: "meta: keywords"
|
104
109
|
flash_messages:
|
105
110
|
notice: "Notice"
|
106
111
|
warning: "Warning"
|
@@ -112,6 +117,11 @@ en:
|
|
112
117
|
forms:
|
113
118
|
state_container:
|
114
119
|
saving: "Saving..."
|
120
|
+
meta_texts:
|
121
|
+
guidelines:
|
122
|
+
meta_title: "Maximum 250 characters"
|
123
|
+
meta_description: "30 to 50 words, maximum 500 characters."
|
124
|
+
meta_keywords: "Maximum 250 characters."
|
115
125
|
admin:
|
116
126
|
index:
|
117
127
|
index:
|
@@ -102,6 +102,11 @@ ru:
|
|
102
102
|
next: "→"
|
103
103
|
truncate: "…"
|
104
104
|
shared:
|
105
|
+
entity:
|
106
|
+
meta_texts:
|
107
|
+
meta_title: "Текст для заголовка окна"
|
108
|
+
meta_description: "Описание для метатэга"
|
109
|
+
meta_keywords: "Ключевые слова для метатэга"
|
105
110
|
flash_messages:
|
106
111
|
notice: "Замечание"
|
107
112
|
warning: "Предупреждение"
|
@@ -113,6 +118,11 @@ ru:
|
|
113
118
|
forms:
|
114
119
|
state_container:
|
115
120
|
saving: "Сохранение…"
|
121
|
+
meta_texts:
|
122
|
+
guidelines:
|
123
|
+
meta_title: "Максимум 250 символов"
|
124
|
+
meta_description: "30–50 слов, максимум 500 символов."
|
125
|
+
meta_keywords: "Максимум 250 символов."
|
116
126
|
admin:
|
117
127
|
index:
|
118
128
|
index:
|
@@ -101,6 +101,11 @@ sv:
|
|
101
101
|
next: "→"
|
102
102
|
truncate: "…"
|
103
103
|
shared:
|
104
|
+
entity:
|
105
|
+
meta_texts:
|
106
|
+
meta_title: "meta: title"
|
107
|
+
meta_description: "meta: description"
|
108
|
+
meta_keywords: "meta: keywords"
|
104
109
|
flash_messages:
|
105
110
|
notice: "Meddelande"
|
106
111
|
warning: "Förmaning"
|
@@ -112,6 +117,11 @@ sv:
|
|
112
117
|
forms:
|
113
118
|
state_container:
|
114
119
|
saving: "Sparar..."
|
120
|
+
meta_texts:
|
121
|
+
guidelines:
|
122
|
+
meta_title: "Up till 250 tecken"
|
123
|
+
meta_description: "30 till 50 ord, up till 500 tecken."
|
124
|
+
meta_keywords: "Up till 250 tecken."
|
115
125
|
admin:
|
116
126
|
index:
|
117
127
|
index:
|
@@ -104,6 +104,9 @@ en:
|
|
104
104
|
keywords: "Value for meta keywords (for search robots). Maximum 250 characters."
|
105
105
|
description: "Meta description for search robots, search results and sharing. Maximum 250 characters."
|
106
106
|
body: "HTML for insertion inside the site. Maximum 64kiB of text."
|
107
|
+
url: "Absolute URL"
|
108
|
+
placeholders:
|
109
|
+
url: "/about/editable-pages"
|
107
110
|
stored_values:
|
108
111
|
new:
|
109
112
|
heading: "New stored value"
|
@@ -82,6 +82,9 @@ sv:
|
|
82
82
|
name: "Used for more convenient management. Maximum 100 characters."
|
83
83
|
slug: "Only latin letters, numbers, dash or underscore (except start or end). 2 to 50 characters."
|
84
84
|
title: "Maximum 100 characters."
|
85
|
+
url: "Absolute URL"
|
86
|
+
placeholders:
|
87
|
+
url: "/about/editable-pages"
|
85
88
|
update:
|
86
89
|
success: "Editable block has been updated"
|
87
90
|
editable_pages:
|
data/config/routes.rb
CHANGED
@@ -19,11 +19,7 @@ Rails.application.routes.draw do
|
|
19
19
|
|
20
20
|
resources :feedback_requests, only: :destroy
|
21
21
|
|
22
|
-
resources :link_blocks, :link_block_items, only: %i[update destroy]
|
23
|
-
collection do
|
24
|
-
post 'check', defaults: { format: :json }
|
25
|
-
end
|
26
|
-
end
|
22
|
+
resources :link_blocks, :link_block_items, only: %i[update destroy]
|
27
23
|
|
28
24
|
scope '(:locale)', constraints: { locale: /ru|en|sv/ } do
|
29
25
|
# Handling errors
|
@@ -155,10 +151,6 @@ Rails.application.routes.draw do
|
|
155
151
|
end
|
156
152
|
end
|
157
153
|
|
158
|
-
# namespace :api, defaults: { format: :json } do
|
159
|
-
# get 'embed' => 'embed#index'
|
160
|
-
# end
|
161
|
-
|
162
154
|
namespace :my do
|
163
155
|
get '/' => 'index#index'
|
164
156
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: biovision-base
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.22.180920.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maxim Khan-Magomedov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-09-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -237,7 +237,6 @@ files:
|
|
237
237
|
- app/controllers/admin/users_controller.rb
|
238
238
|
- app/controllers/admin_controller.rb
|
239
239
|
- app/controllers/agents_controller.rb
|
240
|
-
- app/controllers/api/embed_controller.rb
|
241
240
|
- app/controllers/authentication_controller.rb
|
242
241
|
- app/controllers/browsers_controller.rb
|
243
242
|
- app/controllers/codes_controller.rb
|
@@ -294,6 +293,7 @@ files:
|
|
294
293
|
- app/models/code_type.rb
|
295
294
|
- app/models/concerns/checkable.rb
|
296
295
|
- app/models/concerns/has_owner.rb
|
296
|
+
- app/models/concerns/meta_texts.rb
|
297
297
|
- app/models/concerns/required_unique_name.rb
|
298
298
|
- app/models/concerns/required_unique_slug.rb
|
299
299
|
- app/models/concerns/toggleable.rb
|
@@ -576,9 +576,12 @@ files:
|
|
576
576
|
- app/views/shared/admin/_list_with_priority.html.erb
|
577
577
|
- app/views/shared/admin/_toggleable.html.erb
|
578
578
|
- app/views/shared/editable_pages/_body.html.erb
|
579
|
+
- app/views/shared/entity/_meta_texts.html.erb
|
580
|
+
- app/views/shared/entity/_timestamps.html.erb
|
579
581
|
- app/views/shared/filter/_flag.html.erb
|
580
582
|
- app/views/shared/forms/_entity_flags.html.erb
|
581
583
|
- app/views/shared/forms/_image_remover.html.erb
|
584
|
+
- app/views/shared/forms/_meta_texts.html.erb
|
582
585
|
- app/views/shared/forms/_state_container.html.erb
|
583
586
|
- app/views/shared/forms/_wysiwyg.html.erb
|
584
587
|
- app/views/shared/forms/check.jbuilder
|