From aa014d9c128cbc95ca5d6c0522cd3704629a1f11 Mon Sep 17 00:00:00 2001 From: Louie S Date: Fri, 21 Jun 2024 16:21:34 -0400 Subject: Modularize get_title --- src/index-pages.sh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100755 src/index-pages.sh (limited to 'src/index-pages.sh') diff --git a/src/index-pages.sh b/src/index-pages.sh new file mode 100755 index 0000000..53c35ee --- /dev/null +++ b/src/index-pages.sh @@ -0,0 +1,54 @@ +#!/usr/bin/env sh + +# shellcheck source=../../../scripts/create_table.sh +. "$(dirname "$0")"/../../../scripts/create_table.sh +# shellcheck source=../../../scripts/get_title.sh +. "$(dirname "$0")"/../../../scripts/get_title.sh +# shellcheck source=../../../scripts/insert.sh +. "$(dirname "$0")"/../../../scripts/insert.sh + +DB_PATH="$1" +shift + +get_type() { + PAGE_NAME="$1" + + case "$PAGE_NAME" in + option-*) + echo "Option" + ;; + *) + echo "Guide" + esac +} + +insert_pages() { + # Get title and insert into table for each html file + while [ -n "$1" ]; do + unset PAGE_NAME + unset PAGE_TYPE + PAGE_NAME="$(get_title "$1" | sed 's/ (Lexical Analysis With Flex.*)//')" + + # determine type + case "$PAGE_NAME" in + option-*) + PAGE_TYPE="Option" + PAGE_NAME="$(echo "$PAGE_NAME" | sed 's/^option-//')" + ;; + unnamed-* | deleteme* | ERASEME*) + shift + continue + ;; + *) + PAGE_TYPE="Guide" + esac + + if [ -n "$PAGE_NAME" ]; then + insert "$DB_PATH" "$PAGE_NAME" "$PAGE_TYPE" "$(basename "$1")" + fi + shift + done +} + +create_table "$DB_PATH" +insert_pages "$@" -- cgit