/*														 */
/*	JS functions needed for various basic WNP functions	 */
/*														 */

var isNav = (navigator.appName.indexOf("Netscape") > -1);
var isIE = (navigator.appName.indexOf("Explorer") > -1);
var isSafari = (navigator.appVersion.indexOf("Safari") > -1);
var begin = isIE ? (navigator.appVersion.indexOf("MSIE") + 5) : 0;
var end = navigator.appVersion.indexOf('.', begin);
var appVersionMajor = new Number(navigator.appVersion.substring(begin,
		(end > -1) ? end : navigator.appVersion.length() - 1));
var isNav4OrBetter = isNav && (appVersionMajor >= 4);
var isNav5OrBetter = isNav && (appVersionMajor >= 5);
var isNav6OrBetter = isNav && (appVersionMajor >= 6);
var isIE4OrBetter = isIE && (appVersionMajor >= 4);
var isIE5OrBetter = isIE && (appVersionMajor >= 5);
var isIE6OrBetter = isIE && (appVersionMajor >= 6);
var isIE7OrBetter = isIE && (appVersionMajor >= 7);
var isWindows = (navigator.platform.indexOf("Win") >= 0);
var isUnix = (navigator.platform.indexOf("nix") >= 0);
var isMac = (navigator.platform.indexOf("Mac") >= 0);
var onChildOpened = null;
var onChildOpenedArgs = null;
var basketWindow = null;
var currentpreview = new Array();
var spreadlinks = new Array();
var smallspread = null;

var getPlugins = canDetectPlugins();
var vidPlayer = getCookie('_Player_Preferred');

if (vidPlayer == null && getPlugins) {
	findBestPlayer();
}

function findBestPlayer() {
	var c = "_Player_Preferred";
	var Flash = detectFlash();
	var QT = detectQuickTime();
	var WM = detectWindowsMedia();
	if (WM) {
		vidPlayer = "_Player_WindowsMedia";
		setCookie(vidPlayer, true, 365, '/PORTAL/');
	}
	if (QT) {
		vidPlayer = "_Player_Quicktime";
		setCookie(vidPlayer, true, 365, '/PORTAL/');
	}
	if (Flash) {
		vidPlayer = "_Player_Flash";
		setCookie(vidPlayer, true, 365, '/PORTAL/');
	}
	if (isWindows) {
		vidPlayer = "WindowsMedia";
		setCookie(c, vidPlayer, 365, '/PORTAL/');
	} else if (isMac) {
		vidPlayer = "Quicktime";
		setCookie(c, vidPlayer, 365, '/PORTAL/');
	} else {
		vidPlayer = "Flash";
		setCookie(c, vidPlayer, 365, '/PORTAL/');
	}
}

function isDef(variable) {
	if (!variable && variable != 0 && variable != "") {
		return false;
	}
	return true;
}
function n2sz(number, digitCount) {
	var results = "";
	number = new Number(number);
	results = new String(number + Math.pow(10, digitCount));
	results = results.substr(results.length - digitCount);
	return results;
}
function windowWidth() {
	var windowWidth = 800;
	if (typeof (window.innerWidth) == 'number') {
		windowWidth = window.innerWidth;
	} else {
		if (document.documentElement && document.documentElement.clientWidth) {
			windowWidth = document.documentElement.clientWidth;
		} else {
			if (document.body && document.body.clientWidth) {
				windowWidth = document.body.clientWidth;
			}
		}
	}
	return windowWidth;
}
function windowHeight() {
	var windowHeight = 600;
	if (typeof (window.innerHeight) == 'number') {
		windowHeight = window.innerHeight;
	} else {
		if (document.documentElement && document.documentElement.clientHeight) {
			windowHeight = document.documentElement.clientHeight;
		} else {
			if (document.body && document.body.clientHeight) {
				windowHeight = document.body.clientHeight;
			}
		}
	}
	return windowHeight;
}

function setSmallPreview(fid, name, path, server, siteurl, numpreviews,
		lang, preview) {

	if( document.getElementById(fid + name) ) {
		if (!isDef(currentpreview[fid])) {
			currentpreview[fid] = 0;
		}
		currentpreview[fid] = preview + 1;
		switchSmallPreview(fid, name, path, server, siteurl, numpreviews,
				lang, false);
	}
}


function switchSmallPreview(fid, name, path, server, siteurl, numpreviews,
		lang, advance, mview) {
	var pageInput = document.getElementById("pageinput")
	var shiftAmount = (advance) ? 1 : -1;
	if (!isDef(currentpreview[fid])) {
		currentpreview[fid] = 0;
	}
	currentpreview[fid] += shiftAmount;
	if (currentpreview[fid] >= numpreviews) {
		currentpreview[fid] = numpreviews - 1;
	} else if (currentpreview[fid] < 0) {
		currentpreview[fid] = 0;
	}
	var mview_link = "/PORTAL/MVIEW.php?server=" + server
					+ "&siteurl=" + siteurl + "&spreadnumber="
					+ currentpreview[fid] + "&fileid=" + fid;
	if (mview == 'true') {
		function query() {
			window.location.href = mview_link;
			return false;
		}
		document.getElementById("PL" + fid + name).onclick = query;
	}
	if (document.getElementById("APL" + fid + name))
		document.getElementById("APL" + fid + name).href = mview_link;
	if (isDef(smallspread)) {
		document.getElementById(fid + name).width = smallspread[fid][currentpreview[fid]].right;
		document.getElementById(fid + name).height = smallspread[fid][currentpreview[fid]].bottom;
	}
	document.getElementById(fid + name).src = '/PORTAL/GETIMAGE.php?spread='
			+ (currentpreview[fid] ) + '&type=small&id=' + fid + '&path='
			+ path;
	MM_setTextOfLayer(fid + 'pagenumber', '', lang + ' '
			+ (currentpreview[fid] + 1) + ' / ' + numpreviews + ' ');

	if( pageInput ) {
		pageInput.value = currentpreview[fid] + 1
	}
}
function switchLargePreview(fid, name, path, server, siteurl, numpreviews,
		lang, advance, mview) {
	var pageInput = document.getElementById("pageinput")
	var shiftAmount = (advance) ? 1 : -1;
	if (!isDef(currentpreview[fid])) {
		currentpreview[fid] = 0;
	}
	currentpreview[fid] += shiftAmount;
	if (currentpreview[fid] >= numpreviews) {
		currentpreview[fid] = numpreviews - 1;
	} else if (currentpreview[fid] < 0) {
		currentpreview[fid] = 0;
	}
	var mview_link = "/PORTAL/MVIEW.php?server=" + server
					+ "&siteurl=" + siteurl + "&spreadnumber="
					+ currentpreview[fid] + "&fileid=" + fid;
	if (mview == 'true') {
		function query() {
			window.location.href = mview_link;
			return false;
		}
		document.getElementById("PL" + fid + name).onclick = query;
	}
	if (document.getElementById("APL" + fid + name))
		document.getElementById("APL" + fid + name).href = mview_link;
	if (isDef(largespread)) {
		document.getElementById(fid + name).width = largespread[fid][currentpreview[fid]].right;
		document.getElementById(fid + name).height = largespread[fid][currentpreview[fid]].bottom;
	}
	document.getElementById(fid + name).src = '/PORTAL/GETIMAGE.php?spread='
			+ (currentpreview[fid] ) + '&type=large&id=' + fid + '&path='
			+ path;
	MM_setTextOfLayer(fid + 'pagenumber', '', lang + ' '
			+ (currentpreview[fid] + 1) + ' / ' + numpreviews + ' ');

	if( pageInput ) {
		pageInput.value = currentpreview[fid] + 1
	}
}
function setDate(kwid) {
	var now = new Date();
	var date = n2sz(now.getDate(), 2);
	var month = n2sz(now.getMonth() + 1, 2);
	var year = now.getYear();
	var hours = "12";
	var minutes = "00";
	var seconds = "00";
	if (year < 2000) {
		if (year > 100) {
			year += 1900;
		} else {
			year += 2000;
		}
	}
	if (document.getElementById(kwid + "[0]"))
		document.getElementById(kwid + "[0]").value = year;
	if (document.getElementById(kwid + "[1]"))
		document.getElementById(kwid + "[1]").value = month;
	if (document.getElementById(kwid + "[2]"))
		document.getElementById(kwid + "[2]").value = date;
	if (document.getElementById(kwid + "[3]"))
		document.getElementById(kwid + "[3]").value = hours;
	if (document.getElementById(kwid + "[4]"))
		document.getElementById(kwid + "[4]").value = minutes;
	if (document.getElementById(kwid + "[5]"))
		document.getElementById(kwid + "[5]").value = seconds;
	if (document.getElementById(kwid + "[YEAR]"))
		document.getElementById(kwid + "[YEAR]").value = year;
	if (document.getElementById(kwid + "[MONTH]"))
		document.getElementById(kwid + "[MONTH]").value = month;
	if (document.getElementById(kwid + "[DAY]"))
		document.getElementById(kwid + "[DAY]").value = date;
	if (document.getElementById(kwid + "[HOUR]"))
		document.getElementById(kwid + "[HOUR]").value = hours;
	if (document.getElementById(kwid + "[NUTE]"))
		document.getElementById(kwid + "[NUTE]").value = minutes;
	if (document.getElementById(kwid + "[SECS]"))
		document.getElementById(kwid + "[SECS]").value = seconds;
}
function setCookie(name, value, days, path) {
	if (path == "" || !path)
		path = "/";
	if (days) {
		var date = new Date();
		date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
		var expires = "; expires=" + date.toGMTString();
	} else
		var expires = "";
	document.cookie = name + "=" + value + expires + "; path=" + path;
}
function getCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for ( var i = 0; i < ca.length; i++) {
		var c = ca[i];
		while (c.charAt(0) == ' ')
			c = c.substring(1, c.length);
		if (c.indexOf(nameEQ) == 0)
			return c.substring(nameEQ.length, c.length);
	}
	return null;
}
function eraseCookie(name) {
	setCookie(name, "", -1, "");
}
/*                                   */
/* JS functions for MVIEW operations */
/*                                   */

function linkdata(p, x, y, w, h) {
	this.path = p
	this.coor1 = x
	this.coor2 = y
	this.coor3 = w
	this.coor4 = h
}

/*
 * safari switches between HTMLFrameElement and DOMWindow when switching pages
 * around in mview. This function will always get us a valid DOMWindow.
 */

function getMainFrame() {
	var result = parent.mainFrame

	if( result ) {
		if( result.contentWindow ) {
			result = result.contentWindow
		}
	}

	return result
}

function checkForUnsavedAnnotations() {
	var annotFrame = getMainFrame()

	if (annotFrame) {

		if (annotFrame.checkSaveState) {
			var result = annotFrame.checkSaveState()

			if (result != "") {
				result = confirm(result)

				if (result) {
					annotFrame.enableSaveState(false)
					annotFrame.checkSaveState = null
				}

				return !result
			}
		}
	}
	return false
}


function toggleSpreadMode(mode, sn, f, fid, serverid, w, h, spreadlinks, offset, size, hasannotations) {
	if( !checkForUnsavedAnnotations() ) {
		var value = getCookie(mode)

		if( value == "true" ) {
			value = "false"
		} else {
			value = "true"
		}

		setCookie(mode, value, 365, "/PORTAL/")

		setSPREAD(sn, f, fid, serverid, w, h, spreadlinks, offset, size, hasannotations)
	}
}


function setSPREAD(sn, f, fid, serverid, w, h, spreadlinks, offset, size,
		hasannotations) {

	if (!checkForUnsavedAnnotations()) {
		var showannot = (getCookie("WNPANNOTATIONS") == "true")
		var showscale = (getCookie("WNPSCALEFIT") == "true")

		if (fid > 0) {
			parent.toolbarFrame.location.replace( "/PORTAL/MTOOLBAR.php?server="
					+ serverid + "&spreadnumber=" + sn + "&fileid=" + fid );
			parent.linksFrame.location.replace( "/PORTAL/MLINKS.php?server="
					+ serverid + "&spreadnumber=" + sn + "&fileid=" + fid );
		} else {
			parent.toolbarFrame.location.replace( "/PORTAL/MTOOLBAR.php?server="
					+ serverid + "&spreadnumber=" + sn + "&file=" + f );
			parent.linksFrame.location.replace( "/PORTAL/MLINKS.php?server="
					+ serverid + "&spreadnumber=" + sn + "&file=" + f);
		}

		if (showannot || (hasannotations && !showscale)) {
			annotationSPREAD(sn, f, fid, serverid);
		} else {
			if (w == 0 && h == 0) {
				parent.mainFrame.document.open("text/html", "replace");
				parent.mainFrame.document.writeln("<body>");
				parent.mainFrame.document.writeln(lang_nopreview);
				parent.mainFrame.document.writeln("</map>");
				parent.mainFrame.document.writeln("</body>");
				parent.mainFrame.document.close();
				return;
			}

			if (showscale) {
				fullSPREAD(sn, f, fid, serverid, w, h, spreadlinks, offset,
						size);
			} else {
				fitSPREAD(sn, f, fid, serverid, w, h, spreadlinks, offset, size);
			}
		}
	}
}


function annotationSPREAD(sn, f, fid, serverid) {
	if (!checkForUnsavedAnnotations()) {
		var forceFit = getCookie("WNPSCALEFIT") == "true"

		/* safari hacks */
		if( parent.mainFrame.src ) {
			parent.mainFrame.src = "/PORTAL/ANNOTATIONS.php?spread=" + sn
				+ "&file=" + f + "&fileid=" + fid + "&server=" + serverid
				+ "&fittoscreen=" + ( forceFit ? "0" : "1" )
		}

		parent.mainFrame.location.replace( "/PORTAL/ANNOTATIONS.php?spread=" + sn
			+ "&file=" + f + "&fileid=" + fid + "&server=" + serverid
			+ "&fittoscreen=" + ( forceFit ? "0" : "1" ) )
	}
}


function fullSPREAD(sn, f, fid, serverid, w, h, spreadlinks, offset, size) {
	if (!checkForUnsavedAnnotations()) {
		var mainFrame = getMainFrame()

		mainFrame.document.open("text/html", "replace");
		mainFrame.document.writeln("<body>");
		if (offset == 0) {
			mainFrame.document.writeln("<a href='/PORTAL/IMAGEINFO.php?file="
							+ f
							+ "' target='_top'><img src='/PORTAL/GETIMAGE.php?spread="
							+ (sn)
							+ "&type=eweb&id="
							+ fid
							+ "&path="
							+ f
							+ "' width='"
							+ w
							+ "' height='"
							+ h
							+ "' border='0' name='spreadmap' usemap='#spreadmap'></a>");
		} else {
			mainFrame.document.writeln("<a href='/PORTAL/IMAGEINFO.php?file="
							+ f
							+ "' target='_top'><img src='/PORTAL/IMAGEORDER.php?process=true&webready=true&format=progjpg95&pict="
							+ offset
							+ ","
							+ size
							+ "&file="
							+ f
							+ "' width='"
							+ w
							+ "' height='"
							+ h
							+ "' border='0' name='spreadmap' usemap='#spreadmap'></a>");
		}
		mainFrame.document.writeln("<map name='spreadmap' id='spreadmap'>");
		if (spreadlinks) {
			for ( var i = 0; i < spreadlinks.length; i++) {
				mainFrame.document.writeln("<area shape='rect' coords='"
						+ spreadlinks[i]['coor1'] + ","
						+ spreadlinks[i]['coor2'] + ","
						+ spreadlinks[i]['coor3'] + ","
						+ spreadlinks[i]['coor4']
						+ "' href='/PORTAL/IMAGEINFO.php?file="
						+ spreadlinks[i]['path'] + "' target='_blank'>");
			}
		}
		mainFrame.document.writeln("</map>");
		mainFrame.document.writeln("</body>");
		mainFrame.document.close();
	}
}
function fitSPREAD(sn, f, fid, serverid, w, h, spreadlinks, offset, size) {
	function scaleFIT() {
		var winwidth = 800;
		var winheight = 600
		if (navigator.appName == "Netscape") {
			winwidth = parent.mainFrame.innerWidth;
			winheight = parent.mainFrame.innerHeight;
		} else {
			winwidth = parent.mainFrame.document.body.clientWidth;
			winheight = parent.mainFrame.document.body.clientHeight;
		}
		winwidth -= 30;
		winheight -= 30;
		if (winwidth < winheight) {
			var scale = (winwidth / w);
		} else {
			if ((winheight / w) + ((winheight / h) - (winheight / w)) < (winwidth / w)) {
				var scale = (winheight / w) + ((winheight / h) - (winheight / w));
			} else {
				var scale = (winwidth / w);
			}
		}
		return scale;
	}

	if (!checkForUnsavedAnnotations()) {
		var mainFrame = getMainFrame()

		mainFrame.document.open("text/html", "replace");
		mainFrame.document.writeln("<body>");
		if (offset == 0) {
			mainFrame.document.writeln("<a href='/PORTAL/IMAGEINFO.php?file="
							+ f
							+ "' target='_top'><img src='/PORTAL/GETIMAGE.php?spread="
							+ (sn)
							+ "&type=eweb&id="
							+ fid
							+ "&path="
							+ f
							+ "' width='"
							+ Math.round(w * scaleFIT())
							+ "' height='"
							+ Math.round(h * scaleFIT())
							+ "'	border='0' name='spreadmap' usemap='#spreadmap'></a>");
		} else {
			mainFrame.document.writeln("<a href='/PORTAL/IMAGEINFO.php?file="
							+ f
							+ "' target='_top'><img src='/PORTAL/IMAGEORDER.php?process=true&webready=true&format=progjpg95&pict="
							+ offset
							+ ","
							+ size
							+ "&file="
							+ f
							+ "' width='"
							+ Math.round(w * scaleFIT())
							+ "' height='"
							+ Math.round(h * scaleFIT())
							+ "'	border='0' name='spreadmap' usemap='#spreadmap'></a>");
		}
		mainFrame.document.writeln("<map name=\"spreadmap\">");
		if (spreadlinks) {
			for ( var i = 0; i < spreadlinks.length; i++) {
				mainFrame.document.writeln("<area shape=\"rect\" coords=\""
								+ Math.round(spreadlinks[i]['coor1']
										* scaleFIT())
								+ ","
								+ Math.round(spreadlinks[i]['coor2']
										* scaleFIT())
								+ ","
								+ Math.round(spreadlinks[i]['coor3']
										* scaleFIT())
								+ ","
								+ Math.round(spreadlinks[i]['coor4']
										* scaleFIT())
								+ "\" href=\"/PORTAL/IMAGEINFO.php?file="
								+ spreadlinks[i]['path']
								+ "\" target=\"_blank\">");
			}
		}
		mainFrame.document.writeln("</map>");
		mainFrame.document.writeln("</body>");
		mainFrame.document.close();
	}
}

/*										*/
/* JS functions for basket operations */
/*										*/

function OpenBasketWindow(sURL, server) {
	if (basketWindow && !basketWindow.closed && !isSafari) {
		handleOpenBasketWindow(basketWindow, sURL, server);
	} else {
		openBlankWindow('basketWindow',
				'toolbar=no,resizable=yes,scrollbars=yes,width=600,height=600',
				handleOpenBasketWindow, sURL, server);
	}
}

function handleOpenBasketWindow(newWin, sURL, server) {
	handleBasket(sURL, server);
	basketWindow = newWin;
	bDoc = basketWindow.document;
	bDoc.open();
	bDoc.writeln("<BODY><FORM METHOD=POST ACTION='/PORTAL/BASKETCONTROL.php'>");
	bDoc.writeln("<INPUT TYPE=hidden NAME=controlpath VALUE='" + sURL + "'>");
	bDoc.writeln("<INPUT TYPE=hidden NAME=server VALUE='" + server + "'>");
	bDoc.writeln("</FORM></BODY>");
	bDoc.close();
	bDoc.forms[0].submit();
}

function handleBasket(sURL, server) {
	var c = "basket.checked.gif";
	var u = "basket.gif";
	var img = document.images;
	var lnk = document.links;
	if (sURL == null) {
		for ( var i = 0; i < img.length; i++) {
			var bskImg = $(img[i]);
			if (bskImg.src != null && bskImg.src.search(c) > 0) {
				setAddBasket(bskImg, sURL, server);
			} else if (bskImg.src != null && bskImg.src.search(u) > 0) {
				setRemoveBasket(bskImg, sURL, server);
			}
		}
	} else {
		var bskImg = $(sURL);
		if (bskImg) {
			if (bskImg.src != null && bskImg.src.search(c) > 0) {
				setAddBasket(bskImg, sURL, server);
			} else if (bskImg.src != null && bskImg.src.search(u) > 0) {
				setRemoveBasket(bskImg, sURL, server);
			}
		}
	}
}

function setRemoveBasket(bskImg, sURL, server) {
	var a = bskImg.up(0);
	var ac = a.readAttribute('onclick');
	var nc = ac.gsub( 'addbasket','removebasket' );
	if (isIE) {
		a.onclick = function () {
			OpenBasketWindow(sURL, server);
			return false;
		};
	} else {
		a.writeAttribute( 'onclick', nc );
	}
	bskImg.writeAttribute ('src',siteurl + '/templates/images/basket.checked.gif');
}

function setAddBasket(bskImg, sURL, server) {
	var a = bskImg.up(0);
	var ac = a.readAttribute('onclick');
	var nc = ac.gsub('removebasket', 'addbasket');
	if (isIE) {
		a.onclick = function () {
			OpenBasketWindow(sURL, server);
			return false;
		};
	} else {
		a.writeAttribute( 'onclick', nc );
	}
	bskImg.writeAttribute ('src',siteurl + '/templates/images/basket.gif');
}

function FocusBasket() {
	basketWindow = window.open("/PORTAL/BASKETCONTROL.php", "basketWindow",
			"toolbar=no,resizable=yes,scrollbars=yes,width=600,height=600")
	basketWindow.focus()
	return true
}

function ClearBasket() {
	ancestor = self;
	while (ancestor['opener'] && !ancestor['opener'].closed)
		ancestor = ancestor['opener'];
	ancestor.parent.window.opener.location.reload();
}

function openBlankWindow(name, windowArgs, handlerFunction, funcArgs1,
		funcArgs2) {
	if (!name) {
		name = "childWindow";
	}
	if (!windowArgs) {
		windowArgs = "";
	}
	onChildOpened = handlerFunction;
	onChildOpenedArgs1 = funcArgs1;
	onChildOpenedArgs2 = funcArgs2;
	name = window.open(siteurl + "/templates/blank.html", name, windowArgs);
	if (!name.opener)
		name.opener = self;
}

function OpenPlugin(sURL) {
	var w = window.open(sURL, "pluginWindow",
			"toolbar=no,resizable=yes,scrollbars=yes,width=540,height=380");
	w.focus();
}

function getURLargs() {
	var args = new Object();
	var query = location.search.substring(1);
	var pairs = query.split("&");
	for ( var i = 0; i < pairs.length; i++) {
		var pos = pairs[i].indexOf('=');
		if (pos == -1)
			continue;
		var argname = pairs[i].substring(0, pos);
		var value = pairs[i].substring(pos + 1);
		args[argname] = unescape(value);
	}
	return args;
}
var args = getURLargs();

function doZip() {
	var s = document.dlForm.archName.value
	var l = s.length
	if (s.substring(l - 4, l).toLowerCase() == ".sit") {
		document.dlForm.archName.value = s.substring(0, l - 3) + "zip"
	}
}

function doSit() {
	var s = document.dlForm.archName.value
	var l = s.length
	if (s.substring(l - 4, l).toLowerCase() == ".zip") {
		document.dlForm.archName.value = s.substring(0, l - 3) + "sit"
	}
}

function addSearchfield() {
	MM_findObj('addfield').value = 1;
	document.search.submit();
}

function removeSearchfield(i) {
	MM_findObj('removefield_' + i).value = 1;
	document.search.submit();
}

function clearSearchfield() {
	MM_findObj('Clear').value = 1;
	document.search.submit();
}

/*												  */
/* JS functions for Custom Image Order Cropping */
/*												  */

// WN_Include_Safe
var pixelwidth = 0
var pixelheight = 0
var dpi = 0
function checkaspect() {
	if (!document.order.preserve || document.order.preserve.checked) {
		pixelheight = Math.round((pixelwidth / sourcewidth) * sourceheight)
	}
	return (pixelheight)
}
function makespot(name, c, m, y, k) {
	this.name = name
	this.cyan = c
	this.magenta = m
	this.yellow = y
	this.black = k
	return this
}
function toggleAspect() {
	preserveAspect = !preserveAspect;
	if (preserveAspect) {
		pixelheight = Math.round((pixelwidth / sourcewidth) * sourceheight)
		this.document.orderform.preserveAspect.value = true;
		setup()
	} else {
		this.document.orderform.preserveAspect.value = false;
	}
}
function checknumber(Field, integer) {
	var s = Field.value;
	var v = integer ? parseInt(s) : parseFloat(s);
	var dots = 0;
	for ( var i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if ((c < '0' || c > '9') && (integer || c != '.')) {
			v = 0;
			break;
		}
		if (c == '.') {
			if (dots) {
				v = 0;
				break;
			}
			dots++;
		}
	}
	if (v <= 0) {
		Field.focus();
		Field.select();
		alert(integer ? "This field must contain an integer greater than 0"
				: "This field must contain a number greater than 0");
		return (false);
	}
	return (v);
}
function checkNumberWithLimits(jsVarName, field, integer, lower, upper) {
	var s = field.value
	var v = integer ? parseInt(s) : parseFloat(s)
	var dots = 0
	for ( var i = 0; i < s.length; i++) {
		var c = s.charAt(i)
		if ((c < '0' || c > '9') && (integer || c != '.')) {
			v = false;
			break;
		}
		if (c == '.') {
			if (dots) {
				v = false;
				break;
			}
			dots++
		}
	}
	if (v != false) {
		if (lower > upper) {
			if (lower == 0 && v > upper) {
				v = false;
			} else if (lower > v && upper == 0) {
				v = false;
			}
		} else if (lower > v || v > upper) {
			v = false;
		}
	}
	if (v == false) {
		field.focus();
		field.select();
		alert("That value is not within the acceptable range");
		eval("field.value = " + jsVarName);
		return (false);
	} else {
		eval(jsVarName + " = " + v + ";");
	}
}
function setpixelwidth(w) {
	if (checknumber(w, 1)) {
		pixelwidth = checknumber(w, 1);
		if (preserveAspect) {
			pixelheight = Math.round((pixelwidth / sourcewidth) * sourceheight);
		}
		setup();
	}
}
function setpixelheight(h) {
	if (checknumber(h, 1)) {
		pixelheight = checknumber(h, 1);
		if (preserveAspect) {
			pixelwidth = Math.round((pixelheight / sourceheight) * sourcewidth);
		}
		setup();
	}
}
function checksizeh(h) {
	var he = checknumber(h, 0);
	if (he != false && he > 0) {
		if (sizeUnits == "dpcm") {
			pixelheight = Math.round((he / 2.54) * dpicalc);
		} else {
			pixelheight = Math.round(he * dpicalc);
		}
		if (preserveAspect) {
			pixelwidth = Math.round((pixelheight / sourceheight) * sourcewidth);
		}
		setup();
	}
}
function checksizew(w) {
	var wi = checknumber(w, 0);
	if (wi != false && wi > 0) {
		if (sizeUnits == "dpcm") {
			pixelwidth = Math.round((wi / 2.54) * dpicalc);
		} else {
			pixelwidth = Math.round(wi * dpicalc);
		}
		if (preserveAspect) {
			pixelheight = Math.round((pixelwidth / sourcewidth) * sourceheight);
		}
		setup()
	}
}
function changedpi(dpi) {
	var r = checknumber(dpi, 0);
	if (r != false && r > 0) {
		if (resUnits == "dpcm") {
			dpicalc = r * 2.54;
		} else {
			dpicalc = r;
		}
		setupres();
		setup();
	}
}
function checkpercent(textpercent) {
	var percent = checknumber(textpercent, 0);
	if (percent != false && percent > 0) {
		pixelwidth = Math.round(sourcewidth * (percent / 100));
		pixelheight = Math.round(sourceheight * (percent / 100));
		setup();
	}
}
function checkpage(pageinput) {
	var page = checknumber(pageinput, 1);

	if( page < 1 ) {
		page = 1;
	}
	if( page > pagecount ) {
		page = pagecount;
	}
	if( pageinput ) {
		pageinput.value = page;
	}
}
function setup() {
	if (pixelwidth == 0) {
		pixelwidth = sourcewidth;
	}
	if (pixelheight == 0) {
		pixelheight = sourceheight;
	}
	if (dpicalc == 0) {
		dpicalc = sourcedpi;
	}
	this.document.orderform.width.value = new String(pixelwidth);
	this.document.orderform.height.value = new String(pixelheight);
	if (sizeUnits == "dpcm") {
		this.document.orderform.textsizew.value = Math.round(pixelwidth * 254
				/ dpicalc) / 100.0;
		this.document.orderform.textsizeh.value = Math.round(pixelheight * 254
				/ dpicalc) / 100.0;
	} else {
		this.document.orderform.textsizew.value = Math.round(pixelwidth * 100
				/ dpicalc) / 100.0;
		this.document.orderform.textsizeh.value = Math.round(pixelheight * 100
				/ dpicalc) / 100.0;
	}
	this.document.orderform.textpct.value = Math.round(pixelwidth * 10000
			/ sourcewidth) / 100.0;

	if( this.document.orderform.spreadnum ) {
		this.document.orderform.spreadnum.value = page
		setSmallPreview(fileid,filename,filepath,server,siteurlb64,pagecount,"",page-1)
	}
}
function setupres() {
	if (pixelwidth == 0) {
		pixelwidth = sourcewidth;
	}
	if (pixelheight == 0) {
		pixelheight = sourceheight;
	}
	if (dpicalc == 0) {
		dpicalc = sourcedpi;
	}
	if (resUnits == "dpcm") {
		this.document.orderform.dpi.value = Math.round(dpicalc * 39.37007874) / 100.0;
	} else {
		this.document.orderform.dpi.value = Math.round(dpicalc * 100) / 100.0;
	}
}
function adjustCrop() {
	var crop = document.getElementById("crop")

	if( crop && !ispixels ) {
		if( crop.value != "" ) {
			var res = parseInt(document.orderform.dpi.value)
			var scale = res / sourcedpi
			var cropElements = crop.value.split(",")
			var newCrop = ""

			for( var i = 0 ; i < cropElements.length; ++i ) {
				newCrop += Math.round( parseInt(cropElements[i]) * scale ) + ","
			}
			crop.value = newCrop.substr(0,newCrop.length-1)
		}
	}
}
function setCrop(x, y, w, h) {
	cropX = x;
	cropY = y;
	cropH = h;
	cropW = w;
	if (w > 0 && h > 0) {
		pixelheight = h;
		pixelwidth = w;
	} else {
		pixelheight = sourceheight;
		pixelwidth = sourcewidth;
	}
	this.document.orderform.crop.value = cropX + "," + cropY + "," + cropW
			+ "," + cropH;
	setup();
	this.document.orderform.submit();
}
function getCropSpec() {
	var cropScale = scale.value;
	var cropSpec = "";
	cropSpec += (corner.x + ",");
	cropSpec += (corner.y + ",");
	cropSpec += (Math.round(preview.width * cropScale) + ",");
	cropSpec += Math.round(preview.height * cropScale);
	return cropSpec;
}
function openCropWindow() {
	var args = getCropWindowArgs();
	window.open(args[0], args[1], args[2]);
}
function getCropWindowArgs() {
	var swidth = Math.round((window.screen ? (screen.width <= 800) ? 640 : 800
			: 640) / 1.25);
	var sheight = Math.round((window.screen ? (screen.height <= 600) ? 480
			: 600 : 480) / 1.25);
	var height = sourceheight;
	var width = sourcewidth;
	var results = new Array();
	if (width > swidth) {
		width = swidth;
		height = Math.floor(sourceheight * (swidth / sourcewidth));
	}
	if (height > sheight) {
		height = sheight;
		width = Math.floor(sourcewidth * (sheight / sourceheight));
	}
	var cropImageArgs = width + "+" + height + "+-" + sourcewidth + ","
			+ sourceheight + "," + cropX + "," + cropY + "," + cropW + ","
			+ cropH + "+" + filepath;
	results[0] = "/PORTAL/CROPIMAGE.php?" + cropImageArgs;
	results[1] = "cropWin";
	results[2] = "resizable=yes,height=" + (height + 150) + ",width="
			+ (width + 50);
	return results;
}
function MM_findObj(n, d) { // v4.01
	var p, i, x;
	if (!d)
		d = document;
	if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
		d = parent.frames[n.substring(p + 1)].document;
		n = n.substring(0, p);
	}
	if (!(x = d[n]) && d.all)
		x = d.all[n];
	for (i = 0; !x && i < d.forms.length; i++)
		x = d.forms[i][n];
	for (i = 0; !x && d.layers && i < d.layers.length; i++)
		x = MM_findObj(n, d.layers[i].document);
	if (!x && d.getElementById)
		x = d.getElementById(n);
	return x;
}
function locateObject(n, d) { // v3.0
	var p, i, x;
	if (!d)
		d = document;
	if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
		d = parent.frames[n.substring(p + 1)].document;
		n = n.substring(0, p);
	}
	if (!(x = d[n]) && d.all)
		x = d.all[n];
	for (i = 0; !x && id.layers.length; i++)
		x = locateObject(n, d.layers[i].document);
	return x;
}
function MM_goToURL() { // v3.0
	var i, args = MM_goToURL.arguments;
	document.MM_returnValue = false;
	for (i = 0; i < (args.length - 1); i += 2)
		eval(args[i] + ".location='" + args[i + 1] + "'");
}
function MM_openBrWindow(theURL, winName, features) { // v2.0
	window.open(theURL, winName, features);
}
function MM_reloadPage(init) { // reloads the window if Nav4 resized
	if (init == true)
		with (navigator) {
			if ((appName == "Netscape") && (parseInt(appVersion) == 4)) {
				document.MM_pgW = innerWidth;
				document.MM_pgH = innerHeight;
				onresize = MM_reloadPage;
			}
		}
	else if (innerWidth != document.MM_pgW || innerHeight != document.MM_pgH)
		location.reload();
}
MM_reloadPage(true);
function MM_setTextOfLayer(objName, x, newText) { // v4.01
	if ((obj = MM_findObj(objName)) != null)
		with (obj)
			if (document.layers) {
				document.write(unescape(newText));
				document.close();
			} else
				innerHTML = unescape(newText);
}
function MM_showHideLayers() { // v6.0
	var i, p, v, obj, args = MM_showHideLayers.arguments;
	for (i = 0; i < (args.length - 2); i += 3)
		if ((obj = MM_findObj(args[i])) != null) {
			v = args[i + 2];
			if (obj.style) {
				obj = obj.style;
				v = (v == 'show') ? 'visible' : (v == 'hide') ? 'hidden' : v;
			}
			obj.visibility = v;
		}
}
function MM_setTextOfTextfield(objName, x, newText) { // v3.0
	var obj = MM_findObj(objName);
	if (obj)
		obj.value = newText;
}
function MM_displayStatusMsg(msgStr) { // v1.0
	status = msgStr;
	document.MM_returnValue = true;
}
function MM_changeProp(objName, x, theProp, theValue) { // v6.0
	var obj = MM_findObj(objName);
	if (obj && (theProp.indexOf("style.") == -1 || obj.style)) {
		if (theValue == true || theValue == false)
			eval("obj." + theProp + "=" + theValue);
		else
			eval("obj." + theProp + "='" + theValue + "'");
	}
}
function MM_preloadImages() { // v3.0
	var d = document;
	if (d.images) {
		if (!d.MM_p)
			d.MM_p = new Array();
		var i, j = d.MM_p.length, a = MM_preloadImages.arguments;
		for (i = 0; i < a.length; i++)
			if (a[i].indexOf("#") != 0) {
				d.MM_p[j] = new Image;
				d.MM_p[j++].src = a[i];
			}
	}
}
function MM_callJS(jsStr) { // v2.0
	return eval(jsStr)
}

