# plik receptury: func_choose

# Użytkownik może zdecydować o wyborze określonej opcji. W zależności
# od odpowiedzi użytkownika skrypt wykonuje określony kod
# Wywołanie: 
# choose <domyślna odp. (t lub n)> <monit> <działanie dla 'tak'> <działanie dla 'nie'>
# np. choose "t" \
#       "Czy chcesz zagrać w grę?" \
#       /usr/games/GlobalnaWojnaTermojądrowa \
#       'printf "%b" "Do zobaczenia profesorze Falkin.\n"' >&2
# Zwracany wynik: brak
function choose {

    local default="$1"
    local prompt="$2"
    local choice_yes="$3"
    local choice_no="$4"
    local answer

    read -p "$prompt" answer
    [ -z "$answer" ] && answer="$default"

    case "$answer" in
        [tT1] ) eval "$choice_yes"
            # error check
            ;;
        [nN0] ) eval "$choice_no"
            # error check
            ;;
        *     ) printf "%b" "Niespodziewana odpowiedź '$answer'!"  >&2 ;;
    esac
} # koniec funkcji choose
