Introduced view_own_clients right and its handling.
[timetracker.git] / mobile / clients.php
index 4f03510..61cc304 100644 (file)
@@ -31,7 +31,7 @@ import('form.Form');
 import('ttTeamHelper');
 
 // Access checks.
-if (!ttAccessAllowed('manage_clients')) {
+if (!(ttAccessAllowed('view_own_clients') || ttAccessAllowed('manage_clients'))) {
   header('Location: access_denied.php');
   exit();
 }
@@ -39,9 +39,16 @@ if (!$user->isPluginEnabled('cl')) {
   header('Location: feature_disabled.php');
   exit();
 }
+// End of access checks.
 
-$smarty->assign('active_clients', ttTeamHelper::getActiveClients($user->group_id, true));
-$smarty->assign('inactive_clients', ttTeamHelper::getInactiveClients($user->group_id, true));
+if($user->can('manage_clients')) {
+  $active_clients = ttTeamHelper::getActiveClients($user->group_id, true);
+  $inactive_clients = ttTeamHelper::getInactiveClients($user->group_id, true);
+} else
+  $active_clients = $user->getAssignedClients();
+
+$smarty->assign('active_clients', $active_clients);
+$smarty->assign('inactive_clients', $inactive_clients);
 $smarty->assign('title', $i18n->get('title.clients'));
 $smarty->assign('content_page_name', 'mobile/clients.tpl');
 $smarty->display('mobile/index.tpl');