#!/usr/bin/perl 
#
# Dieses Script erzeugt rekursiv in jedem Verzeichnis eine Datei
# "index.html" mit Verweisen auf alle Bilddateien (.gif, .jpg)
#
# Hilfe durch Aufruf mit Parameter -h
#
# Set here the pattern extensions of your image files
@IMG = "*.gif *.jpg";

# Usage
if (($ARGV[0] ne "-r") && ($ARGV[0] ne "-s")) 
  {
  print "Usage: ls2html [-hrs]  
                -h this help
                -r recursive
                -s only in CWD\n";
    exit(0);
  } 

# index.html nur im aktuellen Verzeichnis erzeugen
if ($ARGV[0] eq "-s") 
  {
  &index();
  exit(0);
  }

# Rekursives Bearbeiten des Verzeichnissens
&recursive(); 

# Subroutine "index" erzeugt "index.html" im aktuellen Verzeichnis
sub index 
  {
  open(INDEX, ">index.html");
  $CWD=`pwd`;
  print INDEX "\<HTML\>\n\n\<HEAD\>\n\n\<TITLE\>\n\n List of $CWD"; 
  print INDEX "\n\</TITLE\>\n\n\</HEAD\>\n\n\<BODY\>\n\n";

  foreach $file (<@IMG>) 
    {
    print INDEX "\<IMG SRC=\"$file\" ALIGN=UP\> $file\<P\>\n" ;
    }

  print INDEX "\n\</BODY\>\n\n\</HTML\>\n";
  }

# Subroutine "recursive" bearbeitet rekursiv den Dateibaum und
# ruft in jedem Verzeichnis "index" auf. 
sub recursive 
  {
  &index();
  foreach $dir (<*>) 
    {
    if (-d $dir) 
      {
	chdir $dir;
	&recursive(); 
	chdir ".."; 
      }
    }
  }
