#!/bin/sh

rm -rf	chm
mkdir	chm

cp -r	${KDEDIR}/share/apps/ksgmltools2/customization/dtd 		chm
cp -r	${KDEDIR}/share/apps/ksgmltools2/customization/entities	chm
cp -r	${KDEDIR}/share/apps/ksgmltools2/customization/en		chm

for dir in chap[1-9] chap[1-9][0-9]
do
	mkdir	chm/$dir
done

cp -a	properties chm

filter=Box

for img in `find chap* -name '*.png'`
do
	case `basename $img`
	in
		i_*)
			cp $img chm/$img
			;;
		*)
			convert -enhance -geometry 50% -filter $filter $img chm/$img
			;;
	esac
done


cp	*.sgml		chm
cp	index.docbook	chm

cd	chm

xmlto	html index.docbook	>file.list 2>&1

rm -f	keylist

cat	<<EOF	> rekall.hhp
[OPTIONS]
Auto Index=Yes
Binary TOC=No
Binary Index=Yes
Compatibility=1.1
Compiled file=rekall.chm
Contents file=rekall.hhc
Default topic=index.html
Default Window=rekallHelp
Error log file=ErrorLog.log
Index file=rekall.hhk
Title=Rekall Unbound
Display compile progress=Yes
Full-text search=Yes
Default window=main

[WINDOWS]
main=,"rekall.hhc","rekall.hhk","index.html","index.html",,,,,0x23520,222,0x1046,[10,10,780,560],0xB0000,,,,,,0

[FILES]
EOF

echo index.html > html.list
cat file.list |
	fgrep -v index.html	|
	sed -n '/html/ s/^Writing \(.*\) for.*$/\1/p'  >> html.list

cat html.list >> rekall.hhp

cat	<<EOF > rekall.hhc
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft&reg; HTML Help Workshop 4.1">
<!-- Sitemap 1.0 -->
</HEAD>
<BODY>
   <OBJECT type="text/site properties">
     <param name="Window Styles" value="0x800025">
     <param name="comment" value="title:">
     <param name="comment" value="base:">
   </OBJECT>
   <UL>
EOF

for html in `cat html.list | grep -e 'ch[0-9]*\.html' -e 'ap[a-z]*\.html'`
do
	title=`sed -n '/<title>/ s/^.*<title>\(.*\)<\/title>.*$/\1/p' $html`

	cat	<<EOF >>rekall.hhc
      <LI><OBJECT type="text/sitemap">
            <param name="Name" value="$title">
            <param name="Local" value="$html">
          </OBJECT>
EOF

	head=`echo $html | sed 's/.html//'`
	ul1="<UL>"
	ul2=""

	for html in `cat html.list | grep "${head}[^.].*\.html"`
	do

	    title=`sed -n '/<title>/ s/^.*<title>\(.*\)<\/title>.*$/\1/p' $html`
	    cat	<<EOF >>rekall.hhc
	  $ul1
          <LI><OBJECT type="text/sitemap">
                <param name="Name" value="$title">
                <param name="Local" value="$html">
              </OBJECT>
EOF
	    ul1=""
	    ul2="</UL>"

	done

	cat	<<EOF >>rekall.hhc
          $ul2
EOF

	echo	"$title:::$html" >>keylist
done

exit
cat	<<EOF >>rekall.hhc
   </UL>
</BODY>
</HTML>
EOF

cat	<<EOF > rekall.hhk
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft&reg; HTML Help Workshop 4.1">
<!-- Sitemap 1.0 -->
</HEAD>
<BODY>
<OBJECT type="text/site properties">
</OBJECT>
<UL>
EOF

sort keylist |
	while read keyline
	do
		name=`expr "$keyline" : '\(.*\):::.*'`
		local=`expr "$keyline" : '.*:::\(.*\)'`

		cat	<<EOF >> rekall.hhk

    <LI><OBJECT type="text/sitemap">
            <param name="Name" value="$name">
            <param name="Name" value="$name">
            <param name="Local" value="$local">
         </OBJECT>

EOF

	done

cat	<<EOF >> rekall.hhk
</UL>
</BODY>
</HTML>
EOF
