You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.4 KiB
Bash

#!/bin/sh
. /lib/functions.sh
. /usr/lib/configsync_lib.sh
CS_SERVICE=csstation_quota
SERVICE=station_quota
PSERVICE=${CS_PREFIX}${SERVICE}
my_logger() {
logger -t configsync_executor "${CS_SERVICE}" "${@}"
}
configsync_to_system()
{
# make working copy and get values from there step by step
uci_cs export $CS_SERVICE | uci_tmp import $CS_SERVICE
my_logger "This is ${0} configsync_to_system()!"
VALUE=$(uci_tmp get ${CS_SERVICE}.global.logging)
uci_tmp set ${PSERVICE}.@global[0].logging="${VALUE}"
VALUE=$(uci_tmp get ${CS_SERVICE}.global.enabled)
uci_tmp set ${PSERVICE}.@global[0].enabled="${VALUE}"
delete_sections_tmp ${PSERVICE} entry
local option synced_options='station daysofweek quota'
local I=0
while uci_tmp get ${CS_SERVICE}.@entry[${I}] > /dev/null 2>&1; do
local entry=$(uci_tmp add ${PSERVICE} entry)
for option in $synced_options; do
VALUE=$(uci_tmp get ${CS_SERVICE}.@entry[${I}].$option)
uci_tmp set ${PSERVICE}.$entry.$option="${VALUE}"
done
let I=I+1
done
add_to_list $CS_IMPORTSERVICELIST ${SERVICE}
}
dynamic_update()
{
my_logger "This is ${0} dynamic_update()!"
}
init()
{
my_logger "This is ${0} init()!"
}
if [ "${1}" = "init" ] || [ "${1}" = "configsync_to_system" ] || [ "${1}" = "dynamic_update" ]; then
"${@}"
else
my_logger "Unknown command ${1} in ${0}!"
fi