#!/bin/sh
#
# SPDX-License-Identifier: CC-BY-2.0-UK
#

if [ -z "$1" -o -z "$2" ]; then
   echo "usage: [-v] $0 <docbook file> <templatedir>"
   echo
   echo "*NOTE* you need xsltproc, fop and nwalsh docbook stylesheets" 
   echo "       installed for this to work!"
   echo
   exit 0
fi

FO=`echo $1 | sed s/.xml/.fo/` || exit 1
PDF=`echo $1 | sed s/.xml/.pdf/` || exit 1
TEMPLATEDIR=$2

##
# These URI should be rewritten by your distribution's xml catalog to
# match your localy installed XSL stylesheets.
XSL_BASE_URI="http://docbook.sourceforge.net/release/xsl/current"

# Creates a temporary XSL stylesheet based on titlepage.xsl
xsltproc -o /tmp/titlepage.xsl                                           \
	 --xinclude                                                      \
         $XSL_BASE_URI/template/titlepage.xsl \
         $TEMPLATEDIR/titlepage.templates.xml || exit 1

# Creates the file needed for FOP
xsltproc --xinclude                    \
	 --stringparam hyphenate false \
	 --stringparam formal.title.placement "figure after" \
	 --stringparam ulink.show 1 \
         --stringparam  body.font.master  9 \
         --stringparam  title.font.master  11 \
         --stringparam draft.watermark.image "$TEMPLATEDIR/draft.png" \
         --stringparam  chapter.autolabel 1 \
         --stringparam  appendix.autolabel A \
         --stringparam  section.autolabel 1 \
         --stringparam  section.label.includes.component.label 1 \
         --output $FO               \
         $TEMPLATEDIR/poky-db-pdf.xsl    \
	 $1                 || exit 1

# Invokes the Java version of FOP.  Uses the additional configuration file common/fop-config.xml
fop -c $TEMPLATEDIR/fop-config.xml -fo $FO -pdf $PDF       || exit 1

rm -f $FO
rm -f  /tmp/titlepage.xsl

echo
echo " #### Success! $PDF ready. ####"
echo
