#!/usr/bin/env bash
cp html_resources/index_template.html index.html

function genlinks {
  for FILE in $(find . -maxdepth 1 -type f -name "??-*.html" | sort); do
    echo "$FILE" >&2
    echo -ne "  <li><a href=\"$FILE\">\n"
    echo -n "    $(sed -e 's|^\./||;s/-.*//' <<< "$FILE") <span class="'"chapter">'
    grep -oe "<title>.*</title>" $FILE | sed -e 's/<title> //;s| </title>|</span>|'
    echo "  </a></li>"
  done
}

sed -ne '/  <!-- chapter_list_here -->/q;p' html_resources/index_template.html > index.html
# for some fucking reason, there is no way to tell wc to only print the number so we do cat abuse to get rid of the filename
LINE_NUMBER=$(("$(cat index.html | wc -l)"+2))
genlinks >> index.html
tail -n+$LINE_NUMBER html_resources/index_template.html >> index.html