Dutch translation improved.
[timetracker.git] / roles.php
index b4facce..fe68329 100644 (file)
--- a/roles.php
+++ b/roles.php
@@ -31,17 +31,26 @@ import('form.Form');
 import('ttTeamHelper');
 import('ttRoleHelper');
 
-// Access check.
-if (!ttAccessCheck(right_manage_team)) {
+// 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');