#!/usr/bin/env bash
#
# root.nix.dk
# polybar check-network script
#

broken=""
state0=""
state1=""
state2=""
state3=""
wlan=""
lan=""

lanip() {
    echo $(ip a show $1 | grep 'inet ' | head -n 4 | awk '{print $2}' | cut -d'/' -f1)
}

network_down() {
    echo ${lan} ${broken}; sleep 0.5
    echo ${lan} ${state1}; sleep 0.5
    echo ${lan} ${state2}; sleep 0.5
    echo ${lan} ${state3}; sleep 0.5
    echo ${lan} ${state0}; sleep 0.5
}

nic=$(ip a | grep ' state UP' | cut -d' ' -f2 | cut -d':' -f1)
if [[ ${nic} != "" ]]; then
    if [[ ${nic} == e* ]]; then
        echo ${lan} $(lanip ${nic})
    else
        echo ${wlan} $(lanip ${nic})
    fi
else
    network_down
fi
