reduce redundant code into 2 functions

- much easier to read
- reduce places to change
- reusable if ever need to add more inputs
This commit is contained in:
Vlad Doster 2020-05-31 15:37:31 -05:00 committed by GitHub
parent 6b88d36033
commit 3cc8675993
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -34,6 +34,8 @@ else
fi fi
error() { clear; printf "ERROR:\\n%s\\n" "$1"; exit;} error() { clear; printf "ERROR:\\n%s\\n" "$1"; exit;}
input_box() { dialog --inputbox "$1" 10 60 3>&1 1>&2 2>&3 3>&1 }
password_box() { dialog --no-cancel --passwordbox "$1" 10 60 3>&1 1>&2 2>&3 3>&1 }
welcomemsg() { \ welcomemsg() { \
dialog --title "Welcome!" --msgbox "Welcome to Luke's Auto-Rice Bootstrapping Script!\\n\\nThis script will automatically install a fully-featured Linux desktop, which I use as my main machine.\\n\\n-Luke" 10 60 dialog --title "Welcome!" --msgbox "Welcome to Luke's Auto-Rice Bootstrapping Script!\\n\\nThis script will automatically install a fully-featured Linux desktop, which I use as my main machine.\\n\\n-Luke" 10 60
@ -47,16 +49,16 @@ selectdotfiles() { \
getuserandpass() { \ getuserandpass() { \
# Prompts user for new username an password. # Prompts user for new username an password.
name=$(dialog --inputbox "First, please enter a name for the user account." 10 60 3>&1 1>&2 2>&3 3>&1) || exit name=$(input_box "First, please enter a name for the user account.") || exit
while ! echo "$name" | grep "^[a-z_][a-z0-9_-]*$" >/dev/null 2>&1; do while ! echo "$name" | grep "^[a-z_][a-z0-9_-]*$" >/dev/null 2>&1; do
name=$(dialog --no-cancel --inputbox "Username not valid. Give a username beginning with a letter, with only lowercase letters, - or _." 10 60 3>&1 1>&2 2>&3 3>&1) name=$(input_box "Username not valid. Give a username beginning with a letter, with only lowercase letters, - or _.")
done done
pass1=$(dialog --no-cancel --passwordbox "Enter a password for that user." 10 60 3>&1 1>&2 2>&3 3>&1) pass1=$(password_box "Enter a password for that user.")
pass2=$(dialog --no-cancel --passwordbox "Retype password." 10 60 3>&1 1>&2 2>&3 3>&1) pass2=$(password_box "Retype password.")
while ! [ "$pass1" = "$pass2" ]; do while ! [ "$pass1" = "$pass2" ]; do
unset pass2 unset pass2
pass1=$(dialog --no-cancel --passwordbox "Passwords do not match.\\n\\nEnter password again." 10 60 3>&1 1>&2 2>&3 3>&1) pass1=$(password_box "Passwords do not match.\\n\\nEnter password again.")
pass2=$(dialog --no-cancel --passwordbox "Retype password." 10 60 3>&1 1>&2 2>&3 3>&1) pass2=$(password_box "Retype password.")
done ;} done ;}
usercheck() { \ usercheck() { \