#!/bin/bash

# Customize the prompt

USE_PROMPT=powerline-go

case "$USE_PROMPT" in

"starship")
	if (command -v starship &>/dev/null); then
		# echo "Using $USE_PROMPT prompt"
		eval "$(starship init bash)"
	else
		echo "$USE_PROMPT command not found"
	fi
	;;

"powerline-go")
	if (command -v powerline-go &>/dev/null); then
		# echo "Using $USE_PROMPT prompt"
		function _update_ps1() {
			PS1=$(powerline-go -jobs "$(jobs -p | wc -l)" -error $? -modules "ssh,host,wsl,user,cwd,direnv,venv,perms,git,jobs,exit,root" -modules-right "docker,docker-context,kube,terraform-workspace,termtitle" -newline)
		}
		if [ "$TERM" != "linux" ]; then _prompt_command_add "_update_ps1"; fi
	else
		echo "$USE_PROMPT command not found"
	fi
	;;

*)
	# Default simple prompt
	if [ "$UID" -eq 0 ]; then
		export PS1='\[\e[01;31m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
	else
		export PS1='\[\e[01;32m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
	fi
	;;

esac

# Limit the path to 3 levels
PROMPT_DIRTRIM=3

# Add a smiley at end of prompt showing last command status code
#smiley() {
#    ret_val=$?
#    if [ "$ret_val" = "0" ]
#    then
#        echo -e "\e[01;32m:)\e[0m"
#    else
#        echo -e "\e[01;31m:(\e[0m"
#    fi
#}
#export PS1='\[\e[01;32m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '"\$(smiley) "