Notfallbox M: Anleitung für PDF

In der aktuellen Version der Notfallbox M sind die PDF-Dateien noch „hart-codiert“ - sprich: Sie existieren als physischer Programmeintrag in der Datei wikis.php. Mit der nachfolgenden Änderung wird der Inhalt des PDF Ordners ordentlich aufgelistet, so dass neue PDF problemlos hinzugefügt werden können, ohne dass der Programminhalt verändert werden muss.
  1. Per SSH einloggen auf der Notfallbox
  2. sudo mv /var/www/html/wikis.php /var/www/html/wikis.php.old
  3. sudo nano /var/www/html/wikis.php
  4. Es öffnet sich eine leere Datei.
  5. Bitte nun den Text aus der unteren großen grauen Box komplett kopieren
    von <!– START –> bis <!– ENDE –>
  6. Dann auf die Notfallbox-Wechseln
  7. Im leeren NANO-Editor-Fenster EINMAL die Tasten SHIFT-STRG-V gleichzeitig drücken.
  8. Dann erscheint der zuvor kopierte Text in der Datei.
  9. Danach mit STRG-X den Editor NANO beenden.
  10. Geänderten Puffer speichern? ⇒ J (wie JA)
  11. Dann ist die Änderung vollzogen.

Nun wird die Ansicht „Nachschlagewerk“ in der Notfallbox in der Lage sein, jede neu kopierte PDF-Datei automatisch anzuzeigen (siehe HIER)

HIER ist der Code für die Datei wikis.php

<!-- START -->
<?php include('include/header.php'); ?>
<?php include('include/menu_haupt.php'); ?>
<?php
         function BytesHR($bytes)
         {
             $unit = null;
             $units = array('Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB');
             for($Counter = 0, $c = count($units); $Counter < $c; $Counter++)
             {
                 if ($bytes > 1024)   //<
                 {
                     $bytes = $bytes / 1024;
                 }
                 else
                 {
                     $unit = $units[$Counter];
                     break;
                 }
             }
             return round($bytes). ' ' .$unit;
         }

    function tabelle($dateiname,$boxIP)
     {
                if (file_exists($dateiname) || is_readable($dateiname))
                {
                        $csv = array_map('str_getcsv', file($dateiname));
                        sort($csv);
                        for ($z=0;$z<count($csv);$z++)
                        {
                          echo '<TR><TD STYLE="border-color:lightgrey;"><A HREF="http://' . $boxIP . ':8000/viewer#' . substr($csv[$z][0],0,-4) . '" TARGET="_wiki' . $z . '">' . $csv[$z][1] . '</A></TD>';
                          if ($csv[$z][3]=='1')
                          {
                            echo '<TD ALIGN=CENTER STYLE="background-color:#00ff00;">JA</TD>';
                          }
                          else
                          {
                            echo '<TD ALIGN=CENTER STYLE="background-color:#ffff00;">nein</TD>';
                          }
                          echo '<TD COLSPAN=2 ALIGN=CENTER>Online</TD></TR>';
                        }
                        return true;
                }
                else
                {
                         return false;
                }
     }

     function pdf($boxIP)
     {
        if ($handle = opendir('/var/www/html/download/pdf'))
        {
          while (false !== ($entry = readdir($handle)))
          {
            if ($entry != "." && $entry != "..")
            {
              $fina_entry = str_replace("_"," ",$entry);
              $final_entry = str_replace(".pdf","",$fina_entry);
              echo "<TR><TD>";
              echo '<A HREF="download/pdf/' . $entry . '" TARGET="_pdf">';
              echo $final_entry;
              echo "</A></TD><TD COLSPAN=2 ALIGN=CENTER>PDF</TD>";
              echo "<TD ALIGN=RIGHT>";
              echo BytesHR(filesize("/var/www/html/download/pdf/" . $entry));
              echo "</TD></TR>";
            }
          }
        closedir($handle);
        }
     }
?>
 <MAIN>
    <DIV STYLE="font-size:16pt;font-weight:bold;padding-bottom:5pt;color:blue;">
     Datenbanken und Nachschlagewerke
    </DIV>
  <TABLE BORDER=1 STYLE="border-color:lightgrey;" CELLSPACING=0 CELLPADDING=5>
   <TR><TH>Datenbank</TH><TH>Bilder</TH><TH>Format</TH><TH>Größe</TH></TR>
   <?php tabelle("kiwix/kiwix.csv",$boxIP); ?>
   <TR><TD STYLE="border-color:lightgrey;"><A HREF="http://<?php echo $boxIP; ?>/notfunkwiki/" TARGET="_wiki">NOTFUNK (Deutsch)</A></TD><TD ALIGN=CENTER STYLE="background-color:#00ff00;">JA</TD><TD ALIGN=CENTER COLSPAN=2>Online</TD></TR>
   <?php pdf($boxIP); ?>
  </TABLE>
  <BR>
  <DIV>
    <B>Bitte beachten:</B> Datenbanken mit Bildern sind naturgemäß größer und benötigen mehr Zeit beim Laden und beim Abruf.
  </DIV>
 </MAIN>
 <?php include('include/footer.php'); ?>
<!-- ENDE -->