diff --git a/app/assets/javascripts/repositories/forms/repository_item_edit.js b/app/assets/javascripts/repositories/forms/repository_item_edit.js
deleted file mode 100644
index a398437f8..000000000
--- a/app/assets/javascripts/repositories/forms/repository_item_edit.js
+++ /dev/null
@@ -1,260 +0,0 @@
-// /* global Promise _ ActiveStorage RepositoryItemEditForm */
-//
-// //= require sugar.min
-// //= require jquerymy-1.2.14.min
-//
-// (function(global) {
-// 'use strict';
-//
-// /**
-// * Creates a FormData object with the repository row data ready to be
-// * sended on the server
-// *
-// * @param {Object} tableID
-// * @param {Object} selectedRecord
-// *
-// * @returns (Object)
-// */
-// RepositoryItemEditForm.prototype.parseToFormObject = function(tableID, selectedRecord) {
-// var formData = this.formData;
-// var formDataObj = new FormData();
-// var removeFileColumns = [];
-// var filesToUploadCntr = 0;
-// var filesUploadedCntr = 0;
-// const directUploadUrl = $(tableID).data('directUploadUrl');
-//
-// formDataObj.append('request_url', $(tableID).data('current-uri'));
-// formDataObj.append('repository_row_id', $(selectedRecord).attr('id'));
-//
-// return new Promise((resolve, reject) => {
-// $(_.keys(this.formData)).each(function(_, element) {
-// var value = formData[element];
-// if (element === 'rowName') {
-// formDataObj.append('repository_row_name', value);
-// } else {
-// let colId = element.replace('colId-', '');
-// let $el = $('#' + element);
-// // don't save anything if element is not visible
-// if ($el.length === 0) {
-// return;
-// }
-// if ($el.attr('type') === 'file') {
-// // handle deleting of element
-// if ($el.attr('remove') === 'true') {
-// removeFileColumns.push(colId);
-// formDataObj.append('repository_cells[' + colId + ']', null);
-// } else if ($el[0].files.length > 0) {
-// filesToUploadCntr += 1;
-// }
-// } else if (value.length >= 0) {
-// formDataObj.append('repository_cells[' + colId + ']', value);
-// }
-// }
-// });
-//
-// formDataObj.append('remove_file_columns', JSON.stringify(removeFileColumns));
-//
-// // No files for upload, so return earlier
-// if (filesToUploadCntr === 0) {
-// resolve(formDataObj);
-// return;
-// }
-//
-// // Second run, just for files
-// $(_.keys(this.formData)).each(function(_, element) {
-// let $el = $('#' + element);
-// let colId = element.replace('colId-', '');
-//
-// if ($el.attr('type') === 'file' && $el.attr('remove') !== 'true') {
-// let upload = new ActiveStorage.DirectUpload($el[0].files[0], directUploadUrl);
-//
-// upload.create(function(error, blob) {
-// if (error) {
-// reject(error);
-// } else {
-// formDataObj.append('repository_cells[' + colId + ']', blob.signed_id);
-// filesUploadedCntr += 1;
-//
-// if (filesUploadedCntr === filesToUploadCntr) {
-// resolve(formDataObj);
-// }
-// }
-// });
-// }
-// });
-// });
-// };
-//
-// /**
-// * Takes object and creates an input file field, contains a hidden
-// * input field which is triggered on button click and we get the uploaded
-// * file from there.
-// *
-// * @param {Object} object
-// * @param {String} name
-// * @param {String} value
-// * @param {String} id
-// *
-// * @returns (String)
-// */
-// function changeToInputFileField(object, name, value, id) {
-// var fileName = (value.file_name) ? value.file_name : I18n.t('general.file.no_file_chosen');
-// var buttonLabel = I18n.t('general.file.choose');
-// var html = "
" +
-// "
";
-//
-// return html;
-// }
-//
-// /**
-// * Returns the colum index
-// *
-// * @param {Object} table
-// * @param {String} id
-// *
-// * @returns (Boolean | Number)
-// */
-// function getColumnIndex(table, id) {
-// if(id < 0)
-// return false;
-// return table.column(id).index('visible');
-// }
-//
-// /**
-// * Genrates list items dropdown element
-// *
-// * @param {Array} options
-// * @param {String} current_value
-// * @param {Number} columnId
-// * @param {String} id
-// *
-// * @returns (String)
-// */
-// function _listItemDropdown(options, current_value, columnId, id) {
-// var val = undefined;
-// var html = '
';
-// return (val) ? $(html).attr('data-selected-value', val)[0] : html;
-// }
-//
-// /**
-// * Takes an object and creates custom html element
-// *
-// * @param {String} object
-// * @param {String} name
-// * @param {String} column_type
-// * @param {Object} cell
-// * @param {Object} listColumns
-// *
-// * @returns (String)
-// */
-// function changeToFormField(object, name, column_type, cell, listColumns) {
-// var cellId = generateInputFieldReference(name);
-// var value = cell.value || '';
-// if (column_type === 'RepositoryListValue') {
-// var column = _.findWhere(listColumns,
-// { column_id: parseInt(name, 10) });
-// var list_items = column.list_items || cell.list_items;
-// return _listItemDropdown(list_items, value, parseInt(name, 10), cellId);
-// } else if (column_type === 'RepositoryAssetValue') {
-// return changeToInputFileField('repository_cell_file', name, value, cellId);
-// } else {
-// return changeToInputField(object, name, value, cellId);
-// }
-// }
-//
-// /**
-// * Append the change listener to file field
-// *
-// * @param {String} type
-// * @param {String} name
-// *
-// * @returns {undefined}
-// */
-// function addSelectedFile(type, name) {
-// var button = $('button[data-id="' +
-// generateInputFieldReference(name) +
-// '"]');
-// if (type === 'RepositoryAssetValue') {
-// var fileInput = $(button.parent().find('input[type="file"]')[0]);
-// button.on('click', function(ev) {
-// ev.preventDefault();
-// ev.stopPropagation();
-// fileInput.trigger('click');
-// initFileHandler(fileInput);
-// });
-// }
-// }
-//
-// /**
-// * Handle extraction of file from the input field
-// *
-// * @param {Object} $inputField
-// *
-// * @returns {undefined}
-// */
-// function initFileHandler($inputField) {
-// $inputField.on('change', function() {
-// var input = $(this);
-// var $label = $($(this).closest('.repository-input-file-field')
-// .find('.file-name-label')[0]);
-// var file = this.files[0];
-// if (file) {
-// $label.text(truncateLongString(file.name, 20));
-// input.attr('remove', false);
-// $($label.closest('.repository-input-file-field')
-// .find('[data-action="removeAsset"]')[0]).show();
-// }
-// })
-// }
-//
-// /**
-// * Generates the input tag id that will be used in the formData object
-// *
-// * @param {String} columnId
-// *
-// * @returns {String}
-// */
-// function generateInputFieldReference(columnId) {
-// return 'colId-' + columnId;
-// }
-//
-// /**
-// * Appends aditional fields to form data object
-// * @param {Object} cell
-// * @param {String} columnId
-// * @param {Object} formData
-// *
-// * @returns {undefined}
-// */
-// function appendNewElementToFormData(cell, columnId, formData) {
-// if (!cell.repository_cell_id) {
-// formData[generateInputFieldReference(columnId)] = undefined;
-// }
-// }
-// }(window));
diff --git a/app/assets/javascripts/repositories/repository_datatable.js b/app/assets/javascripts/repositories/repository_datatable.js
index a097d22d4..bb389380a 100644
--- a/app/assets/javascripts/repositories/repository_datatable.js
+++ b/app/assets/javascripts/repositories/repository_datatable.js
@@ -144,21 +144,6 @@ var RepositoryDatatable = (function(global) {
}
}
- // Helper functions
- // function listItemDropdown(options, currentValue, columnId) {
- // var html = `
';
- // return html;
- // }
-
function initRowSelection() {
// Handle clicks on checkbox
$('.dt-body-center .repository-row-selector').change(function(ev) {
@@ -279,23 +264,6 @@ var RepositoryDatatable = (function(global) {
);
}
- // Takes object and surrounds it with input
- // function changeToInputField(object, name, value) {
- // return "
";
- // }
-
- // Takes object and surrounds it with input
- function changeToInputFileField(object, name, value) {
- return "
';
- }
-
function initHeaderTooltip() {
// Fix compatibility of fixed table header and column names modal-tooltip
$('.modal-tooltip').off();
@@ -402,75 +370,6 @@ var RepositoryDatatable = (function(global) {
});
}
- // function initialListItemsRequest(columnId) {
- // var massageResponse = [];
- // $.ajax({
- // url: $(TABLE_ID).data('list-items-path'),
- // type: 'POST',
- // dataType: 'json',
- // async: false,
- // data: {
- // q: '',
- // column_id: columnId
- // }
- // }).done(function(data) {
- // $.each(data.list_items, function(index, el) {
- // massageResponse.push([el.id, el.data]);
- // });
- // });
- // return listItemDropdown(massageResponse, '-1', columnId);
- // }
-
- function initSelectPicker() {
- $('.selectpicker')
- .selectpicker({ liveSearch: true })
- .ajaxSelectPicker({
- ajax: {
- url: $(TABLE_ID).data('list-items-path'),
- type: 'POST',
- dataType: 'json',
- data: function() {
- var params = {
- q: '{{{q}}}',
- column_id: $(this.valueOf().plugin.$element).attr('column_id')
- };
-
- return params;
- }
- },
- locale: {
- emptyTitle: 'Nothing selected'
- },
- preprocessData: function(data) {
- var items = [];
- if (Object.prototype.hasOwnProperty.call(data, 'list_items')) {
- items.push({
- value: '-1',
- text: '',
- disabled: false
- });
- $.each(data.list_items, function(index, el) {
- items.push(
- {
- value: el.id,
- text: el.data,
- disabled: false
- }
- );
- });
- }
- return items;
- },
- emptyRequest: true,
- clearOnEmpty: false,
- preserveSelected: false
- }).on('change.bs.select', function(el) {
- $(this).closest('td').attr('list_item_id', el.target.value);
- $(this).closest('td').attr('column_id', $(this).attr('column_id'));
- })
- .trigger('change.bs.select');
- }
-
// Adjust columns width in table header
function adjustTableHeader() {
TABLE.columns.adjust();
@@ -480,18 +379,6 @@ var RepositoryDatatable = (function(global) {
});
}
- // Clear all has-error tags
- // function clearAllErrors() {
- // // Remove any validation errors
- // $(selectedRecord)
- // .find('.has-error')
- // .removeClass('has-error')
- // .find('span')
- // .remove();
- // // Remove any alerts
- // $('#alert-container').find('div').remove();
- // }
-
function dataTableInit() {
viewAssigned = 'assigned';
TABLE = $(TABLE_ID).DataTable({
@@ -852,82 +739,6 @@ var RepositoryDatatable = (function(global) {
adjustTableHeader();
};
- // function submitForm(url, formData) {
- // var type;
- // if (saveAction === 'update') {
- // type = 'PUT';
- // } else {
- // type = 'POST';
- // }
- // $.ajax({
- // url: url,
- // type: type,
- // dataType: 'json',
- // data: formData,
- // processData: false,
- // contentType: false,
- // success: function(data) {
- // HelperModule.flashAlertMsg(data.flash, 'success');
- // SmartAnnotation.closePopup();
- // SCINOTE_REPOSITORY_EDITED_ROWS = [];
- // onClickCancel();
- // animateSpinner(null, false);
- // },
- // error: function(ev) {
- // var data = ev.responseJSON;
- // animateSpinner(null, false);
- // SmartAnnotation.closePopup();
- // clearAllErrors();
- //
- // if (ev.status === 404) {
- // HelperModule.flashAlertMsg(
- // I18n.t('repositories.js.not_found_error'), 'danger'
- // );
- // changeToViewMode();
- // } else if (ev.status === 403) {
- // HelperModule.flashAlertMsg(
- // I18n.t('repositories.js.permission_error'), 'danger'
- // );
- // changeToViewMode();
- // } else if (ev.status === 400) {
- // if (data.default_fields) {
- // let defaultFields = data.default_fields;
- //
- // // Validate record name
- // if (defaultFields.name) {
- // let input = $(selectedRecord).find('input[name = name]');
- //
- // if (input) {
- // input.closest('.form-group').addClass('has-error');
- // input.parent().append("
" + defaultFields.name + '
');
- // }
- // }
- // }
- //
- // // Validate custom cells
- // $.each(data.repository_cells || [], function(_, val) {
- // $.each(val, function(key, val2) {
- // let input = $(selectedRecord).find('input[name=' + key + ']');
- // if (input) {
- // let message = Array.isArray(val2.data) ? val2.data[0] : val2.data;
- // // handle custom input field
- // if (input.attr('type') === 'file') {
- // let container = input.closest('.repository-input-file-field');
- // $(container.find('.form-group')[0]).addClass('has-error');
- // container.addClass('has-error');
- // container.append("
" + message + '
');
- // } else {
- // input.closest('.form-group').addClass('has-error');
- // input.parent().append("
" + message + '
');
- // }
- // }
- // });
- // });
- // }
- // }
- // });
- // }
-
// Delete record
global.onClickDelete = function() {
$('#deleteRepositoryRecord').modal('show');
diff --git a/app/services/repository_table_state_column_update_service.rb b/app/services/repository_table_state_column_update_service.rb
index 18a4e2ae7..380775404 100644
--- a/app/services/repository_table_state_column_update_service.rb
+++ b/app/services/repository_table_state_column_update_service.rb
@@ -19,7 +19,7 @@ class RepositoryTableStateColumnUpdateService
state['columns'][index] = Constants::REPOSITORY_TABLE_STATE_CUSTOM_COLUMN_TEMPLATE
state['ColReorder'] << index
state['length'] = (index + 1)
- state['time'] = Time.new.to_i
+ state['time'] = (Time.now.to_f * 1_000).to_i
table_state.save
end
end
@@ -53,7 +53,7 @@ class RepositoryTableStateColumnUpdateService
end
state['length'] = (state['length'] - 1)
- state['time'] = Time.new.to_i
+ state['time'] = (Time.now.to_f * 1_000).to_i
table_state.save
end
end