Fix protocol duplication at saving protocol from task to repository

This commit is contained in:
Mojca Lorber 2020-06-09 11:45:03 +02:00
parent 8606555c9b
commit c0c93772ff

View file

@ -64,26 +64,26 @@ function initEditDescription() {
} }
function initCopyToRepository() { function initCopyToRepository() {
var link = $("[data-action='copy-to-repository']"); var link = "[data-action='copy-to-repository']";
var modal = $('#copy-to-repository-modal'); var modal = '#copy-to-repository-modal';
var modalBody = modal.find('.modal-body'); var modalBody = '.modal-body';
var submitBtn = modal.find(".modal-footer [data-action='submit']"); var submitBtn = ".modal-footer [data-action='submit']";
link $('.my-modules-protocols-index')
.on('ajax:success', function(e, data) { .on('ajax:success', link, function(e, data) {
modalBody.html(data.html); $(modal).find(modalBody).html(data.html);
modalBody.find("[data-role='copy-to-repository']") $(modal).find(modalBody).find("[data-role='copy-to-repository']")
.on('ajax:success', function(e2, data2) { .on('ajax:success', function(e2, data2) {
if (data2.refresh !== null) { if (data2.refresh !== null) {
// Reload page // Reload page
location.reload(); location.reload();
} else { } else {
// Simply hide the modal // Simply hide the modal
modal.modal('hide'); $(modal).modal('hide');
} }
}) })
.on('ajax:error', function(e2, data2) { .on('ajax:error', function(e2, data2) {
// Display errors in form // Display errors in form
submitBtn[0].disabled = false; $(modal).find(submitBtn)[0].disabled = false;
if (data2.status === 422) { if (data2.status === 422) {
$(this).renderFormErrors('protocol', data2.responseJSON); $(this).renderFormErrors('protocol', data2.responseJSON);
} else { } else {
@ -92,18 +92,18 @@ function initCopyToRepository() {
} }
}); });
modal.modal('show'); $(modal).modal('show');
submitBtn[0].disabled = false; $(modal).find(submitBtn)[0].disabled = false;
}) })
.on('ajax:error', function() {}); .on('ajax:error', function() {});
submitBtn.on('click', function() { $(modal).on('click', submitBtn, function() {
// Submit the embedded form // Submit the embedded form
submitBtn[0].disabled = true; $(modal).find(submitBtn)[0].disabled = true;
modalBody.find('form').submit(); $(modal).find('form').submit();
}); });
modalBody.on('click', "[data-role='link-check']", function() { $(modal).find(modalBody).on('click', "[data-role='link-check']", function() {
var text = $(this).closest('.modal-body').find("[data-role='link-text']"); var text = $(this).closest('.modal-body').find("[data-role='link-text']");
if ($(this).prop('checked')) { if ($(this).prop('checked')) {
text.show(); text.show();
@ -112,11 +112,11 @@ function initCopyToRepository() {
} }
}); });
modal.on('hidden.bs.modal', function() { $(modal).on('hidden.bs.modal', function() {
modalBody.find("[data-role='copy-to-repository']") $(modal).find(modalBody).find("[data-role='copy-to-repository']")
.off('ajax:success ajax:error'); .off('ajax:success ajax:error');
modalBody.html(''); $(modal).find(modalBody).html('');
}); });
} }
@ -384,7 +384,6 @@ function refreshProtocolStatusBar() {
success: function(data) { success: function(data) {
$('.my-module-protocol-status').replaceWith(data.html); $('.my-module-protocol-status').replaceWith(data.html);
initLinkUpdate(); initLinkUpdate();
initCopyToRepository();
} }
}); });
} }