diff --git a/app/assets/javascripts/repository_columns/index.js b/app/assets/javascripts/repository_columns/index.js index 144992d49..a43bdca83 100644 --- a/app/assets/javascripts/repository_columns/index.js +++ b/app/assets/javascripts/repository_columns/index.js @@ -37,9 +37,7 @@ var RepositoryColumns = (function() { // } // HelperModule.flashAlertMsg(data.message, 'success'); // animateSpinner(null, false); - // if (modalID) { - // $(modalID).modal('hide'); - // } + // modalHtml.modal('hide'); // }).on('ajax:error', function(e, xhr) { // animateSpinner(null, false); // if (modalID) { @@ -62,26 +60,37 @@ var RepositoryColumns = (function() { // } // } + // @TODO + function initEditSubmitAction(modalHtml) { + $('#new-repo-column-submit').on('click', function() { + // if ($('#repository_column_data_type').val() === 'RepositoryListValue') { + // $('#list_items').val($(tagsInputID).val()); + // } + // + // processResponse($(formID), 'update', modalHtml); + }); + } + // @TODO refactor that function initEditCoumnModal() { - var modalID = '#manageRepositoryColumn'; + var modalHtml = $('#manageRepositoryColumn'); // var colRadID = '#repository_column_data_type_repositorylistvalue'; // var tagsInputID = '[data-role="tagsinput"]'; // var formID = '[data-role="manage-repository-column-form"]'; $('.repository-columns-body').off('click', '.edit-repo-column').on('click', '.edit-repo-column', function() { var editUrl = $(this).closest('li').attr('data-edit-url'); $.get(editUrl, function(data) { - $(modalID).find('.modal-content').html(data.html); - $(modalID).modal('show'); + modalHtml.find('.modal-content').html(data.html); + modalHtml.modal('show'); initColumnTypeSelector(); - $('#repository_column_data_type').val($(modalID).find('#new_repository_column').attr('data-edit-type')).trigger('click'); + $('#repository_column_data_type').val(modalHtml.find('#new_repository_column').attr('data-edit-type')).trigger('click'); $('#repository_column_data_type').prop('disabled', true); setTimeout(function() { $('#repository_column_name').focus(); }, 500); - // if ($(modalID).attr('data-edit-type') === 'RepositoryListValue') { + // if (modalHtml.attr('data-edit-type') === 'RepositoryListValue') { // var values = JSON.parse($(tagsInputID).attr('data-value')); // $('#repository_column_data_type').val('RepositoryListValue'); // $(colRadID).click().promise().done(function() { @@ -91,13 +100,7 @@ var RepositoryColumns = (function() { // }); // } - $('#new-repo-column-submit').on('click', function() { - // if ($('#repository_column_data_type').val() === 'RepositoryListValue') { - // $('#list_items').val($(tagsInputID).val()); - // } - // - // processResponse($(formID), 'update', modalID); - }); + initEditSubmitAction(modalHtml); }).fail(function() { HelperModule.flashAlertMsg( I18n.t('libraries.repository_columns.no_permissions'), 'danger' @@ -173,37 +176,32 @@ var RepositoryColumns = (function() { $('[data-attr="no-columns"]').remove(); } + function initCreateSubmitAction(modalHtml) { + $('#new-repo-column-submit').on('click', function() { + var url = $('#repository_column_data_type').find(':selected').data('create-url'); + var params = { repository_column: { name: $('#repository_column_name').val() } }; + $.post(url, params, (data) => { + insertNewListItem(data); + HelperModule.flashAlertMsg(data.message, 'success'); + modalHtml.modal('hide'); + }); + }); + } + function initNewColumnModal() { - var modalID = '#manageRepositoryColumn'; + var modalHtml = $('#manageRepositoryColumn'); $('.repository-columns-header').off('click', '#new-repo-column-modal').on('click', '#new-repo-column-modal', function() { var modalUrl = $(this).attr('data-modal-url'); $.get(modalUrl, function(data) { - $(modalID).find('.modal-content').html(data.html); - $(modalID).modal('show'); + modalHtml.find('.modal-content').html(data.html); + modalHtml.modal('show'); initColumnTypeSelector(); $('[data-column-type="RepositoryTextValue"]').show(); setTimeout(function() { $('#repository_column_name').focus(); }, 500); - - $('#new-repo-column-submit').on('click', function() { - var url = $('#repository_column_data_type').find(':selected').data('create-url'); - $.ajax({ - url: url, - data: { repository_column: { name: $('#repository_column_name').val() } }, - type: 'POST', - success: function(data2) { - insertNewListItem(data2); - HelperModule.flashAlertMsg(data2.message, 'success'); - if (modalID) { - $(modalID).modal('hide'); - } - }, - error: function() { - } - }); - }); + initCreateSubmitAction(modalHtml); }); }); }