#!/bin/bash PSQL="psql --username=freecodecamp --dbname=salon -t --no-align -c" SELECT_SERVICE() { if [[ $1 ]]; then echo -e "\n$1" fi SERVICES=$($PSQL "SELECT * FROM services") echo "$SERVICES" | while IFS="|" read SERVICE_ID SERVICE_NAME; do echo "$SERVICE_ID) $SERVICE_NAME" done read SERVICE_ID_SELECTED if [[ ! $SERVICE_ID_SELECTED =~ ^[0-9]+$ ]]; then SELECT_SERVICE "Please use a valid number" fi SERVICE=$($PSQL "SELECT service_id, name FROM services WHERE service_id = $SERVICE_ID_SELECTED") echo $SERVICE SERVICE_ID=$(echo "$SERVICE" | cut -d '|' -f1) SERVICE_NAME=$(echo "$SERVICE" | cut -d '|' -f2) if [[ -z $SERVICE_ID ]]; then SELECT_SERVICE "This is not a valid service" fi } NEW_CUSTOMER() { echo -e "\nWhat's your name?" read CUSTOMER_NAME CUSTOMER_INSERT=$($PSQL "INSERT INTO CUSTOMERS(phone, name) VALUES('$1','$CUSTOMER_NAME')") CUSTOMER_ID=$($PSQL "SELECT customer_id FROM customers WHERE phone = '$CUSTOMER_PHONE'") } GET_CUSTOMER() { echo -e "\nWhat's your phone number?" read CUSTOMER_PHONE CUSTOMER_RESULT=$($PSQL "SELECT customer_id, name FROM customers WHERE phone = '$CUSTOMER_PHONE'") if [[ -z $CUSTOMER_RESULT ]]; then NEW_CUSTOMER $CUSTOMER_PHONE else echo $CUSTOMER_RESULT | IFS="|" read CUSTOMER_ID BAR CUSTOMER_NAME fi } SET_APPOINTMENT() { echo -e "\nAt what time would you like to schedule your appointment?" read SERVICE_TIME CREATE_APPOINTMENT=$($PSQL "INSERT INTO appointments(customer_id, service_id, time) VALUES($CUSTOMER_ID,$SERVICE_ID,'$SERVICE_TIME')") } echo -e "\n~~~~~ Kapsalon kanker lekker ~~~~~\n" SELECT_SERVICE GET_CUSTOMER SET_APPOINTMENT echo -e "\nI have put you down for a $SERVICE_NAME at $SERVICE_TIME, $CUSTOMER_NAME."