#!/bin/bash
LOG_FILE=pages/log.txt
CREDENTIALS="--username $1 --password $2"
PAGE=$3
REV=$4
NEW_PAGE=$5
MESSAGE=$6
#echo "Cred: $CREDENTIALS" >> $LOG_FILE
#echo "Page: $PAGE" >> $LOG_FILE
#echo "Rev: $REV" >> $LOG_FILE
#echo "New: $NEW_PAGE" >> $LOG_FILE
#echo "Msg: $MESSAGE" >> $LOG_FILE
function do_cmd
{
# echo >> $LOG_FILE
# echo cmd\$ "$@" >> $LOG_FILE
"$@" >> $LOG_FILE 2>&1
}
if [ ! -f "$PAGE" ]
then
echo "Adding '$PAGE' ($MESSAGE)" >> $LOG_FILE
do_cmd cp "$NEW_PAGE" "$PAGE"
svn $CREDENTIALS add "$PAGE"
# Update the index page of all the pages
echo 'This index of SubflexionPages is automatically regenerated when new pages are added.<br>' > pages/Pages.md
for F in pages/*.md ; do G=${F##*/} ; echo [${G%.*}]'<br>' ; done >> pages/Pages.md
else
echo "Updating '$PAGE' ($MESSAGE)" >> $LOG_FILE
do_cmd svn revert "$PAGE"
do_cmd svn $CREDENTIALS up "$PAGE" -r $REV
do_cmd cp "$NEW_PAGE" "$PAGE"
svn $CREDENTIALS up "$PAGE"
fi
svn $CREDENTIALS commit -m "$MESSAGE" "$PAGE"