You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.8 KiB
63 lines
1.8 KiB
#!/usr/bin/env sh
|
|
|
|
#Config
|
|
## Starting balance
|
|
bal="43.00"
|
|
## SSH Config
|
|
ssh_user="theissenm"
|
|
ssh_host="knd-db01.kniod.corp"
|
|
|
|
|
|
|
|
# Functions
|
|
new_account() {
|
|
read -p "Enter the name of your account: " user1
|
|
echo ""
|
|
echo "Your account name will be $user1."
|
|
echo ""
|
|
read -n1 -p "Is that correct? [y/N] " yn
|
|
|
|
case $yn in
|
|
|
|
# If user selects yes. Insert their username and a timestamp into the database.
|
|
[Yy] ) ssh $ssh_user@$ssh_host "psql -U ddbank -d ddbank -c \"insert into account (username,timestamp) values ('$user1','now');\"" &>/dev/null || echo "Username already taken.";
|
|
|
|
# Sets the user's id as the variable.
|
|
user1_id=$(ssh $ssh_user@$ssh_host "psql -U ddbank -d ddbank -c \"select id from account where username='$user1';\"" | awk 'FNR == 3 {print}')
|
|
|
|
# Gives the user the starting balance.
|
|
ssh $ssh_user@$ssh_host "psql -U ddbank -d ddbank -c \"insert into balance (id,balance) values ('$user1_id',$bal);\"" &>/dev/null
|
|
|
|
# Pulls the user's account and ID for awk'ing
|
|
user_account=$(ssh $ssh_user@$ssh_host "psql -U ddbank -d ddbank -c \"select id,username from account;\"" | grep $user1_id)
|
|
echo ""
|
|
acc_id=$(echo "$user_account" | awk -F\| '{print $1}')
|
|
acc_name=$(echo "$user_account" | awk -F\| '{print $2}')
|
|
echo "Account name: $acc_name"
|
|
echo "Account ID: $acc_id"
|
|
;;
|
|
|
|
|
|
# If the user selects anything other than [Yy]
|
|
* ) echo "Aborted"
|
|
;;
|
|
|
|
esac
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Menu
|
|
echo "1) Create new user account."
|
|
echo "2) List user accounts."
|
|
echo "3) List user(s) balance."
|
|
echo " "
|
|
read -p "Select from the menu above: " i
|
|
if [ $i == 1 ]; then {
|
|
new_account
|
|
} else {
|
|
echo "Some other thing..."
|
|
} fi
|