Navigation Menu

Skip to content

Commit

Permalink
Dev: global permissions for surveymenu entires
Browse files Browse the repository at this point in the history
  • Loading branch information
lacrioque committed Nov 12, 2018
1 parent 758748d commit 8c944b4
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 5 deletions.
1 change: 1 addition & 0 deletions application/core/plugins/GroupSpecificActivation
Submodule GroupSpecificActivation added at 0dd28d
2 changes: 1 addition & 1 deletion application/models/Permission.php
Expand Up @@ -744,7 +744,7 @@ protected function getOwnerId($iEntityID, $sEntityName)
}

public static function getPermissionList(){
$aPermissions = self::getSurveyBasePermissions();
$aPermissions = array_merge(self::getSurveyBasePermissions(),self::getGlobalBasePermissions());
return array_map(function($aPermission){
return $aPermission['title'];
}, $aPermissions);
Expand Down
15 changes: 11 additions & 4 deletions application/models/Survey.php
Expand Up @@ -799,10 +799,17 @@ private function _createSurveymenuArray($oSurveyMenuObjects, $collapsed=false)
}

//Skip menu if no permission
if ((!empty($aEntry['permission']) && !empty($aEntry['permission_grade'])
&& !Permission::model()->hasSurveyPermission($this->sid, $aEntry['permission'], $aEntry['permission_grade']))
) {
continue;
if (!empty($aEntry['permission']) && !empty($aEntry['permission_grade'])){
$inArray = array_search($aEntry['permission'],array_keys(Permission::getGlobalBasePermissions()));
if($inArray) {
$hasPermission = Permission::model()->hasGlobalPermission($aEntry['permission'], $aEntry['permission_grade']);
} else {
$hasPermission = Permission::model()->hasSurveyPermission($this->sid, $aEntry['permission'], $aEntry['permission_grade']);
}

if(!$hasPermission) {
continue;
}
}

// Check if a specific user owns this menu.
Expand Down

0 comments on commit 8c944b4

Please sign in to comment.