#!/bin/sh
##############################################
conf='/usr/local/etc/gwconf.conf'
##############################################
set -e

[ "$(id -u)" = 0 ] || exit 1

name="$(echo "${1}" | awk '/^[a-zA-Z_]+[a-zA-Z0-9_]*$/')" ; shift
value="${1}"; shift || true

[ -z "${name}" ] && exit 1
[ -e "${conf}" ] || touch "${conf}"

# remove empty lines
sed -i '/^\s*$/d' "${conf}"

# delete
if [ -z "${value}" ]; then
	sed -i "s|^${name}=.*$||" "${conf}"
	exit 0
fi

# update
if grep -q -- "^${name}=" "${conf}"; then
	sed -i "s|^${name}=.*$|${name}='${value}'|" "${conf}"
	exit 0
fi

# add
echo "${name}='${value}'" >> "${conf}"

