/*
	MultiColumn text reflower v1.4 by Randy Simons
	
	More information and contact:
		http://randysimons.com
*/
var MultiColumnResizeTimer=null;var MultiColumnList=null;function MultiColumnSettings(){this.extraHeight=25;this.minSplitHeight=0;this.minHeight=0;this.readOnText=null;this.classNameScreen=null;this.classNamePrint=null;this.numberOfColumns=2;}function MultiColumn(columnContainerIn,settingsIn){this.getStyle=function(element,stylePropW3,stylePropIE){var y=null;if(element.currentStyle){y=element.currentStyle[stylePropIE];}else if(window.getComputedStyle&&document.defaultView.getComputedStyle(element,null)){y=document.defaultView.getComputedStyle(element,null).getPropertyValue(stylePropW3);}return y;};this.generateColumns=function(){var i=0;var numColumns;var baseColumn=this.columnContainer.getElementsByTagName('div').item(0);var clearingNode=document.createElement('span');clearingNode.style.display="block";clearingNode.style.clear="both";clearingNode.style.zoom="1";this.columnContainer.appendChild(clearingNode);if(this.settings.numberOfColumns!=null){numColumns=this.settings.numberOfColumns;}else{numColumns=Math.floor(this.columnContainer.offsetWidth/(baseColumn.offsetWidth));}var availableWidth=Math.floor((this.columnContainer.offsetWidth-17)/numColumns)-parseInt(this.getStyle(baseColumn,'padding-right','paddingRight'))-parseInt(this.getStyle(baseColumn,'padding-left','paddingLeft'));for(i=1;i<numColumns;i++){this.columnContainer.insertBefore(baseColumn.cloneNode(false),this.columnContainer.firstChild);}baseColumn.style.width=availableWidth+'px';var columns=this.columnContainer.getElementsByTagName('div');var minHeight;if(baseColumn.offsetHeight<=this.settings.minSplitHeight){var minHeight=baseColumn.offsetHeight;}else{var minHeight=Math.max(parseInt((baseColumn.offsetHeight+numColumns*this.settings.extraHeight)/columns.length),this.settings.minHeight);}for(i=0;i<columns.length-1;i++){var currentColumn=columns.item(i);currentColumn.style.width=availableWidth+'px';if(i==0){currentColumn.className='first'}while(currentColumn.offsetHeight<minHeight&&baseColumn.hasChildNodes()){if(baseColumn.firstChild.nodeType==1){currentColumn.appendChild(baseColumn.firstChild);}else{baseColumn.removeChild(baseColumn.firstChild);}}var lastChild=currentColumn.lastChild;var nextColumn=columns.item(i+1);switch(lastChild.nodeName.toLowerCase()){case'p':new ParapgraphWrapper(currentColumn,lastChild,nextColumn,minHeight);break;case'ul':case'ol':new ListWrapper(currentColumn,lastChild,nextColumn,minHeight);break;default:}new HeadingWrapper(currentColumn,nextColumn);if(this.settings.readOnText!=null){currentColumn.appendChild(this.readOnNode.cloneNode(true));}}var maxHeight=0;for(i=0;i<columns.length;i++){maxHeight=Math.max(maxHeight,columns.item(i).offsetHeight);}for(i=0;i<columns.length;i++){columns.item(i).style.height=maxHeight+"px";}};this.settings=settingsIn;if(this.settings.readOnText!=null){this.readOnNode=document.createElement('p');this.readOnNode.className="readOn";this.readOnNode.appendChild(document.createTextNode(this.settings.readOnText));}this.columnContainer=columnContainerIn;if(this.settings.classNameScreen!=null){this.columnContainer.className=this.settings.classNameScreen;}this.originalContent=columnContainerIn.cloneNode(true);if(this.settings.classNamePrint!=null){var printNode=this.originalContent.cloneNode(true);printNode.className=this.settings.classNamePrint;this.columnContainer.parentNode.insertBefore(printNode,this.columnContainer);}if(MultiColumnList===null){MultiColumnList=new Array();if(window.addEventListener){window.addEventListener('resize',multiColumnSetResizeTimer,false);}else{window.attachEvent('onresize',multiColumnSetResizeTimer);}}MultiColumnList.push(this);this.generateColumns();}function multiColumnSetResizeTimer(){if(MultiColumnResizeTimer){clearTimeout(MultiColumnResizeTimer);}MultiColumnResizeTimer=setTimeout(multiColumnResize,100);}function multiColumnResize(){if(!window.addEventListener&&window.attachEvent){window.detachEvent('onresize',multiColumnSetResizeTimer);}for(var i=0;i<MultiColumnList.length;i++){var object=MultiColumnList[i];var newCopy=object.originalContent.cloneNode(true);object.columnContainer.parentNode.replaceChild(newCopy,object.columnContainer);object.columnContainer=newCopy;object.generateColumns();}if(!window.addEventListener&&window.attachEvent){setTimeout("window.attachEvent('onresize',multiColumnSetResizeTimer)",0);}}function ParapgraphWrapper(sourceColumnIn,sourceParagraphIn,destinationColumnIn,heightIn){this.sourceColumn=sourceColumnIn;this.height=heightIn;this.processElement=function(source,dest){var lastSourceChild;while(lastSourceChild=source.lastChild){if(lastSourceChild.nodeType==1){var newDest=lastSourceChild.cloneNode(false);dest.insertBefore(newDest,dest.firstChild);if(this.processElement(lastSourceChild,newDest)){return true;}}else if(lastSourceChild.nodeType==3){if(this.wrapTextNode(lastSourceChild,dest)){return true;}}source.removeChild(lastSourceChild);}return false;};this.wrapTextNode=function(source,dest){var sourceText=source.nodeValue;var sourceTextAray=sourceText.split(/\s/);var destTextArray=new Array();while(this.sourceColumn.offsetHeight>this.height&&sourceTextAray.length>0){destTextArray.push(sourceTextAray.pop());source.nodeValue=sourceTextAray.join(' ');}var newText=(/^\s/.test(sourceText)?' ':'')+(destTextArray.reverse().join(' '))+(/\s$/.test(sourceText)?' ':'');dest.insertBefore(document.createTextNode(newText),dest.firstChild);return this.sourceColumn.offsetHeight<=this.height;};destinationColumnIn.insertBefore(sourceParagraphIn.cloneNode(false),destinationColumnIn.firstChild);this.processElement(sourceParagraphIn,destinationColumnIn.firstChild);if(sourceParagraphIn.offsetHeight==0){this.sourceColumn.removeChild(sourceParagraphIn);}}function ListWrapper(sourceColumnIn,sourceListIn,destinationColumnIn,heightIn){var newList=sourceListIn.cloneNode(false);destinationColumnIn.insertBefore(newList,destinationColumnIn.firstChild);while(currentElement=sourceListIn.lastChild){if(sourceColumnIn.offsetHeight<=heightIn){break;}if(currentElement.nodeName.toLowerCase()=='li'){newList.insertBefore(currentElement,newList.firstChild);}else{sourceListIn.removeChild(currentElement);}}var numItems=1;var elementList=sourceListIn.childNodes;for(var i=0;i<elementList.length;i++){if(elementList[i].nodeName.toLowerCase()=='li'){numItems++;}}newList.start=numItems;if(sourceListIn.offsetHeight==0){sourceColumnIn.removeChild(sourceListIn);}}function HeadingWrapper(currentColumn,nextColumn){if(/^h[1-6]$/i.test(currentColumn.lastChild.nodeName)){nextColumn.insertBefore(currentColumn.lastChild,nextColumn.firstChild);}}