]> git.donarmstrong.com Git - infobot.git/blob - scripts/htmlcalidx.sh
dunno
[infobot.git] / scripts / htmlcalidx.sh
1 #!/bin/bash
2
3 TODOM=${TODOM:-`date +%d`}
4 TOMONTH=${TOMONTH:-`date +%m`}
5 YEAR=${YEAR:-`date +%Y`}
6 MONTH=${MONTH:-1}
7 MONTHABV=([1]=Jan [2]=Feb [3]=Mar [4]=Apr  [5]=May  [6]=Jun \
8           [7]=Jul [8]=Aug [9]=Sep [10]=Oct [11]=Nov [12]=Dec)
9
10 echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'
11 echo '<html>'
12 echo '<head>'
13 echo "  <title>apt/ibot/infobot/purl logs for $YEAR</title>"
14 echo '  <link rel="shortcut icon" href="/favicon.ico">'
15 echo '</head>'
16 echo '<body>'
17
18 today=`date -d "yesterday" +%Y%m%d`
19 subdirs=`find \#* -maxdepth 0 -type d 2>/dev/null`
20 if [ -n "$subdirs" ] ; then
21   echo '<h1>Channels (l for latest)</h1>'
22   #echo "<table>"
23   echo '<p>'
24   for subdir in $subdirs ; do
25     if [ "$subdir" != "stats" ] ; then
26      subdirhtml=`echo \$subdir | sed -e 's/#/%23/'`;
27      latest=`(cd $subdir ; ls [0-9]* 2>/dev/null| tail -n 1 | sed -e 's/.html.gz//')`
28      if [ "$latest" = "$today" ] ; then
29        #echo "<tr><td><a href=\"$subdirhtml\">$subdir</a></td><td><a href=\"$subdirhtml/$latest.html.gz\">$latest</a></td></tr>"
30        echo "<a href=\"$subdirhtml\">$subdir</a>(<a href=\"$subdirhtml/$latest.html.gz\">l</a>)"
31      fi
32     fi
33   done
34   echo '</p>'
35   #echo "</table>"
36 fi
37 #if [ -n "$subdirs" ] ; then
38 #  echo "<h1>Channels</h1>"
39 #  echo "<ul>"
40 #  for subdir in $subdirs ; do
41 #    if [ "$subdir" != "stats" ] ; then
42 #     latest=`(cd $subdir ; ls [0-9]* | tail -n 1 | sed -e 's/.html.gz//')`
43 #     echo "<li><a href=\"$subdir\">$subdir</a> <a href=\"$subdir/$latest.html.gz\">$latest</a>"
44 #    fi
45 #  done
46 #  echo "</ul>"
47 #fi
48
49 echo "<h1>$YEAR</h1>"
50 echo '<table>'
51 echo '  <tbody>'
52 echo '    <tr>'
53
54 while [ $MONTH -le $TOMONTH ]; do
55
56   STARTDAY=`date -d "1 ${MONTHABV[$MONTH]} $YEAR" +%w`
57   case $MONTH in
58     2)
59       ENDDOM=28
60       ;;
61     9|4|6|11)
62       ENDDOM=30
63       ;;
64     *)
65       ENDDOM=31
66       ;;
67   esac
68
69   echo '      <td valign=top>'
70
71   echo '        <table border=1>'
72   echo '          <tbody>'
73   echo "            <tr><td align=center colspan=7>${MONTHABV[$MONTH]}</td></tr>"
74   echo '            <tr><td>Sun</td><td>Mon</td><td>Tue</td><td>Wed</td><td>Thu</td><td>Fri</td><td>Sat</td></tr>'
75
76   DOM=${DOM:-1}
77   DAY=0
78   INCDOM=no
79   SHOWDOM=no
80   until [ $DAY -eq 0 -a "$INCDOM" = "done" ]; do
81     if [ $DAY -eq 0 ]; then
82       echo -n "            <tr>"
83     fi
84
85     if [ "$INCDOM" = "no" -a $DAY -eq $STARTDAY ]; then
86       INCDOM=yes
87       SHOWDOM=yes
88     fi
89
90     echo -n "<td>"
91     if [ "$SHOWDOM" = "yes" ]; then
92         FILE=`date -d "$DOM ${MONTHABV[$MONTH]} $YEAR" +%Y%m%d`.html.gz
93         if [ -f "$FILE" ]; then
94             echo -n "<a href=\"$FILE\">"$DOM"</a>"
95           else
96             echo $DOM
97         fi
98       else
99         echo -n "&nbsp;"
100     fi
101     echo -n "</td>"
102
103     if [ "$INCDOM" = "yes" ]; then
104         if [ $DOM -eq $ENDDOM ]; then
105             INCDOM="done"
106             SHOWDOM=no
107           else
108             DOM=$(($DOM + 1))
109             if [ $MONTH -eq $TOMONTH -a $DOM -gt $TODOM ]; then
110               SHOWDOM=no
111             fi
112         fi
113     fi
114
115     DAY=$(($DAY + 1))
116     if [ $DAY -eq 7 ]; then
117       echo "</tr>"
118       DAY=0
119     fi
120   done
121   DOM=1
122
123   echo '          </tbody>'
124   echo '        </table>'
125
126   echo '      </td>'
127
128   if [ $MONTH -lt $TOMONTH ]; then
129     if [ $(($MONTH % 4)) -eq 0 ]; then
130       echo "    </tr>"
131       echo "    <tr>"
132     fi
133   fi
134
135   MONTH=$(($MONTH + 1))
136 done
137
138 echo '    </tr>'
139 echo '  </tbody>'
140 echo '</table>'
141
142 #echo '</body>'
143 #echo '</html>'