#!/bin/sh

if [ -e "/etc/config/ucitrack" ]; then
	uci -q batch <<-EOF
		delete ucitrack.@passwall_server[-1]
		add ucitrack passwall_server
		set ucitrack.@passwall_server[-1].init=passwall_server
		commit ucitrack
EOF
fi

# Migrate server sections from the old `user` section type. New user entries
# also use `user`, so only sections with a server `type` option are renamed.
for sid in $(uci -q show passwall_server | sed -n 's/^passwall_server\.\([^.=]*\)=user$/\1/p'); do
	if [ -n "$(uci -q get "passwall_server.${sid}.type")" ]; then
		uci -q set "passwall_server.${sid}=server"
	fi
done
for sid in $(uci -q show passwall_server | sed -n 's/^passwall_server\.\([^.=]*\)\.protocol=dokodemo-door$/\1/p'); do
	uci -q set "passwall_server.${sid}.protocol=tunnel"
done

uci -q commit passwall_server

rm -f /tmp/luci-indexcache /tmp/luci-indexcache.*
rm -rf /tmp/luci-modulecache/
killall -HUP rpcd 2>/dev/null

exit 0
