fhiiqm/info_flist.php
changeset 1 6288d5685bff
child 10 f538f73ebc37
equal deleted inserted replaced
0:ef68113ff309 1:6288d5685bff
       
     1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
       
     2 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
       
     3 
       
     4 <head>
       
     5 	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
       
     6    	<link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> 
       
     7    	<link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> 
       
     8 
       
     9 	<title>Infoliste</title>
       
    10 </head>
       
    11 
       
    12 <body onload="document.ffilter.filter.focus();">
       
    13     <div class="float-r"><img src="img/document_image_ver.png" border="0" alt="Infodaten" title="Infodaten"/></div>
       
    14 
       
    15 <?php
       
    16 
       
    17 /**
       
    18  * @author Bettina Schwarzer, Fritz-Haber-Institut
       
    19  * @copyright 08/2011
       
    20  * 
       
    21  * Liste Infos
       
    22  */
       
    23 
       
    24     error_reporting(E_ALL ^ E_NOTICE);
       
    25     
       
    26     // Felder, nach denen gefiltert werden kann
       
    27     $fields = array(2=>"Titel",4=>"Info-Typ",5=>"Produkt",6=>"Adressat");
       
    28 
       
    29     $zeil = $_GET["z"];
       
    30     if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
       
    31     $start = $_GET["st"];   // Start bei DS $start+1
       
    32     if (!$start) $start=0;
       
    33     
       
    34 	$sort   = $_GET["s"];   // Sortierung nach Spalte
       
    35     if (!isset($sort) && !$sort) $sort = $_POST["s"];      
       
    36 
       
    37     $dir    = $_GET["d"];   // Sortierrichtung
       
    38     if (!isset($dir) && !$dir) $dir = $_POST["d"];
       
    39 
       
    40     $fnum   = $_GET["f"];   // Spaltennummer, nach der aktuell gefiltert wird
       
    41     if (!isset($fnum) && !$fnum) $fnum = $_POST["f"];
       
    42 
       
    43     $filter = $_POST["filter"];
       
    44     if (!isset($filter) && !$filter) $filter = $_GET["b"];   
       
    45 
       
    46     $subf   = $_POST["subf"]; // submit
       
    47     
       
    48     if (!isset($fnum) && !$fnum) $fnum = 1;
       
    49     if (!isset($filter) && !$filter) $filter = "";
       
    50     if (!isset($sort) && !$sort) $sort = 1;
       
    51     if (!isset($dir) && !$dir)  $dir = "";
       
    52 
       
    53 	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
       
    54     include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
       
    55 
       
    56 	$dbc = new dbconnection();
       
    57 
       
    58     $sql = "CALL info_flist($sort,'" . $dir . "',$fnum, '" . $filter . "',$start,$zeil,@anz);"; 
       
    59     // Parameter: Nr. Sortfeld, Sortierrichtung, Nr. Filterfeld, Filterbegriff, (StartNr DS) -1, Anzahl Zeilen=DS, Anzahl gefundener Raeume
       
    60     // liefert: info_ID, iname, ilong, ityp, prod, adressat, author, idate, bdate, edate, lang, doc, infrel
       
    61 //    echo "sql = $sql<br />";  
       
    62     $result = $dbc ->queryObjectArray($sql);
       
    63     
       
    64     if ($result)
       
    65     {
       
    66 		$bg1 = "#F8F8F8";
       
    67 		$bg2 = "#DEDFE1";
       
    68 		$bg = "#FFFFFF";
       
    69      
       
    70         echo "<div align='center'>\n";
       
    71         echo "<p><b>Liste der Informationen</b></p>\n";
       
    72         
       
    73         echo "<table border='0' cellspacing='0'>\n";
       
    74         echo "<tr><td class='bigger'>Mittels '<img src='/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />' 
       
    75             können Sie nach bestimmten Spalten auf- bzw. absteigend sortieren</td></tr>
       
    76             <tr><td class='bigger'>'<img src='/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' erm&ouml;glicht das Filtern nach ausgew&auml;hlten Spalten der Liste</td></tr>
       
    77             <tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Infodaten</td></tr>\n";
       
    78         echo "</table>\n";
       
    79 
       
    80         $ianz = $dbc -> querySingleItem("SELECT @anz");
       
    81         printf ("<p>Anzahl gefundener Informationen: %s</p>", $ianz);
       
    82 
       
    83         if (isset($fnum) && $fnum>1 && !$filter && !$subf)
       
    84         {
       
    85             // Formular anzeigen fuer Filterbegriff
       
    86             $text = $fields[$fnum];
       
    87             echo "<form action=" . $_SERVER['PHP_SELF'] . " method='post' enctype='application/x-www-form-urlencoded' id='ffilter' name='ffilter' target='_self'>\n";
       
    88             echo "<input type='hidden' name='s' value='$sort'>";
       
    89             echo "<input type='hidden' name='d' value='$dir'>";
       
    90             echo "<input type='hidden' name='f' value='$fnum'>";
       
    91             echo "<table width=\"30%\" border=\"0\">\n";
       
    92             echo "<tr><td>filtern nach $text: </td>";
       
    93             echo "<td><input id='filter' name='filter' type=\"text\" size=\"30\" maxlength=\"30\" value=\"$filter\"/></td>";
       
    94             echo "<td><input class=\"button\" type=\"submit\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n";
       
    95             echo "</form>\n";
       
    96             echo "<p>&nbsp;&nbsp;&nbsp;</p>\n";
       
    97         }
       
    98         echo "<table>\n";
       
    99         
       
   100         if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td><tr>\n";
       
   101 
       
   102         // Listenkopf generieren
       
   103         echo "<tr bgcolor='#68ACBF'>";
       
   104         echo "<th>ID</th>";
       
   105         tab_column(2,"Titel",$sort,$dir,2,$fnum,$filter,$start,$zeil);
       
   106         tab_column(3,"Kurzinfo",$sort,$dir,0,$fnum,$filter,$start,$zeil);
       
   107         tab_column(4,"Info-Typ",$sort,$dir,4,$fnum,$filter,$start,$zeil);
       
   108         tab_column(5,"Produkt",$sort,$dir,5,$fnum,$filter,$start,$zeil);
       
   109         tab_column(6,"Adressat",$sort,$dir,6,$fnum,$filter,$start,$zeil);
       
   110         tab_column(7,"Autor",$sort,$dir,0,$fnum,$filter,$start,$zeil);
       
   111         tab_column(8,"Erst-Datum",$sort,$dir,0,$fnum,$filter,$start,$zeil);
       
   112         tab_column(9,"gilt ab",$sort,$dir,0,$fnum,$filter,$start,$zeil);
       
   113         tab_column(10,"gilt bis",$sort,$dir,0,$fnum,$filter,$start,$zeil);
       
   114         echo "<th>Sprache</th>";
       
   115         echo "<th>Dokument</th>";
       
   116         echo "<th>Bezug</th>";
       
   117         echo "<th>&nbsp;</th></tr>\n";
       
   118         
       
   119 //        echo "<tr bgcolor='#68ACBF'><th>Raum-Nr.</th><th>Bezeichnung</th><th>Haus</th><th>Typ</th><th>Fl&auml;che (m<sup>2</sup>)</th><th>Raumplan</th><th>&nbsp;</th>
       
   120 //                </tr>\n";
       
   121         foreach ($result as $row)
       
   122         {
       
   123 			if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
       
   124             echo "<tr bgcolor='" . $bg . "'><td class=\"left\">$row->info_ID</td>";    
       
   125             echo "<td class=\"left\">$row->iname</td>";
       
   126             echo "<td class=\"left\">" . nl2br($row->ilong) . "</td>";
       
   127             echo "<td class=\"left\">$row->ityp</td>";
       
   128             echo "<td class=\"left\">" . str_replace(";","<br />",$row->prod) . "</td>";
       
   129             echo "<td class=\"left\">" . str_replace(";","<br />",$row->adressat) . "</td>";
       
   130             echo "<td class=\"left\">$row->author</td>";
       
   131             if ($row->idate)
       
   132             {
       
   133                 $dat = new DateTime($row->idate);    
       
   134                 echo "<td class=\"left\">" . $dat->format('d.m.Y')."</td>";
       
   135             }
       
   136             else  echo "<td>&nbsp;</td>";       
       
   137             if ($row->bdate)
       
   138             {
       
   139                 $dat = new DateTime($row->bdate);    
       
   140                 echo "<td class=\"left\">" . $dat->format('d.m.Y')."</td>";
       
   141             }
       
   142             else  echo "<td>&nbsp;</td>";       
       
   143             if ($row->edate)
       
   144             {
       
   145                 $dat = new DateTime($row->edate);    
       
   146                 echo "<td class=\"left\">" . $dat->format('d.m.Y')."</td>";
       
   147             }
       
   148             else  echo "<td>&nbsp;</td>";       
       
   149             echo "<td class=\"left\">$row->lang</td>";
       
   150             if (file_exists("infos/".$row->doc))
       
   151                 echo "<td class=\"left\"><a href=\"infos/$row->doc\">$row->doc</td>";
       
   152             else    
       
   153                 echo "<td class=\"left\">$row->doc</td>";
       
   154             echo "<td class=\"left\">$row->infrel</td>";
       
   155             echo "<td><a href='/fhiiqm/info_upd.php?uid=$row->info_ID'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td></tr>\n";
       
   156         }
       
   157         echo "</table></div>\n";
       
   158 
       
   159         echo "<br />&nbsp;&nbsp;&nbsp;";
       
   160         
       
   161         // Sortierung und Filter aus $_GET fuer weitere Seiten
       
   162         foreach ($_GET as $key=>$val)
       
   163         {
       
   164             if ($key != "st") $liste .= "&" . $key ."=".$val;
       
   165         }    
       
   166         // Sortierung und Filter aus $_POST fuer weitere Seiten
       
   167         if ($subf)
       
   168         foreach ($_POST as $key=>$val)
       
   169         {
       
   170             if ($key != "st" && $key != "subf" && $key != "filter") $liste .= "&" . $key ."=".$val;
       
   171             if ($key == "filter") $liste .= "&b=" . $val;
       
   172         }    
       
   173         
       
   174         // Links auf andere Seiten generieren
       
   175         liste_links($start,$zeil,$ianz,$liste);
       
   176     }
       
   177     else
       
   178     {
       
   179         if ($dbc -> error)  
       
   180             echo "error: " . $dbc -> error . "<br />\n";
       
   181         else
       
   182         {
       
   183             echo "<p class='red'>&nbsp;&nbsp;&nbsp;Leider nichts gefunden f&uuml;r ". $fields["$fnum"] . " wie '$filter'!</p><br />";
       
   184             echo "&nbsp;&nbsp;&nbsp;<a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Infoliste\" class=\"sc\">Infoliste</a></p>\n";
       
   185         }
       
   186         
       
   187     }
       
   188     $dbc -> close();
       
   189 
       
   190     echo "<p>&nbsp;&nbsp;&nbsp;<a href=\"info_ins.php\" target=\"_self\" title=\"Info erfassen\" class=\"sc\">Weitere Info erfassen</a></p>\n";    
       
   191 
       
   192 ?>
       
   193 </body>
       
   194 </html>