- <%= f.label :visibility_privately_private_visible, raw("#{f.radio_button :visibility, :privately_private_visible}\
+ <%= f.label :visibility_privately_visible, raw("#{f.radio_button :visibility, :privately_visible}\
#{d_('dmpopidor', 'Private: visible to me and specified collaborators')}") %>
- <%= f.label :visibility_privately_visible do %>
- <%= f.radio_button :visibility, :privately_visible %>
+ <%= f.label :visibility_administrator_visible do %>
+ <%= f.radio_button :visibility, :administrator_visible %>
<%= d_('dmpopidor', 'Administrator: visible to me, specified collaborators and administrators at my organisation') %>
<% end %>
diff --git a/app/views/branded/plans/index.html.erb b/app/views/branded/plans/index.html.erb
index 5de8dce..2687edb 100644
--- a/app/views/branded/plans/index.html.erb
+++ b/app/views/branded/plans/index.html.erb
@@ -17,9 +17,9 @@
<%= paginable_renderise(
- partial: '/paginable/plans/privately_private_visible',
+ partial: '/paginable/plans/privately_visible',
controller: 'paginable/plans',
- action: 'privately_private_visible',
+ action: 'privately_visible',
scope: @plans,
query_params: { sort_field: 'plans.updated_at', sort_direction: 'desc' }) %>
diff --git a/config/application.rb b/config/application.rb
index 5330c96..192eb3d 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -126,9 +126,9 @@
# organisationally_visible - Any member of the user's org can view, export and duplicate the plan
# publicly_visibile - (NOT advisable because plans will show up in Public DMPs page by default)
# is_test - (NOT advisable because test plans are excluded from statistics)
- # privately_visible - Only the owner, people they invite can access the plan and org admin
- # privately_private_visible - Only the owner and people they invite can access the plan
- config.default_plan_visibility = 'privately_private_visible'
+ # administrator_visible - Only the owner, people they invite can access the plan and org admin
+ # privately_visible - Only the owner and people they invite can access the plan
+ config.default_plan_visibility = 'privately_visible'
# The percentage of answered questions needed to enable the plan visibility section of the Share plan page
config.default_plan_percentage_answered = 0
diff --git a/config/routes.rb b/config/routes.rb
index 0d90bf0..7075c30 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -165,7 +165,7 @@
end
# Paginable actions for plans
resources :plans, only: [] do
- get 'privately_private_visible/:page', action: :privately_private_visible, on: :collection, as: :privately_private_visible
+ get 'administrator_visible/:page', action: :administrator_visible, on: :collection, as: :administrator_visible
get 'privately_visible/:page', action: :privately_visible, on: :collection, as: :privately_visible
get 'organisationally_or_publicly_visible/:page', action: :organisationally_or_publicly_visible, on: :collection, as: :organisationally_or_publicly_visible
get 'publicly_visible/:page', action: :publicly_visible, on: :collection, as: :publicly_visible
diff --git a/lib/dmpopidor/controllers/org_admin/plans.rb b/lib/dmpopidor/controllers/org_admin/plans.rb
index 4b6f0a2..bface01 100644
--- a/lib/dmpopidor/controllers/org_admin/plans.rb
+++ b/lib/dmpopidor/controllers/org_admin/plans.rb
@@ -14,7 +14,7 @@
.where('users.org_id = ? AND plans.feedback_requested is TRUE AND roles.active is TRUE',
current_user.org_id).pluck(:plan_id)
@feedback_plans = Plan.where(id: feedback_ids).reject{|p| p.nil?}
- @plans = current_user.org.plans.where.not(visibility: [Plan.visibilities[:privately_private_visible], Plan.visibilities[:is_test]]).page(1)
+ @plans = current_user.org.plans.where.not(visibility: [Plan.visibilities[:privately_visible], Plan.visibilities[:is_test]]).page(1)
end
# CHANGES
@@ -43,7 +43,7 @@
plans = CSV.generate do |csv|
csv << header_cols
org.plans
- .where.not(visibility: Plan.visibilities[:privately_private_visible])
+ .where.not(visibility: Plan.visibilities[:privately_visible])
.includes(template: :org).order(updated_at: :desc).each do |plan|
owner = plan.owner
csv << [
diff --git a/lib/dmpopidor/controllers/paginable/plans.rb b/lib/dmpopidor/controllers/paginable/plans.rb
index e2b9e47..8de81e8 100644
--- a/lib/dmpopidor/controllers/paginable/plans.rb
+++ b/lib/dmpopidor/controllers/paginable/plans.rb
@@ -3,7 +3,7 @@
module Paginable
module Plans
# GET /paginable/plans/org_admin/:page
- # Renders only the plans with a visibility superior to privately_private
+ # Renders only the plans with a visibility superior to privately
def org_admin
unless current_user.present? && current_user.can_org_admin?
raise Pundit::NotAuthorizedError
@@ -11,7 +11,7 @@
paginable_renderise(
partial: "org_admin",
scope: current_user.org.plans.where.not(visibility: [
- Plan.visibilities[:privately_private_visible],
+ Plan.visibilities[:privately_visible],
Plan.visibilities[:is_test]
]),
query_params: { sort_field: 'plans.updated_at', sort_direction: :desc }
@@ -19,15 +19,15 @@
end
# CHANGES: New Visibility
- # /paginable/plans/privately_private_visible/:page
- # Paginable for Privately Private Visibility
- # Plans that are only visible by the owner of a plan and its collaborators
- def privately_private_visible
- unless ::Paginable::PlanPolicy.new(current_user).privately_private_visible?
+ # /paginable/plans/administrator_visible/:page
+ # Paginable for Administrator Private Visibility
+ # Plans that are only visible by the owner of a plan, its collaborators and the org admin
+ def administrator_visible
+ unless ::Paginable::PlanPolicy.new(current_user).administrator_visible?
raise Pundit::NotAuthorizedError
end
paginable_renderise(
- partial: "privately_private_visible",
+ partial: "administrator_visible",
scope: Plan.active(current_user),
query_params: { sort_field: 'plans.updated_at', sort_direction: :desc }
)
diff --git a/lib/dmpopidor/controllers/plans.rb b/lib/dmpopidor/controllers/plans.rb
index 799779b..ca19f22 100644
--- a/lib/dmpopidor/controllers/plans.rb
+++ b/lib/dmpopidor/controllers/plans.rb
@@ -221,11 +221,11 @@
end
end
- # Removing test flag now put the plan in privately_private visibility
+ # Removing test flag now put the plan in privately visibility
def set_test
plan = Plan.find(params[:id])
authorize plan
- plan.visibility = (params[:is_test] === "1" ? :is_test : :privately_private_visible)
+ plan.visibility = (params[:is_test] === "1" ? :is_test : :privately_visible)
# rubocop:disable Metrics/LineLength
if plan.save
render json: {
diff --git a/lib/dmpopidor/helpers/plans.rb b/lib/dmpopidor/helpers/plans.rb
index e90e8ad..5eab5d1 100644
--- a/lib/dmpopidor/helpers/plans.rb
+++ b/lib/dmpopidor/helpers/plans.rb
@@ -13,30 +13,30 @@
end
# display the visibility of the plan
- # CHANGE : Added privately_private_visible visibility
+ # CHANGE : Added administrator_visible visibility
def display_visibility(val)
case val
when 'organisationally_visible'
return "
#{_('Organisation')}"
when 'publicly_visible'
return "
#{_('Public')}"
- when 'privately_visible'
+ when 'administrator_visible'
return "
#{d_('dmpopidor', 'Administrator')}"
- when 'privately_private_visible'
+ when 'privatelyvisible'
return "
#{_('Private')}"
else
return "
#{_('Private')}" # Test Plans
end
end
- # CHANGE : Added privately_private_visible visibility
+ # CHANGE : Added administrator_visible visibility
def visibility_tooltip(val)
case val
when 'organisationally_visible'
return _('Organisation: anyone at my organisation can view.')
when 'publicly_visible'
return _('Public: anyone can view.')
- when 'privately_visible'
+ when 'administrator_visible'
return d_('dmpopidor', 'Administrator: visible to me, specified collaborators and administrators at my organisation.')
else
return _('Private: restricted to me and people I invite.')
diff --git a/lib/dmpopidor/models/plan.rb b/lib/dmpopidor/models/plan.rb
index b2f2aa5..57eac1a 100644
--- a/lib/dmpopidor/models/plan.rb
+++ b/lib/dmpopidor/models/plan.rb
@@ -41,23 +41,6 @@
answer
end
- # Deactivates the plan (sets all roles to inactive and visibility to :private)
- #
- # Returns Boolean
- def deactivate!
- # If no other :creator, :administrator or :editor is attached
- # to the plan, then also deactivate all other active roles
- # and set the plan's visibility to :private
- # CHANGE : visibility setting to privately_private_visible
- if authors.size == 0
- roles.where(active: true).update_all(active: false)
- self.visibility = ::Plan.visibilities[:privately_private_visible]
- save!
- else
- false
- end
- end
-
# The number of research outputs for a plan.
#
diff --git a/lib/dmpopidor/policies/paginable/plan.rb b/lib/dmpopidor/policies/paginable/plan.rb
index 6b273e2..4dba38b 100644
--- a/lib/dmpopidor/policies/paginable/plan.rb
+++ b/lib/dmpopidor/policies/paginable/plan.rb
@@ -2,7 +2,7 @@
module Policies
module Paginable
module Plan
- def privately_private_visible?
+ def administrator_visible?
@user.is_a?(User)
end
end