UNPKG

ucan-ext-js-kitchen-sink

Version:

my-ext-gen-app description for Ext JS app MyExtGenApp

86 lines (80 loc) 3.73 kB
Ext.define('UCAN.shareComponent.src.Util', { singleton: true, getTranslatedGridColumnMenuConfiguration: function(objectReference) { return { items: { sortAsc: { bind: { text: '{' + objectReference + '.translator.sort_ascending}' } }, sortDesc: { bind: { text: '{' + objectReference + '.translator.sort_descending}' } }, groupByThis: { bind: { text: '{' + objectReference + '.translator.group_by_this_field}' } }, showInGroups: { bind: { text: '{' + objectReference + '.translator.show_in_groups}' } } } }; }, getTranslatedGridColumnMenuItemConfiguration: function(objectReference) { return { bind: { text: '{' + objectReference + '.translator.columns}' } }; }, setAccountsGroupsGridTranslation: function(accountsGrid, groupsGrid, translator) { accountsGrid.setLoadingText(translator.get('loading_data')); accountsGrid.setEmptyText(translator.get('empty_text')); accountsGrid.getColumnMenu().items.sortAsc.text = translator.get('sort_ascending'); accountsGrid.getColumnMenu().items.sortDesc.text = translator.get('sort_ascending'); accountsGrid.getColumnMenu().items.groupByThis.text = translator.get('sort_ascending'); accountsGrid.getColumnMenu().items.showInGroups.text = translator.get('sort_ascending'); accountsGrid.getColumnsMenuItem().setText(translator.get('columns')); accountsGrid.getColumns().find(column => column.getDataIndex() === 'id').setText(translator.get('id')); accountsGrid.getColumns().find(column => column.getDataIndex() === 'firstName').setText(translator.get('first_name')); accountsGrid.getColumns().find(column => column.getDataIndex() === 'lastName').setText(translator.get('last_name')); const accountsGridWidgetColumn = accountsGrid.getColumns().find(column => column.getCell().xtype === 'widgetcell'); accountsGridWidgetColumn.setText(translator.get('rights')); groupsGrid.setLoadingText(translator.get('loading_data')); groupsGrid.setEmptyText(translator.get('empty_text')); groupsGrid.getColumnMenu().items.sortAsc.text = translator.get('sort_ascending'); groupsGrid.getColumnMenu().items.sortDesc.text = translator.get('sort_ascending'); groupsGrid.getColumnMenu().items.groupByThis.text = translator.get('sort_ascending'); groupsGrid.getColumnMenu().items.showInGroups.text = translator.get('sort_ascending'); groupsGrid.getColumnsMenuItem().setText(translator.get('columns')); groupsGrid.getColumns().find(column => column.getDataIndex() === 'id').setText(translator.get('id')); groupsGrid.getColumns().find(column => column.getDataIndex() === 'name').setText(translator.get('group_name')); const groupsGridWidgetColumn = groupsGrid.getColumns().find(column => column.getCell().xtype === 'widgetcell'); groupsGridWidgetColumn.setText(translator.get('rights')); }, joinReadWriteArrays: function(read, write) { const map = new Map(); read.forEach((readAccess) => { map.set(readAccess.get('type') + '-' + readAccess.get('id'), readAccess); }); write.forEach((writeAccess) => { const existingShare = map.get(writeAccess.get('type') + '-' + writeAccess.get('id')); if (existingShare) { for (const prop in writeAccess.data) { if (prop !== 'id') { existingShare.set(prop, writeAccess.get(prop)); } } } else { map.set(writeAccess.get('type') + '-' + writeAccess.get('id'), writeAccess); } }); return Array.from(map.values()); } });