diff --git a/01-utils.sh b/01-utils.sh index 3492858..30f6f6a 100644 --- a/01-utils.sh +++ b/01-utils.sh @@ -49,7 +49,7 @@ set_version() { case "$ID" in centos) [ -n "$VERSION_ID" ] && [ "$VERSION_ID" -eq 9 ] && - ID="fedora" ;; + ID="fedora" ;; *suse*|sles|sled) ID="suse" ;; debian|ubuntu) ID="debian" ;; fedora|rhel) ID="fedora" ;; @@ -72,13 +72,6 @@ set_version() { esac } -term_prompt() { - MODE="$1" PROMPT="$2" - [ "$MODE" = "info" ] && printf '\n\033[1m\033[34m=== %s ===\033[0m\n%s ENTER' "$TITLE" "$PROMPT" - [ "$MODE" = "entry" ] && printf '\n\033[1m\033[34m=== %s ===\033[0m\n%s\n -> ' "$TITLE" "$PROMPT" - [ "$MODE" = "error" ] && printf '\n\033[1m\033[31m=== %s ===\033[0m\n%s\n' "$TITLE" "$PROMPT" -} - firmador_libre() { FIRMADOR="https://firmador.libre.cr/firmador.jar" DIR="$HOME/.local/share/firmador" @@ -91,7 +84,47 @@ firmador_libre() { set_menu() { if [ -z "$MENU" ] ; then - command -v zenity > /dev/null && MENU="zenity" && return 0 - command -v kdialog > /dev/null && MENU="kdialog" && return 0 + command -v zenity > /dev/null && MENU="zenity" && return 0 + command -v kdialog > /dev/null && MENU="kdialog" && return 0 fi } + +menu() { +MODE="$1" PROMPT="$2" + +if [ "$MENU" = "zenity" ] ; then + echo_debug "MENU: $MENU MODE: $MODE PROMPT: $PROMPT" > /dev/stderr # DEBUG + + [ "$MODE" = "info" ] && + zenity --title "$TITLE" --text "$PROMPT" --info + + [ "$MODE" = "error" ] && + zenity --title "$TITLE" --text "$PROMPT" --error > /dev/stderr + + [ "$MODE" = "entry" ] && + zenity --title "$TITLE" --text "$PROMPT" --entry + + [ "$MODE" = "pass" ] && + zenity --title "$TITLE" --password + +elif [ "$MENU" = "term" ] ; then + [ "$MODE" = "info" ] && + printf '\n\033[1m\033[34m=== %s ===\033[0m\n%s ENTER' "$TITLE" "$PROMPT" >/dev/stdin && + read -r nil + + [ "$MODE" = "error" ] && + printf '\n\033[1m\033[31m=== %s ===\033[0m\n%s\n' "$TITLE" "$PROMPT" >/dev/stderr + + [ "$MODE" = "entry" ] && + printf '\n\033[1m\033[34m=== %s ===\033[0m\n%s\n -> ' "$TITLE" "$PROMPT" >/dev/stdin && + IFS= read -r entry && + printf '%s' "$entry" + + [ "$MODE" = "pass" ] && + printf '\n\033[1m\033[34m=== %s ===\033[0m\n%s\n -> ' "$TITLE" "$PROMPT" >/dev/stdin && + IFS= read -r passwd && + printf '%s' "$passwd" + +fi + +}