Skip to content

Commit

Permalink
Add visibility template to admin set form. See Lerna ticket #419
Browse files Browse the repository at this point in the history
  • Loading branch information
tdonohue committed Nov 3, 2016
1 parent 66dec00 commit 70b08d7
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ def load_template_for_admin_set

def update_params
params.require(:sufia_permission_template)
.permit(access_grants_attributes: [:access, :agent_id, :agent_type, :id])
.permit(:visibility, access_grants_attributes: [:access, :agent_id, :agent_type, :id])
end
end
end
Expand Down
2 changes: 1 addition & 1 deletion app/forms/sufia/forms/permission_template_form.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ class PermissionTemplateForm
include HydraEditor::Form
self.model_class = PermissionTemplate
self.terms = []
delegate :access_grants, :access_grants_attributes=, to: :model
delegate :access_grants, :access_grants_attributes=, :visibility, to: :model
end
end
end
4 changes: 4 additions & 0 deletions app/views/sufia/admin/admin_sets/_form.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@
<li>
<a href="#participants"><%= t('.tabs.participants') %></a>
</li>
<li>
<a href="#visibility"><%= t('.tabs.visibility') %></a>
</li>
<% end %>
</ul>
<div class="tab-content">
Expand All @@ -31,6 +34,7 @@
</div>
<% if @form.persisted? %>
<%= render 'form_participants' %>
<%= render 'form_visibility' %>
<% end %>
</div>
</div>
25 changes: 25 additions & 0 deletions app/views/sufia/admin/admin_sets/_form_visibility.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<div id="visibility" class="tab-pane">
<div class="panel panel-default labels">
<% visibility_options = Array({ Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PUBLIC => t('.visibility.everyone'),
'varies' => t('.visibility.varies'),
Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_AUTHENTICATED => t('.visibility.institution'),
Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PRIVATE => t('.visibility.restricted'),
}) %>
<%= simple_form_for @form.permission_template,
url: [sufia, :admin, @form, :permission_template] do |f| %>
<div class="panel-body">
<p><%= t('.page_description') %></p>
<h3><%= t('.visibility.title') %></h3>
<p><%= t('.visibility.description') %></p>
<ul class="visibility">
<%# List each option as a radio button in a <li class='radio'> tag %>
<%= f.collection_radio_buttons :visibility, visibility_options, :first, :last, item_wrapper_tag: :li, item_wrapper_class: 'radio' %>
</ul>
</div>
<div class="panel-footer">
<%= link_to 'Cancel', sufia.admin_admin_sets_path, class: 'btn btn-default pull-right'%>
<%= f.button :submit, class: 'btn btn-primary pull-right'%>
</div>
<% end %>
</div>
</div>
10 changes: 10 additions & 0 deletions config/locales/sufia.en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,7 @@ en:
tabs:
description: "Description"
participants: "Participants"
visibility: "Release and Visibility"
form_participants:
add_group: "Add group:"
add_user: "Add user:"
Expand Down Expand Up @@ -339,6 +340,15 @@ en:
type: "Type"
action: "Action"
remove: "Remove"
form_visibility:
page_description: "Release and visibility settings control when works added to this set are made available for discovery and download and who can discover and download them."
visibility:
title: "Visibility"
description: "After its release date, works in this set can be discovered and downloaded by:"
everyone: "Everyone -- all works in this set will be public"
varies: "Varies -- default is public, but depositors can restrict the visibility of individual works"
institution: "Institution -- all works will be visible only to authenticated users of this institution"
restricted: "Restricted -- all works will be visible only to repository managers and managers and reviewers of this administrative set"
show:
header: "Administrative Set"
item_list_header: "Works in This Set"
Expand Down

0 comments on commit 70b08d7

Please sign in to comment.