added zero minor version allowance for approval workflows

This commit is contained in:
wolfc01 2021-04-05 17:58:49 +02:00
parent 79ba86d682
commit af2f9e0a3e
4 changed files with 21 additions and 2 deletions

View File

@ -110,6 +110,14 @@ class DmsfFile < ActiveRecord::Base
visible.find_by project_id: project_id, dmsf_folder_id: folder&.id, name: name
end
def approval_allowed_zero_minor
if Setting.plugin_redmine_dmsf['only_approval_zero_minor_version']
return last_revision.minor_version == 0
else
return true
end
end
def last_revision
unless defined?(@last_revision)
@last_revision = deleted? ? dmsf_file_revisions.first : dmsf_file_revisions.visible.first

View File

@ -22,7 +22,7 @@
<% workflows_available = DmsfWorkflow.where(['project_id = ? OR project_id IS NULL', project.id]).exists? %>
<% wf = DmsfWorkflow.find_by(id: dmsf_file.last_revision.dmsf_workflow_id) if dmsf_file.last_revision.dmsf_workflow_id %>
<% file_approval_allowed = User.current.allowed_to?(:file_approval, project) %>
<% file_approval_allowed = User.current.allowed_to?(:file_approval, project) && (dmsf_file.approval_allowed_zero_minor)%>
<% allowed = User.current && (dmsf_file.last_revision.dmsf_workflow_assigned_by_user == User.current) && wf %>
<% if file_approval_allowed %>

View File

@ -200,6 +200,14 @@
</em>
</p>
<p>
<%= content_tag(:label, l(:only_approval_zero_minor_version)) %>
<%= check_box_tag 'settings[only_approval_zero_minor_version]', false, @settings['only_approval_zero_minor_version'], size: 50 %>
<em class="info">
<%= l(:only_approval_zero_minor_version) %><br/> <%= l(:label_default) %>: <%= l(:general_text_No)%>
</em>
</p>
<hr/>
<em class="info">
<%= l(:label_webdav) %>
@ -315,3 +323,5 @@
<%= l(:text_enable_cjk_ngrams) %>
</em>
</p>

View File

@ -421,4 +421,5 @@ en:
activerecord:
errors:
messages:
error_contains_invalid_character: contains invalid character(s)
error_contains_invalid_character: contains invalid character(s)
only_approval_zero_minor_version: only approval zero minor version