|
|
@ -201,13 +201,37 @@ if ! [ "$SKIP_META" ]; then |
|
|
|
done |
|
|
|
done |
|
|
|
fi |
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
# Prepare index file list |
|
|
|
# For every file named "index.html", prepare index file list |
|
|
|
if ! [ "$SKIP_LIST" ]; then |
|
|
|
if ! [ "$SKIP_LIST" ]; then |
|
|
|
|
|
|
|
lobjlist=$(mktemp) |
|
|
|
|
|
|
|
lobjdate=$(mktemp) |
|
|
|
|
|
|
|
llinklist=$(mktemp) |
|
|
|
|
|
|
|
for indexf in $(find "$destdir" -type f -iname "index.html"); do |
|
|
|
|
|
|
|
outdir=$(echo $(dirname "$indexf") | sed "s/$destdir//g") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Generate an ordered (by open time) list of files in the subdirectory by filtering the global list |
|
|
|
|
|
|
|
grep "$outdir" "$objlist" > "$lobjlist" |
|
|
|
|
|
|
|
sed -e "s,^\/*[^\/]*\/,$destdir/," "$lobjlist" > "$tmpsed" |
|
|
|
|
|
|
|
rm -f "$lobjdate" |
|
|
|
|
|
|
|
while IFS="" read -r file; do |
|
|
|
|
|
|
|
stat -c '%y' "$file" >> "$lobjdate" |
|
|
|
|
|
|
|
done < "$lobjlist" |
|
|
|
|
|
|
|
mv "$tmpsed" "$lobjlist" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
grep "$outdir" "$linklist" > "$llinklist" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Modify "Pages" header to show the current section |
|
|
|
|
|
|
|
if [ "$indexf" = "$destdir/index.html" ]; then |
|
|
|
|
|
|
|
llinksec=$linksec |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
llinksec="$linksec in $title" |
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
tmpfile="$(mktemp)" |
|
|
|
tmpfile="$(mktemp)" |
|
|
|
rm -f "$tmpfile" |
|
|
|
rm -f "$tmpfile" |
|
|
|
cat << EOF >> "$tmpfile" |
|
|
|
cat << EOF >> "$tmpfile" |
|
|
|
<div id="map"> |
|
|
|
<div id="map"> |
|
|
|
<h2 id="Pages">$linksec</h2> |
|
|
|
<h2 id="Pages">$llinksec</h2> |
|
|
|
EOF |
|
|
|
EOF |
|
|
|
count='0' |
|
|
|
count='0' |
|
|
|
while IFS="" read -r line; do |
|
|
|
while IFS="" read -r line; do |
|
|
@ -215,22 +239,23 @@ EOF |
|
|
|
if echo "$line" | grep -q 'index\.html'; then |
|
|
|
if echo "$line" | grep -q 'index\.html'; then |
|
|
|
continue |
|
|
|
continue |
|
|
|
fi |
|
|
|
fi |
|
|
|
tfile="$(awk "NR==$count" "$objlist")" |
|
|
|
tfile="$(awk "NR==$count" "$lobjlist")" |
|
|
|
title="$(sed -E -n 's/.*<title>\s*(.+)\s*<\/title>.*/\1/p' "$tfile")" |
|
|
|
title="$(sed -E -n 's/.*<title>\s*(.+)\s*<\/title>.*/\1/p' "$tfile")" |
|
|
|
if [ -z "$title" ]; then |
|
|
|
if [ -z "$title" ]; then |
|
|
|
title="${tfile##*/}" |
|
|
|
title="${tfile##*/}" |
|
|
|
fi |
|
|
|
fi |
|
|
|
ldate="$(awk "NR==$count" "$objdate" | sed 's/\s.*$//')" |
|
|
|
ldate="$(awk "NR==$count" "$lobjdate" | sed 's/\s.*$//')" |
|
|
|
printf "<p><a href=\"%s\">%s - %s</a></p>\n" "$line" "$ldate" "$title" >> "$tmpfile" |
|
|
|
printf "<p><a href=\"%s\">%s - %s</a></p>\n" "$line" "$ldate" "$title" >> "$tmpfile" |
|
|
|
done < "$linklist" |
|
|
|
done < "$llinklist" |
|
|
|
echo '</div>' >> "$tmpfile" |
|
|
|
echo '</div>' >> "$tmpfile" |
|
|
|
sed '/<\/body>/i REPLACE' "$destdir"/index.html > "$tmpsed" |
|
|
|
sed '/<\/body>/i REPLACE' $indexf > "$tmpsed" |
|
|
|
mv "$tmpsed" "$destdir"/index.html |
|
|
|
mv "$tmpsed" $indexf |
|
|
|
sed "/^REPLACE/r $tmpfile" "$destdir"/index.html > "$tmpsed" |
|
|
|
sed "/^REPLACE/r $tmpfile" $indexf > "$tmpsed" |
|
|
|
mv "$tmpsed" "$destdir"/index.html |
|
|
|
mv "$tmpsed" $indexf |
|
|
|
sed 's/^REPLACE//' "$destdir"/index.html > "$tmpsed" |
|
|
|
sed 's/^REPLACE//' $indexf > "$tmpsed" |
|
|
|
mv "$tmpsed" "$destdir"/index.html |
|
|
|
mv "$tmpsed" $indexf |
|
|
|
rm -f "$tmpfile" |
|
|
|
rm -f "$tmpfile" |
|
|
|
|
|
|
|
done; |
|
|
|
fi |
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
# enclose article inside <article></article> |
|
|
|
# enclose article inside <article></article> |
|
|
@ -240,7 +265,7 @@ while IFS="" read -r file; do |
|
|
|
mv "$tmpsed" "$file" |
|
|
|
mv "$tmpsed" "$file" |
|
|
|
done |
|
|
|
done |
|
|
|
|
|
|
|
|
|
|
|
# Prepate the header |
|
|
|
# Prepare the header |
|
|
|
if ! [ "$SKIP_HEADER" ]; then |
|
|
|
if ! [ "$SKIP_HEADER" ]; then |
|
|
|
tmphead="$(mktemp)" |
|
|
|
tmphead="$(mktemp)" |
|
|
|
cp "$headerfile" "$tmphead" |
|
|
|
cp "$headerfile" "$tmphead" |
|
|
|