@@ -1012,19 +1012,31 @@ exports.hasAdminAccess = function(member, app_id) {
1012
1012
} ;
1013
1013
1014
1014
exports . hasCreateRight = function ( feature , app_id , member ) {
1015
- return member . global_admin || member . permission . c [ app_id ] . allowed [ feature ] || member . permission . c [ app_id ] . all ;
1015
+ var hasAppSpecificRight = ( member . permission && member . permission . c && member . permission . c [ app_id ] && member . permission . c [ app_id ] . allowed [ feature ] ) ;
1016
+ var hasGlobalAdminRight = member . global_admin ;
1017
+ var hasAppAdminRight = member . permission && member . permission . c && member . permission . c [ app_id ] && member . permission . c [ app_id ] . all ;
1018
+ return hasAppSpecificRight || hasGlobalAdminRight || hasAppAdminRight ;
1016
1019
} ;
1017
1020
1018
1021
exports . hasReadRight = function ( feature , app_id , member ) {
1019
- return member . global_admin || member . permission . r [ app_id ] . allowed [ feature ] || member . permission . r [ app_id ] . all ;
1022
+ var hasAppSpecificRight = ( member . permission && member . permission . r && member . permission . r [ app_id ] && member . permission . r [ app_id ] . allowed [ feature ] ) ;
1023
+ var hasGlobalAdminRight = member . global_admin ;
1024
+ var hasAppAdminRight = member . permission && member . permission . r && member . permission . r [ app_id ] && member . permission . r [ app_id ] . all ;
1025
+ return hasAppSpecificRight || hasGlobalAdminRight || hasAppAdminRight ;
1020
1026
} ;
1021
1027
1022
1028
exports . hasUpdateRight = function ( feature , app_id , member ) {
1023
- return member . global_admin || member . permission . u [ app_id ] . allowed [ feature ] || member . permission . u [ app_id ] . all ;
1029
+ var hasAppSpecificRight = ( member . permission && member . permission . u && member . permission . u [ app_id ] && member . permission . u [ app_id ] . allowed [ feature ] ) ;
1030
+ var hasGlobalAdminRight = member . global_admin ;
1031
+ var hasAppAdminRight = member . permission && member . permission . u && member . permission . u [ app_id ] && member . permission . u [ app_id ] . all ;
1032
+ return hasAppSpecificRight || hasGlobalAdminRight || hasAppAdminRight ;
1024
1033
} ;
1025
1034
1026
1035
exports . hasDeleteRight = function ( feature , app_id , member ) {
1027
- return member . global_admin || member . permission . d [ app_id ] . allowed [ feature ] || member . permission . d [ app_id ] . all ;
1036
+ var hasAppSpecificRight = ( member . permission && member . permission . d && member . permission . d [ app_id ] && member . permission . d [ app_id ] . allowed [ feature ] ) ;
1037
+ var hasGlobalAdminRight = member . global_admin ;
1038
+ var hasAppAdminRight = member . permission && member . permission . d && member . permission . d [ app_id ] && member . permission . d [ app_id ] . all ;
1039
+ return hasAppSpecificRight || hasGlobalAdminRight || hasAppAdminRight ;
1028
1040
} ;
1029
1041
1030
1042
exports . getUserApps = function ( member ) {
0 commit comments