\n\n"); //------------------------------------------------------------------------- // Read directory //------------------------------------------------------------------------- $dircount=0; // Im Startverzeichnis anfangen if(!isset($path)) $path=$Photoroot; else // Extremes Doppelquoting von den Backslashen verhindern $path=stripcslashes(urldecode($path)); // Verhindern dass path auf ausserhalb von rootpath gesetzt wird if(!stristr($path, $Photoroot)||!is_dir($path)) die("Zugriff auf $path verweigert! Verzeichnis $path liegt außerhalb des Bilderbereichs. "); else { //--------------------------------------------------------------------------- // Verzeichnis einlesen (koplett, weil sortieren von Hand) //------------------------------------------------------------------------- $handle=opendir($path); while ($dirobj = readdir($handle)) { $fullpath=$path.$PS.$dirobj; if(!stristr($fullpath,"tn_")&&(stristr($dirobj,".jpg")||stristr($dirobj,".avi")||stristr($dirobj,".mp3")||is_dir($fullpath))&&$dirobj!="."&&$dirobj!="..") { $unsorteddirarray[strftime("%Y%m%d%H%M%S",filectime($fullpath)).$dirobj]=$dirobj; $namesortarray[strftime("%Y%m%d%H%M%S",filectime($fullpath)).$dirobj]=strtolower($dirobj); if(is_dir($fullpath)) $dircount++; } } closedir($handle); //-------------------------------------------------------------------------- // Sortieren // Sortierung nach Parameterübergabe durch Link entweder nach Name oder Datum jeweils // aufstegend oder absteigend. Sollte keine Sortierung übergeben werden gilt: // Wenns viele Bilder sind und standardtnsort nicht oder auf "name" gesetzt ist wird // nach Namen aufsteigend sortiert. (Thumb-Ansicht) // In der Listenansicht per default nach Datum absteigend sortiert: Neueste nach oben. // Bei Sortierung nach Namen wird nicht zwischen Groß- und Kleinschreibung unterschieden. //------------------------------------------------------------------------- if(isset($sort)) { if($sort=="name") { if(!isset($sort_aod)||$sort_aod=="ascending") { asort($namesortarray); while (list ($key, $val) = each ($namesortarray)) $dirarray[]=$unsorteddirarray[$key]; } elseif($sort_aod=="descending") { arsort($namesortarray); while (list ($key, $val) = each ($namesortarray)) $dirarray[]=$unsorteddirarray[$key]; } else { die ("Als Parameter für die Sortierungsrichtung sind nur ascending und descending möglich "); } } elseif($sort=="date") { if($sort_aod=="ascending") { ksort($unsorteddirarray); while (list ($key, $val) = each ($unsorteddirarray)) $dirarray[]=$val; } elseif(!isset($sort_aod)||$sort_aod=="descending") { krsort($unsorteddirarray); while (list ($key, $val) = each ($unsorteddirarray)) $dirarray[]=$val; } else { die ("Als Parameter für die Sortierungsrichtung sind nur ascending und descending möglich "); } } else { die ("Als Parameter für die Sortierung sind nur name und date möglich "); } } elseif(($dircount\n"; // Previous file if(isset($dirarray[($filenum-1)])) { if(isset($dirarray[($filenum-1)]) xor is_dir($path.$PS.$dirarray[($filenum-1)]) && $dirarray[($filenum-1)]!=".") { echo "\n"; } else echo ""; } else echo ""; // Back to directory echo "\n"; // Next file if(isset($dirarray[($filenum+1)])) { if(isset($dirarray[($filenum+1)]) xor (is_dir($path.$PS.$dirarray[($filenum+1)])&&$dirarray[($filenum+1)]!=".")) { echo "\n"; } else echo ""; } else echo ""; // the file if (stristr($dirarray[$filenum],".avi")) //AVI movie { echo "\n
Vorheriges Bild  Übersicht\n"; // Selector for picture-size echo "  "; echo "\n"; echo "\n"; if(isset($sort)&&isset($sort_aod)) { echo "\n"; echo "\n"; } echo "Nächstes Bild  
\n"; if ($Width!="") {$ShowWidth=$Width;} else {$ShowWidth="320";} if ($Height!="") {$ShowHeight=$Height;} else {$ShowHeight="240";} echo "\n"; echo "
\n\n"; } elseif (stristr($dirarray[$filenum],".mp3")) //MP3-Song { echo "\n"; if ($Width!="") {$ShowWidth=$Width;} else {$ShowWidth="320";} if ($Height!="") {$ShowHeight=$Height;} else {$ShowHeight="240";} echo "\n"; echo "\n\n\n"; } else //JPG image { echo "\n"; $im=LoadJpeg($path.$PS.$dirarray[$filenum]); // Grösse einlesen $IsWidth=ImageSX($im); $IsHeight=ImageSY($im); //AspectRatio=Seitenverhältnis x/y einlesen $AspectRatio=$IsWidth/$IsHeight; // Verzerrung anpassen. Damit Bilder nicht gestaucht werden. if($IsWidth<=$IsHeight) { if ($Width!="") {$ShowHeight=$Width;} else {$ShowHeight=$IsWidth;} $ShowWidth=$ShowHeight*$AspectRatio; } else { if ($Width!="") {$ShowWidth=$Width;} else {$ShowWidth=$IsWidth;} $ShowHeight=$ShowWidth/$AspectRatio; } echo "\"".basename($dirarray[$filenum])."\"\n"; echo "\n\n\n"; } //-- Exif Infos /* echo "Reading :".$path."/".$dirarray[$filenum]; $exif = read_exif_data ($path."/".$dirarray[$filenum]); while(list($k,$v)=each($exif)) { echo "$k: $v
\n"; } */ echo "\n\n\n"; exit(); } //-------------------------------------------------------------------------- // Start der Photoalbums ?>
Photoalbum\n"; $dirparts=explode($PS,substr($path,strlen($Photoroot))); for($i=1;$i$dirparts[$i]\n"; if((count($dirarray)-$dircount)>1) echo "(".(count($dirarray)-$dircount)." Bilder) "; if($dircount>1) echo "($dircount Verzeichnisse)"; echo "
\n\n"; // Titelzeile ende // Beim ersten mal werden null Bilder übersprungen if(!isset($skip)) $skip=0; // Entscheidung: Liste mit Details oder thumbnails? // Wenns über die haelfte Verzeichnisse sind, dann Liste if($dircount>count($dirarray)/2) { //--------------------------------------------------------------------------------- // Liste mit Details aufbauen //---------------------------------------------------------------------- echo "\n\n"; echo "\n"; echo "\n"; for($i=0;$i\n"; echo "\n"; } else { continue; } } else //No Directory { if (stristr($dirarray[$i],".avi")) //AVI movie { echo "\n"; echo "\n"; } elseif (stristr($dirarray[$i],".mp3")) //MP3 song { echo "\n"; echo "\n"; } else //JPG image { echo "\n"; echo "\n"; } } echo ""; echo "\n"; } echo "
Name \n"; echo "\n\"Nach\n"; echo "\n\"NachDatum \n"; echo "\n\"Nach\n"; echo "\n\"Nach
\n"; echo "\"$dirarray[$i]\" $dirarray[$i]
\n"; echo "\"".substr($dirarray[$i],0,-4)."\" ".substr($dirarray[$i],0,-4)."
\n"; echo "\"".substr($dirarray[$i],0,-4)."\" ".substr($dirarray[$i],0,-4)."
\n"; echo "\"".substr($dirarray[$i],0,-4)."\" ".substr($dirarray[$i],0,-4)." ".strftime("%d. %B %Y %H:%M:%S",filectime($fullpath))."
"; } else { //--------------------------------------------------------------------------------- // Seite mit X*Y Thumbs aufbauen //--------------------------------------------------------------------- // Navigationsleiste einblenden // if (($numrows*$numcols)
"); if ($skip>=($numcols*$numrows)) { echo("Vorherige Seite"); } echo(" \nName "); echo("\n\"Nach\n"); echo("\n\"Nach\n"); echo("Datum \n\"Nach\n"); echo("\n\"Nach\n"); if ($skip+($numcols*$numrows)>count($dirarray)) echo(" Bilder $skip - ".count($dirarray).""); else echo(" Bilder $skip - ".($skip+($numcols*$numrows)).""); if ($skip+($numcols*$numrows)Nächste Seite"); } echo ("
\n"); // } //navileiste ende //Einfügen des Inhaltes einer info.txt-Datei sofern sie in dem Verzeichnis existiert $description = $path.$PS.$descfile; echo "

"; if(file_exists($description)) { $descriptionarray = file($description); for($x=0;$x"; } } echo "

"; // ($numcols*$numrows) Teile aus dem Array ausgeben echo "\n\n"; for($i=$skip;$i<($skip+($numcols*$numrows));$i++) { if($i\n"; echo "\"$dirarray[$i]\"
$dirarray[$i]
\n"; } } else { if (stristr($dirarray[$i],".avi")) //AVI movie { echo "
\n"; } elseif (stristr($dirarray[$i],".mp3")) //MP3 song { echo "\n"; } else //JPG image { echo "\n"; } } } else // Die leeren Felder mit leeren zellen füllen. { echo "\n"; } // Wrap at $numcols if(!(($i+1)%$numcols)) echo "\n\n\n"; } echo "
\n"; echo "\"".substr($dirarray[$i],0,-4)."\"
".substr($dirarray[$i],0,-4)."
\n"; echo "\"".substr($dirarray[$i],0,-4)."\"
".substr($dirarray[$i],0,-4)."
\n"; echo "\"".substr($dirarray[$i],0,-4)."\"
".substr($dirarray[$i],0,-4)."
"; } } ?>