$()

in log4j-catalog/log4j-catalog-editor/src/main/resources/static/js/events.js [17:96]


$(document).ready(function () {
    $('#EventsTableContainer').jtable({
        title: 'Table of events',
        paging: true, //Enable paging
        pageSize: 25, //Set page size (default: 25)
        sorting: true, //Enable sorting
        defaultSorting: 'Name ASC', //Set default sorting
        actions: {
            listAction: 'api/events/list',
        },
        toolbar: {
            items: [{
                icon: 'js/jtable.2.4.0/themes/metro/add.png',
                text: 'Add new record',
                click: () => { addEditEventItem() }
            }]
        },
        fields: {
            id: {
                key: true,
                list: false
            },
            name: {
                title: 'Name',
                width: '15%'
            },
            displayName: {
                title: 'Display Name',
                width: '15%'
            },
            description: {
                title: 'Description',
                width: '30%'
            },
            attributes: {
                title: 'Assigned Attributes',
                width: 'auto',
                sorting: false,
                edit: false,
                create: false,
                display: function (eventData) {
                    var attributeList = eventData.record.attributes.map(function(elem){return elem.name + (elem.required ? ' (required)' : '')}).join(' | ');
                    //Create a div that will be used to view associated attributes
                    var $divAttributes = $('<div class="event-attributes">' + attributeList + '</div>');
                    return $divAttributes;
                }
            },
            edit: {
                title: '',
                width: '25',
                display: function (eventData) {
                    // Store event item data in localStorage
                    var eventDataItem = JSON.stringify(eventData.record);
                    localStorage.setItem('eventItem' + eventData.record.id, eventDataItem);
                    return '<img class="log4J-action-icon" src="js/jtable.2.4.0/themes/metro/edit.png" onClick="addEditEventItem(' + eventData.record.id + ')" />';
                }
            },
            delete: {
                title: '',
                width: '25',
                display: function (eventData) {
                    return '<img class="log4J-action-icon" src="js/jtable.2.4.0/themes/metro/delete.png" onClick="deleteEventItem(' + eventData.record.id + ')" />';
                }
            }
        }
    });
    $.ajax({
        type: 'GET',
        url: 'api/attributes',
        success:function(response){
            if (response.result === 'OK') {
                localStorage.setItem('allAttributes', response.data);
            }
        },
        error:function(jqXhr, textStatus, errorThrown){
            console.error(textStatus + ' - ' + errorThrown);
        }
    });
    $('#EventsTableContainer').jtable('load');
});