diff --git a/app/models/protocol.rb b/app/models/protocol.rb
index 8ce4f25a2..4042f10bc 100644
--- a/app/models/protocol.rb
+++ b/app/models/protocol.rb
@@ -560,6 +560,7 @@ class Protocol < ApplicationRecord
draft.published_by = nil
draft.published_on = nil
draft.version_comment = nil
+ draft.previous_version = self
return draft if draft.invalid?
diff --git a/app/views/protocols/index/_protocol_versions_modal.html.erb b/app/views/protocols/index/_protocol_versions_modal.html.erb
index ab956150c..0bfda0191 100644
--- a/app/views/protocols/index/_protocol_versions_modal.html.erb
+++ b/app/views/protocols/index/_protocol_versions_modal.html.erb
@@ -9,42 +9,47 @@
<% if @protocol.draft.present? %>
+ <% draft = @protocol.draft %>
- <%= link_to protocol_path(@protocol.draft) do %>
- <%= t('protocols.index.versions.draft_html', parent_version: @protocol.draft.version_number) %>
+ <%= link_to protocol_path(draft) do %>
+ <% if draft.previous_version %>
+ <%= t('protocols.index.versions.draft_html', parent_version: draft.previous_version.version_number) %>
+ <% else %>
+ <%= t('protocols.index.versions.first_draft_html') %>
+ <% end %>
<% end %>
<%= t('protocols.index.versions.draft_modification_info',
- modified_on: @protocol.draft.updated_at.present? ? l(@protocol.draft.updated_at, format: :full_date) : '',
- modified_by: @protocol.draft.last_modified_by&.full_name) %>
+ modified_on: draft.updated_at.present? ? l(draft.updated_at, format: :full_date) : '',
+ modified_by: draft.last_modified_by&.full_name) %>
- <% if can_manage_protocol_in_repository?(@protocol.draft) %>
- <%= button_to publish_protocol_path(@protocol.draft), class: "btn btn-light publish-draft" do %>
+ <% if can_manage_protocol_in_repository?(draft) %>
+ <%= button_to publish_protocol_path(draft), class: "btn btn-light publish-draft" do %>
<%= image_tag 'icon_small/publish.svg' %>
<%= t('protocols.index.versions.publish') %>
<% end %>
-
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 7b391f552..8edd4bd37 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -2823,6 +2823,7 @@ en:
row_in_repository_private: "%{protocol} -
into My protocols"
versions:
title: "%{protocol} versions"
+ first_draft_html: "
Draft"
draft_html: "
Draft (from Version %{parent_version})"
draft_modification_info: "Last modified: %{modified_on}, by %{modified_by}"
revision: "Version %{version}"