Make docx parser feature togglable [SCI-9094] (#6055)

This commit is contained in:
Alex Kriuchykhin 2023-08-23 16:46:29 +02:00 committed by GitHub
parent 207b302a03
commit 3c0389adc8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 10 additions and 3 deletions

View file

@ -824,6 +824,8 @@ class ProtocolsController < ApplicationController
end
def import_docx
return render_403 unless Protocol.docx_parser_enabled?
temp_files_ids = []
params[:files].each do |file|
temp_file = TempFile.new(session_id: request.session_options[:id], file: file)

View file

@ -232,6 +232,10 @@ class Protocol < ApplicationRecord
teams.blank? ? self : where(team: teams)
end
def self.docx_parser_enabled?
ENV.fetch('PROTOCOLS_PARSER_URL', nil).present?
end
def original_code
# returns linked protocol code, or code of the original version of the linked protocol
parent&.parent&.code || parent&.code || code

View file

@ -21,8 +21,8 @@
<ul class="dropdown-menu">
<li>
<a class="btn-link-alt btn-secondary-link btn-open-file" <%= can_create_protocols_in_repository?(@current_team) ? 'data-action="import"' : 'disabled="disabled"' %>>
<span><%= t("protocols.index.import_alt") %></span>
<input type="file" value="" accept=".eln,.docx" data-role="import-file-input"
<span><%= Protocol.docx_parser_enabled? ? t('protocols.index.import_eln_docx') : t('protocols.index.import_eln') %></span>
<input type="file" value="" accept="<%= Protocol.docx_parser_enabled? ? '.eln,.docx' : '.eln' %>" data-role="import-file-input"
data-team-id="<%= @current_team.id %>" data-import-url="<%= import_protocols_path %>">
</a>
</li>

View file

@ -2881,7 +2881,8 @@ en:
edit: "Edit"
clone_btn: "Copy"
import: "Import"
import_alt: "From file (.docx, .eln)"
import_eln: "From file (.eln)"
import_eln_docx: "From file (.docx, .eln)"
import_protocols_io: "From Protocols.io"
modal_import_json_upload: "Upload"
modal_import_json_title: "Import protocols.io file"