biovision-base 0.19.180703.1 → 0.20.180731.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/javascripts/biovision/base/biovision.js +47 -3
- data/app/assets/stylesheets/biovision/base/biovision.scss +1 -1
- data/app/assets/stylesheets/biovision/base/default.scss +16 -0
- data/app/controllers/codes_controller.rb +5 -4
- data/app/controllers/index_controller.rb +14 -1
- data/app/controllers/media_files_controller.rb +1 -1
- data/app/controllers/my/profiles_controller.rb +9 -2
- data/app/helpers/languages_helper.rb +1 -1
- data/app/models/language.rb +1 -0
- data/app/models/user.rb +1 -0
- data/app/services/canonizer.rb +1 -0
- data/app/views/admin/users/entity/_in_list.html.erb +16 -10
- data/app/views/admin/users/show.html.erb +11 -3
- data/app/views/authentication/_form.html.erb +1 -1
- data/app/views/codes/_form.html.erb +42 -9
- data/app/views/editable_blocks/_form.html.erb +28 -24
- data/app/views/feedback_mailer/new_feedback_request.html.erb +17 -6
- data/app/views/feedback_mailer/new_feedback_request.text.erb +19 -3
- data/app/views/feedback_requests/_form.html.erb +1 -1
- data/app/views/layouts/application/_footer.html.erb +1 -0
- data/app/views/link_block_items/_form.html.erb +6 -5
- data/app/views/link_blocks/_form.html.erb +18 -16
- data/app/views/shared/forms/errors.js.erb +2 -2
- data/config/locales/common-en.yml +4 -1
- data/config/locales/common-ru.yml +3 -0
- data/config/locales/common-sv.yml +168 -0
- data/config/locales/editable-pages-en.yml +48 -2
- data/config/locales/editable-pages-ru.yml +2 -6
- data/config/locales/editable-pages-sv.yml +123 -0
- data/config/locales/feedback-en.yml +3 -2
- data/config/locales/feedback-sv.yml +37 -0
- data/config/locales/links-en.yml +95 -0
- data/config/locales/links-sv.yml +95 -0
- data/config/locales/media-sv.yml +92 -0
- data/config/locales/track-en.yml +102 -0
- data/config/locales/track-sv.yml +102 -0
- data/config/locales/users-en.yml +10 -6
- data/config/locales/users-ru.yml +5 -1
- data/config/locales/users-sv.yml +395 -0
- data/config/routes.rb +47 -47
- data/db/migrate/20170228000000_create_languages.rb +1 -0
- data/db/migrate/20170302000001_create_users.rb +1 -0
- data/db/migrate/20170320000000_create_editable_pages.rb +1 -1
- data/db/migrate/20180722222222_add_active_to_languages.rb +11 -0
- data/db/migrate/20180725111111_add_referral_link_to_users.rb +22 -0
- data/lib/biovision/base/base_methods.rb +10 -1
- data/lib/biovision/base/version.rb +1 -1
- metadata +13 -4
- data/app/views/shared/forms/_default_ajax_handler.html.erb +0 -15
- data/app/views/shared/forms/_list_of_errors.js.erb +0 -21
@@ -1,12 +1,23 @@
|
|
1
1
|
<h1><%= t('.title') %></h1>
|
2
2
|
|
3
3
|
<dl>
|
4
|
-
|
5
|
-
|
4
|
+
<% unless @entity.name.blank? %>
|
5
|
+
<dt><%= t('activerecord.attributes.feedback_request.name') %></dt>
|
6
|
+
<dd><%= @entity.name %></dd>
|
7
|
+
<% end %>
|
6
8
|
|
7
|
-
|
8
|
-
|
9
|
+
<% unless @entity.email.blank? %>
|
10
|
+
<dt><%= t('activerecord.attributes.feedback_request.email') %></dt>
|
11
|
+
<dd><%= @entity.email %></dd>
|
12
|
+
<% end %>
|
9
13
|
|
10
|
-
|
11
|
-
|
14
|
+
<% unless @entity.phone.blank? %>
|
15
|
+
<dt><%= t('activerecord.attributes.feedback_request.phone') %></dt>
|
16
|
+
<dd><%= @entity.phone %></dd>
|
17
|
+
<% end %>
|
18
|
+
|
19
|
+
<% unless @entity.comment.blank? %>
|
20
|
+
<dt><%= t('activerecord.attributes.feedback_request.comment') %></dt>
|
21
|
+
<dd><%= simple_format(@entity.comment) %></dd>
|
22
|
+
<% end %>
|
12
23
|
</dl>
|
@@ -1,5 +1,21 @@
|
|
1
1
|
<%= t('.title') %>
|
2
2
|
|
3
|
-
|
4
|
-
<%= t('activerecord.attributes.feedback_request.
|
5
|
-
<%=
|
3
|
+
<% unless @entity.name.blank? %>
|
4
|
+
<%= t('activerecord.attributes.feedback_request.name') %>:
|
5
|
+
<%= @entity.name %>
|
6
|
+
<% end %>
|
7
|
+
<% unless @entity.email.blank? %>
|
8
|
+
|
9
|
+
<%= t('activerecord.attributes.feedback_request.email') %>:
|
10
|
+
<%= @entity.email %>
|
11
|
+
<% end %>
|
12
|
+
<% unless @entity.phone.blank? %>
|
13
|
+
|
14
|
+
<%= t('activerecord.attributes.feedback_request.phone') %>:
|
15
|
+
<%= @entity.phone %>
|
16
|
+
<% end %>
|
17
|
+
<% unless @entity.comment.blank? %>
|
18
|
+
|
19
|
+
<%= t('activerecord.attributes.feedback_request.comment') %>:
|
20
|
+
<%= @entity.comment %>
|
21
|
+
<% end %>
|
@@ -5,6 +5,7 @@
|
|
5
5
|
<ul>
|
6
6
|
<li><%= link_to(t('about.index.nav_text'), about_path) %></li>
|
7
7
|
<li><%= link_to(t('about.tos.nav_text'), tos_path) %></li>
|
8
|
+
<li><%= link_to(t('about.privacy.nav_text'), privacy_path) %></li>
|
8
9
|
<% if UserPrivilege.user_has_any_privilege?(current_user) %>
|
9
10
|
<li><%= link_to(t('admin.index.index.heading'), admin_path) %></li>
|
10
11
|
<% end %>
|
@@ -31,7 +31,7 @@
|
|
31
31
|
id: "#{model_name}_slug",
|
32
32
|
size: nil,
|
33
33
|
maxlength: LinkBlockItem::SLUG_LIMIT,
|
34
|
-
data:
|
34
|
+
data: {
|
35
35
|
check: :slug
|
36
36
|
}
|
37
37
|
)
|
@@ -101,10 +101,11 @@
|
|
101
101
|
<%=
|
102
102
|
f.text_area(
|
103
103
|
:body,
|
104
|
-
id:
|
105
|
-
cols:
|
106
|
-
rows:
|
107
|
-
|
104
|
+
id: "#{model_name}_body",
|
105
|
+
cols: 80,
|
106
|
+
rows: 5,
|
107
|
+
class: 'auto-expand',
|
108
|
+
data: {
|
108
109
|
check: :body
|
109
110
|
}
|
110
111
|
)
|
@@ -2,8 +2,8 @@
|
|
2
2
|
<%=
|
3
3
|
form_with(
|
4
4
|
model: entity,
|
5
|
-
html:
|
6
|
-
id:
|
5
|
+
html: {
|
6
|
+
id: "#{model_name}-form",
|
7
7
|
data: { check_url: check_link_blocks_path }
|
8
8
|
}
|
9
9
|
) do |f|
|
@@ -22,10 +22,10 @@
|
|
22
22
|
id: "#{model_name}_slug",
|
23
23
|
size: nil,
|
24
24
|
maxlength: LinkBlock::SLUG_LIMIT,
|
25
|
-
pattern:
|
26
|
-
title:
|
25
|
+
pattern: LinkBlock::SLUG_PATTERN_HTML,
|
26
|
+
title: t('.guidelines.slug'),
|
27
27
|
required: true,
|
28
|
-
data:
|
28
|
+
data: {
|
29
29
|
check: :slug
|
30
30
|
}
|
31
31
|
)
|
@@ -42,7 +42,7 @@
|
|
42
42
|
id: "#{model_name}_title",
|
43
43
|
size: nil,
|
44
44
|
maxlength: LinkBlock::TITLE_LIMIT,
|
45
|
-
data:
|
45
|
+
data: {
|
46
46
|
check: :title
|
47
47
|
}
|
48
48
|
)
|
@@ -56,11 +56,12 @@
|
|
56
56
|
<%=
|
57
57
|
f.text_area(
|
58
58
|
:lead,
|
59
|
-
id:
|
60
|
-
cols:
|
61
|
-
rows:
|
62
|
-
|
63
|
-
|
59
|
+
id: "#{model_name}_lead",
|
60
|
+
cols: 80,
|
61
|
+
rows: 5,
|
62
|
+
maxlength: LinkBlock::TEXT_LIMIT,
|
63
|
+
class: 'auto-expand',
|
64
|
+
data: {
|
64
65
|
check: :lead
|
65
66
|
}
|
66
67
|
)
|
@@ -74,11 +75,12 @@
|
|
74
75
|
<%=
|
75
76
|
f.text_area(
|
76
77
|
:footer_text,
|
77
|
-
id:
|
78
|
-
cols:
|
79
|
-
rows:
|
80
|
-
|
81
|
-
|
78
|
+
id: "#{model_name}_footer_text",
|
79
|
+
cols: 80,
|
80
|
+
rows: 5,
|
81
|
+
maxlength: LinkBlock::TEXT_LIMIT,
|
82
|
+
class: 'auto-expand',
|
83
|
+
data: {
|
82
84
|
check: :footer_text
|
83
85
|
}
|
84
86
|
)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<%
|
2
|
-
|
2
|
+
model_name = @entity.class.to_s.underscore
|
3
3
|
list = @entity.errors.full_messages.map { |m| "'#{j(m)}'" }
|
4
4
|
%>
|
5
|
-
Biovision.
|
5
|
+
Biovision.showListOfErrors('<%= model_name %>', [<%= raw(list.join(',')) %>]);
|
@@ -74,11 +74,12 @@ en:
|
|
74
74
|
languages:
|
75
75
|
english: "English"
|
76
76
|
russian: "Russian"
|
77
|
+
swedish: "Swedish"
|
77
78
|
list: "List"
|
78
79
|
locked: "Editing is forbidden"
|
79
80
|
"no": "No"
|
80
81
|
not_selected: "Not selected"
|
81
|
-
not_set: "Not
|
82
|
+
not_set: "Not set"
|
82
83
|
nothing_found: "Nothing was found"
|
83
84
|
page: "Page"
|
84
85
|
remove_image: "Remove image"
|
@@ -160,6 +161,8 @@ en:
|
|
160
161
|
message: "Page content is not ready, please come back later."
|
161
162
|
index:
|
162
163
|
nav_text: "About us"
|
164
|
+
privacy:
|
165
|
+
nav_text: "Privacy policy"
|
163
166
|
tos:
|
164
167
|
nav_text: "Terms of service"
|
165
168
|
total: "Total"
|
@@ -75,6 +75,7 @@ ru:
|
|
75
75
|
languages:
|
76
76
|
english: "Английский"
|
77
77
|
russian: "Русский"
|
78
|
+
swedish: "Шведский"
|
78
79
|
list: "К списку"
|
79
80
|
locked: "Редактирование зарещено"
|
80
81
|
"no": "Нет"
|
@@ -161,6 +162,8 @@ ru:
|
|
161
162
|
message: "Информация ещё не готова, зайдите позже"
|
162
163
|
index:
|
163
164
|
nav_text: "О проекте"
|
165
|
+
privacy:
|
166
|
+
nav_text: "Политика конфиденциальности"
|
164
167
|
tos:
|
165
168
|
nav_text: "Пользовательское соглашение"
|
166
169
|
total: "Всего"
|
@@ -0,0 +1,168 @@
|
|
1
|
+
sv:
|
2
|
+
activerecord:
|
3
|
+
models:
|
4
|
+
language: "Språk"
|
5
|
+
attributes:
|
6
|
+
language:
|
7
|
+
slug: "Pollett"
|
8
|
+
code: "Kod"
|
9
|
+
error_count:
|
10
|
+
zero: "inga fel"
|
11
|
+
one: "%{count} fel"
|
12
|
+
few: "%{count} fel"
|
13
|
+
many: "%{count} fel"
|
14
|
+
other: "%{count} fel"
|
15
|
+
errors:
|
16
|
+
messages:
|
17
|
+
extension_blacklist_error: "är svartlistat"
|
18
|
+
error:
|
19
|
+
bad_request:
|
20
|
+
title: "Dålig förfrågan"
|
21
|
+
heading: "Dålig förfrågan"
|
22
|
+
message: "Du har utfört en felaktig förfrågan, kolla och försök igen."
|
23
|
+
unauthorized:
|
24
|
+
title: "Obehörig"
|
25
|
+
heading: "Obehörig"
|
26
|
+
message: "Du har inte behörighet till den här sidan."
|
27
|
+
forbidden:
|
28
|
+
title: "Förbjuden"
|
29
|
+
heading: "Förbjuden"
|
30
|
+
message: "Denna åtgärd är förbjuden."
|
31
|
+
not_found:
|
32
|
+
title: "Hittades inte"
|
33
|
+
heading: "Hittades inte"
|
34
|
+
message: "Sidan hittades inte."
|
35
|
+
unprocessable_entity:
|
36
|
+
title: "Obearbetbar enhet"
|
37
|
+
heading: "Obearbetbar enhet"
|
38
|
+
message: "Din förfrågan kunde inte behandlas."
|
39
|
+
internal_server_error:
|
40
|
+
title: "Internt serverfel"
|
41
|
+
heading: "Internt serverfel"
|
42
|
+
message: "Något gick fel. Vänligen försök igen senare."
|
43
|
+
date:
|
44
|
+
nominative_months:
|
45
|
+
-
|
46
|
+
- "januari"
|
47
|
+
- "februari"
|
48
|
+
- "mars"
|
49
|
+
- "april"
|
50
|
+
- "maj"
|
51
|
+
- "juni"
|
52
|
+
- "juli"
|
53
|
+
- "augusti"
|
54
|
+
- "september"
|
55
|
+
- "oktober"
|
56
|
+
- "november"
|
57
|
+
- "december"
|
58
|
+
archive_year: " i år %{year}"
|
59
|
+
archive_month: " i %{month} av %{year}"
|
60
|
+
are_you_sure: "Är du säker?"
|
61
|
+
back: "Tillbaka"
|
62
|
+
copyright: "2018"
|
63
|
+
create: "Skapa"
|
64
|
+
created_at: "Skapad vid"
|
65
|
+
current_image: "Nuvarande bild"
|
66
|
+
delete: "Radera"
|
67
|
+
deleted_entity: "Delad enhet"
|
68
|
+
edit: "Redigera"
|
69
|
+
filter: "Filtrera"
|
70
|
+
find: "Hitta"
|
71
|
+
flags: "Flaggor"
|
72
|
+
hide: "Dölj"
|
73
|
+
home: "Hem"
|
74
|
+
languages:
|
75
|
+
english: "Engelsk"
|
76
|
+
russian: "Ryska"
|
77
|
+
swedish: "Svenska"
|
78
|
+
list: "Lista"
|
79
|
+
locked: "Redigering är förbjuden"
|
80
|
+
"no": "Nej"
|
81
|
+
not_selected: "Ej valt"
|
82
|
+
not_set: "Inte inställd"
|
83
|
+
nothing_found: "Ingenting hittades"
|
84
|
+
page: "Sida"
|
85
|
+
remove_image: "Ta bort bilden"
|
86
|
+
save: "Spara"
|
87
|
+
submit: "Lämna"
|
88
|
+
unlocked: "Redigering är tillåten"
|
89
|
+
untitled: "Ofrälse"
|
90
|
+
update: "Uppdatering"
|
91
|
+
updated_at: "Uppdaterad på"
|
92
|
+
view: "Se"
|
93
|
+
view_as_administrator: "Visa som administratör"
|
94
|
+
view_as_visitor: "Visa som besökare"
|
95
|
+
"yes": "Ja"
|
96
|
+
views:
|
97
|
+
pagination:
|
98
|
+
first: "⇤"
|
99
|
+
last: "⇥"
|
100
|
+
previous: "←"
|
101
|
+
next: "→"
|
102
|
+
truncate: "…"
|
103
|
+
shared:
|
104
|
+
flash_messages:
|
105
|
+
notice: "Meddelande"
|
106
|
+
warning: "Förmaning"
|
107
|
+
alert: "Varning"
|
108
|
+
meta_texts:
|
109
|
+
site_name: "example.com"
|
110
|
+
twitter_site: ""
|
111
|
+
twitter_creator: ""
|
112
|
+
admin:
|
113
|
+
index:
|
114
|
+
index:
|
115
|
+
title: "Administrering"
|
116
|
+
heading: "Administrering"
|
117
|
+
dashboard:
|
118
|
+
biovision_user:
|
119
|
+
heading: "Användarmodul"
|
120
|
+
biovision_track:
|
121
|
+
heading: "Metrik"
|
122
|
+
editorial:
|
123
|
+
heading: "Redaktionell"
|
124
|
+
settings:
|
125
|
+
heading: "Inställningar"
|
126
|
+
index:
|
127
|
+
navigation:
|
128
|
+
index:
|
129
|
+
index: "Huvudsida"
|
130
|
+
index:
|
131
|
+
title: "Hemsida"
|
132
|
+
description: "Ny webbplats på Biovision CMS"
|
133
|
+
heading: "Välkommen"
|
134
|
+
application:
|
135
|
+
not_found:
|
136
|
+
title: "Sidan hittades inte"
|
137
|
+
heading: "Sidan hittades inte"
|
138
|
+
message: "Sidan finns inte eller raderas"
|
139
|
+
unauthorized:
|
140
|
+
title: "Obehörig"
|
141
|
+
heading: "Obehörig"
|
142
|
+
message: "Du har inte behörighet till den här sidan."
|
143
|
+
service_unavailable:
|
144
|
+
title: "Tjänsten är inte tillgänglig"
|
145
|
+
heading: "Tjänsten är inte tillgänglig"
|
146
|
+
message: "Tjänsten är tillfälligt otillgänglig. Försök igen senare."
|
147
|
+
error:
|
148
|
+
title: "Serverfel"
|
149
|
+
heading: "Något gick fel"
|
150
|
+
message: "Internt serverfel har inträffat. Försök igen senare."
|
151
|
+
layouts:
|
152
|
+
admin:
|
153
|
+
footer:
|
154
|
+
support: "Stöd"
|
155
|
+
about:
|
156
|
+
contact:
|
157
|
+
nav_text: "Kontakta"
|
158
|
+
editable:
|
159
|
+
title: "Pågående"
|
160
|
+
heading: "Innehållet är inte klart"
|
161
|
+
message: "Sidinnehållet är inte klart, kom tillbaka senare."
|
162
|
+
index:
|
163
|
+
nav_text: "Om oss"
|
164
|
+
privacy:
|
165
|
+
nav_text: "Integritetspolicy"
|
166
|
+
tos:
|
167
|
+
nav_text: "Användarvillkor"
|
168
|
+
total: "Total"
|
@@ -1,9 +1,23 @@
|
|
1
1
|
en:
|
2
2
|
activerecord:
|
3
3
|
models:
|
4
|
+
editable_block: "Editable block"
|
4
5
|
editable_page: "Editable page"
|
5
6
|
stored_value: "Stored value"
|
6
7
|
attributes:
|
8
|
+
editable_block:
|
9
|
+
body: "Main text"
|
10
|
+
description: "Description"
|
11
|
+
footer: "Footer text"
|
12
|
+
image: "Image"
|
13
|
+
language: "Language"
|
14
|
+
language_id: "Language"
|
15
|
+
lead: "Lead (before main text)"
|
16
|
+
name: "Name"
|
17
|
+
raw_output: "Raw output"
|
18
|
+
slug: "Slug"
|
19
|
+
title: "Title (before lead)"
|
20
|
+
visible: "Visible"
|
7
21
|
editable_page:
|
8
22
|
body: "Body"
|
9
23
|
description: "Description"
|
@@ -20,6 +34,15 @@ en:
|
|
20
34
|
slug: "Slug"
|
21
35
|
value: "Value"
|
22
36
|
admin:
|
37
|
+
editable_blocks:
|
38
|
+
show:
|
39
|
+
title: "Editable block '%{slug}'"
|
40
|
+
nav_item:
|
41
|
+
text: "Editable blocks"
|
42
|
+
description: "Manage editable blocks"
|
43
|
+
index:
|
44
|
+
title: "Editable blocks"
|
45
|
+
heading: "Editable blocks"
|
23
46
|
editable_pages:
|
24
47
|
nav_item:
|
25
48
|
description: "Managing editable pages"
|
@@ -28,7 +51,7 @@ en:
|
|
28
51
|
heading: "Editable pages"
|
29
52
|
title: "Editable pages"
|
30
53
|
show:
|
31
|
-
title: "Editable page
|
54
|
+
title: "Editable page '%{name}'"
|
32
55
|
stored_values:
|
33
56
|
nav_item:
|
34
57
|
description: "Managing stored values"
|
@@ -37,7 +60,30 @@ en:
|
|
37
60
|
heading: "Stored values"
|
38
61
|
title: "Stored values"
|
39
62
|
show:
|
40
|
-
title: "Stored value
|
63
|
+
title: "Stored value '%{slug}'"
|
64
|
+
editable_blocks:
|
65
|
+
new:
|
66
|
+
heading: "New editable block"
|
67
|
+
nav_text: "Create"
|
68
|
+
title: "New editable block"
|
69
|
+
edit:
|
70
|
+
heading: "Editing editable block"
|
71
|
+
nav_text: "Edit"
|
72
|
+
title: "Editing editable block"
|
73
|
+
destroy:
|
74
|
+
success: "Editable block has been deleted"
|
75
|
+
form:
|
76
|
+
guidelines:
|
77
|
+
body: "Maximum 5000 characters."
|
78
|
+
description: "For administrative purposes. Maximum 250 characters."
|
79
|
+
footer: "Maximum 5000 characters."
|
80
|
+
image: "Image in JPG or PNG format with dimensions up to 1280×640 for background."
|
81
|
+
lead: "Maximum 5000 characters."
|
82
|
+
name: "Used for more convenient management. Maximum 100 characters."
|
83
|
+
slug: "Only latin letters, numbers, dash or underscore (except start or end). 2 to 50 characters."
|
84
|
+
title: "Maximum 100 characters."
|
85
|
+
update:
|
86
|
+
success: "Editable block has been updated"
|
41
87
|
editable_pages:
|
42
88
|
new:
|
43
89
|
title: "New editable page"
|