diff options
author | Louie S <louie@example.com> | 2024-06-21 16:21:34 -0400 |
---|---|---|
committer | Louie S <louie@example.com> | 2024-06-21 16:21:34 -0400 |
commit | aa014d9c128cbc95ca5d6c0522cd3704629a1f11 (patch) | |
tree | 2b07c921a08fd9045bfb01a4efec9c735942ef13 /src/index-pages.sh | |
parent | 27fe42030ff1fbf39820ea5673f19f822957096f (diff) |
Modularize get_title
Diffstat (limited to 'src/index-pages.sh')
-rwxr-xr-x | src/index-pages.sh | 54 |
1 files changed, 54 insertions, 0 deletions
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 "$@" |