A bit more refactoring for subgroups.
[timetracker.git] / users.php
index af53890..fd9e759 100644 (file)
--- a/users.php
+++ b/users.php
@@ -28,7 +28,6 @@
 
 require_once('initialize.php');
 import('form.Form');
-import('ttTeamHelper');
 import('ttTimeHelper');
 import('ttRoleHelper');
 
@@ -40,24 +39,26 @@ if (!(ttAccessAllowed('view_users') || ttAccessAllowed('manage_users'))) {
 // End of access checks.
 
 // Prepare a list of active users.
+$rank = $user->getMaxRankForGroup($user->getGroup());
 if ($user->can('view_users'))
   $options = array('status'=>ACTIVE,'include_clients'=>true,'include_login'=>true,'include_role'=>true);
 else /* if ($user->can('manage_users')) */
-  $options = array('status'=>ACTIVE,'max_rank'=>$user->rank-1,'include_clients'=>true,'include_self'=>true,'include_login'=>true,'include_role'=>true);
+  $options = array('status'=>ACTIVE,'max_rank'=>$rank,'include_clients'=>true,'include_self'=>true,'include_login'=>true,'include_role'=>true);
 $active_users = $user->getUsers($options);
 
 // Prepare a list of inactive users.
 if($user->can('manage_users')) {
-  $options = array('status'=>INACTIVE,'max_rank'=>$user->rank-1,'include_clients'=>true,'include_login'=>true,'include_role'=>true);
+  $options = array('status'=>INACTIVE,'max_rank'=>$rank,'include_clients'=>true,'include_login'=>true,'include_role'=>true);
   $inactive_users = $user->getUsers($options);
 }
 
-// Check if the team is set to show indicators for uncompleted time entries.
-if ($user->uncompleted_indicators) {
+$uncompleted_indicators = $user->getConfigOption('uncompleted_indicators');
+if ($uncompleted_indicators) {
   // Check each active user if they have an uncompleted time entry.
   foreach ($active_users as $key => $user) {
     $active_users[$key]['has_uncompleted_entry'] = (bool) ttTimeHelper::getUncompleted($user['id']);
   }
+  $smarty->assign('uncompleted_indicators', true);
 }
 
 $smarty->assign('active_users', $active_users);