spina-conferences-primer_theme 0.3.4 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/config/spina_conferences_primer_theme_manifest.js +1 -0
- data/app/assets/stylesheets/spina/conferences/primer_theme/application.sass +5 -0
- data/app/controllers/spina/conferences/primer_theme/conferences/application_controller.rb +16 -0
- data/app/controllers/spina/conferences/primer_theme/conferences/conferences_controller.rb +72 -0
- data/app/controllers/spina/conferences/primer_theme/conferences/presentations_controller.rb +42 -0
- data/app/controllers/spina/conferences/primer_theme/journal/application_controller.rb +13 -0
- data/app/controllers/spina/conferences/primer_theme/journal/articles_controller.rb +56 -0
- data/app/controllers/spina/conferences/primer_theme/journal/issues_controller.rb +49 -0
- data/app/helpers/spina/conferences/primer_theme/application_helper.rb +4 -4
- data/app/views/conferences_primer_theme/pages/embedded_form.html.haml +9 -0
- data/app/views/layouts/spina/conferences/primer_theme/application.html.haml +2 -1
- data/app/views/layouts/spina/conferences/primer_theme/{conferences.html.haml → conferences/conferences.html.haml} +0 -0
- data/app/views/layouts/spina/conferences/primer_theme/{presentations.html.haml → conferences/presentations.html.haml} +0 -0
- data/app/views/layouts/spina/conferences/primer_theme/journal/articles.html.haml +2 -0
- data/app/views/layouts/spina/conferences/primer_theme/journal/issues.html.haml +2 -0
- data/app/views/spina/application/_footer.html.haml +17 -15
- data/app/views/spina/application/_mobile_navigation_items.html.haml +2 -2
- data/app/views/spina/application/_navigation.html.haml +11 -9
- data/app/views/spina/conferences/primer_theme/conferences/{_conference.html.haml → conferences/_conference.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_event.html.haml → conferences/_event.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_events.html.haml → conferences/_events.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_header.html.haml → conferences/_header.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_institution.html.haml → conferences/_institution.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_institution_logo.html.haml → conferences/_institution_logo.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_presentation.html.haml → conferences/_presentation.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{_presentation_type.html.haml → conferences/_presentation_type.html.haml} +1 -1
- data/app/views/spina/conferences/primer_theme/conferences/{_presentations.html.haml → conferences/_presentations.html.haml} +2 -2
- data/app/views/spina/conferences/primer_theme/conferences/{_submission_flash.html.haml → conferences/_submission_flash.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{index.html.haml → conferences/index.html.haml} +0 -0
- data/app/views/spina/conferences/primer_theme/conferences/{show.html.haml → conferences/show.html.haml} +3 -3
- data/app/views/spina/conferences/primer_theme/{kaminari → conferences/kaminari}/_gap.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{kaminari → conferences/kaminari}/_next_page.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{kaminari → conferences/kaminari}/_page.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{kaminari → conferences/kaminari}/_paginator.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{kaminari → conferences/kaminari}/_prev_page.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{presentations → conferences/presentations}/_abstract.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{presentations → conferences/presentations}/_attachment.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{presentations → conferences/presentations}/_attachments.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/{presentations → conferences/presentations}/show.html.haml +0 -0
- data/app/views/spina/conferences/primer_theme/journal/articles/_authorship.html.haml +6 -0
- data/app/views/spina/conferences/primer_theme/journal/articles/show.html.haml +60 -0
- data/app/views/spina/conferences/primer_theme/journal/issues/_article.html.haml +15 -0
- data/app/views/spina/conferences/primer_theme/journal/issues/_issue.html.haml +17 -0
- data/app/views/spina/conferences/primer_theme/journal/issues/_issue_cover.html.haml +6 -0
- data/app/views/spina/conferences/primer_theme/journal/issues/index.html.haml +30 -0
- data/app/views/spina/conferences/primer_theme/journal/issues/show.html.haml +27 -0
- data/config/initializers/themes/conferences_primer_theme.rb +18 -1
- data/config/locales/en.yml +79 -54
- data/config/routes.rb +7 -1
- data/lib/spina/conferences/primer_theme.rb +3 -4
- data/lib/spina/conferences/primer_theme/version.rb +1 -1
- metadata +51 -38
- data/app/controllers/spina/conferences/primer_theme/application_controller.rb +0 -14
- data/app/controllers/spina/conferences/primer_theme/conferences_controller.rb +0 -70
- data/app/controllers/spina/conferences/primer_theme/presentations_controller.rb +0 -40
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a8a85cdf19e437cc1bcfbbac3a0410c9936c7937e0fad5cfd43b69d50e220142
|
4
|
+
data.tar.gz: e61eb65c953c3c0f960594b433bbc053a0d6e3c4f78968bd61cfb60f01e11d14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e79f15190f9f206e35e50d073d88e1db00ee4b7b7fe68b890df6f0912e439a449a2ab74d14b1847b9d16348e4704778102b9391aa143d67366310ca7bae0598e
|
7
|
+
data.tar.gz: b7d8086273db0c61bf6734c3ef2bb299b46539f634e2b1dafcf2dd730c7e343baee10b1199bb3c7efdc766ef268b3451465b5c1b1c72c9aeb27259fcb0f75b4a
|
@@ -1,6 +1,7 @@
|
|
1
1
|
//= link_directory ../stylesheets/spina/conferences/primer_theme .css
|
2
2
|
//= link_directory ../javascripts/spina/conferences/primer_theme .js
|
3
3
|
//= link spina_admin_conferences_manifest.js
|
4
|
+
//= link spina_admin_journal_manifest.js
|
4
5
|
|
5
6
|
//= link @github/details-dialog-element/dist/index.js
|
6
7
|
//= link @github/include-fragment-element/dist/index.js
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spina
|
4
|
+
module Conferences
|
5
|
+
module PrimerTheme
|
6
|
+
module Conferences
|
7
|
+
# Base class from which controllers inherit
|
8
|
+
class ApplicationController < Spina::ApplicationController
|
9
|
+
def cookies_info
|
10
|
+
render partial: 'cookies'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spina
|
4
|
+
module Conferences
|
5
|
+
module PrimerTheme
|
6
|
+
module Conferences
|
7
|
+
# User-facing controller for conferences, serving both html and ics
|
8
|
+
class ConferencesController < ApplicationController
|
9
|
+
before_action :set_conference, :set_tab, :set_presentation_type, :set_presentations, :set_breadcrumb, only: :show
|
10
|
+
before_action :set_metadata
|
11
|
+
|
12
|
+
def index
|
13
|
+
@conferences = Admin::Conferences::Conference.sorted.includes(institutions: [:logo])
|
14
|
+
respond_to do |format|
|
15
|
+
format.html
|
16
|
+
format.ics { render body: @conferences.to_ics }
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def show
|
21
|
+
add_breadcrumb @conference.name
|
22
|
+
respond_to do |format|
|
23
|
+
format.html
|
24
|
+
format.ics { render body: @conference.to_ics }
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
private
|
29
|
+
|
30
|
+
def set_conference
|
31
|
+
@conference = Admin::Conferences::Conference.includes(:events, :institutions,
|
32
|
+
presentation_types: [:translations],
|
33
|
+
presentations: [session: [:room], presenters: [:institution]])
|
34
|
+
.find(params[:id])
|
35
|
+
@conference.view_context = view_context
|
36
|
+
rescue ActiveRecord::RecordNotFound
|
37
|
+
send_file Rails.root.join('public/404.html'), type: 'text/html; charset=utf-8', status: 404
|
38
|
+
end
|
39
|
+
|
40
|
+
def set_tab
|
41
|
+
@tab = params[:tab] || 'information'
|
42
|
+
end
|
43
|
+
|
44
|
+
def set_presentation_type
|
45
|
+
if params[:presentation_type].present?
|
46
|
+
@presentation_type = @conference.presentation_types
|
47
|
+
.includes(presentations: [session: [:room], presenters: [:institution]])
|
48
|
+
.find(params[:presentation_type])
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
def set_presentations
|
53
|
+
@presentations = if @presentation_type.present?
|
54
|
+
@presentation_type.presentations.page(params[:page]).per(15)
|
55
|
+
else
|
56
|
+
@conference.presentations.page(params[:page]).per(15)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
def set_breadcrumb
|
61
|
+
add_breadcrumb Admin::Conferences::Conference.model_name.human.pluralize, frontend_conferences_path
|
62
|
+
end
|
63
|
+
|
64
|
+
def set_metadata
|
65
|
+
@title = @conference.present? ? @conference.name : Admin::Conferences::Conference.model_name.human(count: 0)
|
66
|
+
@description = @conference.present? && @conference.has_content?(:text) ? helpers.strip_tags(@conference.content(:text)) : ''
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spina
|
4
|
+
module Conferences
|
5
|
+
module PrimerTheme
|
6
|
+
module Conferences
|
7
|
+
# User-facing controller for presentations, serving both html and ics
|
8
|
+
class PresentationsController < ApplicationController
|
9
|
+
before_action :set_presentation, :set_conference, :set_breadcrumb
|
10
|
+
|
11
|
+
def show
|
12
|
+
add_breadcrumb @presentation.name
|
13
|
+
respond_to do |format|
|
14
|
+
format.html
|
15
|
+
format.ics { head :not_found }
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def set_presentation
|
22
|
+
@presentation = Admin::Conferences::Presentation.includes(:presenters, attachments: [attachment_type: [:translations]])
|
23
|
+
.find(params[:id])
|
24
|
+
rescue ActiveRecord::RecordNotFound
|
25
|
+
send_file Rails.root.join('public/404.html'), type: 'text/html; charset=utf-8', status: 404
|
26
|
+
end
|
27
|
+
|
28
|
+
def set_conference
|
29
|
+
@conference = Admin::Conferences::Conference.find(params[:conference_id]) if params[:conference_id].present?
|
30
|
+
end
|
31
|
+
|
32
|
+
def set_breadcrumb
|
33
|
+
return if @conference.blank?
|
34
|
+
|
35
|
+
add_breadcrumb Admin::Conferences::Conference.model_name.human.pluralize, frontend_conferences_path
|
36
|
+
add_breadcrumb @conference.name, frontend_conference_path(@conference)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spina
|
4
|
+
module Conferences
|
5
|
+
module PrimerTheme
|
6
|
+
module Journal
|
7
|
+
# Base class from which controllers related to the journal plugin inherit
|
8
|
+
class ApplicationController < Spina::ApplicationController
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spina
|
4
|
+
module Conferences
|
5
|
+
module PrimerTheme
|
6
|
+
module Journal
|
7
|
+
# User-facing controller for journal articles
|
8
|
+
class ArticlesController < ApplicationController
|
9
|
+
before_action :set_article, :set_issue, :set_journal, :set_breadcrumb, :set_metadata, :require_admin_for_invisible_article
|
10
|
+
|
11
|
+
def show
|
12
|
+
add_breadcrumb @article.title
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def set_article
|
18
|
+
@article = Admin::Journal::Article.includes(affiliations: [:institution]).find(params[:id])
|
19
|
+
rescue ActiveRecord::RecordNotFound
|
20
|
+
send_file Rails.root.join('public/404.html'), type: 'text/html; charset=utf-8', status: 404
|
21
|
+
end
|
22
|
+
|
23
|
+
def set_issue
|
24
|
+
@issue = Admin::Journal::Issue.includes(:volume, :articles).find(params[:issue_id])
|
25
|
+
rescue ActiveRecord::RecordNotFound
|
26
|
+
send_file Rails.root.join('public/404.html'), type: 'text/html; charset=utf-8', status: 404
|
27
|
+
end
|
28
|
+
|
29
|
+
def set_journal
|
30
|
+
@journal = @issue.volume.journal
|
31
|
+
end
|
32
|
+
|
33
|
+
def set_breadcrumb
|
34
|
+
return if @issue.blank?
|
35
|
+
|
36
|
+
add_breadcrumb @journal.name, frontend_issues_path
|
37
|
+
add_breadcrumb Admin::Journal::Issue.model_name.human.pluralize, frontend_issues_path
|
38
|
+
add_breadcrumb t('spina.conferences.primer_theme.journal.volume_issue', volume_number: @issue.volume.number, issue_number: @issue.number),
|
39
|
+
frontend_issue_path(@issue.id)
|
40
|
+
end
|
41
|
+
|
42
|
+
def set_metadata
|
43
|
+
@title = @article.title
|
44
|
+
@description = @article.content(:abstract).try(:to_plain_text)
|
45
|
+
end
|
46
|
+
|
47
|
+
def require_admin_for_invisible_article
|
48
|
+
raise ActiveRecord::RecordNotFound unless current_spina_user.present? || @article.visible?
|
49
|
+
rescue ActiveRecord::RecordNotFound # TODO: proper 404 handler
|
50
|
+
send_file Rails.root.join('public/404.html'), type: 'text/html; charset=utf-8', status: 404
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Spina
|
4
|
+
module Conferences
|
5
|
+
module PrimerTheme
|
6
|
+
module Journal
|
7
|
+
# User-facing controller for journal issues
|
8
|
+
class IssuesController < ApplicationController
|
9
|
+
before_action :set_journal
|
10
|
+
before_action :set_issue, :set_breadcrumb, only: :show
|
11
|
+
before_action :set_metadata
|
12
|
+
|
13
|
+
def index
|
14
|
+
# having multiple journals is not currently allowed anyway
|
15
|
+
@issues = Admin::Journal::Issue.sorted_desc
|
16
|
+
@latest_issue = @issues.find_by 'date <= ?', Time.zone.today
|
17
|
+
end
|
18
|
+
|
19
|
+
def show
|
20
|
+
@articles = current_spina_user.present? ? @issue.articles : @issue.articles.visible
|
21
|
+
add_breadcrumb t('spina.conferences.primer_theme.journal.volume_issue', volume_number: @issue.volume.number, issue_number: @issue.number)
|
22
|
+
end
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def set_journal
|
27
|
+
@journal = Admin::Journal::Journal.instance
|
28
|
+
end
|
29
|
+
|
30
|
+
def set_issue
|
31
|
+
@issue = Admin::Journal::Issue.includes(:volume, :articles).find(params[:id])
|
32
|
+
rescue ActiveRecord::RecordNotFound
|
33
|
+
send_file Rails.root.join('public/404.html'), type: 'text/html; charset=utf-8', status: 404
|
34
|
+
end
|
35
|
+
|
36
|
+
def set_breadcrumb
|
37
|
+
add_breadcrumb @journal.name, frontend_issues_path
|
38
|
+
add_breadcrumb Admin::Journal::Issue.model_name.human.pluralize, frontend_issues_path
|
39
|
+
end
|
40
|
+
|
41
|
+
def set_metadata
|
42
|
+
@title = @journal.name
|
43
|
+
@description = ActionView::Base.full_sanitizer.sanitize(@journal.content(:description))
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -25,10 +25,10 @@ module Spina
|
|
25
25
|
|
26
26
|
def calendar(name:)
|
27
27
|
Icalendar::Calendar.new
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
28
|
+
.tap { |calendar| calendar.x_wr_calname = name }
|
29
|
+
.tap { |calendar| yield(calendar) }
|
30
|
+
.tap(&:publish)
|
31
|
+
.then(&:to_ical)
|
32
32
|
end
|
33
33
|
end
|
34
34
|
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
- cache current_page do
|
2
|
+
= render(Primer::HeadingComponent.new) { current_page.title }
|
3
|
+
|
4
|
+
- if content(:text).present?
|
5
|
+
= render(Primer::MarkdownComponent.new(mt: 4)) { content.html(:text) }
|
6
|
+
|
7
|
+
- if content(:embed_url).present?
|
8
|
+
= render Primer::BoxComponent.new(mt: 4, col: 12) do
|
9
|
+
%iframe#form_frame{ src: content(:embed_url), allowfullscreen: true }
|
@@ -25,7 +25,8 @@
|
|
25
25
|
- if current_spina_user.present?
|
26
26
|
.admin= render 'spina/shared/admin_bar'
|
27
27
|
%header= render 'navigation'
|
28
|
-
|
28
|
+
- unless local_assigns[:hide_alert]
|
29
|
+
= render 'current_conference_alert'
|
29
30
|
- if content_for? :flash
|
30
31
|
.flash-messages= yield :flash
|
31
32
|
%main
|
File without changes
|
File without changes
|
@@ -1,15 +1,17 @@
|
|
1
|
-
|
2
|
-
= render Primer::FlexComponent.new(direction: [:column,
|
3
|
-
|
4
|
-
- footer_navigation_items
|
5
|
-
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
= render
|
11
|
-
|
12
|
-
= render Primer::
|
13
|
-
|
14
|
-
|
15
|
-
|
1
|
+
- cache [footer_navigation_items, current_account] do
|
2
|
+
= render Primer::FlexComponent.new(direction: [:column, nil, :row_reverse, nil], align_items: :center) do
|
3
|
+
= render Primer::FlexComponent.new(direction: [:column, :row, nil, nil], mb: [4, nil, 0, nil], flex: :auto) do
|
4
|
+
- cache footer_navigation_items do
|
5
|
+
%ul.list-style-none.flex-auto.mb-2.mb-sm-0.mr-sm-2
|
6
|
+
- footer_navigation_items.each do |item|
|
7
|
+
- cache item do
|
8
|
+
%li
|
9
|
+
= render Primer::ButtonComponent.new(tag: :a, href: item.materialized_path, variant: :small) { item.menu_title }
|
10
|
+
= render 'footer_content'
|
11
|
+
- if current_account.has_content? :github_url
|
12
|
+
= render Primer::ButtonComponent.new(tag: :a, href: current_account.content(:github_url), button_type: :outline, variant: :small,
|
13
|
+
display: :inline_block) do
|
14
|
+
= render Primer::OcticonComponent.new('mark-github')
|
15
|
+
= t :'.find_on_github'
|
16
|
+
= render(Primer::TextComponent.new(tag: :small, color: :text_secondary, mr: [nil, 2, nil, nil], font_size: 6, flex_grow: 0)) do
|
17
|
+
= t :'.copyright', name: current_account.name, year: Date.today.year
|
@@ -1,3 +1,3 @@
|
|
1
1
|
%nav.d-flex.flex-column.flex-self-stretch
|
2
|
-
= render partial: 'mobile_navigation_item', collection: main_navigation_items,
|
3
|
-
.Header-item.mr-0.border-top.border-white-fade-15= link_to 'Conferences',
|
2
|
+
= render partial: 'mobile_navigation_item', collection: main_navigation_items, as: :navigation_item, cache: -> navigation_item { [navigation_item, navigation_item.children] }
|
3
|
+
.Header-item.mr-0.border-top.border-white-fade-15= link_to 'Conferences', frontend_conferences_path, class: %w[Header-link py-2 py-lg-0]
|
@@ -1,9 +1,11 @@
|
|
1
|
-
|
2
|
-
.Header-
|
3
|
-
|
4
|
-
%
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
1
|
+
- cache main_navigation_items do
|
2
|
+
.Header.px-3.px-md-4.px-lg-5.flex-wrap.flex-lg-nowrap
|
3
|
+
.Header-item.mt-n1.mb-n1= link_to render('logo'), root_path, class: 'Header-link'
|
4
|
+
%details.details-reset.d-lg-none{ style: 'display: contents' }
|
5
|
+
%summary.Header-item.Header-link.btn-link
|
6
|
+
= render Primer::OcticonComponent.new('three-bars', height: 24)
|
7
|
+
.Header-item.Header-item--full.flex-column.width-full.flex-order-1.mr-0.mt-3
|
8
|
+
= render partial: 'mobile_navigation_items'
|
9
|
+
= render partial: 'navigation_item', collection: main_navigation_items, cache: -> navigation_item { [navigation_item, navigation_item.children] }
|
10
|
+
.Header-item.d-none.d-lg-flex= link_to 'Journal', frontend_issues_path, class: %w[Header-link]
|
11
|
+
.Header-item.d-none.d-lg-flex= link_to 'Conferences', frontend_conferences_path, class: %w[Header-link]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,5 +1,5 @@
|
|
1
1
|
%li
|
2
|
-
= link_to
|
2
|
+
= link_to frontend_conference_path(presentation_type.conference, presentation_type: presentation_type.id, tab: 'presentations'),
|
3
3
|
class: 'filter-item', aria: { current: @presentation_type == presentation_type ? 'page' : nil } do
|
4
4
|
= presentation_type.name.pluralize
|
5
5
|
%span.count{ title: t(:'.results') }= presentation_type.presentations.count
|
@@ -4,7 +4,7 @@
|
|
4
4
|
%ul.filter-list
|
5
5
|
- cache [@conference.presentations, @presentation_type] do
|
6
6
|
%li
|
7
|
-
= link_to
|
7
|
+
= link_to frontend_conference_path(@conference, tab: 'presentations'),
|
8
8
|
class: 'filter-item', aria: { current: ('page' if @presentation_type.blank?) } do
|
9
9
|
= t('.all_presentation_types')
|
10
10
|
%span.count{ title: t(:'.results') }= @conference.presentations.count
|
@@ -22,7 +22,7 @@
|
|
22
22
|
%ul{ data: { filter: { list: true } } }
|
23
23
|
= render partial: 'presentation', collection: @presentations.sorted.reverse_order, layout: 'list_item',
|
24
24
|
locals: { conference: @conference }, cached: -> presentation { [presentation, presentation.presenters] }
|
25
|
-
= paginate @presentations.sorted, views_prefix: 'spina/conferences/primer_theme'
|
25
|
+
= paginate @presentations.sorted, views_prefix: 'spina/conferences/primer_theme/conferences'
|
26
26
|
- else
|
27
27
|
= render Primer::BlankslateComponent.new(title: t(:'.no_presentations'), icon: 'mortar-board')
|
28
28
|
= render Primer::BlankslateComponent.new(title: t(:'.no_matching_presentations'), icon: 'mortar-board', hidden: true,
|