Javascript on pages is loaded asynchronously
This commit is contained in:
parent
80efa44749
commit
e4ea2388c4
@ -5,6 +5,7 @@ Changelog for Redmine DMSF
|
||||
------------------
|
||||
|
||||
WebDAV caching optionable in the plugin settings. Default is off.
|
||||
Javascript on pages is loaded asynchronously.
|
||||
|
||||
1.6.0 *2017-09-12*
|
||||
------------------
|
||||
|
||||
6
Gemfile
6
Gemfile
@ -4,7 +4,7 @@
|
||||
#
|
||||
# Copyright (C) 2011 Vít Jonáš <vit.jonas@gmail.com>
|
||||
# Copyright (C) 2012 Daniel Munn <dan.munn@munnster.co.uk>
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -28,4 +28,6 @@ gem 'simple_enum'
|
||||
gem 'uuidtools'
|
||||
gem 'dav4rack'
|
||||
gem 'dalli'
|
||||
gem 'redmine_extensions' unless Dir.exist?(File.expand_path('../../easyproject', __FILE__))
|
||||
unless %w(easyproject easy_gantt).any? { |plugin| Dir.exist?(File.expand_path("../../#{plugin}", __FILE__)) }
|
||||
gem 'redmine_extensions', '~> 0.2.5'
|
||||
end
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
#
|
||||
# Copyright (C) 2011 Vít Jonáš <vit.jonas@gmail.com>
|
||||
# Copyright (C) 2012 Daniel Munn <dan.munn@munnster.co.uk>
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -111,7 +111,7 @@
|
||||
<% end %>
|
||||
|
||||
<%= wikitoolbar_for 'dmsf_folder_description' %>
|
||||
|
||||
<script type="text/javascript">
|
||||
$('#dmsf_folder_dmsf_folder_id').select2();
|
||||
</script>
|
||||
|
||||
<%= late_javascript_tag do %>
|
||||
$('#dmsf_folder_dmsf_folder_id').select2();
|
||||
<% end %>
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
#
|
||||
# Copyright (C) 2011 Vít Jonáš <vit.jonas@gmail.com>
|
||||
# Copyright (C) 2012 Daniel Munn <dan.munn@munnster.co.uk>
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -119,23 +119,21 @@
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<script type="text/javascript">
|
||||
$('#entries_delete_button').click(function() {
|
||||
if(window.confirm("<%= l(:text_are_you_sure) %>")) {
|
||||
<%= late_javascript_tag do %>
|
||||
$('#entries_delete_button').click(function () {
|
||||
if (window.confirm("<%= l(:text_are_you_sure) %>")) {
|
||||
$('#entries_form').attr('action', "<%= delete_entries_path(:id => @project, :folder_id => @folder) %>");
|
||||
$('#entries_form').submit();
|
||||
}
|
||||
});
|
||||
|
||||
$('.list_cf').change(function() {
|
||||
$('#entries_form').attr('action', "<%= tag_changed_path(:id => @project, :folder_id => @folder) %>");
|
||||
$('#entries_form').submit();
|
||||
});
|
||||
|
||||
$('#check_all_entries').click(function() {
|
||||
$('input[type=checkbox]', $('#browser > tbody')).prop('checked', this.checked);
|
||||
});
|
||||
</script>
|
||||
<% end %>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= javascript_include_tag 'bowser.min.js', :plugin => 'redmine_dmsf' %>
|
||||
@ -153,8 +151,8 @@
|
||||
<% size = DmsfFolder.get_column_position('size') %>
|
||||
<% modified = DmsfFolder.get_column_position('modified') %>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
<%= late_javascript_tag do %>
|
||||
EASY.schedule.main(function() {
|
||||
$('#browser').dataTable({
|
||||
'bJQueryUI': true,
|
||||
'oLanguage': {
|
||||
@ -211,7 +209,7 @@
|
||||
$(this).removeAttr('data-submitted');
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<% if (@file_manipulation_allowed && !@locked_for_user && !@system_folder) %>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
#
|
||||
# Redmine plugin for Document Management System "Features"
|
||||
#
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -162,23 +162,21 @@
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%= late_javascript_tag do %>
|
||||
$('#entries_delete_button').click(function() {
|
||||
if(window.confirm("<%= l(:text_are_you_sure) %>")) {
|
||||
$('#entries_form').attr('action', "<%= delete_entries_path(:id => @project, :folder_id => @folder) %>");
|
||||
$('#entries_form').submit();
|
||||
}
|
||||
});
|
||||
|
||||
$('.list_cf').change(function() {
|
||||
$('#entries_form').attr('action', "<%= tag_changed_path(:id => @project, :folder_id => @folder) %>");
|
||||
$('#entries_form').submit();
|
||||
});
|
||||
|
||||
$('#check_all_entries').click(function() {
|
||||
$('input[type=checkbox]', $('#browser > tbody')).prop('checked', this.checked);
|
||||
});
|
||||
</script>
|
||||
<% end %>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= stylesheet_link_tag 'jquery.dataTables/jquery-ui.dataTables.css', :plugin => 'redmine_dmsf' %>
|
||||
@ -195,9 +193,9 @@
|
||||
<% size = DmsfFolder.get_column_position('size') %>
|
||||
<% modified = DmsfFolder.get_column_position('modified') %>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
$('#browser').dataTable({
|
||||
<%= late_javascript_tag do %>
|
||||
EASY.schedule.main(function() {
|
||||
$('#browser').dataTable({
|
||||
'bJQueryUI': true,
|
||||
'oLanguage': {
|
||||
'sUrl': "<%= plugin_asset_path(:redmine_dmsf, 'javascripts', json_url) %>"
|
||||
@ -233,5 +231,5 @@
|
||||
$(this).removeAttr('data-submitted');
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
#
|
||||
# Copyright (C) 2011 Vít Jonáš <vit.jonas@gmail.com>
|
||||
# Copyright (C) 2012 Daniel Munn <dan.munn@munnster.co.uk>
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -179,26 +179,23 @@
|
||||
|
||||
<span class="pagination"><%= pagination_links_full @revision_pages, @file.dmsf_file_revisions.visible.count %></span>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%= late_javascript_tag do %>
|
||||
$('a.delete-revision').click(function(event) {
|
||||
if(!window.confirm('<%= l(:text_are_you_sure) %>')) {
|
||||
event.preventDefault();
|
||||
}
|
||||
});
|
||||
|
||||
$('a.delete-entry').click(function(event) {
|
||||
if(!window.confirm('<%= l(:text_are_you_sure) %>')) {
|
||||
event.preventDefault();
|
||||
}
|
||||
});
|
||||
|
||||
$('#file_upload_box').change(function() {
|
||||
if($("input[name='version']:checked").val() == '0') {
|
||||
$('#version_1').prop('checked', true);
|
||||
}
|
||||
$('#version_0').prop('disabled', true);
|
||||
});
|
||||
|
||||
$('#newRevisionFormContentToggle').click(function() {
|
||||
if($('#newRevisionFormContent').is(':visible')) {
|
||||
$(this).text('[+]');
|
||||
@ -209,22 +206,21 @@
|
||||
$('#newRevisionFormContent').show();
|
||||
}
|
||||
});
|
||||
|
||||
$('.dmsf_list').dataTable({
|
||||
'bJQueryUI': true,
|
||||
'oLanguage': {
|
||||
'sUrl': "<%= plugin_asset_path(:redmine_dmsf, 'javascripts', json_url) %>"
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<% end %>
|
||||
<% if @revision.valid? && @file.valid? %>
|
||||
<script type="text/javascript">
|
||||
<%= late_javascript_tag do %>
|
||||
$('#newRevisionFormContentToggle').text('[+]');
|
||||
$('#newRevisionFormContent').hide();
|
||||
</script>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= stylesheet_link_tag 'jquery.dataTables/jquery-ui.dataTables.css', :plugin => 'redmine_dmsf' %>
|
||||
<%= javascript_include_tag 'jquery.dataTables/jquery.dataTables.min.js', :plugin => 'redmine_dmsf' %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
@ -7,9 +7,8 @@
|
||||
<%= hidden_field_tag :project_id, @project.id %>
|
||||
|
||||
<p><%= label_tag 'user_search', l(:label_user_search) %><%= text_field_tag 'user_search', nil %></p>
|
||||
<%= javascript_tag "observeSearchfield('user_search', 'users_for_users', '#{ escape_javascript url_for(:controller => 'dmsf_folder_permissions',
|
||||
:action => 'autocomplete_for_user',
|
||||
:project_id => @project) }')" %>
|
||||
<%= late_javascript_tag "observeSearchfield('user_search', 'users_for_users', '#{ escape_javascript url_for(
|
||||
:controller => 'dmsf_folder_permissions', :action => 'autocomplete_for_user', :project_id => @project) }')" %>
|
||||
|
||||
<div id="users_for_watcher">
|
||||
<%= render_principals_for_new_folder_permissions(@principals) %>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
#
|
||||
# Redmine plugin for Document Management System "Features"
|
||||
#
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -43,16 +43,14 @@
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%= late_javascript_tag do %>
|
||||
$('#move_button').click(function(event) {
|
||||
$('#copyForm').attr('action', "<%= url_for(:action => 'move', :id => file_or_folder) %>");
|
||||
$('#copyForm').submit();
|
||||
});
|
||||
|
||||
$('#target_project_id').change(function () {
|
||||
$('#content').load("<%= url_for(:action => 'new') %>", $('#copyForm').serialize());
|
||||
$('#content').load("<%= url_for(:action => 'new') %>", $('#copyForm').serialize());
|
||||
});
|
||||
|
||||
$('#target_project_id').select2();
|
||||
$('#target_folder_id').select2();
|
||||
</script>
|
||||
<% end %>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
#
|
||||
# Redmine plugin for Document Management System "Features"
|
||||
#
|
||||
# Copyright (C) 2011-17 Karel Pičman <karel.picman@kontron.com>
|
||||
# Copyright (C) 2011-18 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
|
||||
@ -46,7 +46,7 @@
|
||||
<%= select_tag('dmsf_link[target_project_id]',
|
||||
project_tree_options_for_select(DmsfFile.allowed_target_projects_on_copy,
|
||||
:selected => @dmsf_link.target_project), :style => "width=100%") %>
|
||||
<%= javascript_tag do %>
|
||||
<%= late_javascript_tag do %>
|
||||
$('#dmsf_link_target_project_id').change(function(){
|
||||
$.ajax({
|
||||
url: '<%= autocomplete_for_project_dmsf_link_path(@project, :format => 'js') %>',
|
||||
@ -65,7 +65,7 @@
|
||||
<%= select_tag('dmsf_link[target_folder_id]',
|
||||
folder_tree_options_for_select(DmsfFolder.directory_tree(@dmsf_link.target_project),
|
||||
:selected => @target_folder_id)) %>
|
||||
<%= javascript_tag do %>
|
||||
<%= late_javascript_tag do %>
|
||||
$('#dmsf_link_target_folder_id').change(function(){
|
||||
$.ajax({
|
||||
url: '<%= autocomplete_for_folder_dmsf_link_path(@project, :format => 'js') %>',
|
||||
@ -104,7 +104,7 @@
|
||||
</p>
|
||||
<% end %>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%= late_javascript_tag do %>
|
||||
<%# Select2 extension, TODO: in case of a modal window, select2 makes problems %>
|
||||
<% unless modal %>
|
||||
$('#dmsf_link_target_project_id').select2();
|
||||
@ -115,9 +115,8 @@
|
||||
$('#dmsf_link_target_file_id').change(function () {
|
||||
var linkName = $('#dmsf_link_name');
|
||||
var name = linkName.val();
|
||||
|
||||
if(name == '') {
|
||||
linkName.val($('#dmsf_link_target_file_id option:selected').text().replace(/\./g, ''));
|
||||
linkName.val($('#dmsf_link_target_file_id option:selected').text().replace(/\./g, ''));
|
||||
}
|
||||
});
|
||||
<%# Internal/External link switch %>
|
||||
@ -128,7 +127,7 @@
|
||||
var labelUrl = $('label[for="dmsf_link_external_url"]');
|
||||
labelUrl.toggleClass('required', $(this).val());
|
||||
if(labelUrl.find(".required").length == 0){
|
||||
labelUrl.append('<span class="required"> *</span>');
|
||||
labelUrl.append('<span class="required"> *</span>');
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<% end %>
|
||||
|
||||
@ -45,12 +45,11 @@
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%# TODO: late_javascript_tag is not working here %>
|
||||
<%= javascript_tag do %>
|
||||
var originalUploaderContent;
|
||||
var uploader = $('#dmsf_uploader');
|
||||
|
||||
originalUploaderContent = uploader.html();
|
||||
|
||||
$('#uploader_select').change(function() {
|
||||
if($(this).val() === '2') {
|
||||
uploader.html(originalUploaderContent);
|
||||
@ -59,19 +58,16 @@
|
||||
initPlUploader(uploader);
|
||||
}
|
||||
});
|
||||
|
||||
initPlUploader(uploader);
|
||||
|
||||
var dmsfFileFieldCount = 1;
|
||||
</script>
|
||||
var dmsfFileFieldCount = 1;
|
||||
<% end %>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= stylesheet_link_tag 'plupload/jquery.ui.plupload.css', :plugin => 'redmine_dmsf' %>
|
||||
<%= javascript_include_tag 'plupload/js/plupload.full.min.js', :plugin => 'redmine_dmsf' %>
|
||||
<%= javascript_include_tag 'plupload/js/jquery.ui.plupload/jquery.ui.plupload.js', :plugin => 'redmine_dmsf' %>
|
||||
<%= javascript_include_tag(js_url, :plugin => 'redmine_dmsf') %>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%= javascript_tag do %>
|
||||
function initPlUploader(uploader) {
|
||||
uploader.html('<div></div>');
|
||||
uploader = $('div', uploader);
|
||||
@ -84,20 +80,16 @@
|
||||
// Enable ability to drag'n'drop files onto the widget (currently only HTML5 supports that)
|
||||
dragdrop: true,
|
||||
multipart_params : { authenticity_token : $('input[name=authenticity_token]').val() },
|
||||
|
||||
// Rename files by clicking on their titles
|
||||
rename: true,
|
||||
|
||||
// Views to activate
|
||||
views: {
|
||||
list: true,
|
||||
thumbs: true, // Show thumbs
|
||||
active: 'thumbs'
|
||||
},
|
||||
|
||||
// Flash settings
|
||||
flash_swf_url : '<%= plugin_asset_path(:redmine_dmsf, 'javascripts', 'plupload/js/Moxie.swf') %>',
|
||||
|
||||
// Silverlight settings
|
||||
silverlight_xap_url : '<%= plugin_asset_path(:redmine_dmsf, 'javascripts', 'plupload/js/Moxie.xap') %>'
|
||||
});
|
||||
@ -142,5 +134,5 @@
|
||||
return true;
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
@ -44,7 +44,7 @@
|
||||
<p>
|
||||
<%= label_tag 'delegate', l(:label_dmsf_wokflow_action_delegate) %><br/>
|
||||
<%= text_field_tag 'user_search', nil %>
|
||||
<%= javascript_tag "observeSearchfield('user_search', null, '#{ escape_javascript autocomplete_for_user_dmsf_workflow_path(@dmsf_workflow, :dmsf_workflow_step_assignment_id => params[:dmsf_workflow_step_assignment_id], :dmsf_file_revision_id => params[:dmsf_file_revision_id]) }')" %>
|
||||
<%= late_javascript_tag "observeSearchfield('user_search', null, '#{ escape_javascript autocomplete_for_user_dmsf_workflow_path(@dmsf_workflow, :dmsf_workflow_step_assignment_id => params[:dmsf_workflow_step_assignment_id], :dmsf_file_revision_id => params[:dmsf_file_revision_id]) }')" %>
|
||||
<div id="dmsf_users_for_delegate">
|
||||
<%= render_principals_for_new_dmsf_workflow_users(
|
||||
@dmsf_workflow, params[:dmsf_workflow_step_assignment_id], params[:dmsf_file_revision_id]) %>
|
||||
@ -55,4 +55,4 @@
|
||||
<%= submit_tag l(:button_submit), :name => 'commit', :onclick => 'hideModal(this);' %>
|
||||
<%= submit_tag l(:button_cancel), :name => 'commit', :onclick => 'hideModal(this);' %>
|
||||
</p>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
<fieldset class="box">
|
||||
<legend><%= l(:label_dmsf_workflow_add_approver) %></legend>
|
||||
<p><%= label_tag 'user_search', l(:label_user_search) %><%= text_field_tag 'user_search', nil %></p>
|
||||
<%= javascript_tag "observeSearchfield('user_search', null, '#{ escape_javascript autocomplete_for_user_dmsf_workflow_path(@dmsf_workflow, :dmsf_workflow_step_assignment_id => nil, :dmsf_file_revision_id => nil, :project_id => @project ? @project.id : nil) }')" %>
|
||||
<%= late_javascript_tag "observeSearchfield('user_search', null, '#{ escape_javascript autocomplete_for_user_dmsf_workflow_path(@dmsf_workflow, :dmsf_workflow_step_assignment_id => nil, :dmsf_file_revision_id => nil, :project_id => @project ? @project.id : nil) }')" %>
|
||||
<div id="dmsf_users_for_delegate">
|
||||
<%= render_principals_for_new_dmsf_workflow_users(@dmsf_workflow) %>
|
||||
</div>
|
||||
|
||||
@ -125,6 +125,6 @@
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<%= javascript_tag do %>
|
||||
<%= late_javascript_tag do %>
|
||||
$(function() { $("table.steps tbody").positionedItems(); });
|
||||
<% end %>
|
||||
|
||||
@ -45,9 +45,9 @@
|
||||
<%= f.submit l(:button_create) %>
|
||||
<% end %>
|
||||
|
||||
<script type="text/javascript">
|
||||
<%= late_javascript_tag do %>
|
||||
$('#dmsf_workflow_id').change(function () {
|
||||
$('#content').load("<%= @project ? url_for(:action => 'new', :project_id => @project.id) : url_for(:action => 'new') %>", $('#new_dmsf_workflow').serialize());
|
||||
});
|
||||
$('#dmsf_workflow_id').select2();
|
||||
</script>
|
||||
<% end %>
|
||||
|
||||
@ -285,7 +285,7 @@ function dmsfSetupFileDrop() {
|
||||
}
|
||||
}
|
||||
|
||||
$(document).ready(dmsfSetupFileDrop);
|
||||
$(document).on("erui_new_dom", function() {
|
||||
EASY.schedule.late(function () {
|
||||
dmsfSetupFileDrop();
|
||||
$(document).on("erui_new_dom", dmsfSetupFileDrop);
|
||||
});
|
||||
|
||||
@ -48,7 +48,9 @@ module RedmineDmsf
|
||||
html << l(:label_dmsf_attachments)
|
||||
html << '</label>'
|
||||
html << '</p>'
|
||||
html << "<script>$( document ).ready(function() {$('.attachments-container:not(.dmsf_uploader)').parent().hide();})</script>" if User.current.pref.dmsf_attachments_upload_choice == 'DMSF'
|
||||
if User.current.pref.dmsf_attachments_upload_choice == 'DMSF'
|
||||
html << late_javascript_tag("$(document).ready(function() {$('.attachments-container:not(.dmsf_uploader)').parent().hide();})")
|
||||
end
|
||||
end
|
||||
# Upload form
|
||||
html.html_safe + attach_documents_form(context, false,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user