function createPageArray(story) {
	var array = new Array();
	var chunk = 1200;// minimum number of characters for a full page
	var startPoint = 0;
	var i = 0;
	array[0] = story;
	do {
		i++;
		if ((chunk < story.substring(startPoint, story.length).length) && (story.indexOf("</p>", startPoint + chunk) != -1)) {
			stopPoint = story.indexOf("</p>", startPoint + chunk) + 4;
		} else {
			stopPoint = story.length;
		}
		array[i] = story.substring(startPoint, stopPoint);
		startPoint = stopPoint;
	} while (stopPoint < story.length);
	return(array);
}

function getCurrentPage() { // parses url and returns page #, returns 1 if page # not found
	var url = getUrl();
	if (url.indexOf("page_") != -1) {
		var page = parseInt(url.substring(url.indexOf("page_") + 5, url.length));
	} else {
		page = 1;
	}
	if ((page < 0) || (isNaN(page))) page = 1;
	return(page);
}

function getUrl() {
	return(unescape(window.location.href));
}

function writePage(story, dropCapOff, imageOff) {
	var url = getUrl();
	var currentPage = getCurrentPage();
	var pageArray = createPageArray(story);
	var lastPage = pageArray.length - 1;
	var pageHTML = "";
	var bylineHTML = document.getElementById("byline").innerHTML;
	if (url.indexOf("obit") != -1) {
		dropCapOff = true;
	}
	if (url.indexOf("?") == -1) {
		url += "?";
	}
	if (url.indexOf("+page_") != -1) {
		url = url.substring(0, url.indexOf("+page_")); // strip out old page number from url string
	}
	if (bylineHTML == "") {
		bylineHTML = "&nbsp;"; // add space if no byline so page numbers can align
	}
	if ((lastPage > 1) && (currentPage != 0)) { // write page number
		bylineHTML = "<div id='pageNumber'>(page " + currentPage + " of " + lastPage + ")<br><a href='" + url + "+page_0'" + ">(view as single page)</a></div>" + bylineHTML;
	}
	if (currentPage == 0) {
		bylineHTML = "<div id='pageNumber'>(single page view)<br><a href='" + url + "+page_1'" + ">(view as multiple pages)</a></div>" + bylineHTML;
	}
	document.getElementById("byline").innerHTML = bylineHTML;
	if ((currentPage > 1) && (imageOff)) {
		document.getElementById("leadSummary").innerHTML = "&nbsp;";
	}
	if ((currentPage < 2) && (!dropCapOff)) { //add code for dropcap
		if (pageArray[currentPage].substr(0,3) == "<p>") { // strip out beginning <p> tag if it exists
			pageArray[currentPage] = pageArray[currentPage].substring(3, pageArray[currentPage].length);
		}
		pageHTML += "<!--[if gte IE 6]><p class='dropcapIE6'><![endif]-->";
		pageHTML += "<![if !gte IE 6]><p class='dropcapOtherBrowsers'><![endif]>";
	}
	if (pageArray[currentPage]) { // if there's a page to write, write it
		pageHTML += pageArray[currentPage];
	}
	pageHTML += "<div id='pageLinks'>";
	if (currentPage != 0) {
		if (currentPage < lastPage) {
			pageHTML += "This Story Is Continued... <br>";
		}
		if (currentPage > 1) {
			pageHTML += "<a class='visited' href='" + url + "+page_" + (currentPage - 1) + "'" + "><< Previous page </a> | ";
		}
		if (lastPage > 1) { // write page links
			for(i=1; i<pageArray.length; i++) {
				pageHTML += "<a ";
				if (i < currentPage) {
					pageHTML += "class='visited' ";
				}
				if (i == currentPage) {
					pageHTML += "class='active' ";
				} else {
					pageHTML += "href='" + url + "+page_" + i + "'";
				}
				pageHTML += ">" + i + "</a> | ";
			}
		}
		if (currentPage < lastPage) {
			pageHTML += "<a href='" + url + "+page_" + (currentPage + 1) + "'" + ">Next page >></a>";
		}
	}
	pageHTML += "</div>";
	document.write(pageHTML);
}	