X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/b401022733a9645ed701522585b2d57db936f5cc..88bd95ec82e6b715f84b6bd09c04aebbdb4b5e4d:/roles.php diff --git a/roles.php b/roles.php index efeb4957..fe68329d 100644 --- a/roles.php +++ b/roles.php @@ -31,17 +31,26 @@ import('form.Form'); import('ttTeamHelper'); import('ttRoleHelper'); -// Access check. +// Access checks. if (!ttAccessAllowed('manage_roles')) { header('Location: access_denied.php'); exit(); } +$group_id = (int)$request->getParameter('group_id'); +if ($group_id && !$user->isGroupValid($group_id)) { + header('Location: access_denied.php'); + exit(); +} +// End of access checks. -// If there are no roles in team, introduce default ones. -if (!ttRoleHelper::rolesExist()) ttRoleHelper::createDefaultRoles(); // TODO: refactor or remove after roles revamp. +if ($group_id) { + // We are passed a valid group_id (most likely from group_edit.php). + // Set on behalf group accordingly. + $user->setOnBehalfGroup($group_id); +} -$smarty->assign('active_roles', ttTeamHelper::getActiveRoles($user->team_id)); -$smarty->assign('inactive_roles', ttTeamHelper::getInactiveRoles($user->team_id)); -$smarty->assign('title', $i18n->getKey('title.roles')); +$smarty->assign('active_roles', ttTeamHelper::getActiveRolesForUser()); +$smarty->assign('inactive_roles', ttTeamHelper::getInactiveRolesForUser()); +$smarty->assign('title', $i18n->get('title.roles')); $smarty->assign('content_page_name', 'roles.tpl'); $smarty->display('index.tpl');