//override to allow varaiable length arguments Ext.override(Ext.direct.RemotingProvider,{ doCall : function(c, m, args){ //last arg is a function if(typeof args[args.length - 1] === 'function'){ //console.log('last arg is fn'); m.len = args.length - 1; } //2nd to last arg is a function else if(args.length > 1 && typeof args[args.length - 2] === 'function'){ //console.log('last arg is scope'); m.len = args.length - 2; } //otherwise there's no callback else{ //console.log('no callback'); m.len = args.length; } var data = null, hs = args[m.len], scope = args[m.len+1]; if(m.len !== 0){ data = args.slice(0, m.len); } var t = new Ext.Direct.Transaction({ provider: this, args: args, action: c, method: m.name, data: data, cb: scope && Ext.isFunction(hs) ? hs.createDelegate(scope) : hs }); if(this.fireEvent('beforecall', this, t) !== false){ Ext.Direct.addTransaction(t); this.queueTransaction(t); this.fireEvent('call', this, t); } } }); Ext.ns('Ext.app.api');Ext.app.api.desc = {"actions":{"FileService":[{"name":"write","len":2}],"ArchiveService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"acls":[{"name":"getImplementedPermissions","len":2},{"name":"listAllACLs","len":6},{"name":"listAllObjectACLs","len":4},{"name":"listAvailableGroups","len":4},{"name":"listAvailableOrgs","len":3},{"name":"listAvailablePermissions","len":1},{"name":"listAvailableRoles","len":4},{"name":"listAvailableStates","len":2},{"name":"listAvailableUsers","len":3},{"name":"listObjectACLs","len":3},{"name":"listPermissions","len":0},{"name":"listPermissionsByClass","len":6},{"name":"listPrivileges","len":5},{"name":"listRoles","len":2},{"name":"listStatus","len":2},{"name":"listTypes","len":2},{"name":"listWithPermissions","len":15},{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"ExpertiseService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"SpecService":[{"name":"editAttachment","len":3},{"name":"listAvailable","len":1},{"name":"removeAttachment","len":2},{"formHandler":true,"name":"save","len":0},{"name":"viewAttachment","len":2},{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"read","len":0},{"name":"update","len":0}],"groups":[{"name":"listUsersInGroup","len":2},{"name":"listUsersNotInGroup","len":3},{"formHandler":true,"name":"save","len":0},{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"read","len":0},{"name":"update","len":0}],"GroupService":[{"name":"listUsersInGroup","len":2},{"name":"listUsersNotInGroup","len":3},{"formHandler":true,"name":"save","len":0},{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"read","len":0},{"name":"update","len":0}],"UserService":[{"name":"addToGroup","len":2},{"name":"create","len":0},{"name":"getCurrentUser","len":0},{"name":"listActivity","len":0},{"name":"listEvaluators","len":0},{"name":"register","len":0},{"name":"removeFromGroup","len":2},{"formHandler":true,"name":"resetPassword","len":1},{"name":"update","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"make","len":0},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0}],"OrgService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"make","len":0},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"AuthService":[{"name":"authenticate","len":2}],"orgs":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"make","len":0},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"ACLService":[{"name":"getImplementedPermissions","len":2},{"name":"listAllACLs","len":6},{"name":"listAllObjectACLs","len":4},{"name":"listAvailableGroups","len":4},{"name":"listAvailableOrgs","len":3},{"name":"listAvailablePermissions","len":1},{"name":"listAvailableRoles","len":4},{"name":"listAvailableStates","len":2},{"name":"listAvailableUsers","len":3},{"name":"listObjectACLs","len":3},{"name":"listPermissions","len":0},{"name":"listPermissionsByClass","len":6},{"name":"listPrivileges","len":5},{"name":"listRoles","len":2},{"name":"listStatus","len":2},{"name":"listTypes","len":2},{"name":"listWithPermissions","len":15},{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"TypeService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"list","len":7},{"name":"read","len":0},{"name":"update","len":0}],"AuthLDAPService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"make","len":0},{"name":"read","len":0},{"formHandler":true,"name":"save","len":0},{"name":"update","len":0}],"ProductService":[{"name":"copy","len":1},{"name":"list","len":9},{"name":"listActivity","len":3},{"name":"listProductHits","len":1},{"name":"listTopProducts","len":1},{"name":"print","len":0},{"name":"printActivity","len":3},{"name":"setProductStatus","len":2}],"auth":[{"name":"authenticate","len":2}],"AppService":[{"formHandler":true,"name":"addComment","len":3},{"name":"copy","len":1},{"name":"expire","len":0},{"name":"exportPDF","len":1},{"name":"get","len":1},{"name":"getByDDocName","len":1},{"name":"getByDId","len":1},{"name":"listAllWorkflowDocs","len":0},{"name":"listAppHits","len":1},{"name":"listStats","len":0},{"name":"listTopApps","len":1},{"name":"listWorkFlowDocs","len":0},{"name":"reassign","len":2},{"formHandler":true,"name":"save","len":1},{"formHandler":true,"name":"submit","len":2},{"name":"viewAttachment","len":2},{"name":"workflowApproveAs","len":6},{"name":"workflowRejectAs","len":3},{"name":"destroy","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"readByProperty","len":2},{"name":"update","len":0}],"CategoryService":[{"name":"fetchCategoryTreeNodes","len":3},{"name":"getProductCount","len":2},{"name":"listCatHits","len":1},{"name":"listCategories","len":0},{"name":"listNested","len":2},{"name":"listStats","len":0},{"name":"listTopCats","len":1},{"formHandler":true,"name":"save","len":1},{"name":"destroy","len":0},{"name":"get","len":0},{"name":"list","len":7},{"name":"listByProperty","len":8},{"name":"listByPropertyMap","len":7},{"name":"update","len":0}],"PermissionService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"list","len":7},{"name":"read","len":0},{"name":"update","len":0}],"StatusService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"list","len":7},{"name":"read","len":0},{"name":"update","len":0}],"StellentService":[{"name":"listAllWorkflowDocs","len":2},{"name":"listAppsInWorkflow","len":0},{"name":"listWorkflowDocs","len":2},{"name":"ping","len":3}],"ImplementsService":[{"name":"create","len":0},{"name":"destroy","len":0},{"name":"list","len":7},{"name":"read","len":0},{"name":"update","len":0}]},"url":"direct\/router.cfm","type":"remoting","namespace":"Ext.app.api"}; //setup the provider var provider = Ext.Direct.addProvider(Ext.app.api.desc); //handle provider exceptions provider.on('data', function(provider, e){ if (e.type === 'exception') { if(Ext.app.debug){ console.dir(e); var html = ''; if(e.xhr){ html = e.xhr.responseText; }else{ html = e.message + '

' + e.detail + '

' + e.stackTrace + '

' + e.tagContext; } var win = new Ext.Window({ title:e.message, iconCls:'icon_error', width: 640, height: 480, html: html, frame: true, autoScroll: true, maximizable: true, buttonAlign: 'right', buttons: [{ text: 'Close', iconCls:'icon_cross', handler: function(){ win.close(); } }] }).show(); }else{ Ext.Msg.alert(e.message || 'Error', e.detail || e.message || 'An unknown error has occured.'); /* //this is more robust than Ext.Msg var win = new Ext.Window({ cls:'x-window-dlg x-window-plain', resizable:false, iconCls:'icon_error', title: e.message || 'Error', modal:true, html:e.detail || e.message || 'An unknown error has occured.', buttonAlign:'center', buttons: [{ text: 'OK', handler: function(){ win.close(); } }] }).show(); */ } } }, this); Ext.app.api.permissions = {"MANAGE":8192,"REJECT":512,"4096":{"PERMISSIONID":4096,"APPLIESTOOBJECTS":1,"NAME":"COPY","LABEL":"Copy","DESCRIPTION":""},"32768":{"PERMISSIONID":32768,"APPLIESTOOBJECTS":1,"NAME":"ADD_NOTES","LABEL":"Add DOT Notes","DESCRIPTION":""},"REVIEW":1024,"WRITE":8,"RUNAS":64,"LIST":2,"COPY":4096,"ADD_COMMENT":16384,"QUALIFY":2048,"1":{"PERMISSIONID":1,"APPLIESTOOBJECTS":0,"NAME":"CREATE","LABEL":"Create","DESCRIPTION":""},"16384":{"PERMISSIONID":16384,"APPLIESTOOBJECTS":1,"NAME":"ADD_COMMENT","LABEL":"Add Extra Comment","DESCRIPTION":""},"32":{"PERMISSIONID":32,"APPLIESTOOBJECTS":1,"NAME":"ADMIN","LABEL":"Admin","DESCRIPTION":""},"1024":{"PERMISSIONID":1024,"APPLIESTOOBJECTS":0,"NAME":"REVIEW","LABEL":"Review","DESCRIPTION":""},"512":{"PERMISSIONID":512,"APPLIESTOOBJECTS":1,"NAME":"REJECT","LABEL":"Reject","DESCRIPTION":""},"4":{"PERMISSIONID":4,"APPLIESTOOBJECTS":1,"NAME":"READ","LABEL":"Read","DESCRIPTION":""},"CREATE":1,"16":{"PERMISSIONID":16,"APPLIESTOOBJECTS":1,"NAME":"DELETE","LABEL":"Delete","DESCRIPTION":""},"8192":{"PERMISSIONID":8192,"APPLIESTOOBJECTS":0,"NAME":"MANAGE","LABEL":"Manage","DESCRIPTION":""},"ADD_NOTES":32768,"SUBMIT":128,"ADMIN":32,"8":{"PERMISSIONID":8,"APPLIESTOOBJECTS":1,"NAME":"WRITE","LABEL":"Write","DESCRIPTION":""},"2":{"PERMISSIONID":2,"APPLIESTOOBJECTS":0,"NAME":"LIST","LABEL":"List","DESCRIPTION":""},"128":{"PERMISSIONID":128,"APPLIESTOOBJECTS":1,"NAME":"SUBMIT","LABEL":"Submit","DESCRIPTION":""},"256":{"PERMISSIONID":256,"APPLIESTOOBJECTS":1,"NAME":"APPROVE","LABEL":"Approve","DESCRIPTION":""},"64":{"PERMISSIONID":64,"APPLIESTOOBJECTS":1,"NAME":"RUNAS","LABEL":"Run as","DESCRIPTION":""},"2048":{"PERMISSIONID":2048,"APPLIESTOOBJECTS":1,"NAME":"QUALIFY","LABEL":"Qualify","DESCRIPTION":""},"DELETE":16,"APPROVE":256,"READ":4}; Ext.app.api.status = {"DELETED":{"STATUSID":8192,"NAME":"DELETED","LABEL":"Deleted","DESCRIPTION":""},"EVALUATOR":{"STATUSID":2048,"NAME":"EVALUATOR","LABEL":"Evaluator","DESCRIPTION":"This application is in the Evaluator step"},"32768":{"STATUSID":32768,"NAME":"ENABLED","LABEL":"Enabled","DESCRIPTION":"Enabled"},"4096":{"STATUSID":4096,"NAME":"MATERIALS","LABEL":"Materials","DESCRIPTION":"This application is in the Materials Engineer step"},"REVIEW":{"STATUSID":4,"NAME":"REVIEW","LABEL":"Review","DESCRIPTION":"This application is in review"},"QUALIFIED":{"STATUSID":16,"NAME":"QUALIFIED","LABEL":"Qualified Product","DESCRIPTION":"This application has been approved and is on the QPL"},"DISABLED":{"STATUSID":256,"NAME":"DISABLED","LABEL":"Disabled","DESCRIPTION":"Disabled"},"UPDATE":{"STATUSID":8,"NAME":"UPDATE","LABEL":"Update Requested","DESCRIPTION":"A reviewer has asked for corrections to this application"},"REJECTED":{"STATUSID":32,"NAME":"REJECTED","LABEL":"Rejected","DESCRIPTION":"This application has been rejected"},"REMOVED":{"STATUSID":128,"NAME":"REMOVED","LABEL":"Removed","DESCRIPTION":"This product has been removed from the QPL"},"0":{"STATUSID":0,"NAME":"ANY","LABEL":"Any","DESCRIPTION":"Any"},"1":{"STATUSID":1,"NAME":"DRAFT","LABEL":"Draft","DESCRIPTION":"This is a draft copy"},"16384":{"STATUSID":16384,"NAME":"ACTIVE","LABEL":"Active","DESCRIPTION":"Activated"},"32":{"STATUSID":32,"NAME":"REJECTED","LABEL":"Rejected","DESCRIPTION":"This application has been rejected"},"DRAFT":{"STATUSID":1,"NAME":"DRAFT","LABEL":"Draft","DESCRIPTION":"This is a draft copy"},"512":{"STATUSID":512,"NAME":"MANUFACTURER","LABEL":"Manufacturer","DESCRIPTION":"This application is in the Manufacturer step"},"1024":{"STATUSID":1024,"NAME":"COORDINATOR","LABEL":"Coordinator","DESCRIPTION":"This application is in the Coordinator step"},"EXPIRED":{"STATUSID":64,"NAME":"EXPIRED","LABEL":"Expired","DESCRIPTION":"This application has expired"},"4":{"STATUSID":4,"NAME":"REVIEW","LABEL":"Review","DESCRIPTION":"This application is in review"},"MANUFACTURER":{"STATUSID":512,"NAME":"MANUFACTURER","LABEL":"Manufacturer","DESCRIPTION":"This application is in the Manufacturer step"},"ENABLED":{"STATUSID":32768,"NAME":"ENABLED","LABEL":"Enabled","DESCRIPTION":"Enabled"},"MATERIALS":{"STATUSID":4096,"NAME":"MATERIALS","LABEL":"Materials","DESCRIPTION":"This application is in the Materials Engineer step"},"16":{"STATUSID":16,"NAME":"QUALIFIED","LABEL":"Qualified Product","DESCRIPTION":"This application has been approved and is on the QPL"},"8192":{"STATUSID":8192,"NAME":"DELETED","LABEL":"Deleted","DESCRIPTION":""},"8":{"STATUSID":8,"NAME":"UPDATE","LABEL":"Update Requested","DESCRIPTION":"A reviewer has asked for corrections to this application"},"2":{"STATUSID":2,"NAME":"SUBMITTED","LABEL":"Submitted","DESCRIPTION":"This application has been submitted for review"},"128":{"STATUSID":128,"NAME":"REMOVED","LABEL":"Removed","DESCRIPTION":"This product has been removed from the QPL"},"256":{"STATUSID":256,"NAME":"DISABLED","LABEL":"Disabled","DESCRIPTION":"Disabled"},"64":{"STATUSID":64,"NAME":"EXPIRED","LABEL":"Expired","DESCRIPTION":"This application has expired"},"ACTIVE":{"STATUSID":16384,"NAME":"ACTIVE","LABEL":"Active","DESCRIPTION":"Activated"},"SUBMITTED":{"STATUSID":2,"NAME":"SUBMITTED","LABEL":"Submitted","DESCRIPTION":"This application has been submitted for review"},"2048":{"STATUSID":2048,"NAME":"EVALUATOR","LABEL":"Evaluator","DESCRIPTION":"This application is in the Evaluator step"},"COORDINATOR":{"STATUSID":1024,"NAME":"COORDINATOR","LABEL":"Coordinator","DESCRIPTION":"This application is in the Coordinator step"},"ANY":{"STATUSID":0,"NAME":"ANY","LABEL":"Any","DESCRIPTION":"Any"}}; Ext.app.api.types = {"WORKFLOW":{"typeId":17,"hasStatus":0,"tableName":"","hasCreator":0,"pkName":"","hasOrg":0,"clsName":"WORKFLOW"},"auth.AuthLDAP":{"typeId":9,"hasStatus":1,"tableName":"authLDAP","hasCreator":1,"pkName":"orgId","hasOrg":1,"clsName":"auth.AuthLDAP"},"app.Attachment":{"typeId":14,"hasStatus":1,"tableName":"attachments","hasCreator":1,"pkName":"attachmentId","hasOrg":0,"clsName":"app.Attachment"},"acl.Permission":{"typeId":2,"hasStatus":0,"tableName":"permissions","hasCreator":0,"pkName":"permissionId","hasOrg":0,"clsName":"acl.Permission"},"15":{"typeId":15,"hasStatus":0,"tableName":"expertise","hasCreator":0,"pkName":"expertiseId","hasOrg":0,"clsName":"expertise.Expertise"},"group.Group":{"typeId":7,"hasStatus":1,"tableName":"groups","hasCreator":1,"pkName":"groupId","hasOrg":1,"clsName":"group.Group"},"acl.Implements":{"typeId":4,"hasStatus":0,"tableName":"implements","hasCreator":0,"pkName":"implementsId","hasOrg":0,"clsName":"acl.Implements"},"category.Category":{"typeId":10,"hasStatus":0,"tableName":"categories","hasCreator":0,"pkName":"categoryId","hasOrg":0,"clsName":"category.Category"},"archive.Archive":{"typeId":20,"hasStatus":1,"tableName":"archives","hasCreator":1,"pkName":"archiveId","hasOrg":0,"clsName":"archive.Archive"},"org.Org":{"typeId":8,"hasStatus":1,"tableName":"orgs","hasCreator":1,"pkName":"orgId","hasOrg":1,"clsName":"org.Org"},"spec.Spec":{"typeId":11,"hasStatus":0,"tableName":"specs","hasCreator":0,"pkName":"specId","hasOrg":0,"clsName":"spec.Spec"},"9":{"typeId":9,"hasStatus":1,"tableName":"authLDAP","hasCreator":1,"pkName":"orgId","hasOrg":1,"clsName":"auth.AuthLDAP"},"11":{"typeId":11,"hasStatus":0,"tableName":"specs","hasCreator":0,"pkName":"specId","hasOrg":0,"clsName":"spec.Spec"},"0":{"typeId":0,"hasStatus":0,"tableName":"any","hasCreator":0,"pkName":"any","hasOrg":0,"clsName":"Any"},"QPL":{"typeId":16,"hasStatus":0,"tableName":"","hasCreator":0,"pkName":"","hasOrg":0,"clsName":"QPL"},"expertise.Expertise":{"typeId":15,"hasStatus":0,"tableName":"expertise","hasCreator":0,"pkName":"expertiseId","hasOrg":0,"clsName":"expertise.Expertise"},"1":{"typeId":1,"hasStatus":0,"tableName":"types","hasCreator":0,"pkName":"typeId","hasOrg":0,"clsName":"acl.Type"},"3":{"typeId":3,"hasStatus":0,"tableName":"status","hasCreator":0,"pkName":"statusId","hasOrg":0,"clsName":"acl.Status"},"17":{"typeId":17,"hasStatus":0,"tableName":"","hasCreator":0,"pkName":"","hasOrg":0,"clsName":"WORKFLOW"},"20":{"typeId":20,"hasStatus":1,"tableName":"archives","hasCreator":1,"pkName":"archiveId","hasOrg":0,"clsName":"archive.Archive"},"4":{"typeId":4,"hasStatus":0,"tableName":"implements","hasCreator":0,"pkName":"implementsId","hasOrg":0,"clsName":"acl.Implements"},"7":{"typeId":7,"hasStatus":1,"tableName":"groups","hasCreator":1,"pkName":"groupId","hasOrg":1,"clsName":"group.Group"},"12":{"typeId":12,"hasStatus":1,"tableName":"specAttachments","hasCreator":1,"pkName":"attachmentId","hasOrg":0,"clsName":"spec.Attachment"},"16":{"typeId":16,"hasStatus":0,"tableName":"","hasCreator":0,"pkName":"","hasOrg":0,"clsName":"QPL"},"spec.Attachment":{"typeId":12,"hasStatus":1,"tableName":"specAttachments","hasCreator":1,"pkName":"attachmentId","hasOrg":0,"clsName":"spec.Attachment"},"user.User":{"typeId":6,"hasStatus":1,"tableName":"users","hasCreator":1,"pkName":"userId","hasOrg":1,"clsName":"user.User"},"6":{"typeId":6,"hasStatus":1,"tableName":"users","hasCreator":1,"pkName":"userId","hasOrg":1,"clsName":"user.User"},"app.App":{"typeId":13,"hasStatus":1,"tableName":"applications","hasCreator":1,"pkName":"appId","hasOrg":1,"clsName":"app.App"},"8":{"typeId":8,"hasStatus":1,"tableName":"orgs","hasCreator":1,"pkName":"orgId","hasOrg":1,"clsName":"org.Org"},"13":{"typeId":13,"hasStatus":1,"tableName":"applications","hasCreator":1,"pkName":"appId","hasOrg":1,"clsName":"app.App"},"2":{"typeId":2,"hasStatus":0,"tableName":"permissions","hasCreator":0,"pkName":"permissionId","hasOrg":0,"clsName":"acl.Permission"},"acl.ACL":{"typeId":5,"hasStatus":0,"tableName":"acls","hasCreator":0,"pkName":"aclId","hasOrg":0,"clsName":"acl.ACL"},"acl.Type":{"typeId":1,"hasStatus":0,"tableName":"types","hasCreator":0,"pkName":"typeId","hasOrg":0,"clsName":"acl.Type"},"14":{"typeId":14,"hasStatus":1,"tableName":"attachments","hasCreator":1,"pkName":"attachmentId","hasOrg":0,"clsName":"app.Attachment"},"5":{"typeId":5,"hasStatus":0,"tableName":"acls","hasCreator":0,"pkName":"aclId","hasOrg":0,"clsName":"acl.ACL"},"acl.Status":{"typeId":3,"hasStatus":0,"tableName":"status","hasCreator":0,"pkName":"statusId","hasOrg":0,"clsName":"acl.Status"},"10":{"typeId":10,"hasStatus":0,"tableName":"categories","hasCreator":0,"pkName":"categoryId","hasOrg":0,"clsName":"category.Category"},"Any":{"typeId":0,"hasStatus":0,"tableName":"any","hasCreator":0,"pkName":"any","hasOrg":0,"clsName":"Any"}}; Ext.app.api.roles = {"AUTHENTICATED":6,"ORG_USERS":7,"3":"SELF","CREATOR":4,"7":"ORG_USERS","4":"CREATOR","6":"AUTHENTICATED","8":"ORG_ADMINS","2":"GROUP","SELF":3,"5":"PUBLIC","PUBLIC":5,"USER":1,"ORG_ADMINS":8,"1":"USER","GROUP":2}; Ext.app.api.permits = function(permission,permissions){ return !!(Ext.app.api.permissions[permission] & (permissions || 0)); } Ext.app.api.getStatus = function(statusId){ //console.log('Status?' + Ext.app.api.status[this.get('statusId')].NAME || 'UNKNOWN'); return Ext.app.api.status[statusId].NAME || 'UNKNOWN'; } Ext.app.api.statusRenderer = function(statusId){ return Ext.app.api.status[statusId].LABEL; } Ext.override(Ext.data.Record,{ permits: function(permission){ //console.log('Permits ' + permission + ' in state ' + (Ext.app.api.status[this.get('statusId')].NAME || 'UNKNOWN') + ' with permissions ' + (this.json && this.json.permissions || 0) + '? ' + !!(Ext.app.api.permissions[permission] & (this.json && this.json.permissions || 0))); return !!(Ext.app.api.permissions[permission] & (this.json && this.json.permissions || 0)); }, getStatus: function(){ //console.log('Status?' + Ext.app.api.status[this.get('statusId')].NAME || 'UNKNOWN'); return Ext.app.api.status[this.get('statusId')].NAME || 'UNKNOWN'; }, setStatus: function(status){ this.set('statusId',Ext.app.api.status[status].STATUSID); } });