function getElement(id,win)

{

	doc = win ? win.document : document;

	elem = doc.getElementById ? doc.getElementById(id) : doc.all[id];

	if (!elem)

		alert("element " + id + " not found");

	return elem;

}

function getWindowInnerHeight(win)

{

	if(navigator.appName.indexOf("Microsoft") != -1 && navigator.platform.indexOf("Win") != -1)

		return win.document.body.clientHeight;

	else

		return win.innerHeight;

}

function getWindowInnerWidth(win)

{

	if(navigator.appName.indexOf("Microsoft") != -1 && navigator.platform.indexOf("Win") != -1)

		return win.document.body.clientWidth;

	else

		return win.innerWidth;

}

function getSearchParameter(p)

{

	var s = window.document.location.search;

	p = p + "=";

	pa = "&" + p;

	i = s.indexOf(pa);

	if (i != -1)

		s = s.slice(i + pa.length);

	else

	{

		i = s.indexOf(p);

		s = s.slice(i + p.length);

	}

	if (s.indexOf("&") > -1)

		s = s.slice(0, s.indexOf("&"));

	if (s == "")

		alert ("Search Parameter " + p + " not found in " + window.document.location.search);

	return s;

}

function quickSearch()

{

	recordView = getSearchParameter("recordView");

	f = getElement("QuickSearchForm");

	f.action = "RecordViewTitle.jsp?recordView=" + recordView;

	f.submit();

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView;

}

function openSearchWindow()

{

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";

	window.open("SearchFormMore.jsp?recordView=" + recordView, "Search", sOpt);

}

function openCategorySearchWindow()

{

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";

	window.open("SearchCategoryForm.jsp?recordView=" + recordView, "Search", sOpt);

}

function findAllCategories()

{

	recordView = getSearchParameter("recordView");

	parent.treeWindow.location = "FindAllCategories.jsp?recordView=" + recordView;

}

function openCatalogingWindow()

{

	var cats = parent.treeWindow.selected;

	var catsFoundToUse = null;

	for (var categoryInfoKey in cats)

	{

		var categoryInfo = cats[categoryInfoKey];

		if (categoryInfo != null)

		{

			var catalogID = categoryInfo[0];

			var categoryID = categoryInfo[1];

			var categoryName = categoryInfo[2];

			var categoryType = categoryInfo[3];

			if (categoryType == 0 || categoryType == 4 || categoryType == 8 ||

				categoryType == 24 || categoryType == 40 || categoryType == 64)

			{

				if (catsFoundToUse != null)

				{

					catsFoundToUse = catsFoundToUse+",";

				}

				catsFoundToUse = catsFoundToUse+catalogID+":"+categoryID;

			}

		}

	}

	if (catsFoundToUse != null)

	{

		catsFoundToUse = "&categories=" + catsFoundToUse;

	}

	else

	{

		catsFoundToUse = "";

	}

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=400,height=300";

	window.open("AddFileToCatalog.jsp?recordView=" + recordView + catsFoundToUse, "AddFileToCatalog", sOpt);

}

function openCheckoutWindow(catalogId,recordId)

{

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";

	window.open("Checkout.jsp?recordView=" + recordView + "&recordID=" + recordId + "&catalogID=" + catalogId, "Checkout", sOpt);

}

function undoCheckout(w, catalogID, recordID)

{

	recordView = getSearchParameter("recordView");

	w.parent.invisibleFrame.location = "UndoCheckout.jsp?recordView=" + recordView + "&catalogID=" + catalogID + "&recordID=" + recordID;

}

function openCheckinWindow(catalogId,recordId)

{

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";

	window.open("Checkin.jsp?recordView=" + recordView + "&recordID=" + recordId + "&catalogID=" + catalogId, "Checkin", sOpt);

}

function openDeleteRecordConfirmationWindow(catalogId,recordId)

{

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";

	window.open("DeleteRecordWindow.jsp?recordView=" + recordView + "&recordID=" + recordId + "&catalogID=" + catalogId, "Delete", sOpt);

}

function changeCollection(collectionName)

{

	recordView = getSearchParameter("recordView");

	recordView = collectionName + recordView.slice(recordView.indexOf("_"));

//	f = getElement("ViewControlForm");

//	f.action = "RecordViewTitle.jsp?recordView=" + recordView;

//	f.submit();

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView;

	window.location = "RecordViewTitle.jsp?recordView=" + recordView;

}

function changeView(viewName)

{

	recordView = getSearchParameter("recordView");

	recordView = recordView.slice(0, recordView.indexOf("_") + 1) + viewName;

	f = getElement("ViewControlForm");

	f.action = "RecordViewTitle.jsp?recordView=" + recordView;

	f.submit();

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView;

}

function changeRows(rows)

{

	recordView = getSearchParameter("recordView");

	f = getElement("ViewControlForm");

	f.action = "RecordViewTitle.jsp?recordView=" + recordView + "&rows=" + rows;

	f.submit();

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&rows=" + rows;

}

function changeCols(cols)

{

	recordView = getSearchParameter("recordView");

	f = getElement("ViewControlForm");

	f.action = "RecordViewTitle.jsp?recordView=" + recordView + "&cols=" + cols;

	f.submit();

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&cols=" + cols;

}

function changeImageSize(imageSize)

{

	recordView = getSearchParameter("recordView");

	f = getElement("ViewControlForm");

	f.action = "RecordViewTitle.jsp?recordView=" + recordView + "&imageSize=" + imageSize;

	f.submit();

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&imageSize=" + imageSize;

}

function gotoPage(page)

{

	recordView = getSearchParameter("recordView");

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&page=" + page;

	window.location = "RecordViewTitle.jsp?recordView=" + recordView + "&page=" + page;

}

function openViewPage(w, viewName, page)

{

	recordView = getSearchParameter("recordView");

	recordView = recordView.slice(0, recordView.indexOf("_") + 1) + viewName;

	w.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&page=" + page;

	w.parent.RecordViewTitle.location = "RecordViewTitle.jsp?recordView=" + recordView + "&page=" + page;

}

/* got ot a specific collection retaining the current view variation */

function gotoCollectionPage(collName, page)

{

	recordView = getSearchParameter("recordView");

	recordView = collName + recordView.slice(recordView.indexOf("_"));

	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&page=" + page;

	window.parent.RecordViewTitle.location = "RecordViewTitle.jsp?recordView=" + recordView + "&page=" + page;

}

function openOriginal(catalogID, recordID, assetName)

{

	recordView = getSearchParameter("recordView");

	sOpt = "toolbar=no,scrollbars=yes,status=no,resizable=yes,menubar=no,location=no,dependent=yes";

	sURL = "AssetServlet/" + assetName + "?recordView=" + recordView + "&catalogID=" + catalogID + "&recordID=" + recordID + "&errorURL=../Error.jsp";

	window.open(sURL, "Preview_" + catalogID + "_" + recordID, sOpt);

}

function addToCollectionBasket(w, catalogID, recordID)

{

	recordView = getSearchParameter("recordView");

	w.parent.invisibleFrame.location = "AddToCollectionBasket.jsp?recordView=" + recordView + "&catalogID=" + catalogID + "&recordID=" + recordID;

}

function removeFromCollectionBasket(w, catalogID, recordID)

{

	recordView = getSearchParameter("recordView");

	w.parent.invisibleFrame.location = "RemoveFromCollectionBasket.jsp?recordView=" + recordView + "&catalogID=" + catalogID + "&recordID=" + recordID;

}

function emptyCollectionBasket(w)

{

	recordView = getSearchParameter("recordView");

	w.parent.invisibleFrame.location = "EmptyCollectionBasket.jsp?recordView=" + recordView;

}

