biovision-post 0.2.180325 → 0.21.190513.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +79 -13
- data/app/assets/images/biovision/post/icons/time.svg +6 -0
- data/app/assets/images/biovision/post/publisher_logo.png +0 -0
- data/app/assets/javascripts/biovision/post/biovision-posts.js +258 -0
- data/app/assets/stylesheets/biovision/post/admin/posts.scss +93 -0
- data/app/assets/stylesheets/biovision/post/posts.scss +88 -37
- data/app/controllers/admin/editorial_members_controller.rb +43 -0
- data/app/controllers/admin/featured_posts_controller.rb +23 -0
- data/app/controllers/admin/post_group_categories_controller.rb +19 -0
- data/app/controllers/admin/post_group_tags_controller.rb +19 -0
- data/app/controllers/admin/post_groups_controller.rb +62 -0
- data/app/controllers/admin/post_illustrations_controller.rb +26 -0
- data/app/controllers/admin/post_images_controller.rb +33 -0
- data/app/controllers/admin/post_links_controller.rb +19 -0
- data/app/controllers/admin/post_tags_controller.rb +30 -0
- data/app/controllers/admin/post_types_controller.rb +16 -4
- data/app/controllers/admin/posts_controller.rb +26 -2
- data/app/controllers/articles_controller.rb +23 -11
- data/app/controllers/authors_controller.rb +27 -0
- data/app/controllers/blog_posts_controller.rb +23 -11
- data/app/controllers/editorial_members_controller.rb +65 -0
- data/app/controllers/featured_posts_controller.rb +59 -0
- data/app/controllers/my/posts_controller.rb +124 -0
- data/app/controllers/news_controller.rb +23 -11
- data/app/controllers/post_categories_controller.rb +4 -14
- data/app/controllers/post_groups_controller.rb +76 -0
- data/app/controllers/post_illustrations_controller.rb +22 -0
- data/app/controllers/post_images_controller.rb +62 -0
- data/app/controllers/post_links_controller.rb +37 -0
- data/app/controllers/post_tags_controller.rb +41 -0
- data/app/controllers/posts_controller.rb +119 -14
- data/app/helpers/biovision_posts_helper.rb +114 -5
- data/app/jobs/application_job.rb +7 -0
- data/app/jobs/post_body_parser_job.rb +15 -0
- data/app/models/editorial_member.rb +92 -0
- data/app/models/editorial_member_post_type.rb +15 -0
- data/app/models/featured_post.rb +25 -0
- data/app/models/post.rb +203 -38
- data/app/models/post_category.rb +76 -54
- data/app/models/post_group.rb +84 -0
- data/app/models/post_group_category.rb +36 -0
- data/app/models/post_group_tag.rb +32 -0
- data/app/models/post_illustration.rb +62 -0
- data/app/models/post_image.rb +88 -0
- data/app/models/post_layout.rb +14 -0
- data/app/models/post_link.rb +2 -0
- data/app/models/post_post_category.rb +24 -0
- data/app/models/post_post_tag.rb +21 -0
- data/app/models/post_tag.rb +70 -0
- data/app/models/post_translation.rb +7 -0
- data/app/models/post_type.rb +18 -2
- data/app/models/post_zen_category.rb +6 -0
- data/app/models/zen_category.rb +21 -0
- data/app/services/post_manager.rb +52 -15
- data/app/services/post_parser.rb +80 -0
- data/app/uploaders/post_image_uploader.rb +9 -9
- data/app/views/admin/editorial_members/_nav_item.html.erb +2 -0
- data/app/views/admin/editorial_members/entity/_in_list.html.erb +37 -0
- data/app/views/admin/editorial_members/index.html.erb +15 -0
- data/app/views/admin/editorial_members/show.html.erb +71 -0
- data/app/views/admin/featured_posts/_add.html.erb +140 -0
- data/app/views/admin/featured_posts/_language.html.erb +14 -0
- data/app/views/admin/featured_posts/_nav_item.html.erb +2 -0
- data/app/views/admin/featured_posts/entity/_in_list.html.erb +26 -0
- data/app/views/admin/featured_posts/index.html.erb +18 -0
- data/app/views/admin/index/dashboard/_biovision_post.html.erb +32 -25
- data/app/views/admin/post_categories/entity/_in_list.html.erb +22 -6
- data/app/views/admin/post_categories/show.html.erb +6 -1
- data/app/views/admin/post_group_categories/entity/_in_list.html.erb +18 -0
- data/app/views/admin/post_group_tags/entity/_in_list.html.erb +18 -0
- data/app/views/admin/post_groups/_nav_item.html.erb +6 -0
- data/app/views/admin/post_groups/entity/_categories.html.erb +33 -0
- data/app/views/admin/post_groups/entity/_in_list.html.erb +25 -0
- data/app/views/admin/post_groups/index.html.erb +22 -0
- data/app/views/admin/post_groups/show.html.erb +65 -0
- data/app/views/admin/post_groups/tags.jbuilder +12 -0
- data/app/views/admin/post_illustrations/_nav_item.html.erb +6 -0
- data/app/views/admin/post_illustrations/entity/_in_list.html.erb +19 -0
- data/app/views/admin/post_illustrations/index.html.erb +23 -0
- data/app/views/admin/post_illustrations/show.html.erb +32 -0
- data/app/views/admin/post_images/_nav_item.html.erb +2 -0
- data/app/views/admin/post_images/entity/_in_list.html.erb +30 -0
- data/app/views/admin/post_images/index.html.erb +16 -0
- data/app/views/admin/post_images/show.html.erb +49 -0
- data/app/views/admin/post_links/entity/_in_list.html.erb +43 -0
- data/app/views/admin/post_tags/_nav_item.html.erb +2 -0
- data/app/views/admin/post_tags/entity/_in_list.html.erb +23 -0
- data/app/views/admin/post_tags/index.html.erb +16 -0
- data/app/views/admin/post_tags/posts.html.erb +18 -0
- data/app/views/admin/post_tags/show.html.erb +37 -0
- data/app/views/admin/post_types/authors.html.erb +23 -0
- data/app/views/admin/post_types/post_categories.html.erb +15 -4
- data/app/views/admin/post_types/post_tags.html.erb +18 -0
- data/app/views/admin/post_types/show.html.erb +28 -5
- data/app/views/admin/posts/_filter.html.erb +19 -0
- data/app/views/admin/posts/_nav_item.html.erb +3 -0
- data/app/views/admin/posts/_search_form.html.erb +13 -0
- data/app/views/admin/posts/entity/_in_list.html.erb +31 -7
- data/app/views/admin/posts/entity/_in_search.html.erb +8 -0
- data/app/views/admin/posts/entity/_links.html.erb +125 -0
- data/app/views/admin/posts/images.html.erb +22 -0
- data/app/views/admin/posts/index.html.erb +4 -0
- data/app/views/admin/posts/search.html.erb +21 -0
- data/app/views/admin/posts/search.jbuilder +26 -0
- data/app/views/admin/posts/show.html.erb +118 -18
- data/app/views/articles/category.html.erb +9 -9
- data/app/views/articles/index.html.erb +12 -9
- data/app/views/articles/show.html.erb +2 -4
- data/app/views/articles/tagged.html.erb +14 -0
- data/app/views/authors/_list.html.erb +18 -0
- data/app/views/authors/entity/_in_list.html.erb +9 -0
- data/app/views/authors/index.html.erb +10 -0
- data/app/views/authors/show.html.erb +31 -0
- data/app/views/blog_posts/category.html.erb +9 -9
- data/app/views/blog_posts/index.html.erb +12 -9
- data/app/views/blog_posts/show.html.erb +2 -4
- data/app/views/blog_posts/tagged.html.erb +14 -0
- data/app/views/editorial_members/_form.html.erb +107 -0
- data/app/views/editorial_members/edit.html.erb +17 -0
- data/app/views/editorial_members/new.html.erb +15 -0
- data/app/views/featured_posts/create.jbuilder +10 -0
- data/app/views/index/dashboard/_biovision_post.html.erb +18 -2
- data/app/views/my/index/dashboard/_biovision_post.html.erb +43 -0
- data/app/views/my/posts/_form.html.erb +357 -0
- data/app/views/my/posts/_list.html.erb +9 -0
- data/app/views/my/posts/_post.html.erb +80 -0
- data/app/views/my/posts/_preview.html.erb +35 -0
- data/app/views/my/posts/articles.html.erb +24 -0
- data/app/views/my/posts/blog_posts.html.erb +24 -0
- data/app/views/my/posts/edit.html.erb +19 -0
- data/app/views/my/posts/index.html.erb +14 -0
- data/app/views/my/posts/index/_navigation.html.erb +29 -0
- data/app/views/my/posts/new.html.erb +14 -0
- data/app/views/my/posts/news_index.html.erb +24 -0
- data/app/views/my/posts/show.html.erb +7 -0
- data/app/views/news/category.html.erb +9 -9
- data/app/views/news/index.html.erb +12 -9
- data/app/views/news/show.html.erb +2 -4
- data/app/views/news/tagged.html.erb +14 -0
- data/app/views/post_categories/_form.html.erb +82 -43
- data/app/views/post_groups/_form.html.erb +79 -0
- data/app/views/post_groups/edit.html.erb +17 -0
- data/app/views/post_groups/new.html.erb +15 -0
- data/app/views/post_groups/show.html.erb +10 -0
- data/app/views/post_images/_form.html.erb +121 -0
- data/app/views/post_images/edit.html.erb +19 -0
- data/app/views/post_images/new.html.erb +18 -0
- data/app/views/post_links/create.jbuilder +20 -0
- data/app/views/post_tags/_form.html.erb +26 -0
- data/app/views/post_tags/edit.html.erb +18 -0
- data/app/views/post_tags/new.html.erb +18 -0
- data/app/views/posts/_archive_dates.jbuilder +13 -0
- data/app/views/posts/_breadcrumbs.html.erb +4 -8
- data/app/views/posts/_calendar.html.erb +9 -0
- data/app/views/posts/_collection.html.erb +5 -0
- data/app/views/posts/_form.html.erb +204 -64
- data/app/views/posts/_list.html.erb +1 -1
- data/app/views/{articles/index.jbuilder → posts/_list.jbuilder} +3 -3
- data/app/views/posts/_post.html.erb +43 -16
- data/app/views/posts/_preview.html.erb +32 -21
- data/app/views/posts/_search.html.erb +6 -0
- data/app/views/posts/_wysiwyg.html.erb +25 -0
- data/app/views/posts/archive.jbuilder +3 -0
- data/app/views/posts/archive_day.html.erb +12 -0
- data/app/views/posts/category.html.erb +18 -0
- data/app/views/posts/entity/_gallery.html.erb +54 -0
- data/app/views/posts/entity/_linked_posts.html.erb +7 -0
- data/app/views/posts/entity/_metadata.html.erb +35 -12
- data/app/views/posts/entity/_publisher.html.erb +3 -1
- data/app/views/posts/form/_category_links.html.erb +32 -0
- data/app/views/posts/form/_gallery.html.erb +163 -0
- data/app/views/posts/index.html.erb +13 -0
- data/app/views/posts/index.jbuilder +1 -0
- data/app/views/posts/post_type/_category.html.erb +7 -0
- data/app/views/posts/post_type/_post_page.html.erb +9 -0
- data/app/views/posts/post_type/_posts.html.erb +5 -0
- data/app/views/posts/post_type/_tagged.html.erb +7 -0
- data/app/views/posts/rss.xml.erb +47 -0
- data/app/views/posts/search.html.erb +15 -0
- data/app/views/posts/show.html.erb +5 -3
- data/app/views/posts/tagged.html.erb +10 -0
- data/app/views/posts/tagged.jbuilder +1 -0
- data/app/views/posts/zen.xml.erb +42 -0
- data/config/locales/posts-en.yml +257 -19
- data/config/locales/posts-ru.yml +380 -14
- data/config/locales/posts-sv.yml +416 -0
- data/config/routes.rb +111 -15
- data/db/{migrate → amends}/20180124111113_add_language_to_posts.rb +0 -0
- data/db/{migrate → amends}/20180318215555_add_active_to_post_types.rb +0 -0
- data/db/amends/20180606120000_add_original_title_to_posts.rb +9 -0
- data/db/amends/20180606120001_add_time_required_to_posts.rb +11 -0
- data/db/amends/20180611111111_add_pubdate_and_translator_to_posts.rb +19 -0
- data/db/amends/20180618111111_add_default_category_name_to_post_types.rb +15 -0
- data/db/amends/20180703191919_add_rating_to_posts.rb +14 -0
- data/db/amends/20180810111111_add_explicit_to_posts.rb +11 -0
- data/db/amends/20180825111111_add_meta_description_to_post_categories.rb +11 -0
- data/db/amends/20180927111111_amend_editorial_member_about.rb +13 -0
- data/db/migrate/20170930000001_create_post_types.rb +98 -20
- data/db/migrate/20170930000010_create_posts.rb +194 -0
- data/db/migrate/20180706000000_create_editorial_members.rb +37 -0
- data/db/migrate/20180808000000_create_zen_categories.rb +42 -0
- data/db/migrate/20190202232323_add_spam_to_posts.rb +11 -0
- data/db/migrate/20190224212121_add_data_to_posts.rb +13 -0
- data/db/migrate/20190224212122_rename_post_image_source.rb +26 -0
- data/db/migrate/20190224212123_add_uuid_to_post_images.rb +10 -0
- data/db/migrate/20190313141414_convert_json_post_columns.rb +25 -0
- data/db/migrate/20190401101010_create_post_illustrations.rb +20 -0
- data/db/migrate/20190407101010_create_editorial_member_post_types.rb +18 -0
- data/db/migrate/20190410101010_add_avoid_parsing_to_posts.rb +14 -0
- data/db/migrate/20190410120000_create_post_groups.rb +47 -0
- data/db/migrate/20190412191919_add_nav_text_to_post_categories.rb +14 -0
- data/db/migrate/20190412212121_add_url_part_to_post_types.rb +26 -0
- data/db/migrate/20190420212121_create_post_layouts.rb +27 -0
- data/db/migrate/20190424161616_create_post_post_categories.rb +31 -0
- data/lib/biovision/post/version.rb +3 -1
- data/lib/tasks/posts.rake +6 -0
- metadata +170 -25
- data/app/assets/images/biovision/post/publisher_logo.svg +0 -3
- data/app/services/post_manager/article_handler.rb +0 -10
- data/app/services/post_manager/blog_post_handler.rb +0 -10
- data/app/services/post_manager/news_handler.rb +0 -10
- data/app/views/admin/index/dashboard/biovision_post/_additional_items.html.erb +0 -0
- data/app/views/blog_posts/index.jbuilder +0 -11
- data/app/views/news/index.jbuilder +0 -11
- data/app/views/post_categories/edit.jbuilder +0 -3
- data/app/views/post_categories/edit.js.erb +0 -1
- data/app/views/post_categories/new.jbuilder +0 -3
- data/app/views/post_categories/new.js.erb +0 -1
- data/db/migrate/20170930000002_create_post_categories.rb +0 -29
- data/db/migrate/20170930000003_create_posts.rb +0 -60
- data/db/migrate/20171218111111_add_meta_fields_to_posts.rb +0 -15
- data/db/migrate/20171219111112_add_author_fields_to_posts.rb +0 -11
- data/db/migrate/20180321100000_create_post_references.rb +0 -21
- data/db/migrate/20180321100001_create_post_notes.rb +0 -18
- data/db/migrate/20180321100002_create_post_links.rb +0 -20
@@ -0,0 +1,416 @@
|
|
1
|
+
sv:
|
2
|
+
post_count:
|
3
|
+
zero: "inga inlägg"
|
4
|
+
one: "%{count} inlägg"
|
5
|
+
few: "%{count} inlägg"
|
6
|
+
many: "%{count} inlägg"
|
7
|
+
other: "%{count} inlägg"
|
8
|
+
activerecord:
|
9
|
+
models:
|
10
|
+
editorial_member: "Redaktionell medlem"
|
11
|
+
featured_post: "Utvalda inlägg"
|
12
|
+
post: "Inlägg"
|
13
|
+
post_category: "Kategori av inlägg"
|
14
|
+
post_image: "Bild för inlägg"
|
15
|
+
post_post_tag: "Tag in inlägg"
|
16
|
+
post_tag: "Tag"
|
17
|
+
post_type: "Typ av inlägg"
|
18
|
+
post_zen_category: "Kategori av inlägg in Yandex.Zen"
|
19
|
+
zen_category: "Yandez.Zen kategori"
|
20
|
+
errors:
|
21
|
+
messages:
|
22
|
+
mismatches_post_type: "har annan posttyp"
|
23
|
+
models:
|
24
|
+
post_category:
|
25
|
+
attributes:
|
26
|
+
parent_id:
|
27
|
+
is_too_deep: "är för djupt"
|
28
|
+
attributes:
|
29
|
+
editorial_member:
|
30
|
+
about: "Om"
|
31
|
+
lead: "Kort beskrivning"
|
32
|
+
priority: "Sorteringsordning"
|
33
|
+
title: "Titel"
|
34
|
+
user: "Användare"
|
35
|
+
user_id: "Användare"
|
36
|
+
visible: "Synlig"
|
37
|
+
featured_post:
|
38
|
+
language: "Språk"
|
39
|
+
language_id: "Språk"
|
40
|
+
post: "Inlägg"
|
41
|
+
post_id: "Inlägg"
|
42
|
+
priority: "Sorteringsordning"
|
43
|
+
post:
|
44
|
+
allow_comments: "Tillåt kommentarer"
|
45
|
+
allow_votes: "Tillåt röster"
|
46
|
+
approved: "Godkänd"
|
47
|
+
author_name: "Författarens namn"
|
48
|
+
author_title: "Författarens titel"
|
49
|
+
author_url: "Författarens URL"
|
50
|
+
body: "Text"
|
51
|
+
created_at: "Skapad vid"
|
52
|
+
explicit: "Explicit innehåll"
|
53
|
+
image: "Bild"
|
54
|
+
image_alt_text: "Alt text för bild"
|
55
|
+
image_name: "Bildnamn"
|
56
|
+
image_source_link: "Bildförfattarlänk"
|
57
|
+
image_source_name: "Bildförfattarnamn"
|
58
|
+
language_id: "Språk"
|
59
|
+
lead: "Anteckning"
|
60
|
+
meta_description: "Beskrivning för metataggen"
|
61
|
+
meta_keywords: "Nyckelord för metataggen"
|
62
|
+
meta_title: "Titel för fönster"
|
63
|
+
original_post_id: "Ursprunglig post"
|
64
|
+
original_title: "Ursprunglig titel"
|
65
|
+
privacy: "Integritet"
|
66
|
+
post_category: "Kategori"
|
67
|
+
post_category_id: "Kategori"
|
68
|
+
post_type: "Typ"
|
69
|
+
post_type_id: "Typ"
|
70
|
+
publication_time: "Publiceringstid"
|
71
|
+
rating: "Betyg"
|
72
|
+
region_id: "Område"
|
73
|
+
show_owner: "Visa författare"
|
74
|
+
slug: "Pollett för URL"
|
75
|
+
source_link: "Källlänk"
|
76
|
+
source_name: "Källnamn"
|
77
|
+
tags_cache: "Taggar"
|
78
|
+
time_required: "Den tid som krävs för att läsa"
|
79
|
+
title: "Titel"
|
80
|
+
translation: "Översättning"
|
81
|
+
translator_name: "Översättarens namn"
|
82
|
+
user: "Författare"
|
83
|
+
uuid: "UUID"
|
84
|
+
video_url: "Video URL"
|
85
|
+
view_count: "Antal visningar"
|
86
|
+
visible: "Synlig"
|
87
|
+
post_category:
|
88
|
+
children_cache: "Barn cache"
|
89
|
+
meta_description: "Beskrivning för metataggen"
|
90
|
+
name: "Namn"
|
91
|
+
parent_id: "Förälder kategori"
|
92
|
+
parents_cache: "Föräldrarnas cache"
|
93
|
+
post_type: "Inlägg typ"
|
94
|
+
post_type_id: "Inlägg typ"
|
95
|
+
priority: "Sorteringsordning"
|
96
|
+
slug: "Pollett"
|
97
|
+
visible: "Synlig"
|
98
|
+
post_image:
|
99
|
+
caption: "Rubrik"
|
100
|
+
description: "Beskrivning"
|
101
|
+
image: "Bild"
|
102
|
+
image_alt_text: "Alt text för bild"
|
103
|
+
source_link: "Bildförfattarlänk"
|
104
|
+
source_name: "Bildförfattarnamn"
|
105
|
+
post: "Inlägg"
|
106
|
+
post_id: "Inlägg"
|
107
|
+
priority: "Sorteringsordning"
|
108
|
+
visible: "Synlig"
|
109
|
+
post_tag:
|
110
|
+
name: "Namn"
|
111
|
+
post_type: "Inlägg typ"
|
112
|
+
post_type_id: "Inlägg typ"
|
113
|
+
posts_count: "Antal inlägg"
|
114
|
+
slug: "Pollett"
|
115
|
+
post_type:
|
116
|
+
kategori_depth: "Kategori djup"
|
117
|
+
default_category_name: "Standard kategori namn"
|
118
|
+
name: "Namn"
|
119
|
+
slug: "Pollett"
|
120
|
+
post_zen_category:
|
121
|
+
post: "Inlägg"
|
122
|
+
post_id: "Inlägg"
|
123
|
+
zen_category: "Yandex.Zen kategori"
|
124
|
+
zen_category_id: "Yandex.Zen kategori"
|
125
|
+
zen_category:
|
126
|
+
name: "Namn"
|
127
|
+
posts_count: "Antal inlägg"
|
128
|
+
admin:
|
129
|
+
editorial_members:
|
130
|
+
nav_item:
|
131
|
+
description: "Hantera redaktionella medlemmar"
|
132
|
+
text: "Redaktionella medlemmar"
|
133
|
+
index:
|
134
|
+
heading: "Redaktionella medlemmar"
|
135
|
+
title: "Redaktionella medlemmar"
|
136
|
+
show:
|
137
|
+
heading: "Redaktionella medlemmar"
|
138
|
+
title: "Redaktionell: %{name}"
|
139
|
+
featured_posts:
|
140
|
+
nav_item:
|
141
|
+
description: "Hantera lista över utvalda inlägg"
|
142
|
+
text: "Utvalda inlägg"
|
143
|
+
index:
|
144
|
+
add: "Lägg till"
|
145
|
+
heading: "Utvalda inlägg"
|
146
|
+
title: "Utvalda inlägg"
|
147
|
+
post_categories:
|
148
|
+
show:
|
149
|
+
title: "Inlägg kategori '%{name}'"
|
150
|
+
children: "Barn"
|
151
|
+
new_child: "Lägg till barnkategori"
|
152
|
+
post_images:
|
153
|
+
nav_item:
|
154
|
+
description: "Hantera efterbilder"
|
155
|
+
text: "Inlägg bilder"
|
156
|
+
index:
|
157
|
+
heading: "Inlägg bilder"
|
158
|
+
title: "Inlägg bilder, sida %{page}"
|
159
|
+
show:
|
160
|
+
title: "Inlägg bild '%{caption}'"
|
161
|
+
post_tags:
|
162
|
+
nav_item:
|
163
|
+
description: "Hantera postlistor"
|
164
|
+
text: "Inlägg taggar"
|
165
|
+
index:
|
166
|
+
heading: "Inlägg taggar"
|
167
|
+
title: "Inlägg taggar, sida %{page}"
|
168
|
+
show:
|
169
|
+
title: "Inlägg tag '%{name}'"
|
170
|
+
posts:
|
171
|
+
heading: "Inläggs"
|
172
|
+
nav_text: "Inläggs"
|
173
|
+
title: "Inläggs tagged '%{name}', sida %{page}"
|
174
|
+
post_types:
|
175
|
+
nav_item:
|
176
|
+
description: "Hantera posttyper och kategorier"
|
177
|
+
text: "Inlägg typer"
|
178
|
+
index:
|
179
|
+
heading: "Inlägg typer"
|
180
|
+
title: "Inlägg typer"
|
181
|
+
show:
|
182
|
+
title: "Inlägg type '%{name}'"
|
183
|
+
children: "Children typer"
|
184
|
+
post_categories:
|
185
|
+
heading: "Inlägg categories"
|
186
|
+
nav_text: "Categories"
|
187
|
+
title: "Categories of post type '%{name}'"
|
188
|
+
post_tags:
|
189
|
+
heading: "Inlägg taggar"
|
190
|
+
nav_text: "Taggar"
|
191
|
+
title: "Taggar av posttyp '%{name}', sida %{page}"
|
192
|
+
new_post:
|
193
|
+
title: "Nytt inlägg av typ '%{name}'"
|
194
|
+
heading: "Lägg till inlägg"
|
195
|
+
posts:
|
196
|
+
nav_item:
|
197
|
+
description: "Hantera inlägg"
|
198
|
+
text: "Inläggs"
|
199
|
+
index:
|
200
|
+
heading: "Inläggs"
|
201
|
+
title: "Inläggs, sida %{page}"
|
202
|
+
show:
|
203
|
+
title: "Inlägg '%{name}'"
|
204
|
+
bilder: "Bilder"
|
205
|
+
bilder:
|
206
|
+
heading: "Bilder"
|
207
|
+
nav_text: "Bilder"
|
208
|
+
title: "Bilder för inlägg '%{post}'"
|
209
|
+
entity:
|
210
|
+
links:
|
211
|
+
heading: "Länkade inlägg"
|
212
|
+
search: "Sök"
|
213
|
+
index:
|
214
|
+
dashboard:
|
215
|
+
biovision_post:
|
216
|
+
heading: "Inläggs modul"
|
217
|
+
editorial_members:
|
218
|
+
new:
|
219
|
+
heading: "Ny redaktionell medlem"
|
220
|
+
nav_text: "Lägg till användare"
|
221
|
+
title: "Ny redaktionell medlem"
|
222
|
+
edit:
|
223
|
+
heading: "Redigerande redaktionell medlem"
|
224
|
+
nav_text: "Redigera"
|
225
|
+
title: "Redigerande redaktionell medlem"
|
226
|
+
update:
|
227
|
+
success: "Redaktionell medlem har uppdaterats"
|
228
|
+
destroy:
|
229
|
+
success: "Redaktionell medlem har tagits bort"
|
230
|
+
form:
|
231
|
+
guidelines:
|
232
|
+
about: "Max 5000 tecken."
|
233
|
+
lead: "Max 170 tecken."
|
234
|
+
title: "Max 150 tecken."
|
235
|
+
post_categories:
|
236
|
+
new:
|
237
|
+
title: "Ny postkategori"
|
238
|
+
heading: "Lägger till postkategori"
|
239
|
+
edit:
|
240
|
+
title: "Redigerar postkategori"
|
241
|
+
heading: "Redigerar postkategori"
|
242
|
+
forbidden: "Redigerar detta postkategori är förbjudet"
|
243
|
+
update:
|
244
|
+
success: "Inlägg kategori har uppdaterats"
|
245
|
+
destroy:
|
246
|
+
success: "Inlägg kategori har tagits bort"
|
247
|
+
form:
|
248
|
+
guidelines:
|
249
|
+
meta_description: "Max 250 tecken."
|
250
|
+
name: "Max 50 tecken."
|
251
|
+
slug: "Används i URL. Endast latinska bokstäver, siffror och bindestreck (förutom första och sista tecken), högst 50 tecken."
|
252
|
+
post_tags:
|
253
|
+
new:
|
254
|
+
heading: "Ny post tagg"
|
255
|
+
nav_text: "Skapa"
|
256
|
+
title: "Lägger till postmärke"
|
257
|
+
edit:
|
258
|
+
heading: "Redigerar post tagg"
|
259
|
+
nav_text: "Redigera"
|
260
|
+
title: "Redigerar post tagg"
|
261
|
+
update:
|
262
|
+
success: "Inlägg tagg har uppdaterats"
|
263
|
+
destroy:
|
264
|
+
success: "Inlägg tagg har tagits bort"
|
265
|
+
form:
|
266
|
+
guidelines:
|
267
|
+
name: "Max 50 tecken."
|
268
|
+
post_images:
|
269
|
+
new:
|
270
|
+
heading: "Ny postbild"
|
271
|
+
nav_text: "Lägg till bild"
|
272
|
+
title: "Ny postbild"
|
273
|
+
edit:
|
274
|
+
heading: "Redigerar postbild"
|
275
|
+
nav_text: "Redigera"
|
276
|
+
title: "Redigerar postbild"
|
277
|
+
update:
|
278
|
+
success: "Inlägg bild har uppdaterats"
|
279
|
+
destroy:
|
280
|
+
success: "Inlägg bild har tagits bort"
|
281
|
+
form:
|
282
|
+
guidelines:
|
283
|
+
caption: "Max 255 tecken."
|
284
|
+
description: "Max 5000 tecken."
|
285
|
+
image: "Maximala dimensioner är 3000×3000, format — JPG eller PNG."
|
286
|
+
image_alt_text: "Kort beskrivning av bilden. Max 200 tecken."
|
287
|
+
source_link: "Kommer att öppnas när man klickar på författarnamn."
|
288
|
+
source_name: "Person- eller organisationsnamn. Kommer att visas nära bilden."
|
289
|
+
placeholders:
|
290
|
+
source_link: "https://example.org/user42"
|
291
|
+
posts:
|
292
|
+
edit:
|
293
|
+
title: "Redigerar inlägg"
|
294
|
+
heading: "Redigerar inlägg"
|
295
|
+
destroy:
|
296
|
+
success: "Inlägg har tagits bort"
|
297
|
+
form:
|
298
|
+
guidelines:
|
299
|
+
author_name: "Om det anges, visas istället för nuvarande användare"
|
300
|
+
author_title: "Till exempel ockupation av status"
|
301
|
+
author_url: "Om det anges kommer länk till författare här"
|
302
|
+
image: "Maximala dimensioner är 3000×3000, format — JPG eller PNG."
|
303
|
+
image_alt_text: "Kort beskrivning av bilden. Max 200 tecken."
|
304
|
+
image_name: "Kommer att visas som bildtextning."
|
305
|
+
image_source_link: "Kommer att öppnas när man klickar på författarnamn."
|
306
|
+
image_source_name: "Person- eller organisationsnamn. Kommer att visas nära bilden."
|
307
|
+
language_id: "Språk"
|
308
|
+
lead: "Inlägg essens, maximalt 5000 tecken."
|
309
|
+
meta_description: "50–55 ord. Max 250 tecken"
|
310
|
+
meta_keywords: "Max 250 tecken."
|
311
|
+
meta_title: "Om det anges, visas som fönster titel istället för post titel. Max 250 tecken."
|
312
|
+
original_title: "Titel som det var för källan. Max 250 tecken."
|
313
|
+
slug: "Endast latinska bokstäver, siffror, prickar, streck eller understreck. Max 200 tecken."
|
314
|
+
source: "Inlägg källnamn (t.ex. byrånamn)"
|
315
|
+
source_link: "Kommer att öppnas när man klickar på källnamn"
|
316
|
+
time_required: "På några minuter"
|
317
|
+
title: "Max 255 tecken."
|
318
|
+
placeholders:
|
319
|
+
image_source_link: "https://example.com/user42"
|
320
|
+
source_link: "https://example.org/posts/123"
|
321
|
+
tags: "Taggar"
|
322
|
+
gallery:
|
323
|
+
heading: "Bildgalleri"
|
324
|
+
add_image: "Lägg till bild"
|
325
|
+
post:
|
326
|
+
source: "Källa"
|
327
|
+
image_credit: "Bildkredit"
|
328
|
+
index:
|
329
|
+
title: "Inläggs, sida %{page}"
|
330
|
+
nav_text: "Inläggs"
|
331
|
+
heading: "Inläggs"
|
332
|
+
tagged:
|
333
|
+
title: "Inläggs taggade '%{tag_name}', sida %{page}"
|
334
|
+
entity:
|
335
|
+
linked_posts:
|
336
|
+
heading: "Läs också"
|
337
|
+
gallery:
|
338
|
+
heading: "Bildgalleri"
|
339
|
+
rss:
|
340
|
+
title: "Posts of site on Biovision CMS"
|
341
|
+
description: "RSS feed of site on Biovision CMS"
|
342
|
+
calendar:
|
343
|
+
heading: "Arkiv"
|
344
|
+
index:
|
345
|
+
dashboard:
|
346
|
+
biovision_post:
|
347
|
+
heading: "Nya Inlägg"
|
348
|
+
more: "Mer"
|
349
|
+
articles:
|
350
|
+
index:
|
351
|
+
title: "Artiklar, sida %{page}"
|
352
|
+
heading: "Artiklar"
|
353
|
+
nav_text: "Artiklar"
|
354
|
+
kategori:
|
355
|
+
title: "Artiklar i kategori '%{kategori}', sida %{page}"
|
356
|
+
tagged:
|
357
|
+
title: "Artiklar taggade '%{tag_name}', sida %{page}"
|
358
|
+
blog_posts:
|
359
|
+
index:
|
360
|
+
title: "Blogginlägg, sida %{page}"
|
361
|
+
heading: "Blogginlägg"
|
362
|
+
nav_text: "Blogg"
|
363
|
+
kategori:
|
364
|
+
title: "Blogginlägg i kategori '%{kategori}', sida %{page}"
|
365
|
+
tagged:
|
366
|
+
title: "Blogginlägg taggade '%{tag_name}', sida %{page}"
|
367
|
+
news:
|
368
|
+
index:
|
369
|
+
title: "Nyheter, sida %{page}"
|
370
|
+
heading: "Nyheter"
|
371
|
+
nav_text: "Nyheter"
|
372
|
+
kategori:
|
373
|
+
title: "Nyheter i kategori '%{kategori}', sida %{page}"
|
374
|
+
tagged:
|
375
|
+
title: "Nyheter taggade '%{tag_name}', sida %{page}"
|
376
|
+
my:
|
377
|
+
index:
|
378
|
+
dashboard:
|
379
|
+
biovision_post:
|
380
|
+
heading: "Mina inlägg"
|
381
|
+
posts:
|
382
|
+
articles:
|
383
|
+
heading: "Mina artiklar"
|
384
|
+
nav_text: "Artiklar"
|
385
|
+
title: "Mina artiklar, sida %{page}"
|
386
|
+
blog_posts:
|
387
|
+
heading: "Min blogg"
|
388
|
+
nav_text: "Blogg"
|
389
|
+
title: "Min blogg, sida %{page}"
|
390
|
+
index:
|
391
|
+
heading: "Mina inlägg"
|
392
|
+
nav_text: "Alla inlägg"
|
393
|
+
title: "Mina inlägg, sida %{page}"
|
394
|
+
new_article:
|
395
|
+
heading: "Ny artikel"
|
396
|
+
nav_text: "Skapa artikel"
|
397
|
+
title: "Lägga till artiklar"
|
398
|
+
new_blog_post:
|
399
|
+
heading: "Ny blogginmatning"
|
400
|
+
nav_text: "Skapa blogginmatning"
|
401
|
+
title: "Lägga till blogginmatning"
|
402
|
+
new_news:
|
403
|
+
heading: "Nya nyheter"
|
404
|
+
nav_text: "Skapa nyheter"
|
405
|
+
title: "Lägger till nyheter"
|
406
|
+
news_index:
|
407
|
+
heading: "Mina nyheter"
|
408
|
+
nav_text: "Nyheter"
|
409
|
+
title: "Mina nyheter, sida %{page}"
|
410
|
+
new:
|
411
|
+
title: "Lägger till inlägg"
|
412
|
+
heading: "Lägger till inlägg"
|
413
|
+
edit:
|
414
|
+
title: "Redigerar mitt inlägg"
|
415
|
+
nav_text: "Redigera"
|
416
|
+
heading: "Redigerar inlägg"
|
data/config/routes.rb
CHANGED
@@ -1,53 +1,149 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
Rails.application.routes.draw do
|
2
4
|
category_slug_pattern = /[a-z]+[-_0-9a-z]*[0-9a-z]/
|
3
|
-
post_slug_pattern
|
5
|
+
post_slug_pattern = /[a-z0-9]+[-_.a-z0-9]*[a-z0-9]+/
|
6
|
+
archive_constraints = { year: /19\d\d|2[01]\d\d/, month: /0[1-9]|1[0-2]/, day: /0[1-9]|[12]\d|3[01]/ }
|
7
|
+
|
8
|
+
concern :priority do
|
9
|
+
post :priority, on: :member, defaults: { format: :json }
|
10
|
+
end
|
11
|
+
|
12
|
+
concern :toggle do
|
13
|
+
post :toggle, on: :member, defaults: { format: :json }
|
14
|
+
end
|
4
15
|
|
5
|
-
|
16
|
+
concern :check do
|
17
|
+
post :check, on: :collection, defaults: { format: :json }
|
18
|
+
end
|
6
19
|
|
7
|
-
|
8
|
-
|
9
|
-
|
20
|
+
concern :lock do
|
21
|
+
member do
|
22
|
+
put :lock, defaults: { format: :json }
|
23
|
+
delete :lock, action: :unlock, defaults: { format: :json }
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
resources :post_categories, :posts, :post_tags, :post_images, only: %i[update destroy]
|
28
|
+
resources :post_links, only: :destroy
|
29
|
+
resources :editorial_members, only: %i[update destroy]
|
30
|
+
resources :featured_posts, only: :destroy
|
31
|
+
resources :post_illustrations, only: :create
|
32
|
+
resources :post_groups, only: %i[update destroy]
|
33
|
+
|
34
|
+
scope '/(:locale)', constraints: { locale: /ru|en|sv|cn/ } do
|
35
|
+
resources :post_categories, except: %i[index show update destroy]
|
36
|
+
resources :posts, except: %i[new update destroy] do
|
37
|
+
collection do
|
38
|
+
get 'search'
|
39
|
+
get 'categories/:category_slug' => :category, as: :posts_category, constraints: { category_slug: category_slug_pattern }
|
40
|
+
get 'tagged/(:tag_name)' => :tagged, as: :tagged, constraints: { tag_name: /[^\/]+?/ }
|
41
|
+
get 'archive/(:year)(-:month)(-:day)' => :archive, as: :archive, constraints: archive_constraints
|
42
|
+
get 'rss/zen.xml' => :zen, defaults: { format: :xml }
|
43
|
+
get 'rss.xml' => :rss, as: :rss, defaults: { format: :xml }
|
44
|
+
get ':category_slug' => :category, as: :short_category, constraints: { category_slug: category_slug_pattern }
|
45
|
+
get ':id-:slug' => :show, constraints: { id: /\d+/, slug: post_slug_pattern }
|
46
|
+
end
|
47
|
+
end
|
48
|
+
resources :post_tags, only: :edit
|
49
|
+
resources :post_images, only: %i[edit create]
|
50
|
+
resources :post_links, only: :create
|
51
|
+
resources :editorial_members, only: %i[new create edit]
|
52
|
+
resources :featured_posts, only: :create
|
53
|
+
resources :post_groups, only: %i[show new create edit], concerns: :check
|
10
54
|
|
11
55
|
scope :articles, controller: :articles do
|
12
56
|
get '/' => :index, as: :articles
|
57
|
+
get 'archive/(:year)(-:month)(-:day)' => :archive, as: :articles_archive, constraints: archive_constraints
|
58
|
+
get 'tagged/(:tag_name)' => :tagged, as: :tagged_articles, constraints: { tag_name: /[^\/]+?/ }
|
13
59
|
get '/:category_slug' => :category, as: :articles_category, constraints: { category_slug: category_slug_pattern }
|
14
60
|
get '/:post_id-:post_slug' => :show, as: :show_article, constraints: { post_id: /\d+/, post_slug: post_slug_pattern }
|
15
61
|
end
|
16
62
|
|
17
63
|
scope :news, controller: :news do
|
18
64
|
get '/' => :index, as: :news_index
|
65
|
+
get 'archive/(:year)(-:month)(-:day)' => :archive, as: :news_archive, constraints: archive_constraints
|
66
|
+
get 'tagged/(:tag_name)' => :tagged, as: :tagged_news, constraints: { tag_name: /[^\/]+?/ }
|
19
67
|
get '/:category_slug' => :category, as: :news_category, constraints: { category_slug: category_slug_pattern }
|
20
68
|
get '/:post_id-:post_slug' => :show, as: :show_news, constraints: { post_id: /\d+/, post_slug: post_slug_pattern }
|
21
69
|
end
|
22
70
|
|
23
71
|
scope :blog_posts, controller: :blog_posts do
|
24
72
|
get '/' => :index, as: :blog_posts
|
73
|
+
get 'archive/(:year)(-:month)(-:day)' => :archive, as: :blog_posts_archive, constraints: archive_constraints
|
74
|
+
get 'tagged/(:tag_name)' => :tagged, as: :tagged_blog_posts, constraints: { tag_name: /[^\/]+?/ }
|
25
75
|
get '/:category_slug' => :category, as: :blog_posts_category, constraints: { category_slug: category_slug_pattern }
|
26
76
|
get '/:post_id-:post_slug' => :show, as: :show_blog_post, constraints: { post_id: /\d+/, post_slug: post_slug_pattern }
|
27
77
|
end
|
28
78
|
|
79
|
+
scope :authors, controller: 'authors' do
|
80
|
+
get '/' => :index, as: :authors
|
81
|
+
get ':slug' => :show, as: :author
|
82
|
+
end
|
83
|
+
|
29
84
|
namespace :admin do
|
30
|
-
resources :post_types, only: [
|
85
|
+
resources :post_types, only: %i[index show] do
|
31
86
|
member do
|
32
87
|
get :post_categories
|
33
88
|
get :new_post
|
89
|
+
get :post_tags
|
90
|
+
get :authors
|
34
91
|
end
|
35
92
|
end
|
36
|
-
|
93
|
+
|
94
|
+
resources :post_categories, only: :show, concerns: %i[toggle priority]
|
95
|
+
|
96
|
+
resources :posts, only: %i[index show], concerns: %i[lock toggle] do
|
97
|
+
get 'search', on: :collection
|
98
|
+
get 'images', on: :member
|
99
|
+
end
|
100
|
+
|
101
|
+
resources :post_tags, only: %i[index show] do
|
102
|
+
get 'posts', on: :member
|
103
|
+
end
|
104
|
+
|
105
|
+
resources :post_illustrations, only: %i[index show]
|
106
|
+
resources :post_images, only: %i[index show], concerns: %i[toggle priority]
|
107
|
+
|
108
|
+
resources :post_groups, only: %i[index show], concerns: %i[toggle priority] do
|
37
109
|
member do
|
38
|
-
put '
|
39
|
-
delete '
|
40
|
-
|
41
|
-
|
110
|
+
put 'categories/:category_id' => :add_category, as: :category
|
111
|
+
delete 'categories/:category_id' => :remove_category
|
112
|
+
put 'tags/:tag_id' => :add_tag, as: :tag
|
113
|
+
delete 'tags/:tag_id' => :remove_tag
|
114
|
+
get :tags, defaults: { format: :json }
|
42
115
|
end
|
43
116
|
end
|
44
|
-
|
117
|
+
scope 'post_group_categories/:id', controller: :post_group_categories do
|
118
|
+
post 'priority' => :priority, as: :priority_post_group_category, defaults: { format: :json }
|
119
|
+
end
|
120
|
+
scope 'post_group_tags/:id', controller: :post_group_tags do
|
121
|
+
post 'priority' => :priority, as: :priority_post_group_tag, defaults: { format: :json }
|
122
|
+
end
|
123
|
+
|
124
|
+
resources :editorial_members, only: %i[index show], concerns: %i[toggle priority] do
|
45
125
|
member do
|
46
|
-
put '
|
47
|
-
delete '
|
48
|
-
post 'toggle', defaults: { format: :json }
|
126
|
+
put 'post_types/:post_type_id' => :add_post_type, as: :post_type
|
127
|
+
delete 'post_types/:post_type_id' => :remove_post_type
|
49
128
|
end
|
50
129
|
end
|
130
|
+
|
131
|
+
resources :featured_posts, only: :index, concerns: :priority
|
132
|
+
|
133
|
+
scope 'post_links', controller: :post_links do
|
134
|
+
post ':id/priority' => :priority, as: :priority_post_link, defaults: { format: :json }
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
138
|
+
namespace :my do
|
139
|
+
get 'articles' => 'posts#articles'
|
140
|
+
get 'news' => 'posts#news_index'
|
141
|
+
get 'blog' => 'posts#blog_posts'
|
142
|
+
get 'articles/new' => 'posts#new_article', as: :new_article
|
143
|
+
get 'news/new' => 'posts#new_news', as: :new_news
|
144
|
+
get 'blog_posts/new' => 'posts#new_blog_post', as: :new_blog_post
|
145
|
+
|
146
|
+
resources :posts, except: :new
|
51
147
|
end
|
52
148
|
end
|
53
149
|
end
|