diff --git a/Gemfile.lock b/Gemfile.lock index c0e95e3b9b..d1a8d1dba1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,51 +1,51 @@ GEM remote: https://rubygems.org/ specs: - actioncable (5.2.6) - actionpack (= 5.2.6) + actioncable (5.2.6.2) + actionpack (= 5.2.6.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailer (5.2.6) - actionpack (= 5.2.6) - actionview (= 5.2.6) - activejob (= 5.2.6) + actionmailer (5.2.6.2) + actionpack (= 5.2.6.2) + actionview (= 5.2.6.2) + activejob (= 5.2.6.2) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (5.2.6) - actionview (= 5.2.6) - activesupport (= 5.2.6) + actionpack (5.2.6.2) + actionview (= 5.2.6.2) + activesupport (= 5.2.6.2) rack (~> 2.0, >= 2.0.8) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.2) - actionview (5.2.6) - activesupport (= 5.2.6) + actionview (5.2.6.2) + activesupport (= 5.2.6.2) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.3) - activejob (5.2.6) - activesupport (= 5.2.6) + activejob (5.2.6.2) + activesupport (= 5.2.6.2) globalid (>= 0.3.6) - activemodel (5.2.6) - activesupport (= 5.2.6) - activerecord (5.2.6) - activemodel (= 5.2.6) - activesupport (= 5.2.6) + activemodel (5.2.6.2) + activesupport (= 5.2.6.2) + activerecord (5.2.6.2) + activemodel (= 5.2.6.2) + activesupport (= 5.2.6.2) arel (>= 9.0) - activestorage (5.2.6) - actionpack (= 5.2.6) - activerecord (= 5.2.6) + activestorage (5.2.6.2) + actionpack (= 5.2.6.2) + activerecord (= 5.2.6.2) marcel (~> 1.0.0) - activesupport (5.2.6) + activesupport (5.2.6.2) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 0.7, < 2) minitest (~> 5.1) tzinfo (~> 1.1) addressable (2.8.0) public_suffix (>= 2.0.2, < 5.0) - annotate (3.1.1) - activerecord (>= 3.2, < 7.0) + annotate (3.2.0) + activerecord (>= 3.2, < 8.0) rake (>= 10.4, < 14.0) annotate_gem (0.0.14) bundler (>= 1.1) @@ -62,9 +62,9 @@ GEM bindex (0.8.1) binding_of_caller (1.0.0) debug_inspector (>= 0.0.1) - bootsnap (1.10.2) + bootsnap (1.10.3) msgpack (~> 1.2) - brakeman (5.2.0) + brakeman (5.2.1) builder (3.2.4) bullet (7.0.1) activesupport (>= 3.0.0) @@ -131,7 +131,7 @@ GEM dragonfly (~> 1.0) fog-aws erubi (1.10.0) - excon (0.90.0) + excon (0.91.0) execjs (2.8.1) factory_bot (6.2.0) activesupport (>= 5.0.0) @@ -165,11 +165,10 @@ GEM faraday-retry (1.0.3) ffi (1.15.5) flag_shih_tzu (0.3.23) - fog-aws (3.12.0) + fog-aws (3.13.0) fog-core (~> 2.1) fog-json (~> 1.1) fog-xml (~> 0.1) - ipaddress (~> 0.8) fog-core (2.2.4) builder excon (~> 0.71) @@ -218,9 +217,8 @@ GEM httparty (0.20.0) mime-types (~> 3.0) multi_xml (>= 0.5.2) - i18n (1.8.11) + i18n (1.9.1) concurrent-ruby (~> 1.0) - ipaddress (0.8.3) jbuilder (2.11.5) actionview (>= 5.0.0) activesupport (>= 5.0.0) @@ -246,7 +244,7 @@ GEM rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) locale (2.1.3) - loofah (2.13.0) + loofah (2.14.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) lumberjack (1.2.8) @@ -296,7 +294,7 @@ GEM omniauth-orcid (2.1.1) omniauth-oauth2 (~> 1.3) ruby_dig (~> 0.0.2) - omniauth-rails_csrf_protection (1.0.0) + omniauth-rails_csrf_protection (1.0.1) actionpack (>= 4.2) omniauth (~> 2.0) omniauth-shibboleth (1.3.0) @@ -306,7 +304,7 @@ GEM parallel (1.21.0) parser (3.1.0.0) ast (~> 2.4.1) - pg (1.3.0) + pg (1.3.2) prime (0.1.2) forwardable singleton @@ -317,9 +315,9 @@ GEM coderay (~> 1.1) method_source (~> 1.0) public_suffix (4.0.6) - puma (5.6.0) + puma (5.6.2) nio4r (~> 2.0) - pundit (2.1.1) + pundit (2.2.0) activesupport (>= 3.0.0) pundit-matchers (1.7.0) rspec-rails (>= 3.0.0) @@ -333,18 +331,18 @@ GEM rack rack-test (1.1.0) rack (>= 1.0, < 3) - rails (5.2.6) - actioncable (= 5.2.6) - actionmailer (= 5.2.6) - actionpack (= 5.2.6) - actionview (= 5.2.6) - activejob (= 5.2.6) - activemodel (= 5.2.6) - activerecord (= 5.2.6) - activestorage (= 5.2.6) - activesupport (= 5.2.6) + rails (5.2.6.2) + actioncable (= 5.2.6.2) + actionmailer (= 5.2.6.2) + actionpack (= 5.2.6.2) + actionview (= 5.2.6.2) + activejob (= 5.2.6.2) + activemodel (= 5.2.6.2) + activerecord (= 5.2.6.2) + activestorage (= 5.2.6.2) + activesupport (= 5.2.6.2) bundler (>= 1.3.0) - railties (= 5.2.6) + railties (= 5.2.6.2) sprockets-rails (>= 2.0.0) rails-controller-testing (1.0.5) actionpack (>= 5.0.1.rc1) @@ -355,39 +353,39 @@ GEM nokogiri (>= 1.6) rails-html-sanitizer (1.4.2) loofah (~> 2.3) - railties (5.2.6) - actionpack (= 5.2.6) - activesupport (= 5.2.6) + railties (5.2.6.2) + actionpack (= 5.2.6.2) + activesupport (= 5.2.6.2) method_source rake (>= 0.8.7) thor (>= 0.19.0, < 2.0) rainbow (3.1.1) rake (13.0.6) - rb-fsevent (0.11.0) + rb-fsevent (0.11.1) rb-inotify (0.10.1) ffi (~> 1.0) recaptcha (5.8.1) json - regexp_parser (2.2.0) + regexp_parser (2.2.1) responders (3.0.1) actionpack (>= 5.0) railties (>= 5.0) rexml (3.2.5) rollbar (3.3.0) - rspec (3.10.0) - rspec-core (~> 3.10.0) - rspec-expectations (~> 3.10.0) - rspec-mocks (~> 3.10.0) + rspec (3.11.0) + rspec-core (~> 3.11.0) + rspec-expectations (~> 3.11.0) + rspec-mocks (~> 3.11.0) rspec-collection_matchers (1.2.0) rspec-expectations (>= 2.99.0.beta1) - rspec-core (3.10.1) - rspec-support (~> 3.10.0) - rspec-expectations (3.10.2) + rspec-core (3.11.0) + rspec-support (~> 3.11.0) + rspec-expectations (3.11.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-mocks (3.10.2) + rspec-support (~> 3.11.0) + rspec-mocks (3.11.0) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) + rspec-support (~> 3.11.0) rspec-rails (5.1.0) actionpack (>= 5.2) activesupport (>= 5.2) @@ -396,8 +394,8 @@ GEM rspec-expectations (~> 3.10) rspec-mocks (~> 3.10) rspec-support (~> 3.10) - rspec-support (3.10.3) - rubocop (1.25.0) + rspec-support (3.11.0) + rubocop (1.25.1) parallel (~> 1.10) parser (>= 3.1.0.0) rainbow (>= 2.2.2, < 4.0) @@ -406,7 +404,7 @@ GEM rubocop-ast (>= 1.15.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.15.1) + rubocop-ast (1.15.2) parser (>= 3.0.1.1) rubocop-i18n (3.0.0) rubocop (~> 1.0) @@ -467,7 +465,7 @@ GEM thread_safe (0.3.6) tilt (2.0.10) tomparse (0.4.2) - translation (1.28) + translation (1.29) gettext (~> 3.2, >= 3.2.5, <= 3.4.2) turbolinks (5.2.1) turbolinks-source (~> 5.2) diff --git a/app/controllers/api/v0/base_controller.rb b/app/controllers/api/v0/base_controller.rb index c955adfdab..058babfe1c 100644 --- a/app/controllers/api/v0/base_controller.rb +++ b/app/controllers/api/v0/base_controller.rb @@ -30,7 +30,7 @@ def index plural_resource_name = "@#{resource_name.pluralize}" resources = resource_class.where(query_params) .page(page_params[:page]) - .per(page_params[:page_size]) + .per(page_params[:per_page]) instance_variable_set(plural_resource_name, resources) respond_with instance_variable_get(plural_resource_name) @@ -71,7 +71,7 @@ def query_params # # Returns Hash def page_params - params.permit(:page, :page_size) + params.permit(:page, :per_page) end # The resource class based on the controller diff --git a/app/controllers/api/v0/plans_controller.rb b/app/controllers/api/v0/plans_controller.rb index 8fa848bffd..51a77456a3 100644 --- a/app/controllers/api/v0/plans_controller.rb +++ b/app/controllers/api/v0/plans_controller.rb @@ -7,6 +7,7 @@ class PlansController < Api::V0::BaseController include Paginable before_action :authenticate + before_action :page_params, except: %i[heartbeat] ## # Creates a new plan based on the information passed in JSON to the API diff --git a/app/controllers/concerns/paginable.rb b/app/controllers/concerns/paginable.rb index 0a81985b49..62c7af8615 100644 --- a/app/controllers/concerns/paginable.rb +++ b/app/controllers/concerns/paginable.rb @@ -156,6 +156,7 @@ def refine_query(scope) if @args[:page] != 'ALL' # Can raise error if page is not a number scope = scope.page(@args[:page]) + .per(@args.fetch(:per_page, Rails.configuration.x.application.api_max_page_size)) end scope end @@ -179,7 +180,7 @@ def sort_link_name(sort_field) style="float: right; font-size: 1.2em;"> - #{format(_('Sort by %s'), sort_field: sort_field.split('.').first)} + #{format(_('Sort by %'), sort_field: sort_field.split('.').first)} HTML diff --git a/app/controllers/paginable/plans_controller.rb b/app/controllers/paginable/plans_controller.rb index c0c5667f63..b4ddbae87f 100644 --- a/app/controllers/paginable/plans_controller.rb +++ b/app/controllers/paginable/plans_controller.rb @@ -58,16 +58,17 @@ def org_admin end # rubocop:enable Metrics/AbcSize - # GET /paginable/plans/org_admin/:page - def org_admin_other_user + # GET /paginable/users/:id/plans + def index @user = User.find(params[:id]) authorize @user raise Pundit::NotAuthorizedError unless current_user.present? && current_user.can_org_admin? && @user.present? paginable_renderise( - partial: 'org_admin_other_user', + partial: 'index', scope: Plan.active(@user), - query_params: { sort_field: 'plans.updated_at', sort_direction: :desc } + query_params: { sort_field: 'plans.updated_at', sort_direction: :desc }, + format: :json ) end end diff --git a/app/controllers/super_admin/orgs_controller.rb b/app/controllers/super_admin/orgs_controller.rb index a2cd2fe183..50ff0b421b 100644 --- a/app/controllers/super_admin/orgs_controller.rb +++ b/app/controllers/super_admin/orgs_controller.rb @@ -153,7 +153,8 @@ def org_params params.require(:org).permit(:name, :abbreviation, :logo, :managed, :contact_email, :contact_name, :remove_logo, :feedback_enabled, :feedback_msg, - :org_id, :org_name, :org_crosswalk) + :org_id, :org_name, :org_crosswalk, + :funder, :institution, :organisation) end def merge_params diff --git a/app/models/concerns/exportable_plan.rb b/app/models/concerns/exportable_plan.rb index d805df2b02..2838098aa7 100644 --- a/app/models/concerns/exportable_plan.rb +++ b/app/models/concerns/exportable_plan.rb @@ -104,11 +104,10 @@ def prepare(user, coversheet = false) # rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity def prepare_coversheet hash = {} - # name of owner and any co-owners - attribution = owner.present? ? [owner.name(false)] : [] - roles.administrator.not_creator.each do |role| - attribution << role.user.name(false) - end + # Use the name of the DMP owner/creator OR the first Co-owner if there is no + # owner for some reason + attribution = roles.creator.first&.user&.name(false) + roles.administrator.not_creator.first&.user&.name(false) unless attribution.present? hash[:attribution] = attribution # Org name of plan owner's org @@ -175,7 +174,7 @@ def show_section_for_csv(csv, phase, section, headings, unanswered, hash) answer_text = '' if answer.present? answer_text += answer.question_options.pluck(:text).join(', ') if answer.question_options.any? - answer_text += answer.text if answer.answered? + answer_text += answer.text if answer.answered? && answer.text.present? elsif unanswered answer_text += _('Not Answered') end diff --git a/app/models/contributor.rb b/app/models/contributor.rb index de5e03eea6..5cb2d9094d 100644 --- a/app/models/contributor.rb +++ b/app/models/contributor.rb @@ -130,10 +130,20 @@ def merge(other) private + # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity def name_or_email_presence - return true unless name.blank? && email.blank? + errors.add(:name, _("can't be blank.")) if name.blank? && Rails.configuration.x.application.require_contributor_name + if email.blank? && Rails.configuration.x.application.require_contributor_email + errors.add(:email, + _("can't be blank.")) + end + + if name.blank? && email.blank? && errors.size.zero? + errors.add(:name, _("can't be blank if no email is provided.")) + errors.add(:email, _("can't be blank if no name is provided.")) + end - errors.add(:name, _("can't be blank if no email is provided")) - errors.add(:email, _("can't be blank if no name is provided")) + errors.size.zero? end + # rubocop:enable Metrics/AbcSize, Metrics/CyclomaticComplexity end diff --git a/app/models/org.rb b/app/models/org.rb index 147f64348a..8f25d00e79 100644 --- a/app/models/org.rb +++ b/app/models/org.rb @@ -94,8 +94,6 @@ class Org < ApplicationRecord validates :name, presence: { message: PRESENCE_MESSAGE }, uniqueness: { message: UNIQUENESS_MESSAGE } - validates :abbreviation, presence: { message: PRESENCE_MESSAGE } - validates :is_other, inclusion: { in: BOOLEAN_VALUES, message: PRESENCE_MESSAGE } @@ -290,10 +288,12 @@ def org_admin_plans if Rails.configuration.x.plans.org_admins_read_all Plan.includes(:template, :phases, :roles, :users).where(id: combined_plan_ids) + .where(roles: { active: true }) else Plan.includes(:template, :phases, :roles, :users).where(id: combined_plan_ids) .where.not(visibility: Plan.visibilities[:privately_visible]) .where.not(visibility: Plan.visibilities[:is_test]) + .where(roles: { active: true }) end end # rubocop:enable Metrics/AbcSize diff --git a/app/models/plan.rb b/app/models/plan.rb index 69c59d50ce..2884d28581 100644 --- a/app/models/plan.rb +++ b/app/models/plan.rb @@ -487,7 +487,7 @@ def shared? def owner_and_coowners # We only need to search for :administrator in the bitflag # since :creator includes :administrator rights - roles.select { |r| r.active && r.administrator }.map(&:user).uniq + roles.select { |r| r.active && r.administrator && !r.user.nil? }.map(&:user).uniq end # The creator, administrator and editors diff --git a/app/views/api/v0/statistics/plans.json.jbuilder b/app/views/api/v0/statistics/plans.json.jbuilder index 0a975e7d14..c76e9ea751 100644 --- a/app/views/api/v0/statistics/plans.json.jbuilder +++ b/app/views/api/v0/statistics/plans.json.jbuilder @@ -2,6 +2,7 @@ json.prettify! +# rubocop:disable Metrics/BlockLength json.plans @org_plans.each do |plan| json.id plan.id json.grant_number plan.grant&.value @@ -21,8 +22,12 @@ json.plans @org_plans.each do |plan| json.name plan.contributors.investigation.first&.name end + json.owner do + json.email plan.owner.present? ? plan.owner.email : "" + end + json.data_contact do - json.info plan.contributors.data_curation.first&.name + json.info plan.contributors.data_curation.first&.name end json.description plan.description @@ -35,3 +40,4 @@ json.plans @org_plans.each do |plan| json.answered_questions plan.answers.count end end +# rubocop:enable Metrics/BlockLength diff --git a/app/views/contributors/_form.html.erb b/app/views/contributors/_form.html.erb index 3dcd50d396..b502e756b4 100644 --- a/app/views/contributors/_form.html.erb +++ b/app/views/contributors/_form.html.erb @@ -38,19 +38,21 @@ roles_tooltip = _("Select each role that applies to the contributor.") <% end %> -
-
- <%= form.label(:phone, _("Phone number"), class: "control-label") %> -
-
- <%= phone_tooltip %> - <%= form.phone_field :phone, class: "form-control", - title: phone_tooltip, - data: { toggle: "tooltip" }, - pattern: "[0-9\-\.\(\)\+]+", - placeholder: "123-123-1234" %> +<% if Rails.configuration.x.application.display_contributor_phone_number %> +
+
+ <%= form.label(:phone, _("Phone number"), class: "control-label") %> +
+
+ <%= phone_tooltip %> + <%= form.phone_field :phone, class: "form-control", + title: phone_tooltip, + data: { toggle: "tooltip" }, + pattern: "[0-9\-\.\(\)\+]+", + placeholder: "123-123-1234" %> +
-
+<% end %>
diff --git a/app/views/org_admin/users/edit.html.erb b/app/views/org_admin/users/edit.html.erb index 5c294ab297..e144293b34 100644 --- a/app/views/org_admin/users/edit.html.erb +++ b/app/views/org_admin/users/edit.html.erb @@ -75,9 +75,9 @@
<%= paginable_renderise( - partial: '/paginable/plans/org_admin_other_user', + partial: '/paginable/plans/index', controller: 'paginable/plans', - action: 'org_admin_other_user', + action: 'index', scope: @plans, query_params: { sort_field: 'plans.updated_at', sort_direction: 'desc' }) %>
diff --git a/app/views/org_admin/users/plans.html.erb b/app/views/org_admin/users/plans.html.erb index 25f05671a3..1381e16f34 100644 --- a/app/views/org_admin/users/plans.html.erb +++ b/app/views/org_admin/users/plans.html.erb @@ -7,9 +7,9 @@
<%= paginable_renderise( - partial: '/paginable/plans/org_admin_other_user', + partial: '/paginable/plans/index', controller: 'paginable/plans', - action: 'org_admin_other_user', + action: 'index', remote: true, scope: @plans, query_params: { sort_field: 'plans.updated_at', sort_direction: 'desc' }) %> diff --git a/app/views/orgs/_profile_form.html.erb b/app/views/orgs/_profile_form.html.erb index 15971d2c3c..5226143c6d 100644 --- a/app/views/orgs/_profile_form.html.erb +++ b/app/views/orgs/_profile_form.html.erb @@ -25,7 +25,7 @@
<%= f.label :abbreviation, _('Organisation abbreviated name'), class: "control-label" %> - <%= f.text_field :abbreviation, id: "org_abbreviation", class: "form-control", "aria-required": true %> + <%= f.text_field :abbreviation, id: "org_abbreviation", class: "form-control" %>
<% end %> diff --git a/app/views/paginable/plans/_org_admin_other_user.html.erb b/app/views/paginable/plans/_index.html.erb similarity index 90% rename from app/views/paginable/plans/_org_admin_other_user.html.erb rename to app/views/paginable/plans/_index.html.erb index e4ddfcbde6..aff6854691 100644 --- a/app/views/paginable/plans/_org_admin_other_user.html.erb +++ b/app/views/paginable/plans/_index.html.erb @@ -21,8 +21,8 @@ <% end %> <%= plan.template.title %> - <%= plan.owner&.org&.name %> - <%= plan.owner&.name(false) %> + <%= plan.owner.org.name if plan.owner.present? %> + <%= plan.owner.name(false) if plan.owner.present? %> <%= l(plan.updated_at.to_date, formats: :short) %> <%= plan.visibility === 'is_test' ? _('Test') : sanitize(display_visibility(plan.visibility)) %> diff --git a/app/views/shared/export/_plan.erb b/app/views/shared/export/_plan.erb index 423de9ae25..89b80b9aee 100644 --- a/app/views/shared/export/_plan.erb +++ b/app/views/shared/export/_plan.erb @@ -57,7 +57,7 @@ <% else %> <%# case where Question has options %> - <% if options.any? %> + <% if options.present? && options.any? %>
    <% options.each do |opt| %>
  • <%= opt.text %>
  • diff --git a/app/views/shared/export/_plan_coversheet.erb b/app/views/shared/export/_plan_coversheet.erb index df16331646..370fdf2338 100644 --- a/app/views/shared/export/_plan_coversheet.erb +++ b/app/views/shared/export/_plan_coversheet.erb @@ -3,9 +3,7 @@

    <%= _("A Data Management Plan created using %{application_name}") % { application_name: ApplicationService.application_name } %>


    - <%# Using tags as the htmltoword gem does not recognise css styles defined %> - <%# Allow raw html (==) for plan_attribution as it has tags %> -

    <%== plan_attribution(@hash[:attribution]) %>


    +

    <%= _("Creator:") %><%= @hash[:attribution] %>


    <%= _("Affiliation: ") %><%= @hash[:affiliation] %>


    diff --git a/app/views/shared/org_selectors/_external_only.html.erb b/app/views/shared/org_selectors/_external_only.html.erb index daf0ef3456..9353e1c05a 100644 --- a/app/views/shared/org_selectors/_external_only.html.erb +++ b/app/views/shared/org_selectors/_external_only.html.erb @@ -13,8 +13,8 @@ presenter = OrgSelectionPresenter.new(orgs: [default_org], placeholder = _("Begin typing to see a list of suggestions.") %> -<%= form.label :org_name, label %> -<%= form.text_field :org_name, class: "form-control autocomplete", +<%= form.label :name, label %> +<%= form.text_field :name, class: "form-control autocomplete", placeholder: placeholder, value: presenter.name, spellcheck: true, diff --git a/app/views/super_admin/users/edit.html.erb b/app/views/super_admin/users/edit.html.erb index abc4870e33..098af7517a 100644 --- a/app/views/super_admin/users/edit.html.erb +++ b/app/views/super_admin/users/edit.html.erb @@ -109,9 +109,9 @@
    <%= paginable_renderise( - partial: '/paginable/plans/org_admin_other_user', + partial: '/paginable/plans/index', controller: 'paginable/plans', - action: 'org_admin_other_user', + action: 'index', scope: @plans, query_params: { sort_field: 'plans.updated_at', sort_direction: 'desc' }) %>
    diff --git a/config/initializers/_dmproadmap.rb b/config/initializers/_dmproadmap.rb index 2886e46178..06c664419a 100644 --- a/config/initializers/_dmproadmap.rb +++ b/config/initializers/_dmproadmap.rb @@ -115,6 +115,12 @@ class Application < Rails::Application } # Setting to only take orgs from local and not allow on-the-fly creation config.x.application.restrict_orgs = false + # Setting to display phone number in contributor form + config.x.application.display_contributor_phone_number = false + + # Setting require contributor requirement of contributor name and email + config.x.application.require_contributor_name = false + config.x.application.require_contributor_email = false # ------------------- # # SHIBBOLETH SETTINGS # diff --git a/config/locale/app.pot b/config/locale/app.pot index bc5ca09dfb..8fbf5ca3ff 100644 --- a/config/locale/app.pot +++ b/config/locale/app.pot @@ -1,15 +1,15 @@ # SOME DESCRIPTIVE TITLE. -# Copyright (C) 2021 app +# Copyright (C) 2022 app # This file is distributed under the same license as the app package. -# FIRST AUTHOR , 2021. +# FIRST AUTHOR , 2022. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: app 1.0\n" "Report-Msgid-Bugs-To: contact@translation.io\n" -"POT-Creation-Date: 2021-10-01 11:19+0000\n" -"PO-Revision-Date: 2021-10-01 11:19+0000\n" +"POT-Creation-Date: 2022-02-10 08:50+0000\n" +"PO-Revision-Date: 2022-02-10 08:50+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" @@ -18,25 +18,25 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: ../../app/controllers/answers_controller.rb:24 +#: ../../app/controllers/answers_controller.rb:25 msgid "" -"There is no question with id %s associated to plan id %s f" -"or which to create or update an answer" +"There is no question with id %s associated to plan id %s" +" for which to create or update an answer" msgstr "" -#: ../../app/controllers/answers_controller.rb:34 +#: ../../app/controllers/answers_controller.rb:33 msgid "There is no plan with id %s for which to create or update an answer" msgstr "" -#: ../../app/controllers/api/v0/base_controller.rb:124 +#: ../../app/controllers/api/v0/base_controller.rb:126 msgid "Bad Credentials" msgstr "" -#: ../../app/controllers/api/v0/departments_controller.rb:20 +#: ../../app/controllers/api/v0/departments_controller.rb:22 msgid "Departments code and name must be unique" msgstr "" -#: ../../app/controllers/api/v0/plans_controller.rb:26 +#: ../../app/controllers/api/v0/plans_controller.rb:27 msgid "user must be in your organisation" msgstr "" @@ -44,28 +44,28 @@ msgstr "" msgid "Bad Parameters" msgstr "" -#: ../../app/controllers/api/v0/statistics_controller.rb:40 +#: ../../app/controllers/api/v0/statistics_controller.rb:41 #: ../../app/controllers/api/v0/statistics_controller.rb:89 -#: ../../app/controllers/api/v0/statistics_controller.rb:135 -#: ../../app/controllers/usage_controller.rb:68 +#: ../../app/controllers/api/v0/statistics_controller.rb:136 +#: ../../app/controllers/usage_controller.rb:66 #: ../../app/controllers/usage_controller.rb:87 msgid "Month" msgstr "" -#: ../../app/controllers/api/v0/statistics_controller.rb:40 -#: ../../app/controllers/usage_controller.rb:68 +#: ../../app/controllers/api/v0/statistics_controller.rb:41 +#: ../../app/controllers/usage_controller.rb:66 msgid "No. Users joined" msgstr "" -#: ../../app/controllers/api/v0/statistics_controller.rb:46 +#: ../../app/controllers/api/v0/statistics_controller.rb:47 #: ../../app/controllers/api/v0/statistics_controller.rb:95 -#: ../../app/controllers/api/v0/statistics_controller.rb:141 -#: ../../app/controllers/usage_controller.rb:74 +#: ../../app/controllers/api/v0/statistics_controller.rb:142 +#: ../../app/controllers/usage_controller.rb:72 #: ../../app/controllers/usage_controller.rb:93 msgid "Total" msgstr "" -#: ../../app/controllers/api/v0/statistics_controller.rb:47 +#: ../../app/controllers/api/v0/statistics_controller.rb:48 msgid "users_joined" msgstr "" @@ -78,137 +78,141 @@ msgstr "" msgid "completed_plans" msgstr "" -#: ../../app/controllers/api/v0/statistics_controller.rb:135 +#: ../../app/controllers/api/v0/statistics_controller.rb:136 msgid "No. Plans" msgstr "" -#: ../../app/controllers/api/v0/statistics_controller.rb:142 +#: ../../app/controllers/api/v0/statistics_controller.rb:143 msgid "plans" msgstr "" -#: ../../app/controllers/api/v1/authentication_controller.rb:49 +#: ../../app/controllers/api/v1/authentication_controller.rb:47 msgid "Missing or invalid JSON" msgstr "" -#: ../../app/controllers/api/v1/base_api_controller.rb:81 +#: ../../app/controllers/api/v1/base_api_controller.rb:79 msgid "Invalid JSON format" msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:20 +#: ../../app/controllers/api/v1/plans_controller.rb:18 msgid "Plan not found" msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:37 +#: ../../app/controllers/api/v1/plans_controller.rb:36 msgid "Unable to create your DMP" msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:38 +#: ../../app/controllers/api/v1/plans_controller.rb:37 msgid "Plan already exists. Send an update instead." msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:39 +#: ../../app/controllers/api/v1/plans_controller.rb:38 msgid "" "Could not determine ownership of the DMP. Please add an\n" " :affiliation to the :contact" msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:74 +#: ../../app/controllers/api/v1/plans_controller.rb:70 msgid "Invalid JSON!" msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:77 +#: ../../app/controllers/api/v1/plans_controller.rb:73 msgid "Invalid JSON" msgstr "" -#: ../../app/controllers/api/v1/plans_controller.rb:93 +#: ../../app/controllers/api/v1/plans_controller.rb:90 msgid "No Plans found" msgstr "" -#: ../../app/controllers/application_controller.rb:33 +#: ../../app/controllers/application_controller.rb:36 msgid "You are not authorized to perform this action." msgstr "" -#: ../../app/controllers/application_controller.rb:35 +#: ../../app/controllers/application_controller.rb:40 msgid "You need to sign in or sign up before continuing." msgstr "" -#: ../../app/controllers/application_controller.rb:100 +#: ../../app/controllers/application_controller.rb:108 msgid "Unable to %s the %s.%s" msgstr "" -#: ../../app/controllers/application_controller.rb:108 +#: ../../app/controllers/application_controller.rb:114 msgid "Successfully %s the %s." msgstr "" -#: ../../app/controllers/application_controller.rb:123 +#: ../../app/controllers/application_controller.rb:127 msgid "API client" msgstr "" -#: ../../app/controllers/application_controller.rb:124 +#: ../../app/controllers/application_controller.rb:128 msgid "plan" msgstr "" -#: ../../app/controllers/application_controller.rb:125 +#: ../../app/controllers/application_controller.rb:129 msgid "guidance group" msgstr "" -#: ../../app/controllers/application_controller.rb:126 +#: ../../app/controllers/application_controller.rb:130 msgid "comment" msgstr "" -#: ../../app/controllers/application_controller.rb:127 +#: ../../app/controllers/application_controller.rb:131 msgid "organisation" msgstr "" -#: ../../app/controllers/application_controller.rb:128 +#: ../../app/controllers/application_controller.rb:132 msgid "permission" msgstr "" -#: ../../app/controllers/application_controller.rb:129 +#: ../../app/controllers/application_controller.rb:133 msgid "preferences" msgstr "" -#: ../../app/controllers/application_controller.rb:130 +#: ../../app/controllers/application_controller.rb:134 msgid "profile" msgstr "" -#: ../../app/controllers/application_controller.rb:130 +#: ../../app/controllers/application_controller.rb:134 msgid "user" msgstr "" -#: ../../app/controllers/application_controller.rb:131 +#: ../../app/controllers/application_controller.rb:135 msgid "question option" msgstr "" -#: ../../app/controllers/concerns/paginable.rb:44 +#: ../../app/controllers/application_controller.rb:181 +msgid "Record Not Found" +msgstr "" + +#: ../../app/controllers/concerns/paginable.rb:45 msgid "scope should be an ActiveRecord::Relation object" msgstr "" -#: ../../app/controllers/concerns/paginable.rb:46 +#: ../../app/controllers/concerns/paginable.rb:47 msgid "path_params should be a Hash object" msgstr "" -#: ../../app/controllers/concerns/paginable.rb:47 +#: ../../app/controllers/concerns/paginable.rb:48 msgid "query_params should be a Hash object" msgstr "" -#: ../../app/controllers/concerns/paginable.rb:48 +#: ../../app/controllers/concerns/paginable.rb:49 msgid "locals should be a Hash object" msgstr "" -#: ../../app/controllers/concerns/paginable.rb:69 +#: ../../app/controllers/concerns/paginable.rb:70 msgid "Restricted access to View All the records" msgstr "" -#: ../../app/controllers/concerns/paginable.rb:180 +#: ../../app/controllers/concerns/paginable.rb:182 msgid "Sort by %s" msgstr "" -#: ../../app/controllers/concerns/template_methods.rb:10 +#: ../../app/controllers/concerns/template_methods.rb:8 msgid "customisation" msgstr "" -#: ../../app/controllers/concerns/template_methods.rb:10 +#: ../../app/controllers/concerns/template_methods.rb:8 msgid "template" msgstr "" @@ -216,28 +220,28 @@ msgstr "" msgid "obj should be a Template, Phase, Section, Question, or Annotation" msgstr "" -#: ../../app/controllers/concerns/versionable.rb:46 -#: ../../app/controllers/concerns/versionable.rb:65 +#: ../../app/controllers/concerns/versionable.rb:47 +#: ../../app/controllers/concerns/versionable.rb:66 msgid "obj should be a Phase, Section, Question, or Annotation" msgstr "" -#: ../../app/controllers/concerns/versionable.rb:88 +#: ../../app/controllers/concerns/versionable.rb:90 msgid "The search_space does not respond to each" msgstr "" -#: ../../app/controllers/concerns/versionable.rb:93 +#: ../../app/controllers/concerns/versionable.rb:94 msgid "The search space does not have elements associated" msgstr "" -#: ../../app/controllers/contacts_controller.rb:10 +#: ../../app/controllers/contacts_controller.rb:13 msgid "Captcha verification failed, please retry." msgstr "" -#: ../../app/controllers/contacts_controller.rb:16 +#: ../../app/controllers/contacts_controller.rb:18 msgid "Contact email was successfully sent." msgstr "" -#: ../../app/controllers/contacts_controller.rb:18 +#: ../../app/controllers/contacts_controller.rb:20 msgid "Unable to submit your request" msgstr "" @@ -251,60 +255,60 @@ msgid "added" msgstr "" #: ../../app/controllers/contributors_controller.rb:72 -#: ../../app/controllers/guidance_groups_controller.rb:48 -#: ../../app/controllers/guidances_controller.rb:71 -#: ../../app/controllers/notes_controller.rb:92 -#: ../../app/controllers/org_admin/departments_controller.rb:48 -#: ../../app/controllers/org_admin/sections_controller.rb:102 -#: ../../app/controllers/org_admin/templates_controller.rb:203 -#: ../../app/controllers/orgs_controller.rb:87 -#: ../../app/controllers/plans_controller.rb:271 -#: ../../app/controllers/plans_controller.rb:274 -#: ../../app/controllers/registrations_controller.rb:247 -#: ../../app/controllers/registrations_controller.rb:251 -#: ../../app/controllers/registrations_controller.rb:276 +#: ../../app/controllers/guidance_groups_controller.rb:51 +#: ../../app/controllers/guidances_controller.rb:74 +#: ../../app/controllers/notes_controller.rb:89 +#: ../../app/controllers/org_admin/departments_controller.rb:50 +#: ../../app/controllers/org_admin/sections_controller.rb:103 +#: ../../app/controllers/org_admin/templates_controller.rb:204 +#: ../../app/controllers/orgs_controller.rb:88 +#: ../../app/controllers/plans_controller.rb:282 +#: ../../app/controllers/plans_controller.rb:285 +#: ../../app/controllers/registrations_controller.rb:249 +#: ../../app/controllers/registrations_controller.rb:253 #: ../../app/controllers/registrations_controller.rb:280 -#: ../../app/controllers/users_controller.rb:98 -#: ../../app/controllers/users_controller.rb:125 +#: ../../app/controllers/registrations_controller.rb:284 +#: ../../app/controllers/users_controller.rb:101 +#: ../../app/controllers/users_controller.rb:129 msgid "saved" msgstr "" #: ../../app/controllers/contributors_controller.rb:74 -#: ../../app/controllers/guidance_groups_controller.rb:50 -#: ../../app/controllers/guidances_controller.rb:73 -#: ../../app/controllers/notes_controller.rb:110 -#: ../../app/controllers/org_admin/departments_controller.rb:50 -#: ../../app/controllers/org_admin/sections_controller.rb:104 -#: ../../app/controllers/org_admin/templates_controller.rb:208 -#: ../../app/controllers/orgs_controller.rb:89 -#: ../../app/controllers/plans_controller.rb:280 -#: ../../app/controllers/plans_controller.rb:283 -#: ../../app/controllers/plans_controller.rb:287 -#: ../../app/controllers/plans_controller.rb:290 -#: ../../app/controllers/registrations_controller.rb:254 -#: ../../app/controllers/registrations_controller.rb:283 +#: ../../app/controllers/guidance_groups_controller.rb:53 +#: ../../app/controllers/guidances_controller.rb:76 +#: ../../app/controllers/notes_controller.rb:107 +#: ../../app/controllers/org_admin/departments_controller.rb:52 +#: ../../app/controllers/org_admin/sections_controller.rb:105 +#: ../../app/controllers/org_admin/templates_controller.rb:209 +#: ../../app/controllers/orgs_controller.rb:90 +#: ../../app/controllers/plans_controller.rb:291 +#: ../../app/controllers/plans_controller.rb:294 +#: ../../app/controllers/plans_controller.rb:298 +#: ../../app/controllers/plans_controller.rb:301 +#: ../../app/controllers/registrations_controller.rb:256 +#: ../../app/controllers/registrations_controller.rb:287 msgid "save" msgstr "" #: ../../app/controllers/contributors_controller.rb:84 -#: ../../app/controllers/notes_controller.rb:134 -#: ../../app/controllers/org_admin/templates_controller.rb:236 +#: ../../app/controllers/notes_controller.rb:131 +#: ../../app/controllers/org_admin/templates_controller.rb:237 #: ../../app/controllers/super_admin/orgs_controller.rb:94 msgid "removed" msgstr "" #: ../../app/controllers/contributors_controller.rb:87 -#: ../../app/controllers/notes_controller.rb:152 -#: ../../app/controllers/org_admin/templates_controller.rb:238 +#: ../../app/controllers/notes_controller.rb:149 +#: ../../app/controllers/org_admin/templates_controller.rb:239 #: ../../app/controllers/super_admin/orgs_controller.rb:97 msgid "remove" msgstr "" -#: ../../app/controllers/contributors_controller.rb:160 +#: ../../app/controllers/contributors_controller.rb:161 msgid "plan not found" msgstr "" -#: ../../app/controllers/contributors_controller.rb:168 +#: ../../app/controllers/contributors_controller.rb:169 msgid "contributor not found" msgstr "" @@ -316,93 +320,93 @@ msgstr "" msgid "An error occurred when requesting feedback for this plan." msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:28 -#: ../../app/controllers/guidances_controller.rb:51 -#: ../../app/controllers/notes_controller.rb:51 -#: ../../app/controllers/org_admin/departments_controller.rb:25 -#: ../../app/controllers/org_admin/phases_controller.rb:120 -#: ../../app/controllers/org_admin/questions_controller.rb:95 -#: ../../app/controllers/org_admin/sections_controller.rb:78 -#: ../../app/controllers/org_admin/templates_controller.rb:177 -#: ../../app/controllers/plans_controller.rb:118 +#: ../../app/controllers/guidance_groups_controller.rb:29 +#: ../../app/controllers/guidances_controller.rb:52 +#: ../../app/controllers/notes_controller.rb:48 +#: ../../app/controllers/org_admin/departments_controller.rb:26 +#: ../../app/controllers/org_admin/phases_controller.rb:121 +#: ../../app/controllers/org_admin/questions_controller.rb:94 +#: ../../app/controllers/org_admin/sections_controller.rb:79 +#: ../../app/controllers/org_admin/templates_controller.rb:180 +#: ../../app/controllers/plans_controller.rb:120 #: ../../app/controllers/super_admin/api_clients_controller.rb:44 #: ../../app/controllers/super_admin/notifications_controller.rb:38 -#: ../../app/controllers/super_admin/orgs_controller.rb:62 -#: ../../app/controllers/super_admin/themes_controller.rb:22 +#: ../../app/controllers/super_admin/orgs_controller.rb:61 +#: ../../app/controllers/super_admin/themes_controller.rb:21 msgid "created" msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:31 -#: ../../app/controllers/guidances_controller.rb:53 -#: ../../app/controllers/notes_controller.rb:70 -#: ../../app/controllers/org_admin/departments_controller.rb:29 -#: ../../app/controllers/org_admin/phases_controller.rb:122 -#: ../../app/controllers/org_admin/questions_controller.rb:97 -#: ../../app/controllers/org_admin/sections_controller.rb:85 -#: ../../app/controllers/org_admin/templates_controller.rb:179 +#: ../../app/controllers/guidance_groups_controller.rb:32 +#: ../../app/controllers/guidances_controller.rb:54 +#: ../../app/controllers/notes_controller.rb:67 +#: ../../app/controllers/org_admin/departments_controller.rb:30 +#: ../../app/controllers/org_admin/phases_controller.rb:123 +#: ../../app/controllers/org_admin/questions_controller.rb:96 +#: ../../app/controllers/org_admin/sections_controller.rb:86 +#: ../../app/controllers/org_admin/templates_controller.rb:182 #: ../../app/controllers/plans_controller.rb:151 -#: ../../app/controllers/super_admin/api_clients_controller.rb:51 +#: ../../app/controllers/super_admin/api_clients_controller.rb:50 #: ../../app/controllers/super_admin/notifications_controller.rb:41 -#: ../../app/controllers/super_admin/orgs_controller.rb:65 -#: ../../app/controllers/super_admin/themes_controller.rb:25 +#: ../../app/controllers/super_admin/orgs_controller.rb:64 +#: ../../app/controllers/super_admin/themes_controller.rb:24 msgid "create" msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:61 +#: ../../app/controllers/guidance_groups_controller.rb:65 msgid "Your guidance group has been published and is now available to users." msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:64 -#: ../../app/controllers/guidances_controller.rb:107 +#: ../../app/controllers/guidance_groups_controller.rb:68 +#: ../../app/controllers/guidances_controller.rb:112 msgid "publish" msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:76 +#: ../../app/controllers/guidance_groups_controller.rb:79 msgid "Your guidance group is no longer published and will not be available to users." msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:79 -#: ../../app/controllers/guidances_controller.rb:124 +#: ../../app/controllers/guidance_groups_controller.rb:81 +#: ../../app/controllers/guidances_controller.rb:129 msgid "unpublish" msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:89 -#: ../../app/controllers/guidances_controller.rb:88 -#: ../../app/controllers/org_admin/departments_controller.rb:63 -#: ../../app/controllers/org_admin/phases_controller.rb:174 -#: ../../app/controllers/org_admin/question_options_controller.rb:25 +#: ../../app/controllers/guidance_groups_controller.rb:91 +#: ../../app/controllers/guidances_controller.rb:93 +#: ../../app/controllers/org_admin/departments_controller.rb:66 +#: ../../app/controllers/org_admin/phases_controller.rb:179 +#: ../../app/controllers/org_admin/question_options_controller.rb:24 #: ../../app/controllers/org_admin/questions_controller.rb:197 -#: ../../app/controllers/org_admin/sections_controller.rb:126 -#: ../../app/controllers/plans_controller.rb:332 -#: ../../app/controllers/super_admin/api_clients_controller.rb:79 -#: ../../app/controllers/super_admin/notifications_controller.rb:84 -#: ../../app/controllers/super_admin/themes_controller.rb:50 +#: ../../app/controllers/org_admin/sections_controller.rb:128 +#: ../../app/controllers/plans_controller.rb:344 +#: ../../app/controllers/super_admin/api_clients_controller.rb:81 +#: ../../app/controllers/super_admin/notifications_controller.rb:85 +#: ../../app/controllers/super_admin/themes_controller.rb:51 msgid "deleted" msgstr "" -#: ../../app/controllers/guidance_groups_controller.rb:91 -#: ../../app/controllers/guidances_controller.rb:90 -#: ../../app/controllers/org_admin/departments_controller.rb:65 -#: ../../app/controllers/org_admin/phases_controller.rb:176 -#: ../../app/controllers/org_admin/question_options_controller.rb:27 +#: ../../app/controllers/guidance_groups_controller.rb:93 +#: ../../app/controllers/guidances_controller.rb:95 +#: ../../app/controllers/org_admin/departments_controller.rb:68 +#: ../../app/controllers/org_admin/phases_controller.rb:181 +#: ../../app/controllers/org_admin/question_options_controller.rb:26 #: ../../app/controllers/org_admin/questions_controller.rb:199 -#: ../../app/controllers/org_admin/sections_controller.rb:128 -#: ../../app/controllers/plans_controller.rb:337 -#: ../../app/controllers/super_admin/api_clients_controller.rb:82 -#: ../../app/controllers/super_admin/notifications_controller.rb:87 -#: ../../app/controllers/super_admin/themes_controller.rb:53 +#: ../../app/controllers/org_admin/sections_controller.rb:130 +#: ../../app/controllers/plans_controller.rb:349 +#: ../../app/controllers/super_admin/api_clients_controller.rb:84 +#: ../../app/controllers/super_admin/notifications_controller.rb:88 +#: ../../app/controllers/super_admin/themes_controller.rb:54 msgid "delete" msgstr "" -#: ../../app/controllers/guidances_controller.rb:104 +#: ../../app/controllers/guidances_controller.rb:109 msgid "Your guidance has been published and is now available to users." msgstr "" -#: ../../app/controllers/guidances_controller.rb:121 +#: ../../app/controllers/guidances_controller.rb:126 msgid "Your guidance is no longer published and will not be available to users." msgstr "" -#: ../../app/controllers/identifiers_controller.rb:18 +#: ../../app/controllers/identifiers_controller.rb:19 msgid "Successfully unlinked your account from %s." msgstr "" @@ -410,8 +414,8 @@ msgstr "" msgid "Unable to unlink your account from %s." msgstr "" -#: ../../app/controllers/org_admin/phases_controller.rb:18 -#: ../../app/controllers/org_admin/templates_controller.rb:114 +#: ../../app/controllers/org_admin/phases_controller.rb:17 +#: ../../app/controllers/org_admin/templates_controller.rb:115 msgid "" "You are viewing a historical version of this template. You will not be able to" " make changes." @@ -421,70 +425,72 @@ msgstr "" msgid "You cannot add a phase to a historical version of a template." msgstr "" -#: ../../app/controllers/org_admin/phases_controller.rb:125 -#: ../../app/controllers/org_admin/phases_controller.rb:149 -#: ../../app/controllers/org_admin/phases_controller.rb:179 -#: ../../app/controllers/org_admin/question_options_controller.rb:30 -#: ../../app/controllers/org_admin/questions_controller.rb:100 -#: ../../app/controllers/org_admin/questions_controller.rb:202 -#: ../../app/controllers/org_admin/sections_controller.rb:107 -#: ../../app/controllers/org_admin/sections_controller.rb:131 -msgid "Unable to create a new version of this template." +#: ../../app/controllers/org_admin/phases_controller.rb:126 +msgid "Unable to create a new version of this template.
    " msgstr "" -#: ../../app/controllers/org_admin/phases_controller.rb:144 +#: ../../app/controllers/org_admin/phases_controller.rb:147 #: ../../app/controllers/org_admin/questions_controller.rb:166 #: ../../app/controllers/org_admin/users_controller.rb:30 -#: ../../app/controllers/plans_controller.rb:400 -#: ../../app/controllers/super_admin/api_clients_controller.rb:67 -#: ../../app/controllers/super_admin/notifications_controller.rb:51 +#: ../../app/controllers/plans_controller.rb:417 +#: ../../app/controllers/super_admin/api_clients_controller.rb:68 +#: ../../app/controllers/super_admin/notifications_controller.rb:52 #: ../../app/controllers/super_admin/themes_controller.rb:39 -#: ../../app/controllers/super_admin/users_controller.rb:55 -#: ../../app/controllers/users_controller.rb:103 +#: ../../app/controllers/super_admin/users_controller.rb:54 +#: ../../app/controllers/users_controller.rb:106 msgid "updated" msgstr "" -#: ../../app/controllers/org_admin/phases_controller.rb:146 +#: ../../app/controllers/org_admin/phases_controller.rb:149 #: ../../app/controllers/org_admin/questions_controller.rb:169 #: ../../app/controllers/org_admin/users_controller.rb:32 -#: ../../app/controllers/plans_controller.rb:403 -#: ../../app/controllers/super_admin/api_clients_controller.rb:69 -#: ../../app/controllers/super_admin/notifications_controller.rb:54 +#: ../../app/controllers/plans_controller.rb:420 +#: ../../app/controllers/super_admin/api_clients_controller.rb:70 +#: ../../app/controllers/super_admin/notifications_controller.rb:55 #: ../../app/controllers/super_admin/themes_controller.rb:41 -#: ../../app/controllers/super_admin/users_controller.rb:57 +#: ../../app/controllers/super_admin/users_controller.rb:56 msgid "update" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:32 +#: ../../app/controllers/org_admin/phases_controller.rb:152 +#: ../../app/controllers/org_admin/phases_controller.rb:184 +#: ../../app/controllers/org_admin/question_options_controller.rb:29 +#: ../../app/controllers/org_admin/questions_controller.rb:99 +#: ../../app/controllers/org_admin/questions_controller.rb:202 +#: ../../app/controllers/org_admin/sections_controller.rb:108 +msgid "Unable to create a new version of this template." +msgstr "" + +#: ../../app/controllers/org_admin/plans_controller.rb:36 msgid "%s has been notified that you have finished providing feedback" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:38 +#: ../../app/controllers/org_admin/plans_controller.rb:40 msgid "Unable to notify user that you have finished providing feedback." msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:53 -#: ../../app/views/plans/_project_details.html.erb:9 +#: ../../app/controllers/org_admin/plans_controller.rb:56 +#: ../../app/views/plans/_project_details.html.erb:14 msgid "Project title" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:54 +#: ../../app/controllers/org_admin/plans_controller.rb:57 +#: ../../app/views/paginable/plans/_index.html.erb:6 #: ../../app/views/paginable/plans/_org_admin.html.erb:19 -#: ../../app/views/paginable/plans/_org_admin_other_user.html.erb:6 #: ../../app/views/paginable/plans/_organisationally_or_publicly_visible.html.erb:13 #: ../../app/views/paginable/plans/_privately_visible.html.erb:6 #: ../../app/views/paginable/plans/_publicly_visible.html.erb:6 msgid "Template" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:55 +#: ../../app/controllers/org_admin/plans_controller.rb:58 #: ../../app/helpers/plans_helper.rb:22 -#: ../../app/helpers/settings_template_helper.rb:15 +#: ../../app/helpers/settings_template_helper.rb:16 #: ../../app/views/devise/registrations/_password_confirmation.html.erb:22 #: ../../app/views/orgs/_profile_form.html.erb:141 #: ../../app/views/paginable/orgs/_index.html.erb:5 +#: ../../app/views/paginable/plans/_index.html.erb:7 #: ../../app/views/paginable/plans/_org_admin.html.erb:20 -#: ../../app/views/paginable/plans/_org_admin_other_user.html.erb:7 #: ../../app/views/paginable/plans/_publicly_visible.html.erb:7 #: ../../app/views/paginable/templates/_index.html.erb:6 #: ../../app/views/paginable/templates/_organisational.html.erb:12 @@ -495,63 +501,66 @@ msgstr "" msgid "Organisation" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:56 +#: ../../app/controllers/org_admin/plans_controller.rb:59 msgid "Owner name" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:57 +#: ../../app/controllers/org_admin/plans_controller.rb:60 msgid "Owner email" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:58 +#: ../../app/controllers/org_admin/plans_controller.rb:61 +#: ../../app/views/paginable/plans/_index.html.erb:9 #: ../../app/views/paginable/plans/_org_admin.html.erb:23 -#: ../../app/views/paginable/plans/_org_admin_other_user.html.erb:9 #: ../../app/views/paginable/plans/_organisationally_or_publicly_visible.html.erb:18 msgid "Updated" msgstr "" -#: ../../app/controllers/org_admin/plans_controller.rb:59 +#: ../../app/controllers/org_admin/plans_controller.rb:62 #: ../../app/views/org_admin/templates/_form.html.erb:17 #: ../../app/views/org_admin/templates/_show.html.erb:32 +#: ../../app/views/paginable/plans/_index.html.erb:10 #: ../../app/views/paginable/plans/_org_admin.html.erb:24 -#: ../../app/views/paginable/plans/_org_admin_other_user.html.erb:10 #: ../../app/views/paginable/plans/_privately_visible.html.erb:10 msgid "Visibility" msgstr "" -#: ../../app/controllers/org_admin/sections_controller.rb:70 +#: ../../app/controllers/org_admin/sections_controller.rb:71 msgid "Unable to create a new section. The phase you specified does not exist." msgstr "" -#: ../../app/controllers/org_admin/template_copies_controller.rb:18 -#: ../../app/controllers/plans_controller.rb:380 +#: ../../app/controllers/org_admin/sections_controller.rb:133 +msgid "Unable to delete this version of the template." +msgstr "" + +#: ../../app/controllers/org_admin/template_copies_controller.rb:20 +#: ../../app/controllers/plans_controller.rb:396 msgid "copy" msgstr "" #: -#: ../../app/controllers/org_admin/template_customization_transfers_controller.rb:27 +#: ../../app/controllers/org_admin/template_customization_transfers_controller.rb:28 msgid "That template is no longer customizable." msgstr "" -#: ../../app/controllers/org_admin/template_customizations_controller.rb:19 +#: ../../app/controllers/org_admin/template_customizations_controller.rb:21 msgid "Unable to customize that template." msgstr "" -#: ../../app/controllers/org_admin/template_customizations_controller.rb:22 +#: ../../app/controllers/org_admin/template_customizations_controller.rb:24 msgid "That template is not customizable." msgstr "" -#: ../../app/controllers/org_admin/templates_controller.rb:23 +#: ../../app/controllers/org_admin/templates_controller.rb:21 #: ../../app/views/org_admin/templates/index.html.erb:43 msgid "All Templates" msgstr "" -#: ../../app/controllers/org_admin/templates_controller.rb:48 -#: ../../app/views/org_admin/templates/index.html.erb:52 +#: ../../app/controllers/org_admin/templates_controller.rb:47 msgid "%s Templates" msgstr "" -#: ../../app/controllers/org_admin/templates_controller.rb:50 +#: ../../app/controllers/org_admin/templates_controller.rb:49 #: ../../app/views/org_admin/templates/index.html.erb:54 msgid "Own Templates" msgstr "" @@ -560,100 +569,102 @@ msgstr "" msgid "Customizable Templates" msgstr "" -#: ../../app/controllers/org_admin/templates_controller.rb:214 +#: ../../app/controllers/org_admin/templates_controller.rb:215 msgid "Error parsing links for a %