#!/bin/sh
export DATE="21.07.2007"
export TITLE="Verwaltung: Backup"
. ${0%/*}/cgi-bin-pre.sh
if [ "$REQUEST_METHOD" = "POST" ]; then read QUERY_STRING; fi
if [ "$QUERY_STRING" ]; then
QUERY_STRING=$(echo $QUERY_STRING | sed -e 's#\*#%2A#g')
IFS=\&;set ${QUERY_STRING%%[^%&=+-:@-_a-z~]*};unset IFS;eval $*
fi
print_form() {
echo "
Verwaltung: Backup
"
patterns="$(nvram get ff_nvbackup)"
cat<
EOF
}
urldecode() {
eval "$1=$(
eval echo '$'$1 | sed -e '
s#%(00|01|02|03|04|05|06|07|08|09|0a|0b|0c|0d|0e|0f|10|11|12|13|14|15|16|17|18|19|1a|1b|1c|1d|1e|1f)##g; s#\+#\\\ #g;
s#%20# #g; s#%21#!#g; s#%22#\\"#g; s#%23#\##g; s#%24#\$#g; s#%25#%#g; s#%26#\\\g; s#%27#'\\\"\'\\\"'#g; s#%28#\\\(#g;
s#%29#\\\)#g; s#%2[aA]#\\\*#g; s#%2[bB]#+#g; s#%2[cC]#´#g; s#%2[dD]##g; s#%2[eE]#.#g; s#%2[fF]#/#g; s#%30#0#g; s#%31#1#g;
s#%32#2#g; s#%33#3#g; s#%34#4#g; s#%35#5#g; s#%36#6#g; s#%37#7#g; s#%38#8#g; s#%39#9#g; s#%3[aA]#:#g; s#%3[bB]#\\\;#g;
s#%3[cC]#\\\<#g; s#%3[dD]#=#g; s#%3[eE]#\\\>#g; s#%3[fF]#?#g; s#%40#@#g; s#%41#A#g; s#%42#B#g; s#%43#C#g; s#%44#D#g;
s#%45#E#g; s#%46#F#g; s#%47#G#g; s#%48#H#g; s#%49#I#g; s#%4a#J#g; s#%4b#K#g; s#%4c#L#g; s#%4d#M#g; s#%4e#N#g; s#%4f#O#g;
s#%50#P#g; s#%51#Q#g; s#%52#R#g; s#%53#S#g; s#%54#T#g; s#%55#U#g; s#%56#V#g; s#%57#W#g; s#%58#X#g; s#%59#Y#g; s#%5[aA]#Z#g;
s#%5[bB]#\[#g; s#%5[cC]#\\\\#g; s#%5[dD]#\]#g; s#%5[eE]#^#g; s#%5[fF]#_#g; s#%60#\\\`#g; s#%61#a#g; s#%62#b#g; s#%63#c#g;
s#%64#d#g; s#%65#e#g; s#%66#f#g; s#%67#g#g; s#%68#h#g; s#%69#i#g; s#%6a#j#g; s#%6b#k#g; s#%6c#l#g; s#%6d#m#g; s#%6e#n#g;
s#%6f#o#g; s#%70#p#g; s#%71#q#g; s#%72#r#g; s#%73#s#g; s#%74#t#g; s#%75#u#g; s#%76#v#g; s#%77#w#g; s#%78#x#g; s#%79#y#g;
s#%7[aA]#z#g; s#%7[bB]#{#g; s#%7[cC]#\\\|#g; s#%7[dD]#}#g; s#%7[eE]#~#g; s#%[a-fA-F0-9]{2}##g
'
)"
}
act_save() {
if [ "$1" ]; then nvram set ff_nvbackup="$1"; fi
print_form
}
act_backup() {
print_form
echo "nvbackup -b \"$1\""
nvbackup -b "$1"
echo "
"
}
act_restore() {
print_form
echo "nvbackup -r"
nvbackup -r
echo "
"
}
act_list() {
print_form
echo "nvbackup -l"
nvbackup -l
echo "
"
}
if [ "$patterns" ]; then urldecode patterns; fi
if [ -z "$QUERY_STRING" -o "$save" ]; then
act_save "$patterns"
fi
if [ "$backup" ]; then
act_backup "$patterns"
fi
if [ "$restore" ]; then
act_restore
fi
if [ "$list" ]; then
act_list
fi
. ${0%/*}/cgi-bin-post.sh