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()
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	f = getElement("QuickSearchForm");
	f.action = "RecordViewTitle.jsp?recordView=" + recordView;
	f.submit();
	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView;
}
function openSearchWindow()
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	sOpt = "toolbar=no,scrollbars=yes,status=no,statusbar=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";
	window.open("SearchForm.jsp?recordView=" + recordView, "Search", sOpt);
}
function openCategorySearchWindow()
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	sOpt = "toolbar=no,scrollbars=yes,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=100";
	window.open("SearchCategoryForm.jsp?recordView=" + recordView, "Search", sOpt);
}
function findAllCategories()
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	parent.treeWindow.location = "FindAllCategories.jsp?recordView=" + recordView;
}
function openCatalogingWindow()
{
	if (!checkChanged())
		return false;
	recordView = getSearchParameter("recordView");
	sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=300,height=300";
	window.open("Upload.jsp", "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)
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	sOpt = "toolbar=no,scrollbars=yes,status=no,menubar=no,resizable=no,location=no,dependent=yes,width=100,height=120";
	window.open("DeleteRecordWindow.jsp?recordView=" + recordView + "&recordID=" + recordId + "&catalogID=" + catalogId, "Delete", sOpt);
}
function changeCollection(collectionName)
{
	if (!checkChanged())
		return false;

	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;
}
function changeView(viewName)
{
	if (!checkChanged())
		return false;

	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)
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	f = getElement("ViewControlForm");
	i = getElement("ImageSize");
	i.value = imageSize;
	f.action = "RecordViewTitle.jsp?recordView=" + recordView + "&imageSize=" + imageSize;
	f.submit();
	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&imageSize=" + imageSize;
}
function gotoPage(page)
{
	if (!checkChanged())
		return false;

	recordView = getSearchParameter("recordView");
	window.parent.RecordViewContent.location = recordView + ".jsp?recordView=" + recordView + "&page=" + page;
	window.location = "RecordViewTitle.jsp?recordView=" + recordView + "&page=" + page;
}
/* got ot a specific collection retaining the current view variation */
function gotoCollectionPage(collName, page)
{
	if (!checkChanged())
		return false;

	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 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;
}
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;
}
function checkChanged()
{
	if (parent.RecordViewTitle.gChanged)
		return confirm("Sie haben Änderungen in den Datensatz-Informationen vorgenommen und nicht gesichert.\n\nWollen Sie dennoch fortfahren?");

	return true
}

function openProgressInWindow(recordView,jspPage,pageTitle,packaging,catalogID,recordID) {

	if (pageTitle == "Download") {
		jspPage = "DownloadInfo.jsp";
		sOpt = "toolbar=no,scrollbars=yes,status=no,menubar=no,resizable=yes,location=no,dependent=no,width=300,height=250";
	} else {
		sOpt = "toolbar=no,scrollbars=no,status=no,menubar=no,resizable=no,location=no,dependent=no,width=300,height=250";
	}
	
	s = jspPage + "?recordView="+recordView;
	if(catalogID != -1)
		s += "&catalogID=" + catalogID;
	if(recordID != -1)
		s += "&recordID=" + recordID;
	s += "&packaging=" + packaging;
	window.open(s, pageTitle, sOpt);
	
}

/* Fenster mit Nutzungsrechten öffnen */
function openUsageRights() {
	recordView = "SearchResult_ThumbnailView";
	sOpt = "toolbar=no,scrollbars=yes,status=yes,menubar=no,resizable=yes,location=no,dependent=yes,width=1070,height=700";
	window.open("http://media.messe-muenchen.de/Messe_Muenchen_d/index_Presse.jsp", "UsageRights", sOpt);
}
