fhiiqm/ma_tel_flist.php
changeset 34 fc60ef80a7ad
parent 33 f1a8785434e4
child 40 6f4b105daa24
equal deleted inserted replaced
33:f1a8785434e4 34:fc60ef80a7ad
    19     {
    19     {
    20         session_start();
    20         session_start();
    21         if (! isset($_SESSION["userid"]))
    21         if (! isset($_SESSION["userid"]))
    22         { 
    22         { 
    23             include_once ("inc/func_lib.inc.php");	
    23             include_once ("inc/func_lib.inc.php");	
    24             login($_SERVER["PHP_SELF"]);
    24             login($_SERVER["PHP_SELF"]."?e=$edit");
    25             exit;
    25             exit;
    26         }
    26         }
    27         
    27         
    28         if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
    28         if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"])))
    29         {
    29         {
    30             header("Location: start.php");
    30             header("Location: start.php");
    31             exit;
    31             exit;
    32         }
    32         }
    33     }    
    33 //    print_r ($_SESSION); echo "<br />";   
       
    34     }
    34 ?>
    35 ?>
    35 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    36 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    36 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    37 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    37 
    38 
    38 <head>
    39 <head>
    54         echo "&nbsp;&nbsp;&nbsp;<a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
    55         echo "&nbsp;&nbsp;&nbsp;<a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
    55         echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n";
    56         echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n";
    56     }
    57     }
    57     
    58     
    58     // Felder, nach denen gefiltert werden kann
    59     // Felder, nach denen gefiltert werden kann
    59     $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Telefon/Fax",9=>"Haus", 10=>"Raum");
    60     $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Arbeitsgruppe",7=>"Telefon/Fax",9=>"Haus", 10=>"Raum");
    60 //    $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr");
    61 //    $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr");
    61     $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr");
    62     $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"ag",7=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr");
    62 
    63 
    63 	$sort   = $_GET["s"];   // Sortierung nach Spalte
    64 	$sort   = $_GET["s"];   // Sortierung nach Spalte
    64     if (!isset($sort) && !$sort) $sort = $_POST["s"];      
    65     if (!isset($sort) && !$sort) $sort = $_POST["s"];      
    65 
    66 
    66     $dir    = $_GET["d"];   // Sortierrichtung
    67     $dir    = $_GET["d"];   // Sortierrichtung
   101             RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID
   102             RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID
   102             WHERE aktiv>0 AND m.abt_tel=7";
   103             WHERE aktiv>0 AND m.abt_tel=7";
   103 */
   104 */
   104 //    $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list";
   105 //    $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list";
   105 //  Raum zu Mitarbeiter und nicht zu Telefon
   106 //  Raum zu Mitarbeiter und nicht zu Telefon
   106     $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list_ma_raum";
   107     if ($edit) // auch ehemalige MA
       
   108 //        $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list";
       
   109         $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ag
       
   110                 WHERE 1=1";
       
   111     else
       
   112 //        $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv FROM v_tel_list_ma_raum";
       
   113         $sql = "SELECT persknr, name, vorname, titel, abt_name, ag, telefon_nr, telefon_typ, public, sort, geb_ID, raum_nr, email, aktiv 
       
   114                 FROM v_tel_list_ag WHERE aktiv > 0";
   107     if ($filter)
   115     if ($filter)
   108     {
   116     {
   109         if ($fnum > 3)
   117         if ($fnum > 3)
   110             $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'%$filter%'"; 
   118             $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'%$filter%'"; 
   111         else
   119         else
   112             $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'$filter%'"; 
   120             $wher = " AND " . $fieldf[$fnum] . " LIKE " . "'$filter%'"; 
   113     }
   121     }
   114     else $wher = ""; 
   122     else $wher = ""; 
   115 
   123     // intern/extern
   116     if ($sort == 2) $so = "name COLLATE latin1_general_ci $dir, 3, 5";
   124 	$ip=getenv("REMOTE_ADDR");
       
   125 	$ippart=explode(".",$ip);
       
   126     if (($ippart[0] == 141 && $ippart[1] == 14) || ($ippart[0] == 172 && $ippart[1] == 16))
       
   127         $wip = "";
       
   128     else
       
   129         $wip = " AND public=1 "; 
       
   130                
       
   131     if ($sort == 2) $so = "name COLLATE latin1_general_ci $dir, 1, 3, 5, 6";
   117 //    if ($sort == 2) $sort = "2, 3, 5";
   132 //    if ($sort == 2) $sort = "2, 3, 5";
   118     elseif ($sort == 5) $so = "5 $dir, name COLLATE latin1_general_ci, 3";
   133     elseif ($sort == 5) $so = "5 $dir, 6, name COLLATE latin1_general_ci, 1, 3";
   119 //    if ($sort == 5) $sort = "5, 2, 3";
   134 //    if ($sort == 5) $sort = "5, 2, 3";
   120     else $so = "$sort $dir ";
   135     else $so = "$sort $dir ";
   121     if ($so) $ord = " ORDER BY $so, 6 "; // immer nach Telefon-Nr als 2.
   136     if ($so) $ord = " ORDER BY $so, IFNULL(sort,99), 7 "; // immer nach Telefon-Nr als 2.
   122 
   137 
   123     $sql .= $wher . $ord;
   138     $sql .= $wher . $wip . $ord;
   124 //    echo "sql = $sql<br /><br />";
   139 //    echo "sql = $sql<br /><br />";
   125     $result = $dbc ->queryObjectArray($sql);
   140     $result = $dbc ->queryObjectArray($sql);
   126     
   141     
   127     if ($result)
   142     if ($result)
   128     {
   143     {
   134         echo "<div align='center'>\n";
   149         echo "<div align='center'>\n";
   135         echo "<p><b>Mitarbeiter/Objekte - Telefonliste</b></p>\n";
   150         echo "<p><b>Mitarbeiter/Objekte - Telefonliste</b></p>\n";
   136         
   151         
   137         echo "<table border='0' cellspacing='0'>\n";
   152         echo "<table border='0' cellspacing='0'>\n";
   138         echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />' 
   153         echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />' 
   139             können Sie nach bestimmten Spalten auf- bzw. absteigend sortieren</td></tr>
   154             können Sie nach allen Spalten auf- bzw. absteigend sortieren</td></tr>
   140             <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' erm&ouml;glicht das Filtern nach ausgew&auml;hlten Spalten der Liste</td></tr>
   155             <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' erm&ouml;glicht das Filtern nach allen Spalten der Liste</td></tr>";
   141             <tr><td class='bigger'>Rote Telefon-/Fax-Nummern sind nur intern erreichbar</td></tr>";
       
   142         if ($edit)
   156         if ($edit)
   143             echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</tr>";
   157         {
   144  
   158             echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</td></tr>";
       
   159             echo "<tr><td class='bigger'><span style='color: orange; font-size: 1em;'>Orange</span> <span style='background-color: #FFCC88; font-size: 1em;'>hinterlegte</span> Zeilen markieren ausgeschiedenen Mitarbeiter</td></tr>";
       
   160         }
       
   161         echo "<tr><td class='bigger'><span style='color: red; font-size: 1em;'>Rote</span> Telefon-/Fax-Nummern sind nur intern sichtbar</td></tr>";
   145         echo "</table>\n";
   162         echo "</table>\n";
   146 
   163 
   147         echo "</div><p>&nbsp;&nbsp;&nbsp;<a href=/fhiiqm/ma_tel_pdf.php?e=$edit$getp>PDF erstellen</a></p>\n<div align='center'>\n";
   164         echo "</div><p>&nbsp;&nbsp;&nbsp;<a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n<div align='center'>\n";
   148         if (isset($fnum) && $fnum>1 && !$filter && !$subf)
   165         if (isset($fnum) && $fnum>1 && !$filter && !$subf)
   149         {
   166         {
   150             // Formular anzeigen fuer Filterbegriff
   167             // Formular anzeigen fuer Filterbegriff
   151             $text = $fields[$fnum];
   168             $text = $fields[$fnum];
   152             $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
   169             $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows
   177         for ($j=65; $j<91; $j++)
   194         for ($j=65; $j<91; $j++)
   178         {
   195         {
   179             echo "<a href='". $_SERVER["PHP_SELF"] . "?e=$edit&f=2&b=". chr($j)."' target=\"_self\" title=\"Telefonliste\" class=\"sc\">".chr($j)."&nbsp;&nbsp;&nbsp;</a>"; 
   196             echo "<a href='". $_SERVER["PHP_SELF"] . "?e=$edit&f=2&b=". chr($j)."' target=\"_self\" title=\"Telefonliste\" class=\"sc\">".chr($j)."&nbsp;&nbsp;&nbsp;</a>"; 
   180         }
   197         }
   181         echo "</p>\n";
   198         echo "</p>\n";
   182         echo "<table width='55%'>\n";
   199         echo "<table width='75%'>\n";
   183         
   200         
   184         if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
   201         if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n";
   185 
   202 
   186         // Listenkopf generieren
   203         // Listenkopf generieren
   187         echo "<tr bgcolor='#68ACBF'>";
   204         echo "<tr bgcolor='#68ACBF'>";
   188         tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit);
   205         tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit);
   189         tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit);
   206         tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit);
   190         tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit);
   207         tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit);
       
   208         tab_column(6,"Arbeitsgruppe",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit);
   191         tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit);
   209         tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit);
   192         tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit);
   210         tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit);
   193         tab_column(6,"Telefon/Fax",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit);
   211         tab_column(7,"Telefon/Fax",$sort,$dir,7,$fnum,$filter,$start,$zeil,$edit);
   194         if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
   212         if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
   195             echo "<th>&nbsp</th>";
   213             echo "<th>&nbsp</th>";
   196         echo "</tr>\n";
   214         echo "</tr>\n";
   197         foreach ($result as $row)
   215         foreach ($result as $row)
   198         {
   216         {
   199 			if ($row->persknr != $vpnr)
   217 			if ($row->persknr != $vpnr)
   200             {
   218             {
   201                 if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
   219                 if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
   202                 $titel = ($row->titel)? ", $row->titel" : "" ;
   220                 $titel = ($row->titel)? ", $row->titel" : "" ;
   203                 $email = ($row->email)? "<a href='mailto:$row->email'>$row->name$titel</a>" : "$row->name$titel";
   221                 $email = ($row->email)? "<a href='mailto:$row->email'>$row->name$titel</a>" : "$row->name$titel";
   204                 echo "<tr bgcolor='" . $bg . "'><td >$email</td>";    
   222                 if ($row->aktiv == 0) $class = " class='bgmark'"; else $class="";
       
   223                 echo "<tr$class bgcolor='" . $bg . "'><td>$email</td>";    
   205                 echo "<td>$row->vorname</td>";
   224                 echo "<td>$row->vorname</td>";
   206                 echo "<td>$row->abt_name</td>";
   225                 echo "<td>$row->abt_name</td>";
       
   226                 echo "<td>$row->ag</td>";
   207     //            echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>";
   227     //            echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>";
   208                 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
   228                 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
   209                 $rot = ($row->public)? "" : " class=\"red\"";
   229                 $rot = ($row->public)? "" : " class=\"red\"";
   210                 echo "<td>$row->geb_ID</td>";
   230                 echo "<td>$row->geb_ID</td>";
   211                 echo "<td>$row->raum_nr</td>";
   231                 echo "<td>$row->raum_nr</td>";
   212                 echo "<td$rot>$row->telefon_nr $ttyp</td>";
   232                 if ($row->sort == 1)
       
   233                     echo "<td$rot><b>$row->telefon_nr</b> $ttyp</td>";
       
   234                 else
       
   235                     echo "<td$rot>$row->telefon_nr $ttyp</td>";
   213                 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
   236                 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
   214                     echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
   237                     echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>";
   215                 echo "</tr>\n";
   238                 echo "</tr>\n";
   216             }
   239             }
   217             else
   240             else
   218             {
   241             {
   219                 if ($vabt != $row->abt_name) $abt = $row->abt_name;
   242                 if ($vabt != $row->abt_name) $abt = $row->abt_name;
   220                 else $abt = '&nbsp';    
   243                 else $abt = '&nbsp';    
       
   244                 if ($vag != $row->ag) $ag = $row->ag;
       
   245                 else $ag = '&nbsp';    
       
   246                 if ($vtel != $row->telefon_nr) 
       
   247                 {
       
   248                     $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
       
   249                     $rot = ($row->public)? "" : " class=\"red\"";
       
   250                     $tel = $row->telefon_nr; 
       
   251                 }
       
   252                 else
       
   253                 {
       
   254                     $tel = '&nbsp';
       
   255                     $ttyp = '';    
       
   256                 } 
   221                 echo "<tr bgcolor='" . $bg . "'><td colspan='2'>&nbsp;</td>";    
   257                 echo "<tr bgcolor='" . $bg . "'><td colspan='2'>&nbsp;</td>";    
   222                 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : "";
       
   223                 $rot = ($row->public)? "" : " class=\"red\"";
       
   224                 echo "<td>$abt</td>";
   258                 echo "<td>$abt</td>";
       
   259                 echo "<td>$ag</td>";
   225                 echo "<td>&nbsp;</td>";
   260                 echo "<td>&nbsp;</td>";
   226                 echo "<td>&nbsp;</td>";
   261                 echo "<td>&nbsp;</td>";
   227                 echo "<td$rot>$row->telefon_nr $ttyp</td>";
   262                 if ($row->sort == 1)
       
   263                     echo "<td$rot><b>$tel</b> $ttyp</td>";
       
   264                 else
       
   265                     echo "<td$rot>$tel $ttyp</td>";
   228                 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
   266                 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"]))
   229                     echo "<td>&nbsp;</td>";                
   267                     echo "<td>&nbsp;</td>";                
   230                 echo "</tr>\n";
   268                 echo "</tr>\n";
   231             }
   269             }
   232             $vpnr = $row->persknr;
   270             $vpnr = $row->persknr;
   233             $vabt = $row->abt_name;
   271             $vabt = $row->abt_name;
       
   272             $vag  = $row->ag;
       
   273             $vtel = $row->telefon_nr;
   234         }
   274         }
   235         echo "</table></div>\n";
   275         echo "</table></div>\n";
   236         echo "<p>&nbsp;&nbsp;&nbsp;<a href=/fhiiqm/ma_tel_pdf.php?e=$edit$getp>PDF erstellen</a></p>\n";
   276         echo "<p>&nbsp;&nbsp;&nbsp;<a href='/fhiiqm/ma_tel_pdf_mc.php?e=$edit$getp'>PDF erstellen</a></p>\n";
   237 
   277 
   238     }
   278     }
   239     else
   279     else
   240     {
   280     {
   241         echo "<div align=center>";
   281         echo "<div align=center>";