| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- /*
- * Core js fw functions
- * Do not edit this file
- */
- /**
- * Available Actions List:
- * - AppsPreLoad
- * - ModalLoaded
- * - DatatableDataLoaded
- * - DatatableDataLoadingFailed
- * - SelectFieldValueChanged
- */
- /*
- * Call
- */
- var mgEventCallback = {
- objectId: null,
- eventType: null,
- callbackFunction: null,
- order: 1000,
- generateEvent: function (id, eventType, callbackFunction, order) {
- if ((id === null || typeof id === 'string') && typeof eventType === 'string'
- && typeof callbackFunction === 'function') {
- this.objectId = id;
- this.eventType = eventType;
- this.callbackFunction = callbackFunction;
- this.order = (!order || typeof order !== 'number') ? 1000 : order;
- return this;
- } else {
- return null;
- }
- },
- runEventCallback: function (objectId, params) {
- this.callbackFunction(objectId, params);
- }
- };
- /*
- * Events Handler
- * collects and run all events callbacks in the app
- */
- var mgEventHandler = {
- callbacks: {},
- on: function (eventType, id, callbackFunction, order) {
- var tmpCall = mgEventCallback.generateEvent(id, eventType, callbackFunction, order);
- var tempId = Object.keys(this.callbacks).length;
- this.callbacks['call_' + tempId] = Object.assign({}, tmpCall);
- },
- runCallback: function (eventType, id, callbackParams) {
- var callbackList = [];
- for (var key in this.callbacks) {
- if (!this.callbacks.hasOwnProperty(key)) {
- continue;
- }
- var tmpCallback = Object.assign({}, this.callbacks[key]);
- if (tmpCallback.eventType !== eventType || (tmpCallback.objectId !== null && tmpCallback.objectId !== id)) {
- continue;
- } else if (tmpCallback.objectId !== null && tmpCallback.objectId === id) {
- callbackList.push(tmpCallback);
- } else {
- callbackList.push(tmpCallback);
- }
- }
- callbackList.sort(function (a, b) {
- return a.order - b.order
- });
- $(callbackList).each(function () {
- this.runEventCallback(id, callbackParams);
- });
- }
- };
|