Skip to content

Commit 670ee72

Browse files
authored
Merge pull request #1258 from DaanVanVugt/feature/controlled_vocabulary_option_target_audience
controlled vocabulary option for target audience
2 parents 5d075f6 + 09ab415 commit 670ee72

3 files changed

Lines changed: 21 additions & 3 deletions

File tree

app/views/events/_form.html.erb

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,15 @@
105105
<% end %>
106106

107107
<!-- Field: Target Audience -->
108-
<%= f.multi_input :target_audience, errors: @event.errors[:target_audience], title: t('events.hints.targets') %>
108+
<% if TeSS::Config.feature['controlled_vocabulary_vars'].include? 'target_audience' %>
109+
<%= f.dropdown :target_audience,
110+
options: TargetAudienceDictionary.instance.options_for_select,
111+
label: 'Target audiences',
112+
errors: @event.errors[:target_audience],
113+
title: t('events.hints.targets') %>
114+
<% else %>
115+
<%= f.multi_input :target_audience, errors: @event.errors[:target_audience], title: t('events.hints.targets') %>
116+
<% end %>
109117

110118
<!-- Field: Topics -->
111119
<% if !TeSS::Config.feature['disabled'].include? 'topics' %>

app/views/materials/_form.html.erb

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,17 @@
7474
<%= render partial: "common/people_form", locals: { f: f, field_name: 'contributors', role: 'contributor' } %>
7575

7676
<!-- Field: Target Audience -->
77-
<%= f.multi_input :target_audience, label: 'Target audiences', errors: @material.errors[:target_audience],
78-
title: t('events.hints.targets'), visibility_toggle: TeSS::Config.feature['materials_disabled'] %>
77+
<% if TeSS::Config.feature['controlled_vocabulary_vars'].include? 'target_audience' %>
78+
<%= f.dropdown :target_audience,
79+
options: TargetAudienceDictionary.instance.options_for_select,
80+
label: 'Target audiences',
81+
errors: @material.errors[:target_audience],
82+
title: t('events.hints.targets'),
83+
visibility_toggle: TeSS::Config.feature['materials_disabled'] %>
84+
<% else %>
85+
<%= f.multi_input :target_audience, label: 'Target audiences', errors: @material.errors[:target_audience],
86+
title: t('events.hints.targets'), visibility_toggle: TeSS::Config.feature['materials_disabled'] %>
87+
<% end %>
7988

8089
<!-- Field: Prerequisites -->
8190
<%= f.input :prerequisites, as: :markdown_area, field_lock: true,

config/tess.example.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,7 @@ default: &default
168168
bioschemas_testing: false
169169
collection_curation: true
170170
auto_parse_vars: [] # available features to auto parse from description: ['keywords', 'target_audience']
171+
controlled_vocabulary_vars: [] # available features: ['target_audience']
171172

172173
# User login
173174
invitation: false

0 commit comments

Comments
 (0)