#!/bin/sh
red="\033[31m"
orange="\033[33m"
cyan="\033[36m"
green="\033[32m"
white="\033[37m"
reset="\033[0m"
for battery in /sys/class/power_supply/BAT?*; do
	pidof -x sbd-battery >/dev/null 2>&1 || sbd-battery "$battery" >/dev/null 2>&1 &
	[ -n "${capacity+x}" ] && printf " "
	capacity="$(cat "$battery/capacity" 2>&1)"
	case "$(cat "$battery/status" 2>&1)" in
	"Full")
		icon=""
		color="$green"
		;;
	"Charging")
		icon=""
		color="$cyan"
		;;
	"Not charging")
		icon=""
		color="$white"
		;;
	"Unknown")
		icon=""
		color="$orange"
		;;
	"Discharging")
		if [ "$capacity" -le 10 ]; then
			icon=""
			color="$red"
		elif [ "$capacity" -le 20 ]; then
			icon=""
			color="$red"
		elif [ "$capacity" -le 30 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 40 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 50 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 60 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 70 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 80 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 90 ]; then
			icon=""
			color="$white"
		elif [ "$capacity" -le 95 ]; then
			icon=""
			color="$white"
		else
			icon=""
			color="$white"
		fi

		;;
	*) exit 1 ;;
	esac
	printf "$color%s$reset %d" "$icon" "$capacity"
done && printf "\\n"