', {
class: ['display', 'compact', 'nowrap', config.sigTableClass, config.sigTableSecondaryClass].join(' ')
});
@@ -758,7 +958,7 @@ define([
tableToolbar.after(tableToolbarAction);
- var signatureData = formatSignatureData(systemData, [emptySignatureData], emptySignatureOptions);
+ let signatureData = formatSignatureData(systemData, [emptySignatureData], emptySignatureOptions);
table.dataTable( {
data: signatureData,
paging: false,
@@ -770,13 +970,13 @@ define([
table.makeEditable(systemData);
// scanned signatures progress bar ----------------------------------------------------------------------------
- var moduleConfig = {
+ let moduleConfig = {
name: 'form/progress',
position: tableToolbar,
link: 'before'
};
- var moduleData = {
+ let moduleData = {
label: true,
wrapperClass: config.signatureScannedProgressBarClass,
class: ['progress-bar-success'].join(' '),
@@ -788,6 +988,18 @@ define([
Render.showModule(moduleConfig, moduleData);
};
+ /**
+ * Update/set tooltip for an element
+ * @param element
+ * @param title
+ */
+ let updateTooltip = function(element, title){
+ element = $(element);
+
+ element.attr('data-container', 'body').attr('title', title.toUpperCase()).tooltip('fixTitle')
+ .tooltip('setContent');
+ };
+
/**
* make a table or row editable
* @param systemData
@@ -795,22 +1007,22 @@ define([
$.fn.makeEditable = function(systemData){
// table element OR row element
- var tableElement = $(this);
+ let tableElement = $(this);
// find editable fields
- var sigNameFields = tableElement.find('.' + config.sigTableEditSigNameInput);
- var sigGroupFields = tableElement.find('.' + config.sigTableEditSigGroupSelect);
- var sigTypeFields = tableElement.find('.' + config.sigTableEditSigTypeSelect);
- var sigDescriptionFields = tableElement.find('.' + config.sigTableEditSigDescriptionTextarea);
+ let sigNameFields = tableElement.find('.' + config.sigTableEditSigNameInput);
+ let sigGroupFields = tableElement.find('.' + config.sigTableEditSigGroupSelect);
+ let sigTypeFields = tableElement.find('.' + config.sigTableEditSigTypeSelect);
+ let sigDescriptionFields = tableElement.find('.' + config.sigTableEditSigDescriptionTextarea);
// jump to "next" editable field on save
- var openNextEditDialogOnSave = function(fields){
+ let openNextEditDialogOnSave = function(fields){
fields.on('save', function(e, a){
- var currentField = $(this);
+ let currentField = $(this);
setTimeout(function() {
- var nextField = getNextEditableField(currentField);
+ let nextField = getNextEditableField(currentField);
nextField.editable('show');
// update scanning progressbar if sig "type" has changed AND
@@ -826,8 +1038,8 @@ define([
};
// helper function - get the next editable field in next table column
- var getNextEditableField = function(field){
- var nextEditableField = $(field).closest('td').next().find('.editable');
+ let getNextEditableField = function(field){
+ let nextEditableField = $(field).closest('td').next().find('.editable');
return $(nextEditableField);
};
@@ -836,7 +1048,7 @@ define([
* @param params
* @returns {*}
*/
- var modifyFieldParamsOnSend = function(params){
+ let modifyFieldParamsOnSend = function(params){
params.systemId = systemData.id;
return params;
@@ -849,8 +1061,8 @@ define([
mode: 'popup',
container: 'body',
error: function(jqXHR, newValue){
- var reason = '';
- var status = '';
+ let reason = '';
+ let status = '';
if(jqXHR.name){
// save error new sig (mass save)
reason = jqXHR.name;
@@ -873,6 +1085,10 @@ define([
title: 'signature id',
name: 'name',
emptytext: '? ? ?',
+ display: function(value) {
+ // change display value to first 3 letters
+ $(this).text( $.trim( value.substr(0, 3) ).toLowerCase() );
+ },
validate: function(value) {
if($.trim(value).length < 3) {
return 'Id is less than min of "3"';
@@ -883,9 +1099,13 @@ define([
params: modifyFieldParamsOnSend,
success: function(response, newValue){
if(response){
- var signatureTypeField = $(this);
- var rowElement = signatureTypeField.parents('tr');
- var newRowData = response.signatures[0];
+ let signatureTypeField = $(this);
+ let columnElement = signatureTypeField.parents('td');
+ let rowElement = signatureTypeField.parents('tr');
+ let newRowData = response.signatures[0];
+
+ // update column tooltip
+ updateTooltip(columnElement, newValue);
// update "updated" cell
updateSignatureCell(rowElement, 6, newRowData.updated);
@@ -905,11 +1125,11 @@ define([
params: modifyFieldParamsOnSend,
source: function(){
- var signatureGroupField = $(this);
- var systemTypeId = parseInt( signatureGroupField.attr('data-systemTypeId') );
+ let signatureGroupField = $(this);
+ let systemTypeId = parseInt( signatureGroupField.attr('data-systemTypeId') );
// get all available Signature Types
- var availableTypes = signatureGroupsLabels;
+ let availableTypes = signatureGroupsLabels;
// add empty option
availableTypes[0] = '';
@@ -917,24 +1137,24 @@ define([
return availableTypes;
},
success: function(response, newValue){
- var signatureTypeField = $(this);
- var rowElement = signatureTypeField.parents('tr');
+ let signatureTypeField = $(this);
+ let rowElement = signatureTypeField.parents('tr');
newValue = parseInt(newValue);
if(response){
- var newRowData = response.signatures[0];
+ let newRowData = response.signatures[0];
// update "updated" cell
updateSignatureCell(rowElement, 6, newRowData.updated);
}
// find related "type" select (same row) and change options
- var typeSelect = getNextEditableField(signatureTypeField);
+ let typeSelect = getNextEditableField(signatureTypeField);
- var systemTypeId = parseInt( signatureTypeField.attr('data-systemTypeId') );
- var areaId = parseInt( signatureTypeField.attr('data-areaid') );
+ let systemTypeId = parseInt( signatureTypeField.attr('data-systemTypeId') );
+ let areaId = parseInt( signatureTypeField.attr('data-areaid') );
- var newSelectOptions = getAllSignatureNames(systemData, systemTypeId, areaId, newValue);
+ let newSelectOptions = getAllSignatureNames(systemData, systemTypeId, areaId, newValue);
typeSelect.editable('option', 'source', newSelectOptions);
typeSelect.editable('setValue', null);
@@ -953,7 +1173,7 @@ define([
// Select sig type (slave: depends on sig type) ---------------------------------------------------------------
sigTypeFields.on('init', function(e, editable) {
// check if there are initial options available
- var options = editable.input.options.source.bind(e.target)();
+ let options = editable.input.options.source.bind(e.target)();
if(options.length <= 0){
editable.disable();
}
@@ -968,20 +1188,20 @@ define([
showbuttons: false,
params: modifyFieldParamsOnSend,
source: function(){
- var signatureTypeField = $(this);
+ let signatureTypeField = $(this);
- var systemTypeId = parseInt( signatureTypeField.attr('data-systemTypeId') );
- var areaId = parseInt( signatureTypeField.attr('data-areaid') );
- var groupId = parseInt( signatureTypeField.attr('data-groupId') );
- var availableSigs = getAllSignatureNames(systemData, systemTypeId, areaId, groupId);
+ let systemTypeId = parseInt( signatureTypeField.attr('data-systemTypeId') );
+ let areaId = parseInt( signatureTypeField.attr('data-areaid') );
+ let groupId = parseInt( signatureTypeField.attr('data-groupId') );
+ let availableSigs = getAllSignatureNames(systemData, systemTypeId, areaId, groupId);
return availableSigs;
},
success: function(response, newValue){
if(response){
- var signatureTypeField = $(this);
- var rowElement = signatureTypeField.parents('tr');
- var newRowData = response.signatures[0];
+ let signatureTypeField = $(this);
+ let rowElement = signatureTypeField.parents('tr');
+ let newRowData = response.signatures[0];
// update "updated" cell
updateSignatureCell(rowElement, 6, newRowData.updated);
@@ -1002,9 +1222,9 @@ define([
params: modifyFieldParamsOnSend,
success: function(response, newValue){
if(response){
- var signatureTypeField = $(this);
- var rowElement = signatureTypeField.parents('tr');
- var newRowData = response.signatures[0];
+ let signatureTypeField = $(this);
+ let rowElement = signatureTypeField.parents('tr');
+ let newRowData = response.signatures[0];
// update "updated" cell
updateSignatureCell(rowElement, 6, newRowData.updated);
@@ -1037,10 +1257,10 @@ define([
* @param groupId
* @returns {Array}
*/
- var getAllSignatureNames = function(systemData, systemTypeId, areaId, groupId){
- var newSelectOptions = [];
- var cacheKey = [systemTypeId, areaId, groupId].join('_');
- var newSelectOptionsCount = 0;
+ let getAllSignatureNames = function(systemData, systemTypeId, areaId, groupId){
+ let newSelectOptions = [];
+ let cacheKey = [systemTypeId, areaId, groupId].join('_');
+ let newSelectOptionsCount = 0;
// check for cached signature names
if(sigNameCache.hasOwnProperty( cacheKey )){
@@ -1050,12 +1270,12 @@ define([
}else{
// get new Options ----------
// get all possible "static" signature names by the selected groupId
- var tempSelectOptions = Util.getAllSignatureNames(systemTypeId, areaId, groupId);
+ let tempSelectOptions = Util.getAllSignatureNames(systemTypeId, areaId, groupId);
// format options into array with objects advantages: keep order, add more options (whs), use optgroup
if(tempSelectOptions){
- var fixSelectOptions = [];
- for (var key in tempSelectOptions) {
+ let fixSelectOptions = [];
+ for (let key in tempSelectOptions) {
if (
key > 0 &&
tempSelectOptions.hasOwnProperty(key)
@@ -1079,9 +1299,9 @@ define([
if( groupId === 5 ){
// add possible frigate holes
- var frigateHoles = getFrigateHolesBySystem(areaId);
- var frigateWHData = [];
- for(var frigKey in frigateHoles){
+ let frigateHoles = getFrigateHolesBySystem(areaId);
+ let frigateWHData = [];
+ for(let frigKey in frigateHoles){
if (
frigKey > 0 &&
frigateHoles.hasOwnProperty(frigKey)
@@ -1096,8 +1316,8 @@ define([
}
// add possible incoming holes
- var incomingWHData = [];
- for(var incomingKey in Init.incomingWormholes){
+ let incomingWHData = [];
+ for(let incomingKey in Init.incomingWormholes){
if (
incomingKey > 0 &&
Init.incomingWormholes.hasOwnProperty(incomingKey)
@@ -1124,9 +1344,9 @@ define([
if( groupId === 5 ){
// add static WH(s) for this system
if(systemData.statics){
- var staticWHData = [];
- for(var i = 0; i < systemData.statics.length; i++){
- var staticWHName = systemData.statics[i].name + ' - ' + systemData.statics[i].security;
+ let staticWHData = [];
+ for(let i = 0; i < systemData.statics.length; i++){
+ let staticWHName = systemData.statics[i].name + ' - ' + systemData.statics[i].security;
newSelectOptionsCount++;
staticWHData.push( {value: newSelectOptionsCount, text: staticWHName} );
@@ -1164,10 +1384,10 @@ define([
* @param obj
* @returns {number}
*/
- var sumSignaturesRecursive = function(key, obj){
- var sum = 0;
+ let sumSignaturesRecursive = function(key, obj){
+ let sum = 0;
- for (var prop in obj) {
+ for (let prop in obj) {
if (obj.hasOwnProperty(prop) && key === prop) {
sum += obj[prop].length;
}
@@ -1185,8 +1405,8 @@ define([
* @param systemTypeId
* @returns {{}}
*/
- var getFrigateHolesBySystem = function(systemTypeId){
- var signatureNames = {};
+ let getFrigateHolesBySystem = function(systemTypeId){
+ let signatureNames = {};
if(Init.frigateWormholes[systemTypeId]){
signatureNames = Init.frigateWormholes[systemTypeId];
@@ -1199,27 +1419,27 @@ define([
* deletes signature rows from signature table
* @param rows
*/
- var deleteSignatures = function(rows){
+ let deleteSignatures = function(rows){
- var deletedSignatures = 0;
+ let deletedSignatures = 0;
- var moduleElement = $('.' + config.systemSigModuleClass);
- var data = rows.data();
- var signatureTableApi = signatureTable.api();
- var rowElements = rows.nodes().to$();
- var signatureCount = data.length;
+ let moduleElement = $('.' + config.systemSigModuleClass);
+ let data = rows.data();
+ let signatureTableApi = signatureTable.api();
+ let rowElements = rows.nodes().to$();
+ let signatureCount = data.length;
- var signatureIds = [];
- for(var i = 0; i < data.length; i++){
+ let signatureIds = [];
+ for(let i = 0; i < data.length; i++){
signatureIds.push(data[i].id);
}
- var requestData = {
+ let requestData = {
signatureIds: signatureIds
};
// animation callback function
- var removeCallback = function(rowElement){
+ let removeCallback = function(rowElement){
// delete signature row
signatureTableApi.row(rowElement).remove().draw();
@@ -1242,13 +1462,13 @@ define([
dataType: 'json'
}).done(function(data){
- for(var j = 0; j < rowElements.length; j++){
+ for(let j = 0; j < rowElements.length; j++){
// removeRow
$(rowElements[j]).toggleTableRow(removeCallback);
}
}).fail(function( jqXHR, status, error) {
- var reason = status + ' ' + error;
+ let reason = status + ' ' + error;
Util.showNotify({title: jqXHR.status + ': Delete signature', text: reason, type: 'warning'});
$(document).setProgramStatus('problem');
});
@@ -1263,15 +1483,15 @@ define([
* @param animate
* @returns {*}
*/
- var addSignatureRow = function(systemData, signatureData, animate){
+ let addSignatureRow = function(systemData, signatureData, animate){
- var newSignatureData = formatSignatureData(systemData, [signatureData], fullSignatureOptions);
+ let newSignatureData = formatSignatureData(systemData, [signatureData], fullSignatureOptions);
// insert new row in main signature table
- var tablePrimaryElement = $('.' + config.sigTablePrimaryClass);
- var dataTablePrimary = tablePrimaryElement.DataTable();
- var newRowNode = dataTablePrimary.row.add(newSignatureData.shift()).draw().nodes();
- var newRowElement = newRowNode.to$();
+ let tablePrimaryElement = $('.' + config.sigTablePrimaryClass);
+ let dataTablePrimary = tablePrimaryElement.DataTable();
+ let newRowNode = dataTablePrimary.row.add(newSignatureData.shift()).draw().nodes();
+ let newRowElement = newRowNode.to$();
if(animate === true){
newRowElement.hide();
@@ -1296,11 +1516,10 @@ define([
* @param callback
*/
$.fn.toggleTableRow = function(callback){
- var rowElement = $(this);
- var cellElements = rowElement.children('td');
+ let rowElement = $(this);
+ let cellElements = rowElement.children('td');
- var duration = 100;
- var tdCounter = 0;
+ let duration = 100;
// wrap each | into a container (for better animation performance)
@@ -1322,15 +1541,11 @@ define([
}).velocity('slideUp', {
duration: duration,
complete: function(animationElements){
- tdCounter++;
- // execute callback when last | animation finished
- if(tdCounter === animationElements.length){
- // remove wrapper
- $(animationElements).children().unwrap();
+ // remove wrapper
+ $(animationElements).children().unwrap();
- if(callback !== undefined){
- callback(rowElement);
- }
+ if(callback !== undefined){
+ callback(rowElement);
}
}
});
@@ -1364,25 +1579,18 @@ define([
}).velocity('slideDown', {
duration: duration,
complete: function(animationElements){
- tdCounter++;
- // execute callback when last | animation finished
- if(tdCounter === animationElements.length){
-
- // remove wrapper
- var wrapperElements = cellElements.children();
- for(var i = 0; i < wrapperElements.length; i++){
- var currentWrapper = $(wrapperElements[i]);
- if(currentWrapper.children().length > 0){
- currentWrapper.children().unwrap();
- }else{
- currentWrapper.parent().html( currentWrapper.html() );
- }
- }
-
- if(callback !== undefined){
- callback(rowElement);
+ // remove wrapper
+ for(let i = 0; i < animationElements.length; i++){
+ let currentWrapper = $(animationElements[i]);
+ if(currentWrapper.children().length > 0){
+ currentWrapper.children().unwrap();
+ }else{
+ currentWrapper.parent().html( currentWrapper.html() );
}
+ }
+ if(callback !== undefined){
+ callback(rowElement);
}
}
});
@@ -1398,21 +1606,21 @@ define([
* @returns {*}
*/
$.fn.drawSignatureTable = function(signatureData, systemData){
- var moduleElement = $(this);
+ let moduleElement = $(this);
// setup filter select in footer
// column indexes that need a filter select
- var filterColumnIndexes = [2];
+ let filterColumnIndexes = [2];
// create new signature table ---------------------------------------------------------------------------------
- var table = $('', {
+ let table = $('', {
class: ['display', 'compact', 'nowrap', config.sigTableClass, config.sigTablePrimaryClass].join(' ')
});
// create table footer ----------------------------------------------------------------------------------------
// get column count from default dataTable config
- var columnCount = $.fn.dataTable.defaults.columnDefs.length;
- var footerHtml = '';
+ let columnCount = $.fn.dataTable.defaults.columnDefs.length;
+ let footerHtml = ' ';
for(let i = 0; i < columnCount; i++){
footerHtml += ' | ';
}
@@ -1421,13 +1629,13 @@ define([
moduleElement.append(table);
- var dataTableOptions = {
+ let dataTableOptions = {
data: signatureData,
drawCallback: function(settings){
this.api().columns(filterColumnIndexes).every(function(){
- var column = this;
- var footerColumnElement = $(column.footer());
- var filterSelect = footerColumnElement.find('.editable');
+ let column = this;
+ let footerColumnElement = $(column.footer());
+ let filterSelect = footerColumnElement.find('.editable');
// update select values
filterSelect.editable('option', 'source', getColumnTableDataForFilter(column));
@@ -1436,9 +1644,9 @@ define([
initComplete: function (settings, json){
this.api().columns(filterColumnIndexes).every(function(){
- var column = this;
- var headerLabel = $(column.header()).text();
- var selectField = $('');
@@ -1456,7 +1664,7 @@ define([
});
selectField.on('save', { column: column }, function(e, params) {
- var val = $.fn.dataTable.util.escapeRegex( params.newValue );
+ let val = $.fn.dataTable.util.escapeRegex( params.newValue );
e.data.column.search( val !== '0' ? '^' + val + '$' : '', true, false ).draw();
});
});
@@ -1479,13 +1687,13 @@ define([
* @param column
* @returns {{}}
*/
- var getColumnTableDataForFilter = function(column){
+ let getColumnTableDataForFilter = function(column){
// get all available options from column
- var source = {};
+ let source = {};
column.data().unique().sort(function(a,b){
// sort alphabetically
- var valA = a.filter.toLowerCase();
- var valB = b.filter.toLowerCase();
+ let valA = a.filter.toLowerCase();
+ let valB = b.filter.toLowerCase();
if(valA < valB) return -1;
if(valA > valB) return 1;
@@ -1502,141 +1710,11 @@ define([
return source;
};
- /**
- * format signature data array into dataTable structure
- * @param systemData
- * @param signatureData
- * @param options
- * @returns {Array}
- */
- var formatSignatureData = function(systemData, signatureData, options){
-
- var formattedData = [];
-
- // security check
- if(
- systemData &&
- systemData.id &&
- systemData.id > 0
- ){
- var systemTypeId = systemData.type.id;
-
- // areaId is required as a key for signature names
- // if areaId is 0, no signature data is available for this system
- var areaId = Util.getAreaIdBySecurity(systemData.security);
-
- for(var i = 0; i < signatureData.length; i++){
- var data = signatureData[i];
-
- var tempData = {};
-
- // set id ---------------------------------------------------------------------------------------------
- var sigId = 0;
- if(data.id > 0){
- sigId = data.id;
- }
- tempData.id = sigId;
-
- // set status -----------------------------------------------------------------------------------------
- var statusClass = '';
- if(data.updated.character !== undefined){
- statusClass = Util.getStatusInfoForCharacter(data.updated.character, 'class');
- }
- var status = '';
-
- tempData.status = {
- status: status,
- status_sort: statusClass
- };
-
- // set name -------------------------------------------------------------------------------------------
- var sigName = ' 0){
- sigName += 'data-pk="' + data.id + '" ';
- }
- sigName += '>' + data.name + '';
-
- tempData.name = sigName;
-
- // set group id ---------------------------------------------------------------------------------------
- var sigGroup = ' 0){
- sigGroup += 'data-pk="' + data.id + '" ';
- }
- sigGroup += 'data-systemTypeId="' + systemTypeId + '" ';
- sigGroup += 'data-areaId="' + areaId + '" ';
- sigGroup += 'data-value="' + data.groupId + '" ';
- sigGroup += '>';
-
- tempData.group = {
- group: sigGroup,
- sort: signatureGroupsLabels[data.groupId],
- filter: signatureGroupsLabels[data.groupId]
- };
-
- // set type id ----------------------------------------------------------------------------------------
- var sigType = ' 0){
- sigType += 'data-pk="' + data.id + '" ';
- }
-
- // set disabled if sig type is not selected
- if(data.groupId < 1){
- sigType += 'data-disabled="1" ';
- }
-
- sigType += 'data-systemTypeId="' + systemTypeId + '" ';
- sigType += 'data-areaId="' + areaId + '" ';
- sigType += 'data-groupId="' + data.groupId + '" ';
- sigType += 'data-value="' + data.typeId + '" ';
- sigType += '>';
-
- tempData.type = sigType;
-
- // set description ------------------------------------------------------------------------------------
- var sigDescription = ' 0){
- sigDescription += 'data-pk="' + data.id + '" ';
- }
- sigDescription += '>' + data.description + '';
-
- tempData.description = sigDescription;
-
- // set created ----------------------------------------------------------------------------------------
- tempData.created = data.created;
-
- // set updated ----------------------------------------------------------------------------------------
- tempData.updated = data.updated;
-
- // info icon ------------------------------------------------------------------------------------------
- var infoButton = '';
- if(data.id > 0){
- infoButton = '';
- }
- tempData.info = infoButton;
-
- // action icon ----------------------------------------------------------------------------------------
-
- var actionButton = '';
- tempData.action = {
- action: options.action,
- button: actionButton
- };
-
- formattedData.push(tempData);
-
- }
-
- }
-
- return formattedData;
- };
-
/**
* setup dataTable options for all signatureTables
* @param systemData
*/
- var initSignatureDataTable = function(systemData){
+ let initSignatureDataTable = function(systemData){
$.extend( true, $.fn.dataTable.defaults, {
pageLength: -1,
@@ -1673,7 +1751,14 @@ define([
title: 'id',
type: 'html',
width: '30px',
- data: 'name'
+ data: 'name',
+ render: {
+ _: 'render'
+ },
+ createdCell: function(cell, cellData, rowData, rowIndex, colIndex){
+ // update column tooltip
+ updateTooltip(cell, cellData.name);
+ }
},{
targets: 2,
orderable: true,
@@ -1731,7 +1816,7 @@ define([
$(cell).initTimestampCounter();
// highlight cell
- var diff = Math.floor((new Date()).getTime()) - cellData.updated * 1000;
+ let diff = Math.floor((new Date()).getTime()) - cellData.updated * 1000;
// age > 1 day
if( diff > 86400000){
@@ -1751,7 +1836,7 @@ define([
if(rowData.id > 0){
// add row tooltip
- var tooltipData = {
+ let tooltipData = {
created: rowData.created,
updated: rowData.updated
};
@@ -1772,15 +1857,15 @@ define([
sort: 'action'
},
createdCell: function(cell, cellData, rowData, rowIndex, colIndex){
- var tempTableElement = this;
- var rowElement = $(cell).parents('tr');
+ let tempTableElement = this;
+ let rowElement = $(cell).parents('tr');
switch(cellData.action){
case 'add':
// add new signature ------------------------------------------------------------------
$(cell).on('click', function(e) {
// submit all fields within a table row
- var formFields = rowElement.find('.editable');
+ let formFields = rowElement.find('.editable');
// the "hide" makes sure to take care about open editable fields (e.g. description)
// otherwise, changes would not be submitted in this field (not necessary)
@@ -1803,17 +1888,17 @@ define([
success: function (data, editableConfig) {
unlockSignatureTable(false);
- var newRowElement = addSignatureRow(systemData, data.signatures[0], true);
+ let newRowElement = addSignatureRow(systemData, data.signatures[0], true);
// highlight
newRowElement.pulseTableRow('added');
// prepare "add signature" table for new entry -> reset -------------------
- var signatureData = formatSignatureData(systemData, [emptySignatureData], emptySignatureOptions);
+ let signatureData = formatSignatureData(systemData, [emptySignatureData], emptySignatureOptions);
- var dataSecondaryElement = $('.' + config.sigTableSecondaryClass);
- var dataTableSecondary = dataSecondaryElement.DataTable();
- var newAddRowElement = dataTableSecondary.clear().row.add(signatureData.shift()).draw().nodes();
+ let dataSecondaryElement = $('.' + config.sigTableSecondaryClass);
+ let dataTableSecondary = dataSecondaryElement.DataTable();
+ let newAddRowElement = dataTableSecondary.clear().row.add(signatureData.shift()).draw().nodes();
newAddRowElement.to$().makeEditable(systemData);
@@ -1828,7 +1913,7 @@ define([
break;
case 'delete':
// delete signature -------------------------------------------------------------------
- var confirmationSettings = {
+ let confirmationSettings = {
container: 'body',
placement: 'left',
btnCancelClass: 'btn btn-sm btn-default',
@@ -1839,8 +1924,8 @@ define([
btnOkLabel: 'delete',
btnOkIcon: 'fa fa-fw fa-close',
onConfirm : function(e, target){
- var deleteRowElement = $(target).parents('tr');
- var row = tempTableElement.DataTable().rows(deleteRowElement);
+ let deleteRowElement = $(target).parents('tr');
+ let row = tempTableElement.DataTable().rows(deleteRowElement);
deleteSignatures(row);
}
};
@@ -1863,10 +1948,10 @@ define([
* @param moduleElement
* @param systemData
*/
- var setModuleObserver = function(moduleElement, systemData){
- var tablePrimaryElement = $('.' + config.sigTablePrimaryClass);
- var dataTablePrimary = signatureTable.DataTable();
- var signatureTableApi = signatureTable.api();
+ let setModuleObserver = function(moduleElement, systemData){
+ let tablePrimaryElement = $('.' + config.sigTablePrimaryClass);
+ let dataTablePrimary = signatureTable.DataTable();
+ let signatureTableApi = signatureTable.api();
$(document).off('pf:updateSystemSignatureModule').on('pf:updateSystemSignatureModule', function(e, data){
if(data.signatures){
@@ -1899,95 +1984,29 @@ define([
$(e.target).prop('tagName').toLowerCase() !== 'input' &&
$(e.target).prop('tagName').toLowerCase() !== 'textarea'
){
- var clipboard = (e.originalEvent || e).clipboardData.getData('text/plain');
+ let clipboard = (e.originalEvent || e).clipboardData.getData('text/plain');
moduleElement.updateSignatureTableByClipboard(systemData, clipboard, {});
}
});
};
- /**
- * check the "delete signature" button. show/hide the button if a signature is selected
- */
- var checkDeleteSignaturesButton = function(){
-
- var selectedRows = getSelectedRows(signatureTable);
- var selectedRowCount = selectedRows.data().length;
- var clearButton = $('.' + config.sigTableClearButtonClass);
-
- if(selectedRowCount > 0){
- var allRows = getRows(signatureTable);
- var rowCount = allRows.data().length;
-
- var badgetText = selectedRowCount;
- if(selectedRowCount >= rowCount){
- badgetText = 'all';
- }
- clearButton.find('.badge').text( badgetText );
-
- // update clear signatures button text
- clearButton.velocity('stop');
-
- if( clearButton.is(':hidden') ){
- // show button
- clearButton.velocity('transition.bounceIn', {
- duration: 180
- });
- }else{
- // highlight button
- clearButton.velocity('callout.pulse', {
- duration: 240
- });
- }
- }else{
- // hide button
- clearButton.velocity('transition.bounceOut', {
- duration: 180
- });
- }
- };
-
- /**
- * get all rows of a table
- * @param table
- * @returns {*}
- */
- var getRows = function(table){
- var tableApi = table.api();
- var rows = tableApi.rows();
-
- return rows;
- };
-
- /**
- * get all selected rows of a table
- * @param table
- * @returns {*}
- */
- var getSelectedRows = function(table){
- var tableApi = table.api();
-
- var selectedRows = tableApi.rows('.selected');
-
- return selectedRows;
- };
-
/**
* get module element
* @param parentElement
* @param systemData
* @returns {*|HTMLElement}
*/
- var getModule = function(parentElement, systemData){
+ let getModule = function(parentElement, systemData){
// create new module container
- var moduleElement = $('', {
+ let moduleElement = $(' ', {
class: [config.moduleClass, config.systemSigModuleClass].join(' '),
css: {opacity: 0}
});
// headline
- var headline = $(' ', {
+ let headline = $('', {
text: 'Signatures'
});
@@ -2004,7 +2023,7 @@ define([
// request signature data for system --------------------------------------------------------------------------
- var requestData = {
+ let requestData = {
systemIds: [systemData.id]
};
@@ -2018,7 +2037,7 @@ define([
}
}).done(function(signatureData){
- var signatureTableData = formatSignatureData(this.systemData, signatureData, fullSignatureOptions);
+ let signatureTableData = formatSignatureData(this.systemData, signatureData, fullSignatureOptions);
// draw signature table
moduleElement.drawSignatureTable(signatureTableData, this.systemData);
@@ -2026,7 +2045,7 @@ define([
// set module observer
setModuleObserver(moduleElement, this.systemData);
}).fail(function( jqXHR, status, error) {
- var reason = status + ' ' + error;
+ let reason = status + ' ' + error;
Util.showNotify({title: jqXHR.status + ': Get signatures', text: reason, type: 'warning'});
$(document).setProgramStatus('problem');
});
@@ -2039,10 +2058,10 @@ define([
* @param systemData
*/
$.fn.drawSignatureTableModule = function(systemData){
- var parentElement = $(this);
+ let parentElement = $(this);
// show module
- var showModule = function(moduleElement){
+ let showModule = function(moduleElement){
if(moduleElement){
moduleElement.velocity('transition.slideDownIn', {
duration: Init.animationSpeed.mapModule,
@@ -2055,7 +2074,7 @@ define([
};
// some custom array functions
- var initArrayFunctions = function(){
+ let initArrayFunctions = function(){
/**
* sort array of objects by property name
* @param p
@@ -2069,7 +2088,7 @@ define([
};
// check if module already exists
- var moduleElement = parentElement.find('.' + config.systemSigModuleClass);
+ let moduleElement = parentElement.find('.' + config.systemSigModuleClass);
if(moduleElement.length > 0){
// disable update
|