125 lines
3.3 KiB
Bash
125 lines
3.3 KiB
Bash
#!/bin/sh
|
|
#
|
|
# CGI-script for setting up volume list in nwserv.conf
|
|
#
|
|
# Copyright 2000 Wilmer van der Gaast (lintux@lintux.cx)
|
|
#
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
. $WEBSERVE_ROOT/cgi-bin/functions
|
|
. $WEBSERVE_ROOT/smart.conf
|
|
|
|
if [ "$2" != "x" ]; then
|
|
echo Content-Type: text/html
|
|
echo;
|
|
fi
|
|
|
|
checkrefer
|
|
checkparams $*
|
|
|
|
declare -i i
|
|
|
|
case `echo "$1" | cut -d\& -f2` in
|
|
list )
|
|
cat<<EOF
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>Volumes</TITLE>
|
|
</HEAD>
|
|
<BODY BGCOLOR=#C0C0C0>
|
|
<FORM ACTION="/cgi-bin/volume" METHOD=GET>
|
|
<TABLE BORDER>
|
|
<TR>
|
|
<TH COLSPAN=4 BGCOLOR=$HEADER_BACK ALIGN=LEFT>
|
|
<TABLE BORDER=0 FRAME=0 CELLSPACING=0 CELLPADDING=0>
|
|
<TR>
|
|
<TD><IMG SRC="/smart_icon.jpg"></TD>
|
|
<TD><FONT COLOR=$HEADER_BACK>-</FONT></TD>
|
|
<TH><FONT COLOR=$HEADER_FORE>Volumes</FONT></TH>
|
|
</TR>
|
|
</TABLE>
|
|
<TR>
|
|
<TH>Sel
|
|
<TH>Volume
|
|
<TH>Directory
|
|
<TH>Flags
|
|
`getconfig 1 | {
|
|
read LINE
|
|
i=0
|
|
while [ -n "$LINE" ]; do
|
|
i=i+1
|
|
NAME="\`echo $LINE | cut -d" " -f2\`"
|
|
echo -n \<TR\>
|
|
echo \<TD\>\<INPUT TYPE=RADIO NAME=\"VOLUME\" VALUE=\"$NAME\"\>
|
|
echo -n \<TD\>
|
|
echo $NAME
|
|
echo -n \<TD\>
|
|
echo "$LINE" | cut -d" " -f3
|
|
echo -n \<TD\>
|
|
echo "$LINE" | cut -d" " -f4-;
|
|
read LINE
|
|
done;
|
|
}
|
|
`<TR>
|
|
<TD COLSPAN=4 ALIGN=CENTER>
|
|
<A HREF="/cgi-bin/volume?vadd">Add volume</A>
|
|
<INPUT TYPE=SUBMIT NAME="EDIT" VALUE="Edit">
|
|
<INPUT TYPE=SUBMIT NAME="DELETE" VALUE="Delete">
|
|
</TABLE>
|
|
</BODY>
|
|
</HTML>
|
|
EOF
|
|
;;
|
|
vadd )
|
|
$GENFORM < $SMART_ROOT/forms/volume
|
|
;;
|
|
* )
|
|
export `echo $* | cut -d\& -f1`
|
|
export `echo $* | cut -d\& -f2`
|
|
if [ "$DELETE" ]; then
|
|
grep -v "`getconfig_clean 1 | grep $VOLUME`" < $MARS_CONFIG > $MARS_CONFIG.tmp
|
|
mv $MARS_CONFIG.tmp $MARS_CONFIG
|
|
$0 list x
|
|
exit;
|
|
elif [ "$EDIT" ]; then
|
|
$GENFORM < $SMART_ROOT/forms/volume `
|
|
LINE="\`getconfig 1 | grep $VOLUME\`"
|
|
OPT="\`echo $LINE | cut -d\" \" -f4\`"
|
|
echo -n "\`echo $LINE | cut -d\" \" -f2-3\` "
|
|
if echo $OPT | grep i > /dev/null; then
|
|
echo -n "IGNORE ";
|
|
elif echo $OPT | grep k > /dev/null; then
|
|
echo -n "LOWER ";
|
|
else
|
|
echo -n "UPPER ";
|
|
fi
|
|
if echo $OPT | grep t > /dev/null; then
|
|
echo -n "UNIX ";
|
|
elif echo $OPT | grep T > /dev/null; then
|
|
echo -n "YES ";
|
|
else
|
|
echo -n "NONE ";
|
|
fi
|
|
if echo $OPT | grep O > /dev/null; then echo -n "1 "; else echo -n "0 "; fi
|
|
if echo $OPT | grep N > /dev/null; then echo -n "1 "; else echo -n "0 "; fi
|
|
if echo $OPT | grep m > /dev/null; then echo -n "1 "; else echo -n "0 "; fi
|
|
if echo $OPT | grep n > /dev/null; then echo -n "1 "; else echo -n "0 "; fi
|
|
if echo $OPT | grep p > /dev/null; then echo -n "1 "; else echo -n "0 "; fi
|
|
if echo $OPT | grep r > /dev/null; then echo -n "1 "; else echo -n "0 "; fi`;
|
|
fi
|
|
;;
|
|
esac
|