#!/bin/sh

# Generate directory listings in case the web server does
# not allow directory listings.
#
# First created: 2004-11-30
# Last changed: 2012-05-11

HEADER='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

  <head>
    <title>Anders Logg :: public file archive</title>
    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <base href="http://home.simula.no/~logg/"></base>
    <link rel="stylesheet" type="text/css" href="logg.css" />

    <!-- arXiv stuff -->
    <script type="text/javascript"><!--
      var arxiv_authorid="logg_a_1";
      var arxiv_bg_color="#ffffff";
      var arxiv_border_color="#ffffff";
    //--></script>
    <style type="text/css">
      div.arxivfeed {left:0; width:200px;}
    </style>
    <script type="text/javascript" src="http://arxiv.org/js/myarticles.js"></script>

  </head>

  <body bgcolor="#f1f1f1">

    <div id="page">

      <div id="banner">
        <a href=""><img src="graphics/banner.png"/></a>
      </div>

      <div id="header">
        <h1>Anders Logg :: public file archive</h1>
      </div>

      <div id="contents">
'

FOOTER='
      </div>

    </div>

  </body>

</html>
'

for f in `find pub`; do
    if [ -d $f ]; then
        echo Generating listing for $f
	echo $HEADER > $f/index.html
	echo "<h2>Directory listing for $f</h2>" >> $f/index.html
	echo "<p>" >> $f/index.html
	for g in `ls $f`; do
	    if [ -d $f/$g ]; then
		echo "Skipping directory"
	    else
		if [ $g != index.html ]; then
		    size=`ls -sh $f/$g | awk '{print $1}'`
		    echo "&nbsp <a href=\"$f/$g\">$g</a> ($size)<br/>" >> $f/index.html
		fi
	    fi
	done
	echo "</p><p>" >> $f/index.html
	for g in `ls $f`; do
	    if [ -d $f/$g ]; then
		echo "&nbsp <a href=\"$f/$g\">$g</a><br/>" >> $f/index.html
	    fi
	done
	echo "</p>" >> $f/index.html
	echo $FOOTER >> $f/index.html
    fi
done

