From 27060a4d05631f677f40a7b716f6accaff3dba29 Mon Sep 17 00:00:00 2001
From: Rodolphe Quiedeville <rodolphe@quiedeville.org>
Date: Fri, 2 Sep 2005 12:14:11 +0000
Subject: [PATCH] Modif permissions

---
 htdocs/telephonie/ca/pre.inc.php      | 18 ++++++---
 htdocs/telephonie/client/index.php    | 55 +++++----------------------
 htdocs/telephonie/pre.inc.php         | 10 +++--
 htdocs/telephonie/service/pre.inc.php | 12 +++---
 4 files changed, 33 insertions(+), 62 deletions(-)

diff --git a/htdocs/telephonie/ca/pre.inc.php b/htdocs/telephonie/ca/pre.inc.php
index b2a648bf3e2..40d3121be6d 100644
--- a/htdocs/telephonie/ca/pre.inc.php
+++ b/htdocs/telephonie/ca/pre.inc.php
@@ -50,19 +50,25 @@ function llxHeader($head = "", $title="") {
 
   $menu->add(DOL_URL_ROOT."/telephonie/ligne/index.php", "Lignes");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/ligne/commande/", "Commande");
+  if ($user->rights->telephonie->ligne_commander)    
+    $menu->add(DOL_URL_ROOT."/telephonie/ligne/commande/", "Commande");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/stats/", "Statistiques");
+  if ($user->rights->telephonie->stats->lire)
+    $menu->add(DOL_URL_ROOT."/telephonie/stats/", "Statistiques");
 
   $menu->add(DOL_URL_ROOT."/telephonie/facture/", "Factures");
 
   $menu->add(DOL_URL_ROOT."/telephonie/tarifs/", "Tarifs");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/fournisseurs.php", "Fournisseurs");
+  if ($user->rights->telephonie->fournisseur->lire)
+    $menu->add(DOL_URL_ROOT."/telephonie/fournisseurs.php", "Fournisseurs");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/ca/", "Chiffre d'affaire");
-  $menu->add_submenu(DOL_URL_ROOT."/telephonie/ca/ratiofourn.php", "Ratio fournisseur");
-  $menu->add_submenu(DOL_URL_ROOT."/telephonie/ca/gain.php", "Gain par client");
+  if ($user->rights->telephonie->ca->lire)
+    {
+      $menu->add(DOL_URL_ROOT."/telephonie/ca/", "Chiffre d'affaire");
+      $menu->add_submenu(DOL_URL_ROOT."/telephonie/ca/ratiofourn.php", "Ratio fournisseur");
+      $menu->add_submenu(DOL_URL_ROOT."/telephonie/ca/gain.php", "Gain par client");
+    }
 
   left_menu($menu->liste);
 }
diff --git a/htdocs/telephonie/client/index.php b/htdocs/telephonie/client/index.php
index bba21f93e85..e40118c4268 100644
--- a/htdocs/telephonie/client/index.php
+++ b/htdocs/telephonie/client/index.php
@@ -59,39 +59,6 @@ print '</table>';
 
 print '<br />';
 
-
-$sql = "SELECT distinct s.idp ";
-$sql .= " FROM ".MAIN_DB_PREFIX."telephonie_societe_ligne as l";
-$sql .= " , ".MAIN_DB_PREFIX."societe as s";
-$sql .= " WHERE s.idp = l.fk_client_comm ";
-
-if ($db->query($sql))
-{
-  $num = $db->num_rows();
-  $i = 0;
-
-  print '<table class="noborder" width="100%" cellspacing="0" cellpadding="4">';
-  print '<tr class="liste_titre"><td>Clients</td><td valign="center">Nb</td>';
-  print "</tr>\n";
-  $var=True;
-
-  $row = $db->fetch_row(0);	
-
-  print "<tr $bc[$var]>";
-  print "<td>Nombre de clients</td>\n";
-  print "<td>".$num."</td>\n";
-  print "</tr>\n";
-
-  print "</table>";
-  $db->free();
-}
-else 
-{
-  print $db->error() . ' ' . $sql;
-}
-
-print '<br />';
-
 $sql = "SELECT distinct s.idp ";
 $sql .= " FROM ".MAIN_DB_PREFIX."telephonie_societe_ligne as l";
 $sql .= " , ".MAIN_DB_PREFIX."societe as s";
@@ -104,14 +71,14 @@ if ($db->query($sql))
   $i = 0;
 
   print '<table class="noborder" width="100%" cellspacing="0" cellpadding="4">';
-  print '<tr class="liste_titre"><td>Mes clients suivis</td><td valign="center">Nb</td>';
+  print '<tr class="liste_titre"><td>Clients</td><td valign="center">Nb</td>';
   print "</tr>\n";
   $var=True;
 
   $row = $db->fetch_row(0);	
 
   print "<tr $bc[$var]>";
-  print '<td><a href="my.php">Nombre de clients</a></td>';
+  print '<td><a href="my.php">Mes clients suivis</a></td>';
   print "<td>".$num."</td>\n";
   print "</tr>\n";
 
@@ -139,23 +106,19 @@ print '</td><td valign="top" width="70%" rowspan="3">';
 
 $sql = "SELECT s.idp as socidp, s.nom, count(l.ligne) as ligne";
 $sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."telephonie_societe_ligne as l";
+$sql .= ",".MAIN_DB_PREFIX."societe_perms as sp";
 
 $sql .= " WHERE l.fk_client_comm = s.idp ";
 
-if ($_GET["search_client"])
-{
-  $sel = urldecode($_GET["search_client"]);
-  $sql .= " AND s.nom LIKE '%".$sel."%'";
-}
-
+$sql .= " AND s.idp = sp.fk_soc";
+$sql .= " AND sp.fk_user = ".$user->id." AND sp.pread = 1";
 $sql .= " GROUP BY s.idp";
-
 $sql .= " ORDER BY s.datec DESC LIMIT 15";
 
-$result = $db->query($sql);
-if ($result)
+$resql = $db->query($sql);
+if ($resql)
 {
-  $num = $db->num_rows();
+  $num = $db->num_rows($resql);
   $i = 0;
   
   print '<table class="noborder" width="100%" cellspacing="0" cellpadding="4">';
@@ -170,7 +133,7 @@ if ($result)
 
   while ($i < $num)
     {
-      $obj = $db->fetch_object($i);	
+      $obj = $db->fetch_object($resql);	
       $var=!$var;
 
       print "<tr $bc[$var]><td>";
diff --git a/htdocs/telephonie/pre.inc.php b/htdocs/telephonie/pre.inc.php
index fc50fde003a..d720ef701d4 100644
--- a/htdocs/telephonie/pre.inc.php
+++ b/htdocs/telephonie/pre.inc.php
@@ -34,7 +34,7 @@ function llxHeader($head = "", $title="") {
 
   $menu = new Menu();
 
-  if (TELEPHONIE_MODULE_ADSL == 1)
+  if ($user->rights->telephonie->adsl->lire && TELEPHONIE_MODULE_ADSL == 1)
     $menu->add(DOL_URL_ROOT."/telephonie/adsl/", "ADSL");
 
   $menu->add(DOL_URL_ROOT."/telephonie/index.php", "Telephonie");
@@ -70,11 +70,13 @@ function llxHeader($head = "", $title="") {
   if ($user->rights->telephonie->fournisseur->lire)
     $menu->add(DOL_URL_ROOT."/telephonie/fournisseur/index.php", "Fournisseurs");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/service/", "Services");
+  if ($user->rights->telephonie->service->lire)
+    $menu->add(DOL_URL_ROOT."/telephonie/service/", "Services");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/ca/", "Chiffre d'affaire");
+  if ($user->rights->telephonie->ca->lire)
+    $menu->add(DOL_URL_ROOT."/telephonie/ca/", "Chiffre d'affaire");
 
-  if ($user->admin)
+  if ($user->rights->telephonie->configurer)
     $menu->add(DOL_URL_ROOT."/telephonie/config/", "Configuration");
 
   left_menu($menu->liste);
diff --git a/htdocs/telephonie/service/pre.inc.php b/htdocs/telephonie/service/pre.inc.php
index f0707efacd3..24d086105ad 100644
--- a/htdocs/telephonie/service/pre.inc.php
+++ b/htdocs/telephonie/service/pre.inc.php
@@ -51,12 +51,12 @@ function llxHeader($head = "", $title="") {
   if ($user->rights->telephonie->stats->lire)
     $menu->add(DOL_URL_ROOT."/telephonie/stats/", "Statistiques");
 
-  $menu->add(DOL_URL_ROOT."/telephonie/service/", "Services");
-
-  $menu->add_submenu(DOL_URL_ROOT."/telephonie/service/liste.php", "Liste");
-
-  $menu->add_submenu(DOL_URL_ROOT."/telephonie/service/fiche.php?action=create", "Nouveau service");
-
+  if ($user->rights->telephonie->service->lire)
+    {
+      $menu->add(DOL_URL_ROOT."/telephonie/service/", "Services");      
+      $menu->add_submenu(DOL_URL_ROOT."/telephonie/service/liste.php", "Liste");      
+      $menu->add_submenu(DOL_URL_ROOT."/telephonie/service/fiche.php?action=create", "Nouveau service");
+    }
 
 
   left_menu($menu->liste);
-- 
GitLab