aboutsummaryrefslogtreecommitdiffhomepage
path: root/services/nuldoc/lib
diff options
context:
space:
mode:
Diffstat (limited to 'services/nuldoc/lib')
-rw-r--r--services/nuldoc/lib/nuldoc/about/parse.rb3
-rw-r--r--services/nuldoc/lib/nuldoc/about/staff_record.rb6
-rw-r--r--services/nuldoc/lib/nuldoc/pages/about_page.rb19
3 files changed, 20 insertions, 8 deletions
diff --git a/services/nuldoc/lib/nuldoc/about/parse.rb b/services/nuldoc/lib/nuldoc/about/parse.rb
index 9236807c..ff8ca1d1 100644
--- a/services/nuldoc/lib/nuldoc/about/parse.rb
+++ b/services/nuldoc/lib/nuldoc/about/parse.rb
@@ -12,7 +12,8 @@ module Nuldoc
StaffRecord.new(
date: parse_date(entry['date']),
event: entry['event'],
- role: entry['role']
+ role: entry['role'],
+ url: entry['url']
)
end
end
diff --git a/services/nuldoc/lib/nuldoc/about/staff_record.rb b/services/nuldoc/lib/nuldoc/about/staff_record.rb
index ea456153..134eee7c 100644
--- a/services/nuldoc/lib/nuldoc/about/staff_record.rb
+++ b/services/nuldoc/lib/nuldoc/about/staff_record.rb
@@ -1,7 +1,11 @@
module Nuldoc
- StaffRecord = Data.define(:date, :event, :role) do
+ StaffRecord = Data.define(:date, :event, :role, :url) do
def sort_date
date.is_a?(Range) ? date.begin : date
end
+
+ def linkable?
+ url
+ end
end
end
diff --git a/services/nuldoc/lib/nuldoc/pages/about_page.rb b/services/nuldoc/lib/nuldoc/pages/about_page.rb
index 6c72ec09..2517e6e2 100644
--- a/services/nuldoc/lib/nuldoc/pages/about_page.rb
+++ b/services/nuldoc/lib/nuldoc/pages/about_page.rb
@@ -83,14 +83,21 @@ module Nuldoc
h2 { text 'カンファレンススタッフ' }
ul do
sorted_staff.each do |record|
+ if record.date.is_a?(Range)
+ from_str = Revision.date_to_string(record.date.begin)
+ to_str = Revision.date_to_string(record.date.end)
+ label = "#{from_str}〜#{to_str}: #{record.event} (#{record.role})"
+ else
+ date_str = Revision.date_to_string(record.date)
+ label = "#{date_str}: #{record.event} (#{record.role})"
+ end
li do
- if record.date.is_a?(Range)
- from_str = Revision.date_to_string(record.date.begin)
- to_str = Revision.date_to_string(record.date.end)
- text "#{from_str}〜#{to_str}: #{record.event} (#{record.role})"
+ if record.linkable?
+ a href: record.url, target: '_blank', rel: 'noreferrer' do
+ text label
+ end
else
- date_str = Revision.date_to_string(record.date)
- text "#{date_str}: #{record.event} (#{record.role})"
+ text label
end
end
end