/* xxxeslint-disable */ import ayatype from "./ayatype"; export default { /////////////////////////////// // APP (GLOBAL) openobject CLICK HANDLER // // Deal with a request to open an object (from main datatables mainly) // called from App.vue handleOpenObjectClick(vm, tid) { //expects extra data (tid) to be one of { type: [AYATYPE], id: [RECORDID] } //or null which is what is called when asking to check if there is a direct openObject in store and open it if (tid == null) { let op = vm.$store.state.openObject; if (op && op.type) { tid = op; window.$gz.store.commit("clearOpenObject"); } else return; //bail out, nothing to open here } //NOTE: for new objects all edit pages assume record ID 0 means create rather than open if (tid.type && tid.id != null) { switch (tid.type) { case ayatype.Widget: vm.$router.push({ name: "widget-edit", params: { recordid: tid.id } }); break; case ayatype.User: vm.$router.push({ name: "adm-user", params: { recordid: tid.id } }); break; default: window.$gz.eventBus.$emit( "notify-warning", "open-object-handler: unrecognized type [" + tid.type + "]" ); } } }, /////////////////////////////////// // WIRE UP MENU EVENTS // // called once from app.vue only // wireUpEventHandlers(vm) { let self = this; //expects extra data (tid) to be { type: [AYATYPE], id: [RECORDID] } window.$gz.eventBus.$on("openobject", function handleOpenObjectClickHandler( tid ) { self.handleOpenObjectClick(vm, tid); }); } //new functions above here };