#!/usr/bin/env bash
cReset="[0m"
cBold="[1m"
colorGreen=2
colorRed=1
colorYellow=3
cGreen="[0;3${colorGreen}m"${cBold}
cRed="[1;3${colorRed}m"${cBold}
cYellow="[1;3${colorYellow}m"${cBold}

echo -en "pyproject.toml ${cGreen}"
grep version pyproject.toml
echo -en "${cReset}__init__.py ${cRed}"
grep '^version_info ' pyradio/__init__.py
echo -en "${cReset}install.py ${cYellow}"
grep '^PyRadioInstallPyReleaseVersion '  pyradio/install.py
echo
echo

echo -ne "Reading version from ${cYellow}pyradio/__init__.py${cReset} ... "
a_tag=$(sed -n '/^version_info/p' pyradio/__init__.py 2>/dev/null | sed -e 's/.*(//' -e 's/)//' -e 's/, /./g')
[ -z "$a_tag" ] && {
echo -e "${cRed}failed${cReset}

To execute this script, go to the topmost directory
of the repository and type
    ${cGreen}files/what_tag${cReset}
"
exit 1
}

a_state=$(sed -n '/^app_state/p' pyradio/__init__.py 2>/dev/null | sed -e 's/.*= //' -e "s/'//g")

if [ -z "$a_state" ];then
    final_version="$a_tag"
else
    final_version="$a_tag"-"$a_state"
fi

echo -e "${cGreen}done${cReset}
Current version: ${cGreen}$final_version${cReset}

To create a local tag for this version, type:
    ${cGreen}git tag $final_version${cReset}
When ready to push, type
    ${cGreen}git push origin master${cReset}
    ${cGreen}git push origin --tags${cReset}

To delete a this tag, type
    (local)    ${cRed}git tag --delete $final_version${cReset}
    (remote)   ${cRed}git push --delete origin $final_version${cReset}

To update ${cYellow}coderholic${cReset}, type:
    ${cGreen}git push upstream master${cReset}

Finally, got to ${cRed}~/projects/my-gits/aur/pyragio-git${cReset}
and execute ${cRed}./add-pkgver${cReset} to get AUR package
ready for update.
"

echo "Running ${cGreen}./devel/get_shortcuts_and_classes.py${cReset}"
python ./devel/get_shortcuts_and_classes.py

chk=$(LANG=en_US.UTF-8 git st | grep modified)
if [ ! -z "${chk}" ]
then
    echo "Not commited files:"
    echo "${cRed}${chk}${cReset}"
    echo "Please commit them and try again"
    exit 1
fi

