#!/usr/bin/env dash

# shellcheck source=/dev/null
SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH

# these are used in version()
# shellcheck disable=2034
AUTHORS="Soispha"
# shellcheck disable=2034
YEARS="2023"

# load dependencies
. ./sh/update.sh
. ./sh/download.sh

help() {
    cat <<EOF
This is a small wrapper around downloading things from spotify

USAGE:
    $NAME [OPTIONS] COMMAND

OPTIONS:
    --help      | -h
                            Display this help and exit.

    --version   | -v
                            Display version and copyright information and exit.
COMMANDS:
    update
                            Read the artist.conf file and download all newly released things

    download URL
                            Download a specific url to the DOWNLOAD_DIRECTORY
EOF
}

for arg in "$@"; do
    case "$arg" in
    "--help" | "-h")
        help
        exit 0
        ;;
    "--version" | "-v")
        version
        exit 0
        ;;
    esac
done

case "$1" in
"update")
    shift 1
    update
    exit 0
    ;;
"download")
    shift 1
    download_url="$1"
    [ -z "$download_url" ] && die "You need to provide a download url"
    download_to_down "$download_url"
    exit 0
    ;;
*)
    die "Command '$1' is not know"
    help
    exit 1
    ;;
esac

# vim: ft=sh