//v 1.7 2006-06-09 PNH Add 'technology' and 'digital in action'
//v 1.6 For dps, use correct styles
//v 1.5 Change cellpadding to remove a scroll bar
//v 1.4 Add dp magazine
//v 1.3 Add dps newsletter and cope with HTTPS


var magazineId = '';
var firstItem;
var lastItem;
var totalItems;

var formatForPrinting;
var formatJustHeadlines;
var formatSearchResults;

var queryObj = new Array();

function queryNameValue(name,value) {
	queryObj[name] = value;
}

var articleObj;
var whitmar;	// Set to true if this is not a magazine but general info about whitmar

function article() {
	this.date        = '';
	this.headline    = '';
	this.shortDescription = '';
	this.fullDescription = '';
	this.id = '';
	this.mag = '';
	this.age = '';
	this.template = '';
	this.image1 = '';
	this.image2 = '';
	this.adImage = '';
	this.adHref = '';
}

function itemListStart(mag,firstNum,lastNumReturned,lastNum) {
	magazineId = mag;
	firstItem = firstNum+1;		// 0 to n
	lastItem  = lastNumReturned+1;	// n to lastNum
	totalItems = lastNum+1;

	formatForPrinting = (typeof queryObj['print'] == 'string');
	formatJustHeadlines = (typeof queryObj['format'] == 'string' && queryObj['format'] == 'headlines');
	formatSearchResults = (typeof queryObj['format'] == 'string' && queryObj['format'] == 'search');
	whitmar = false;

	if (formatForPrinting) {
		document.writeln('<table border=0>');
		document.writeln('<tr>');
	}
	else if (formatJustHeadlines) {
		document.writeln('<div>');
	}
	else {
		// print the navigation bar
		var currentOrArchive = queryObj['show'] != 'archive' ? 'archive' : 'current';
		var hrefCA = document.location.pathname;
		hrefCA += '?itemstyle='+queryObj['itemstyle'];
		hrefCA += '&user='+queryObj['user'];
		hrefCA += '&mag=' +queryObj['mag'];
		hrefCA += '&show='+currentOrArchive
		hrefCA += '&type='+queryObj['type'];
		hrefCA += '&maxrecs='+queryObj['maxrecs'];


		var prevActive  = (firstNum > 0);
		var nextActive = !formatSearchResults && (lastNumReturned < lastNum);
		var hrefMove = document.location.pathname;
		hrefMove += '?itemstyle='+queryObj['itemstyle'];
		hrefMove += '&user='+queryObj['user'];
		hrefMove += '&mag=' +queryObj['mag'];
		hrefMove += '&show='+queryObj['show'];
		hrefMove += '&type='+queryObj['type'];
		hrefMove += '&maxrecs='+queryObj['maxrecs'];

		var frstIndex = 0;
		var prevIndex = Math.max(frstIndex,firstNum - queryObj['maxrecs']);
		var nextIndex = lastNumReturned + 1;
		var lastIndex = lastNum + 1 - queryObj['maxrecs'];

		var navigation = true;

		switch(queryObj['type']) {
		  case 'news':
			title = 'news'
			break;
		  case 'articles':
			title = 'features'
			break;
		  case 'appointments':
			title = 'people'
			break;
		  case 'event':
			title = 'events'
			break;
		  case 'technology':				//v 1.7
			title = 'technology spotlight'	//v 1.7
			break;							//v 1.7
		  case 'dia':						//v 1.7
			title = 'digital in action'		//v 1.7
			break;							//v 1.7
		  case 'about':
			title = 'About Whitmar'
			whitmar = true;
			navigation = false;
			break;
		  case 'contractpublishing':
			title = 'Contract Publishing'
			whitmar = true;
			navigation = false;
			break;
		  case 'listrental':
			title = 'List Rental'
			whitmar = true;
			navigation = false;
			break;
		  case 'search':
			title = 'Search Results from' +
					' &nbsp; <span class="peNewsText">Print &amp; Paper</span> ' +
					' &nbsp; <span class="ftNewsText">FlexoTech</span> ' +
//v 1.6				' &nbsp; <span class="pmNewsText">Print Making &amp; Distribution</span> ' +
					' &nbsp; <span class="pmNewsText">PMD</span> ' +				//v 1.6
					' &nbsp; <span class="dpNewsText">Digital Printer</span> ' +	//v 1.6
					' &nbsp; <span class="dpsNewsText">Digital Packaging</span> ';	//v 1.6
			hrefCA = '';	// There is no Current/Archive with search results!
			break;
		  default:
			title = '???? '+queryObj['type']+' ????';
		}
		if (navigation) {
			document.write('<table border=0 cellspacing=0 cellpadding=0 width="100%"><tr>');
			if (! prevActive) {
				document.write('<td class=pageTitle>&nbsp;'+title+'</td>');
			}
			else {
				document.write('<td class=pageTitleNotFirst>&nbsp;'+title+'</td>');
			}

			if (lastNumReturned >= 0) {
				document.write('<td class=pageNavigation>');
				if (prevActive) {
					document.write('<a href="'+hrefMove+'&nextrecs='+frstIndex+'">First</a>');
					document.write(' &nbsp; ');
					document.write('<a href="'+hrefMove+'&nextrecs='+prevIndex+'">Previous</a>');
				}
				else {
					document.write(' &nbsp; ');
				}
				document.write(' &nbsp; '+firstItem);
				if (firstItem != lastItem) document.write(' to '+lastItem);
				document.write(' of '+totalItems+' &nbsp; ' );
				if (nextActive) {
					document.write('<a href="'+hrefMove+'&nextrecs='+nextIndex+'">Next</a>');
					document.write(' &nbsp; ');
					document.write('<a href="'+hrefMove+'&nextrecs='+lastIndex+'">Last</a>');
				}
				document.write('</td>');
			}
			else {
				document.write('<td  class=pageNavigation>No documents found</td>');
			}

			if (hrefCA != '') {
				document.write('<td class=pageNavigation2>');
				document.write('<a href="'+hrefCA+'">'+currentOrArchive+'</a>');
				document.write('&nbsp;</td>');
			}
			document.write('</tr></table>');
		}
		if (! formatSearchResults) {
			document.writeln('<table border=0 cellspacing=0 cellpadding=8>');	//v 1.5 change cellpadding from 11 to 8
			document.writeln('<tr>');
		}
	}

}
function itemListEnd() {
	if (formatJustHeadlines) {
		document.writeln('</div>');
		setTimeout('scrollingNews()',1000);
	}
	else if (! formatSearchResults) {
		document.writeln('</tr>');
		document.writeln('</table>');
	}
	queryObj.length = 0;	// clear down in case we have more than one list
}

function itemStart() {
	articleObj = new article();
}

var rollingNewsCount = 0;

function itemEnd() {

	var classAttrDesc = 'class=';
	var classAttrHead = 'class=';

	switch (articleObj['mag']) {
	  case 'flex':
		classAttrHead += '"ftNewsHeadline"';
		classAttrDesc += '"ftNewsText"';
		break;
	  case 'pe'  :
		classAttrHead += '"peNewsHeadline"';
		classAttrDesc += '"peNewsText"';
		break;
	  case 'pmd'  :
		classAttrHead += '"pmNewsHeadline"';
		classAttrDesc += '"pmNewsText"';
		break;
	  case 'tp'  :
		classAttrHead += '"tpNewsHeadline"';
		classAttrDesc += '"tpNewsText"';
		break;
	  case 'dp'  :								//v 1.4
		classAttrHead += '"dpNewsHeadline"';	//v 1.4
		classAttrDesc += '"dpNewsText"';		//v 1.4
		break;									//v 1.4
	  case 'dps'  :								//v 1.3
		classAttrHead += '"dpsNewsHeadline"';	//v 1.6
		classAttrDesc += '"dpsNewsText"';		//v 1.6
		break;									//v 1.6
	  case 'MANY' :
		classAttrHead += '"newsHeadline"';
		classAttrDesc += '"newsText"';
		break;
	  default    :
		if (whitmar) {
			classAttrHead += '"newsHeadline"';
			classAttrDesc += '"newsHeadline"';
		}
		else {
			alert('Unexpected magazine id '+articleObj['mag']);	// debuging alert	//v 1.4
			classAttrHead += '"newsHeadline"';
			classAttrDesc += '"newsText  "';
		}
		break;
	}
	if (formatJustHeadlines
	 || formatSearchResults) {
		var href = "/cgi-bin/whitmar/news_all.pl";
		href += '?itemstyle='+queryObj.itemstyle;
		href += '&user='+queryObj['user'];
		href += '&mag=' +articleObj['mag'];
		href += '&show=';
		href +=  (articleObj['age'] != '' ? articleObj['age'] : queryObj['show']);
		href += '&type=';
		href += (formatSearchResults ? articleObj['type'] : queryObj['type']);
		href += '&maxrecs=1';
		href += '&item='+articleObj['id'];
		href += '&print=yes';
		
		var spacer = formatJustHeadlines
			?
			'<img src="/images/spacer.gif" height=74 width=2 align=left alt="" border=0 '+
				'id="rollingNews'+(rollingNewsCount++)+'" '+
			'>'
			:
			'';
		var showDate = formatJustHeadlines
			?
			''
			:
			'<span class="newsDate">'+articleObj['date']+'</span> ';

		if (formatJustHeadlines) {
			classAttrHead = 'class="rollingNewsHeadline"';
			classAttrDesc = 'class="rollingNewsText"';
		}
		else {
			classAttrHead = classAttrDesc;	// keep text small as if it were text
		}
		document.writeln('<div '+classAttrHead+'>'+
			spacer +
			showDate +
			articleObj['headline']+
			'&nbsp;&nbsp;&nbsp;'+
			'<a href="'+href+'" '+
				'target="_blank" '+
				'title="'+articleObj['shortDescription']+'" '+
			'>more</a>'+
			'<br clear=all></div>');
//document.writeln(href);

//		document.writeln('<div '+classAttrDesc+'>'+articleObj['shortDescription']+'</div>');
//alert('<div '+classAttrDesc+'>'+articleObj['shortDescription']+'</div>');
//		document.writeln('<hr>');
	}
	else {
		var colWidth;
		switch (queryObj['maxrecs']) {
		  case  '1':	colWidth=500;break;
		  case  '2':	colWidth=290;break;
		  default:	colWidth=220;break;
		}
		if (! formatForPrinting
		 && ! whitmar
		 && queryObj['maxrecs'] > 4) {
			document.write('</tr></tr>');	// too many to fix along one line so force everything to new lines
			colWidth=500;
		}

		document.writeln('<td valign=top width="'+colWidth+'">');
		document.writeln('<img src=/images/spacer.gif width="'+colWidth+'" height=1 alt="">');

		if (whitmar) {
			// The 'about' box
			document.writeln('<div '+classAttrDesc+'>'+articleObj['shortDescription']+'</div>');
		}
		else {
			document.writeln('<div class="newsDate">'+articleObj['date']+'</div>');
			document.writeln('<div '+classAttrHead+'>'+articleObj['headline']+'</div>');
		}
		document.writeln('<table border="0">');
		var images1 = '<td valign="top">';
		var images2 = '<td valign="bottom">';
		if (! formatForPrinting
		 && ! whitmar) {
			if (articleObj['image1'] != '') {
				images1 += '<img src="/whitmar/images/'+articleObj['mag']+'/'+articleObj['image1']+'" alt="" />';
			}
			if (articleObj['image2'] != '') {
				images2 += '<img src="/whitmar/images/'+articleObj['mag']+'/'+articleObj['image2']+'" alt="" />';
			}
		}
		images1 += '</td>';
		images2 += '</td>';
		var text = '<td class="newsText" rowspan="2">'+articleObj['fullDescription']+'</td>';
		if (articleObj['template'].indexOf('1') != -1) {
			document.writeln('<tr>'+images1+text+'</tr><tr>'+images2+'</tr>');
		}
		else {
			document.writeln('<tr>'+text+images1+'</tr><tr>'+images2+'</tr>');
		}
		document.writeln('</table>');
		document.write('<br>');
		
		var hostUrl = articleObj['adHref'].replace(/https?:\/\//i,'');	//v 1.3
		if (hostUrl.length > 5) {	// Note: if adHref = http://www. then there is no link!
			var image = (articleObj['adImage2'] != ''?'<img src="/whitmar/images/ads/'+articleObj['adImage']+'" alt="'+hostUrl+'" border="0" hspace="3"/>':'');
			document.write('<div class="newsLink"><a target="_blank" href="/cgi-bin/whitmar/count_links.cgi?link='+hostUrl+'">'+image+' HTTP://'+hostUrl+'</a></div>');
			document.write('<br>');
		}

		if (! formatForPrinting
		 && ! whitmar) {
			var href = document.location.pathname;
			href += '?itemstyle='+queryObj.itemstyle;
			href += '&user='+queryObj['user'];
			href += '&mag=' +queryObj['mag'];
			href += '&show='+queryObj['show'];
			href +=	'&type='+queryObj['type'];
			href += '&maxrecs=1';
			href += '&item='+articleObj['id'];
			href += '&print=yes';

			document.write('<div class="newsLink"><a target="_blank" href="'+href+'">Format for printing</a></div>');
			document.write('<hr>');
		}
		document.writeln('</td>');
	}
}


function scrollingNews() {
	//if (confirm('scrollingNews()')) {
	scrollingNews2();
	//}
}
function scrollingNews2() {
	var finalAction = "setTimeout('scrollingNews()',3000)";
	var anchorId = 'rollingNews'+rollingNewsCount;
		var anchorObj = MM_findObj(anchorId);
	if (anchorObj != null) {
		var requiredPos = anchorObj.offsetTop;
		scrollingNewsMove(anchorId,requiredPos,finalAction);
		rollingNewsCount++;
	}
	else {
		rollingNewsCount = 0;
		eval(finalAction);
	}
	return;
}

function scrollingNewsMove(anchorId,finalPos,finalAction) {
	var anchorObj = MM_findObj(anchorId);
	var currentPos  = anchorObj.offsetParent.scrollTop;
	if (typeof currentPos == 'number') {
		if (currentPos != finalPos) {
			var scrollAmount = Math.abs(finalPos - currentPos);
			if      (scrollAmount > 300) scrollAmount = 30;
			else if (scrollAmount >  30) scrollAmount = Math.floor(scrollAmount/10);
			else if (scrollAmount >  12) scrollAmount = 2
			else  scrollAmount =  1;
			var newPos = (currentPos < finalPos ? currentPos+scrollAmount : currentPos-scrollAmount);
			anchorObj.offsetParent.scrollTop = newPos;
//		alert(nextPos);	
//		if (confirm('scrollingNewsMove("'+anchorId+'",'+nextPos+','+finalPos+',"'+finalAction+'")')) 
			setTimeout('scrollingNewsMove("'+anchorId+'",'+finalPos+',"'+finalAction+'")',75);
		}
		else eval(finalAction);
	}
	else {
	// need code for NETSCAPE 6
//		alert(currentPos)  
//		alert(window.pageYOffset)
//		window.scrollBy(0,74);
//		eval(finalAction);
	}
}

function itemDate(yyyySmmSdd) {
	var datePart = new Array();
	datePart = yyyySmmSdd.split(/\//);
	var sep = '.';
	articleObj['date'] += datePart[2]+sep+datePart[1]+sep+datePart[0];
}

function itemHeadline(headline) {
	articleObj['headline'] += headline;
}

function itemDesc(text) {
	articleObj['shortDescription'] += text;
}

function itemFullDesc(text) {
	articleObj['fullDescription'] += text;
}

function itemType(newsEtc) {
	articleObj['type'] = newsEtc;
}

function itemImage1(imgSrc) {
	articleObj['image1'] = imgSrc;
}
function itemImage2(imgSrc) {
	articleObj['image2'] = imgSrc;
}

function itemCurrent(yesNo) {}

function itemAge(liveArchive) {
	articleObj['age'] = liveArchive;
}

function itemTemplate(template) {
	articleObj['template'] += template;
}

function itemAdvert(imgSrc) {
	articleObj['adImage'] = imgSrc;
}
function itemAdLink(href) {
	articleObj['adHref'] = href;
}

function itemId(num) {
	articleObj['id'] += num;
}
function itemMag(mag) {
	articleObj['mag'] += mag;
}


