#/bin/sh
# This script builds two files

TR_REPORT_DIR=`grep TrReportDir techrep.conf | awk '{print $2}'`
if [ ! "$TR_REPORT_DIR" ]; then
   echo "TrReportDir not set."
   exit 1
elif [ ! -d $TR_REPORT_DIR ]; then
   echo "$TR_REPORT_DIR does not exist or is inaccessible from this machine."
   exit 1
fi
echo TrReportDir is $TR_REPORT_DIR
TR_CITATION_FILE=$TR_REPORT_DIR/bibs.refer

TR_HOME_DIR=`grep TrHomeDir techrep.conf | awk '{print $2}'`
if [ ! "$TR_HOME_DIR" ]; then
   echo "TrHomeDir not set."
   exit 1
elif [ ! -d $TR_HOME_DIR ]; then
   echo "$TR_HOME_DIR does not exist or is inaccessible from this machine."
   exit 1
fi
echo TrHomeDir is $TR_HOME_DIR

#OrgName
ORG=`grep OrgName techrep.conf | sed -e '/OrgName/s/OrgName[ 	]*//'`
if [ ! "$ORG" ]; then
   echo "OrgName not set."
   exit 1
fi
echo OrgName is $ORG

#TrSeriesName
ORG_FILE=$TR_HOME_DIR/lib/TrSeriesNames
grep TrSeriesName techrep.conf | sed -e '/TrSeriesName/s/TrSeriesName[ 	]*//' >$ORG_FILE
if [ ! -s $ORG_FILE ]; then
   echo "TrSeriesName not set."
   exit 1
fi
echo This is the file of TR Series
cat $ORG_FILE

#ReportUrlPrefix
REPORT_URL_PREFIX=`grep ReportUrlPrefix techrep.conf | awk '{print $2}'`
if [ ! "$REPORT_URL_PREFIX" ]; then
   echo "ReportUrlPrefix not set."
   exit 1
fi
echo "ReportUrlPrefix is $REPORT_URL_PREFIX"

#InterfaceUrl
INTERFACE_URL=`grep InterfaceUrl techrep.conf | awk '{print $2}'`
if [ ! "$INTERFACE_URL" ]; then
   echo "InterfaceUrl not set."
   exit 1
fi
echo "InterfaceUrl is $INTERFACE_URL"
MASTERFORM=`basename $INTERFACE_URL`

#ReportAdmin
TR_ADMIN=`grep ReportAdmin techrep.conf | awk '{print $2}'`
if [ ! "TR_ADMIN" ]; then
   echo "ReportAdmin not set."
   exit 1
fi
echo "ReportAdmin is $TR_ADMIN"

HELP_URL=http://www.cs.virginia.edu/Techrep/doc/web/trhelp.html

# command line techrep. 
COM_TARGET=$TR_HOME_DIR/src/com-conf.h
echo "#define TR_REPORT_DIR		\"$TR_REPORT_DIR\"" > $COM_TARGET
echo "#define TR_ERROR_LOG_FILE		\"$TR_HOME_DIR/lib/error-log\"" >> $COM_TARGET
echo "#define TR_URL_PREFIX		\"$REPORT_URL_PREFIX\"" >> $COM_TARGET
echo "#define TR_CITATION_DATA_FILE	\"$TR_CITATION_FILE\"" >> $COM_TARGET
echo "#define GENHTML_PATH		\"$TR_HOME_DIR/bin/genHTML\"" >> $COM_TARGET
echo "#define TR_INDEX_HEADER_FILE	\"$TR_HOME_DIR/lib/README.header\"" >> $COM_TARGET
echo "#define TR_SEMAPHORE_FILE		\"$TR_HOME_DIR/lib/semaphore\"" >> $COM_TARGET
COMPRESS_CMD=/usr/bin/compress
echo "#define TR_COMPRESS_CMD		\"$COMPRESS_CMD\"" >> $COM_TARGET

# web based forms interface to command line techrep
WWW_TARGET=$TR_HOME_DIR/src/web-conf.h
echo "#define TR_HOME \"$TR_HOME_DIR\"" > $WWW_TARGET
echo "#define HELP_URL \"$HELP_URL\"" >> $WWW_TARGET
echo "#define TR_URL_PREFIX \"$REPORT_URL_PREFIX\"" >> $WWW_TARGET
echo "#define TR_REPORT_DIR \"$TR_REPORT_DIR\"" >> $WWW_TARGET
echo "#define MASTERFORM		\"$MASTERFORM\"" >> $WWW_TARGET
echo "#define TR_ADMIN \"$TR_ADMIN\"" >> $WWW_TARGET

# html generation script
HTML_TARGET=$TR_HOME_DIR/bin/genHTML
echo "#!/util/bin/perl5" >$HTML_TARGET
echo "# Convert the techrep bib file to a README html file.">> $HTML_TARGET
echo >> $HTML_TARGET
echo "\$outFilename = \"$TR_REPORT_DIR/README.html\";" >> $HTML_TARGET
echo "\$bibFilename = \"$TR_CITATION_FILE\";" >> $HTML_TARGET
echo "\$siteTitle = \"$ORG\";" >> $HTML_TARGET
echo >> $HTML_TARGET
cat lib/genHTML.body >> $HTML_TARGET
chmod 755 $HTML_TARGET

## create an empty citation database file if it doesn't exist
touch $TR_CITATION_FILE
chmod 644 $TR_CITATION_FILE

