100 lines
5.5 KiB
Plaintext
100 lines
5.5 KiB
Plaintext
<%
|
|
# encoding: utf-8
|
|
#
|
|
# Redmine plugin for Document Management System "Features"
|
|
#
|
|
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation; either version 2
|
|
# of the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
%>
|
|
|
|
<span id="dmsf_attachments_fields">
|
|
<% if defined?(container) && container && container.saved_dmsf_attachments.present? %>
|
|
<% container.saved_dmsf_attachments.each_with_index do |attachment, i| %>
|
|
<span id="dmsf_attachments_p<%= i %>", class="attachment">
|
|
<%= hidden_field_tag "dmsf_attachments[p#{i}][token]", "#{attachment.token}" %>
|
|
<%= text_field_tag("dmsf_attachments[p#{i}][filename]", attachment.filename, :class => 'filename') %>
|
|
<%= text_field_tag("dmsf_attachments[p#{i}][description]", attachment.description, :maxlength => 255,
|
|
:placeholder => l(:label_optional_description), :class => 'description') if description %>
|
|
<%= link_to('', dmsf_attachment_path(attachment, :attachment_id => "p#{i}", :format => 'js'),
|
|
:method => 'delete', :remote => true, :class => 'remove-upload icon-only icon-del') %>
|
|
<% wf = container.saved_dmsf_attachments_wfs[attachment.id] %>
|
|
<% if wf %>
|
|
<a href="javascript:void(0);" title="<%= l(:title_assigned) %>" class="icon-only icon-wf-assigned"></a>
|
|
<%= hidden_field_tag("dmsf_attachments_wfs[p#{i}]", wf.id) if wf %>
|
|
<% else %>
|
|
<%= link_to('', assign_dmsf_workflow_path(:id => container.project.id, :project_id => container.project.id,
|
|
:attachment_id => i + 1), :title => l(:label_dmsf_wokflow_action_assign),
|
|
:remote => true, :class => 'icon-only icon-wf-none') %>
|
|
<% end %>
|
|
</span>
|
|
<% end %>
|
|
<% end %>
|
|
</span>
|
|
|
|
<span id="dmsf_links_attachments_fields">
|
|
<% if defined?(container) && container && container.saved_dmsf_links.present? %>
|
|
<% container.saved_dmsf_links.each_with_index do |dmsf_link, index| %>
|
|
<span id="dmsf_links_attachments_<%= index %>", class="attachment">
|
|
<input name="dmsf_links[<%= index %>]" value="<%= dmsf_link.id %>" type="hidden">
|
|
<input type="text" class='filename readonly' value="<%= dmsf_link.name %>">
|
|
<%= link_to('', dmsf_link_attachment_path(dmsf_link, :link_id => "#{index}", :format => 'js'),
|
|
:method => 'delete', :remote => true, :class => 'remove-upload icon-only icon-del') %>
|
|
<% wf = container.saved_dmsf_links_wfs[dmsf_link.id] %>
|
|
<% if wf %>
|
|
<a href="javascript:void(0);" title="<%= l(:title_assigned) %>" class="icon-only icon-wf-assigned"></a>
|
|
<%= hidden_field_tag("dmsf_links_wfs[#{dmsf_link.id}]", wf.id) if wf %>
|
|
<% else %>
|
|
<%= render(:partial => 'dmsf_files/approval_workflow_button',
|
|
:locals => {:file => dmsf_link.target_file,
|
|
:file_approval_allowed => User.current.allowed_to?(:file_approval, dmsf_link.target_file.project),
|
|
:workflows_available => DmsfWorkflow.where(
|
|
['project_id = ? OR project_id IS NULL', dmsf_link.target_file.project_id]).exists?,
|
|
:project => dmsf_link.target_file.project, :wf => wf, :dmsf_link_id => dmsf_link.id }) %>
|
|
<% end %>
|
|
</span>
|
|
<% end %>
|
|
<% end %>
|
|
</span>
|
|
|
|
<span class="dmsf_add_attachment add_attachment">
|
|
<%= file_field_tag 'dmsf_attachments[dummy][file]',
|
|
:id => nil,
|
|
:class => 'file_selector',
|
|
:multiple => multiple,
|
|
:onchange => "dmsfAddInputFiles(this);",
|
|
:data => {
|
|
:max_file_size => Setting.attachment_max_size.to_i.kilobytes,
|
|
:max_file_size_message => l(:error_attachment_too_big,
|
|
:max_size => number_to_human_size(Setting.attachment_max_size.to_i.kilobytes)),
|
|
:max_concurrent_uploads => Redmine::Configuration['max_concurrent_ajax_uploads'].to_i,
|
|
:upload_path => dmsf_uploads_path(:format => 'js'),
|
|
:description_placeholder => l(:label_optional_description),
|
|
:project => "#{@project.identifier}",
|
|
:description => description,
|
|
:awf => awf
|
|
} %>
|
|
</span>
|
|
<% if defined?(container) && container %>
|
|
<span class="dmsf_add_link">
|
|
<%= link_to l(:label_link_from),
|
|
new_dmsf_link_path(:project_id => container.project.id, :type => 'link_from', :container => container.class.name),
|
|
:title => l(:title_create_link), :class => 'icon icon-add file_selector', :remote => true %>
|
|
</span>
|
|
<% end %>
|
|
<span class="info">
|
|
(<%= l(:label_max_size) %>: <%= number_to_human_size(Setting.attachment_max_size.to_i.kilobytes) %>)
|
|
</span>
|