#!/bin/sh . /usr/share/shlib.sh version webif package export DATE="$(version_get_releasedate '$LastChangedDate: 2008-03-15 21:46:54 +0100 (Sat, 15 Mar 2008) $')";SCRIPT=${0#/rom} export TITLE="Verwaltung: Auto-Update" . ${SCRIPT%/*}/cgi-bin-pre.sh # read query string webif_parse_urlquery 'q_' # # headline # cat <Verwaltung: Auto-Updates
EOF # # form data received... # if [ -n "$q_submit" ]; then # enable autoupdate? if [ "$q_ua_enable" = 1 ]; then i=1; update_packages="" # get selected packages while [ $i -le "$q_pkg_count" ]; do eval "pkg_name=\$q_pkg_${i}_name;pkg_update=\$q_pkg_${i}_update" test "$pkg_update" = 1 && \ update_packages="${update_packages:+$update_packages;}$pkg_name" let i=i+1 done # mark as enabled nvram set ff_updateagent_enable=1 # store selected packages for updatecheck nvram set ff_updatecheck="$update_packages" # set autoreboot flag if [ "$q_ua_autoreboot" = 1 ]; then nvram set ff_updateagent_autoreboot=1 else nvram unset ff_updateagent_autoreboot fi # restart /etc/init.d/S80updateagent restart >&- 2>&- # ... is disabled else # mark as disabled nvram unset ff_updateagent_enable # stop /etc/init.d/S80updateagent stop >&- 2>&- fi # commit nvram commit >&- 2>&- cat < Die Einstellungen wurden übernommen und sind sofort aktiv.
EOT # # show update protocol # elif [ -n "$q_log" ]; then echo -n "

Das Update-Protokoll der letzten Tage:

"

	if [ -s /etc/update-agent/log ]; then
		cat /etc/update-agent/log
	else
		echo "Keine Einträge bisher."
	fi

	cat <
« Zurück zur Übersicht
EOT

	. ${SCRIPT%/*}/cgi-bin-post.sh
	
	exit
fi


# precompile sed script for autoupdate-state evaluation against single package names
sed_pkgstate_script="s/^$(nvram get ff_updatecheck | sed -e's/;/\\|/g')\$/ checked='checked'/p"

# get autoupdate-state
get_pkgstate() {
	echo $1 | sed -ne "$sed_pkgstate_script"
}


#
# page code
#
cat <
	
EOF

i=0
for pkg in $(package_get_installedlist); do
	let i=i+1

	cat <
			
EOF
	
done

cat <
	



EOF . ${SCRIPT%/*}/cgi-bin-post.sh
Updaten? Paket
$pkg
$(package_get_description $pkg)