#!/bin/bash

	#////////////////////////////////////
	# DietPi Banner Script
	#
	#////////////////////////////////////
	# Created by Daniel Knight / daniel.knight@dietpi.com / dietpi.com
	#
	#////////////////////////////////////
	#
	# Info:
	# - filename /DietPi/dietpi/dietpi-banner
	# - Checks /DietPi/dietpi/.update_available
	#
	# Usage:
	# - dietpi-banner 0 = top section only
	# - dietpi-banner 1 = top section and credits + clear
	#////////////////////////////////////

	INPUT=0
	if [[ $1 =~ ^-?[0-9]+$ ]]; then
		INPUT=$1
	fi

	#Import DietPi-Globals ---------------------------------------------------------------
	. /DietPi/dietpi/func/dietpi-globals
	export G_PROGRAM_NAME='DietPi-Banner'
	#Import DietPi-Globals ---------------------------------------------------------------

	#/////////////////////////////////////////////////////////////////////////////////////
	#Globals
	#/////////////////////////////////////////////////////////////////////////////////////
	DIETPI_VERSION="$(sed -n 1p /DietPi/dietpi/.version).$(sed -n 2p /DietPi/dietpi/.version)"
	IMAGE_ADDITIONAL_CREDITS=$(sed -n 8p /DietPi/dietpi/.hw_model)

	IP_ADDRESS=$(sed -n 4p /DietPi/dietpi/.network)
	IP_ADAPTER=$(sed -n 3p /DietPi/dietpi/.network)
	Update_Ip_Address(){

		/DietPi/dietpi/func/obtain_network_details
		IP_ADDRESS=$(sed -n 4p /DietPi/dietpi/.network)
		IP_ADAPTER=$(sed -n 3p /DietPi/dietpi/.network)

	}

	UPDATE_AVAILABLE=0
	UPDATE_AVAILABLE_VERSION='' #-1 = image required, other value=latest version

	Obtain_Update_Available(){

		#Update Available
		if [ -f /DietPi/dietpi/.update_available ]; then

			UPDATE_AVAILABLE=1
			UPDATE_AVAILABLE_VERSION=$(cat /DietPi/dietpi/.update_available)

		fi

	}

	Hardware_Model_Print(){

		echo -e " \e[39;49;1mv$DIETPI_VERSION\e[0m       \e[90m| $G_HW_MODEL_DESCRIPTION\e[0m\n \e[38;5;154m───────────────────────────────────────\e[0m"

	}

	IPAddress_Print(){

		#Try to re-obtain IP if missing
		if [ ! -n "$IP_ADDRESS" ]; then

			Update_Ip_Address

		fi

		echo -e " \e[39;49;1mIP $IP_ADAPTER\e[0m    \e[90m| $IP_ADDRESS\e[0m\n \e[38;5;154m───────────────────────────────────────\e[0m"

	}

	#/////////////////////////////////////////////////////////////////////////////////////
	#Top section additional Text. Update available / MOTD etc
	#/////////////////////////////////////////////////////////////////////////////////////
	TEXT_TOP=''

	#/////////////////////////////////////////////////////////////////////////////////////
	# Banner Print
	#/////////////////////////////////////////////////////////////////////////////////////
	Banner_TopText_Extras(){

		#Update Available
		if (( $UPDATE_AVAILABLE )); then

			if [ "$UPDATE_AVAILABLE_VERSION" = '-1' ]; then

				TEXT_TOP="\e[90m|\e[0m \e[91m\e[33;49;1mImage available\e[0m"

			else

				TEXT_TOP="\e[90m|\e[0m \e[91m\e[33;49;1mUpdate available\e[0m"

			fi

		#Use TEXT_TOP for storing helpful info
		else

			#Helpful mode
			TEXT_TOP="\e[90m| $(date +"%R | %a %x")\e[0m"

		fi
	}

	Banner_Dietpi(){

		if (( $INPUT == 1 )); then

			clear

		fi

		echo -e " \e[38;5;154m───────────────────────────────────────\e[0m\n \e[39;49;1mDietPi    \e[0m $TEXT_TOP \n \e[38;5;154m───────────────────────────────────────\e[0m"
		Hardware_Model_Print
		IPAddress_Print
	}

	Credits_Print(){

		echo -e ''
		echo -e "\e[90m Created by : Daniel Knight\e[0m"
		echo -e "\e[90m Web        : http://DietPi.com\e[0m"
		echo -e "\e[90m Twitter    : http://twitter.com/dietpi_\e[0m"
		echo -e "\e[90m Donate     : http://goo.gl/pzISt9 \e[0m"

		if [ -n "$IMAGE_ADDITIONAL_CREDITS" ]; then

			echo -e ''
			echo -e "\e[90m Device image possible thanks to: $IMAGE_ADDITIONAL_CREDITS\e[0m"

		fi

		echo -e "\e[90m DietPi's web hosting is powered by: MyVirtualServer.com\e[0m"
		echo -e ''
		echo -e "\e[1m dietpi-launcher\e[0m  = All the DietPi programs in one place."
		echo -e "\e[1m dietpi-config\e[0m    = Feature rich configuration tool for your device."
		echo -e "\e[1m dietpi-software\e[0m  = Select optimized software for installation."

		#Update available?
		if (( $UPDATE_AVAILABLE )); then

			if [ "$UPDATE_AVAILABLE_VERSION" = '-1' ]; then

				echo -e "\n\e[91m An updated DietPi image is available, please goto:\e[0m\n http://dietpi.com/download\n"

			else

				echo -e "\e[1m dietpi-update\e[0m    = \e[91mRun now to update DietPi (from v$DIETPI_VERSION to v$UPDATE_AVAILABLE_VERSION).\e[0m"

			fi

		fi

		echo -e "\e[1m htop\e[0m             = Resource monitor."
		echo -e "\e[1m cpu\e[0m              = Shows CPU information and stats."
		echo -e ''

	}

	#/////////////////////////////////////////////////////////////////////////////////////
	# Main Loop
	#/////////////////////////////////////////////////////////////////////////////////////
	if (( $INPUT == 0 )); then

		Obtain_Update_Available
		Banner_TopText_Extras
		Banner_Dietpi

	elif (( $INPUT == 1 )); then

		Obtain_Update_Available
		Banner_TopText_Extras
		Banner_Dietpi
		Credits_Print

	fi

	#-----------------------------------------------------------------------------------
	exit 0
	#-----------------------------------------------------------------------------------