// JavaScript Document

function formatHeadingNumber(q) {
	// q is of the form i-j-k, where j and k may be 0.
	var hnParts = q.split('-');
	var headingNumber = hnParts[0];
	for( var i=1; i<hnParts.length; i++ ) {
		if( hnParts[i] != '0' ) {
			headingNumber += '.' + hnParts[i];
		}
	}
	return headingNumber;
}

function displayHeadingNumbers() {
	if( node = document.getElementById('page-number') ) {
		var pageNumber = node.firstChild.nodeValue;
		// This numbers headers only down to H3, but could go all the way to H6.
		for( var n=2; n<=3; n++ ) {
			var headers = document.getElementsByTagName('H' + n);
			for( var i=0; i<headers.length; i++ ) {
				var anchors = headers[i].getElementsByTagName('A');
				for( var j=0; j<anchors.length; j++ ) {
					if( anchors[j].className == 'header-number' ) {
						var headerNumber = formatHeadingNumber(anchors[j].getAttribute('name'));
						var newText = document.createTextNode(pageNumber + '.' + headerNumber + ' ');
						anchors[j].appendChild(newText);
					}
				}
			}
		}
	}
}