var isPublishShown = false;var isSaved = false;var isCalendarClicked = false;var isSubmitted = false;function getCachePreventTime() {	 var now = new Date();	return "&rand=" + now.getTime() + escape( Math.round( Math.random() * 10000 ) );}function isValidImageFormat(fileName) {	if(fileName == "") return true;		var pos = fileName.lastIndexOf(".");	if(pos != -1) {		var extension =  fileName.substring(pos + 1, fileName.length).toLowerCase();				if(extension == "gif" || extension == "jpg" || extension == "jpeg" || extension == "png" || extension == "tiff") return true;		else return false;					}	else {		return false;	}}function isValidVideoFormat(fileName) {	if(fileName == "") return true;		var pos = fileName.lastIndexOf(".");	if(pos != -1) {		var extension =  fileName.substring(pos + 1, fileName.length).toLowerCase();				if(extension == "avi" || extension == "mpg" || extension == "mpeg" || extension == "wmv" || extension == "asf" || extension == "mov" || extension == "mp4" || extension == "3gp" || extension == "divx" || extension == "flv") return true;		else return false;					}	else {		return false;	}}function isValidFileFormat(fileName, validFileFormats) {	if (fileName == "") return true;	if (validFileFormats == "") return false;		var extension = getFileExtension(fileName);	if (extension != "") {		return (arrayGetIndex(validFileFormats.split(", "), extension) != -1)	}	else {		return false;	}}//validates pagesfunction validate() {	if (document.forms[0].Title.value == '') {		validationFailure(titleMsg);		return false;	}			var fileNameHeader = "";	var fileNameThumb = "";		if (document.getElementById("uploadheaderimage")) {		if (document.getElementById("uploadheaderimage").value != "") {			fileNameHeader = document.getElementById("uploadheaderimage").value;																							}	}		if (document.getElementById("uploadthumbimage")) {		if (document.getElementById("uploadthumbimage").value != "") {			fileNameThumb = document.getElementById("uploadthumbimage").value;																							}	}		if (!isValidImageFormat(fileNameHeader) || !isValidImageFormat(fileNameThumb)) {		validationFailure(imageFormatMsg + ": <br>gif, jpg, jpeg, png, tiff!");		return false;	}		if (pageKind == "news") {		if (document.forms[0].NewsDate.value == '') {			validationFailure(beginMsg);			return false;		}		else {			if (!isValidNewsDate()) {				validationFailure(labelInvalidDate);				return false;			 }		}						}	else if (pageKind == "event") {		if (document.forms[0].BeginDate.value == '') {			validationFailure(beginMsg);			return false;		}		else {			if (!isValidEventDate()) {				validationFailure(labelInvalidDate);				return false;			 }		}						}	else if (pageKind == "videos") {		if (document.getElementById("uploadNVideo")) {			if (document.getElementById("uploadNVideo").value != "") {				var fileName = document.getElementById("uploadNVideo").value;				if (!isValidFileFormat(fileName, document.getElementById("allowedfileformats").value)) {					validationFailure(videoFormatMsg + ": <br>" + document.getElementById("allowedfileformats").value + "!");					return false;				}													}					}					}	else if (pageKind == "excel") {		if (document.getElementById("uploadfile")) {			if (document.getElementById("uploadfile").value != "") {				var fileName = document.getElementById("uploadfile").value;				var pos = fileName.lastIndexOf(".");				if (pos != -1) {					var extension =  fileName.substring(pos + 1, fileName.length).toLowerCase();					if (extension != "xls") {						validationFailure(excelFileMsg);						return false;					}						}				else {					validationFailure(excelFileMsg);					return false;				}			}					}			}		return true;}//in image gallery writes name of new imagesfunction setAttachmentNames() {		if(pageKind == "gallery") {				var pos;		var fileName;				if (document.getElementById("upload_zip")) {			if (document.getElementById("upload_zip").value != "") {				fileName = document.getElementById("upload_zip").value;								if(fileName.indexOf("\\") != - 1) {					pos = fileName.lastIndexOf("\\");					fileName = fileName.substring(pos + 1, fileName.length);				}				else if(fileName.indexOf("/") != - 1) {					pos = fileName.lastIndexOf("/");					fileName = fileName.substring(pos + 1, fileName.length);				}				document.forms[0].elements["FileName_Zip"].value = fileName;			}		}				for(i = 1; i <= 10; i++) {			if (document.getElementById("upload_") + i) {				if (document.getElementById("upload_" + i).value != "") {					fileName = document.getElementById("upload_" + i).value;					if(fileName.indexOf("\\") != - 1) {						pos = fileName.lastIndexOf("\\");						fileName = fileName.substring(pos + 1, fileName.length);					}					else if(fileName.indexOf("/") != - 1) {						pos = fileName.lastIndexOf("/");						fileName = fileName.substring(pos + 1, fileName.length);					}					document.forms[0].elements["FileName_" + i].value = fileName;				}			}		}	}}//gets in image gallery changes of images and captionsfunction setGalleryChanges() {	var length = imageFileNames.length;	var imageNamesNew = "";	for(i = 0; i < length; i++) {		if(imageFileNames[i] != "") {			if(imageNamesNew != "") imageNamesNew += "###";			imageNamesNew += imageFileNames[i];		}	}		document.forms[0].ImagesFileName.value = imageNamesNew;		var caption;	var captions = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("captionentry" + entryNumbers[i])) {			caption = document.getElementById("captionentry" + entryNumbers[i]).value;			if(caption == "") caption = "&nbsp;";			if(captions != "") captions += "###";			captions += caption;		}	}	document.forms[0].ImagesCaption.value = captions;	}//gets in video gallery changes of titles, descriptions and thumbnail timefunction setVideosChanges() {	var length = videoFileNames.length;	var videoFileNamesNew = "";	for(i = 0; i < length; i++) {		if(videoFileNames[i] != "") {			if(videoFileNamesNew != "") videoFileNamesNew += "###";			videoFileNamesNew += videoFileNames[i];		}	}		document.forms[0].VideosFileName.value = videoFileNamesNew;		var val;	var values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("titleentry" + entryNumbers[i])) {			value = document.getElementById("titleentry" + entryNumbers[i]).value;			if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosTitle.value = values;			values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("descriptionentry" + entryNumbers[i])) {			value = document.getElementById("descriptionentry" + entryNumbers[i]).value;						value = value.replace(/\r\n/g, "#nl#");						value = value.replace(/\n/g, "#nl#");					if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosDescription.value = values;			values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("minuteentry" + entryNumbers[i])) {			value = document.getElementById("minuteentry" + entryNumbers[i]).value;			if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosThumbnailMinute.value = values;			values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("secondentry" + entryNumbers[i])) {			value = document.getElementById("secondentry" + entryNumbers[i]).value;			if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosThumbnailSecond.value = values;			values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("frameentry" + entryNumbers[i])) {			value = document.getElementById("frameentry" + entryNumbers[i]).value;			if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosThumbnailFrame.value = values;	}//gets in youtube video gallery changes of titles, descriptions and thumbnail timefunction setYouTubeVideosChanges() {	var length = videoIDs.length;	var videoIDsNew = "";	for(i = 0; i < length; i++) {		if(videoIDs[i] != "") {			if(videoIDsNew != "") videoIDsNew += "###";			videoIDsNew += videoIDs[i];		}	}		document.forms[0].VideosID.value = videoIDsNew;		var val;	var values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("titleentry" + entryNumbers[i])) {			value = document.getElementById("titleentry" + entryNumbers[i]).value;			if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosTitle.value = values;			values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("descriptionentry" + entryNumbers[i])) {			value = document.getElementById("descriptionentry" + entryNumbers[i]).value;						value = value.replace(/\r\n/g, "#nl#");						value = value.replace(/\n/g, "#nl#");					if(value == "") value = " ";			if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosDescription.value = values;			values = "";	for(i = 0; i < entryNumbers.length; i++) {		if(document.getElementById("toyoutubeentry" + entryNumbers[i])) {			value = document.getElementById("toyoutubeentry" + entryNumbers[i]).checked ? "1" : "0";						if(values != "") values += "###";			values += value;		}	}	document.forms[0].VideosToYouTube.value = values;				document.forms[0].VideosToYouTubeDelete.value = youTubeVideosToDelete;}//writes name of filefunction setFileName(id, name) {		var pos;	var fileName;	if (document.getElementById("upload" + id)) {		if (document.getElementById("upload" + id).value != "") {			fileName = document.getElementById("upload" + id).value;			if(fileName.indexOf("\\") != - 1) {				pos = fileName.lastIndexOf("\\");				fileName = fileName.substring(pos + 1, fileName.length);			}			else if(fileName.indexOf("/") != - 1) {				pos = fileName.lastIndexOf("/");				fileName = fileName.substring(pos + 1, fileName.length);			}			document.forms[0].elements[name + "Name"].value = fileName;			if (document.forms[0].elements["Is" + name + "Loaded"]) document.forms[0].elements["Is" + name + "Loaded"].value = "1";		}	}}//deletes filefunction deleteFile(id, name) {	document.getElementById("view" + id).style.display = "none";	document.getElementById("input" + id).style.display = "block";	document.forms[0].elements["Is" + name + "Deleted"].value = "1";	document.forms[0].elements[name + "Name"].value = "";		//document.getElementById("tabContent").style.height = tabHeights[selectedTab] + "px";	//var strTop = document.getElementById("ActionsBottom").style.top;	//var aTop = strTop.slice(0, strTop.length - 2);			//document.getElementById("ActionsBottom").style.top = new String(aTop - parseInt(tabHeights[selectedTab]) + parseInt(tabHeights[tab])) + "px";	//document.getElementById("ActionsBottom").style.top = new String(260 + parseInt(tabHeights[selectedTab])) + "px";	}function getEditInfo() {	isSaved = true;	//gets html, files and starts upload of images in editor applet	if (pageKind != "home") selectTab('body');	if (pageKind == "gallery") {					setAttachmentNames();		setGalleryChanges();	}		if (pageKind == "videos") {					setVideosChanges();	}		if (pageKind == "youtubevideos") {					setYouTubeVideosChanges();	}	if (pageKind == "home") {			for (var i = 1; i <= 7; i++) {			var nr = (i == 1) ? "" : String(i);			if (document.forms[0].elements["HomeImage" + nr + "Kind"][1].checked) {				setFileName('homeimage' + nr, 'HomeImage' + nr);				}		}		var entryNumbersJoined = "";		for (var i = 1; i <= 8; i++) {			var nr = String(i);			if (document.forms[0].elements["News" + nr + "TeaserImageKind"][1].checked) {				setFileName('news' + nr + 'teaserimage', 'News' + nr + 'TeaserImage');				}			if (i > 1) entryNumbersJoined += ",";			entryNumbersJoined += String(entryNumbers[i - 1]); 					}				document.forms[0].HomeNewsEntries.value = entryNumbersJoined;	}	else if (pageKind == "excel") setFileName('file', 'File');		if (pageKind == "normal" || pageKind == "newslist" || pageKind == "news" || pageKind == "eventslist" || pageKind == "event" || pageKind == "gallery" || pageKind == "excel" || pageKind == "html" || pageKind == "forward" || pageKind == "documentlist" || pageKind == "listdocument" || pageKind == "videos") setFileName('headerimage', 'HeaderImage');		if (pageKind == "listdocument" || pageKind == "news") setFileName('thumbimage', 'ThumbImage');		if (pageKind != "home" & pageKind != "html") setHTML();				if (pageKind == "gallery" && document.forms[1].uploadzip.value != "") {		//post new gallery zip to servlet and show upload progress		document.forms[0].Captions_Zip.value = document.forms[1].CaptionsZip.value;		var fileNameEncoded = escape(getFileName("uploadzip"));		document.forms[0].elements["ZipName"].value = fileNameEncoded;		document.forms[1].elements["uploadfilename"].value = fileNameEncoded;		initShowProcessingStatus();		document.forms[1].submit();	}			if (pageKind == "videos" && document.getElementById("uploadNVideo") && document.forms[1].uploadNVideo.value != "") {		//post new video to servlet and show upload progress		document.forms[0].NewVideoTitle.value = document.forms[1].NVideoTitle.value;				var value = document.forms[1].NVideoDescription.value;					value = value.replace(/\r\n/g, "#nl#");					value = value.replace(/\n/g, "#nl#");				if (value == "") value = " ";		document.forms[0].NewVideoDescription.value = value;		document.forms[0].NewVideoThumbnailMinute.value = document.forms[1].NVideoThumbnailMinute.value;		document.forms[0].NewVideoThumbnailSecond.value = document.forms[1].NVideoThumbnailSecond.value;		document.forms[0].NewVideoThumbnailFrame.value = document.forms[1].NVideoThumbnailFrame.value;								var fileNameEncoded = escape(getFileName("uploadNVideo"));		document.forms[0].elements["NewVideoName"].value = fileNameEncoded;		document.forms[1].elements["uploadfilename"].value = fileNameEncoded;		initShowProcessingStatus();		document.forms[1].submit();	}			elementHide("contentbodymain");	elementHide("contentbodyaddoninfobox");	}//saves existing documentfunction saveExisting() {	if (validate()) {			openWaitWindow();			getEditInfo();				hideAll();						if ((pageKind != "videos" && pageKind != "gallery") || 			(pageKind == "gallery" && document.forms[0].ZipName.value == "") ||			(pageKind == "videos" && document.forms[0].NewVideoName.value == "")		) {					//if pageKind != videos or pageKind = videos and no new video has to be uploaded, submit document			//otherwise it will be submitted, after new video is uploaded to servlet			initShowProcessingStatus();					isSubmitted = true;			document.forms[0].submit();		}	}}//saves document into repositoryfunction saveAndReposit() {		if(validate()) {				openWaitWindow();		getEditInfo();		document.forms[0].isdraft.value = '1';		hideAll();					if ((pageKind != "videos" && pageKind != "gallery") || 			(pageKind == "gallery" && document.forms[0].ZipName.value == "") ||			(pageKind == "videos" && document.forms[0].NewVideoName.value == "")		) {					//if pageKind != videos or pageKind = videos and no new video has to be uploaded, submit document			//otherwise it will be submitted, after new video is uploaded to servlet			initShowProcessingStatus();					isSubmitted = true;			document.forms[0].submit();		}	}}var isPublishAlreadyShown = false;//if is event page then publishes event//else shows area where you can determine where to publish the documentfunction saveAndPublish() {	if(validate()) {					document.forms[0].isdraft.value = '0';		newLabel = document.forms[0].Title.value;							if (!isPublishAlreadyShown &!isEvent & !isNews) {			newTitle = "*** " + newLabel + " ***";			document.forms[0].LevelSort.options[document.forms[0].LevelSort.length] = new Option(newTitle, "new", false, true);			document.forms[0].LevelSort.options.selectedIndex = document.forms[0].LevelSort.length - 1;					}		isPublishAlreadyShown = true;		isPublishShown = true;						//elementShow("contentbody");		//elementShow("contentbodyaddonkind");		//elementShow("contentbodymaininfo");		elementHide("EditArea");		elementHide("contentheader");		elementHide("contentbody");		elementHide("contentbodyaddonkind");		elementHide("contentbodymaininfo");		elementHide("contentbodyaddoninfobox");		elementHide("contentbodyaddonrelatedlinks");		elementHide("contentthumb");			elementHide("contentfile");			elementHide("contentexistingimages");			elementHide("contentnewimages");			elementHide("contentnewimageszip");			elementHide("contentexistingvideos");					elementHide("contentnewvideo");			elementHide("contentexistingyoutubevideos");					elementHide("contentnewyoutubevideos");						elementShow("PublishArea");		elementShow("ChooseTable");					if (pageKind == "listdocument" && isManualList) elementShow("SortTable");		else if (pageKind != "listdocument") elementShow("SortTable");			if (!isEvent & !isNews) {					if (document.forms[0].LevelSort.length > 1) {				elementShow("LevelSorterTop");					elementShow("LevelSorterUp");					elementShow("LevelSorterDown");					elementShow("LevelSorterBottom");			}			else {				elementHide("LevelSorterTop");					elementHide("LevelSorterUp");					elementHide("LevelSorterDown");					elementHide("LevelSorterBottom");			}		}							document.getElementById("ActionsTop").innerHTML = actionsPublish;		document.getElementById("ActionsBottom").innerHTML = actionsPublish;					if(pageKind == "listdocument") document.getElementById("ActionsBottom").style.top = "600px";  //"575px";		else document.getElementById("ActionsBottom").style.top = "400px";   //"375px";		}	}function editCancel() {	window.close();}//hides publish area and shows edit area//is called if in document after clicking 'save and publish', 'cancel' is clickedfunction editPublishCancel() {						elementHide("PublishArea");		document.getElementById("ActionsTop").innerHTML = actionsEdit;		document.getElementById("ActionsBottom").innerHTML = actionsEdit;				//hide sorter images and selectors				if (!isEvent & !isNews) {			elementHide("LevelSorterTop");				elementHide("LevelSorterUp");				elementHide("LevelSorterDown");				elementHide("LevelSorterBottom");		}		elementHide("ChooseTable");		elementHide("SortTable");		elementShow("EditArea");				elementShow("content" + selectedTab);				if(selectedTab == "body") {			elementShow("contentbody");			elementShow("contentbodyaddonkind");			elementShow("contentbodymaininfo");			showHideAddOn();		}				document.getElementById("ActionsBottom").style.top = new String(tabContentBegin + parseInt(tabHeights[selectedTab])) + "px";	//var strTop = document.getElementById("ActionsBottom").style.top;	//var aTop = strTop.slice(0, strTop.length - 2);			//document.getElementById("ActionsBottom").style.top = new String(aTop - parseInt(tabHeights[selectedTab]) + parseInt(tabHeights[tab])) + "px";		}// called if edit page is closed, onBeforeUnload="return navigateAway()"function navigateAway() {	//In IE wird bei Click auf Kalender diese Funktion mit aufgerufen, deshalb auf isCalendarClicked checken, bei showCalendar auf true gesetzt	if (!isSaved && !isCalendarClicked) {		var isChanged = false;		if (pageKind != "home") isChanged = document.main.isChanged();		if (pageKind == "info") isChanged = isChanged || document.info.isChanged();		if (isChanged) {			var msg = "--------------------------------------------------------------------\n";			msg += changedAndNotSavedMsg			msg += "\n--------------------------------------------------------------------";			return msg;		}	}	else {		isCalendarClicked = false;		isSaved = false;	}}//closes wait window//is called when page is unloadedfunction closeWaitWindow() {		elementHide("wait");	document.getElementsByTagName("body")[0].style.cursor = "auto";		if (document.getElementById("actions")) document.getElementById("actions").style.visibility = "visible";		if (document.getElementById("actionstop")) document.getElementById("actionstop").style.visibility = "visible";	if (document.getElementById("actionsbottom")) document.getElementById("actionsbottom").style.visibility = "visible";}// gets html and image and attachment names and writes them into fieldsfunction setHTML() {	if(pageKind != "home" && pageKind != "html") {		if (isMobile) {			setHTMLTextArea();			}		else if (isTinyMCE) {			setHTMLTinyMCE();			}		else {			setHTMLApplet();			}	}}// gets html and writes it into fields, when editor is Appletfunction setHTMLApplet() {	document.forms[0].MainHTML.value = document.main.getHTML();	document.forms[0].newimagemultimedianames.value = document.main.getNewImageMultimediaAttachmentNames();	document.forms[0].imagemultimedianames.value = document.main.getImageMultimediaAttachmentNames();	document.forms[0].zoomimagenames.value = document.main.getZoomImageNames();	if (document.forms[0].AddOnKind) {		//if (document.forms[0].AddOnKind[1].checked) {		if (getRadioClickedValue(document.forms[0].AddOnKind) == "i") {			// info box			document.forms[0].InfoHTML.value = document.info.getHTML();				document.forms[0].infonewimagemultimedianames.value = document.info.getNewImageMultimediaAttachmentNames();			document.forms[0].infoimagemultimedianames.value = document.info.getImageMultimediaAttachmentNames();			document.forms[0].infozoomimagenames.value = document.info.getZoomImageNames();		}	}		elementHide("contentbodymain");	elementHide("contentbodyaddoninfobox");		}// gets html and writes it into fields, when editor is TinyMCEfunction setHTMLTinyMCE() {	document.forms[0].MainHTML.value = tinyMCE.get('main').getContent();	if (document.forms[0].AddOnKind) {		//if (document.forms[0].AddOnKind[1].checked) {		if (getRadioClickedValue(document.forms[0].AddOnKind) == "i") {			// info box			document.forms[0].InfoHTML.value = tinyMCE.get('info').getContent();		}	}		elementHide("contentbodymain");	elementHide("contentbodyaddoninfobox");}// gets html and writes it into fields, when text areafunction setHTMLTextArea() {		document.forms[0].MainHTML.value = getClearHTMLForTextArea(document.forms[0].main.value);	if (document.forms[0].AddOnKind) {		//if (document.forms[0].AddOnKind[1].checked) {		if (getRadioClickedValue(document.forms[0].AddOnKind) == "i") {			// info box			document.forms[0].InfoHTML.value = getClearHTMLForTextArea(document.forms[0].info.value);		}	}		elementHide("contentbodymain");	elementHide("contentbodyaddoninfobox");}function getClearHTMLForTextArea(text) {	return "<p>" + text.replace(/(<([^>]+)>)/ig,"").replace(/\n/g, "<br>") + "</p>";}//Ajax var xmlHttp = null;function createXMLHttpRequest() { 	if (xmlHttp) xmlHttp.abort();	xmlHttp = null;	/*if (window.ActiveXObject) { 			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 	}	else if (window.XMLHttpRequest) { 				xmlHttp = new XMLHttpRequest(); 	}		var req = false;*/  		if(window.XMLHttpRequest){		xmlHttp = new XMLHttpRequest();				if(xmlHttp.overrideMimeType){ xmlHttp.overrideMimeType('text/xml'); }	} 	else if(window.ActiveXObject){		try{ xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); }		catch(e){			try{ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }			catch(e){}		}	}}function swapElements(elToHide, elToShow) {	document.getElementById(elToHide).style.display = "none";	document.getElementById(elToShow).style.display = "block";}//tabsvar tmpHTML;var addDistActions = 25;function selectTab(tab) {	if(selectedTab != tab) {					var selTabImg = document.getElementById("img" + selectedTab);		var tabImg = document.getElementById("img" + tab);		document.getElementById("tab" + selectedTab).className = "";		selTabImg.src = backLeftStr(selTabImg.src, "_a.gif") + "_p.gif";				document.getElementById("content" + selectedTab).style.visibility = "hidden";		tabImg.src = backLeftStr(tabImg.src, "_p.gif") + "_a.gif";		document.getElementById("tab" + tab).className = "selected";		document.getElementById("content" + tab).style.visibility = "visible";				if(selectedTab == "body") {			elementHide("contentbodyaddonrelatedlinks");			elementHide("contentbodyaddoninfobox");		}		if(tab == "body") {			 showHideAddOn();			 					}		var tabHeight = new String(tabHeights[tab] + 20 + 3);		document.getElementById("tabContent").style.height = tabHeight + "px";						document.getElementById("ActionsBottom").style.top = new String(tabContentBegin + tabHeights[tab] + 20 + 30) + "px";				if(selectedTab == "existingimages" || selectedTab == "existingvideos" || selectedTab == "existingyoutubevideos" || selectedTab == "homenews") elementHide("scroller");		selectedTab = tab;		if(selectedTab == "existingimages" || selectedTab == "existingvideos" || selectedTab == "existingyoutubevideos") elementShow("scroller");			if(selectedTab == "homenews") 			if (document.forms[0].NewsShow)				if (document.forms[0].NewsShow[1].checked || document.forms[0].NewsShow[2].checked) elementShow("scroller");			}}function setColor(fieldNameBegin, red, green, blue) {	document.forms[0].elements[fieldNameBegin + "Red"].value = String(red);	document.forms[0].elements[fieldNameBegin + "Green"].value = String(green);	document.forms[0].elements[fieldNameBegin + "Blue"].value = String(blue);}function getRadioClickedValue(elems) {	if (elems.length) {		for (var i = 0; i < elems.length; ++i)			if (elems[i].checked)				return elems[i].value;	}	else {		if (elems.checked)			return elems.value;	}}function setRadioClickedValue(elems, value) {	if (elems.length) {		for (var i = 0; i < elems.length; ++i) {	    		if (elems[i].value == value) elems[i].checked = true;	    		else elems[i].checked = false;	    				}	}	else {		if (elems.value == value) elems.checked = true;		else elems.checked = false;	}}function getCheckboxClickedValues(elems) {	var vals = "";	if (elems.length) {		for (var i = 0; i < elems.length; ++i) {	    		if (elems[i].checked) {	    			if (vals != "") vals += ",";	    			vals += elems[i].value;	    		}		}	}	else {		if (elems.checked) vals = elems.value;	}	return vals;}function setCheckboxClickedValues(elems, values) {		var arrValues = values.split(",");	if (elems.length) {		for (var i = 0; i < elems.length; ++i) {			if (arrayContains(arrValues, elems[i].value)) elems[i].checked = true;			else elems[i].checked = false;		}	}	else {		if (arrayContains(arrValues, elems.value)) elems.checked = true;		else elems.checked = false;	}}function arrayContains(vals, text) {	for (var i = 0; i < vals.length; i++) {		if (vals[i] == text) return true;	}	return false;}//when add-on-radio-button is clicked, shows selected add-on-kindfunction showHideAddOn() {	if (document.forms[0].AddOnKind) {		var clickedValue = getRadioClickedValue(document.forms[0].AddOnKind);				//if (document.forms[0].AddOnKind[1].checked) {		if (clickedValue == "i") {			// info box			elementHide("contentbodyaddonrelatedlinks");			elementShow("contentbodyaddoninfobox");		}		//else if (document.forms[0].AddOnKind[2].checked) {		else if (clickedValue == "r") {			// related links			elementShow("contentbodyaddonrelatedlinks");			elementHide("contentbodyaddoninfobox");		}		else {			//no add on			elementHide("contentbodyaddonrelatedlinks");			elementHide("contentbodyaddoninfobox");		}		}}function elementShow(id){    var elm = document.getElementById(id);    if (elm) {        elm.style.visibility = "visible";    }}function elementHide(id){    var elm = document.getElementById(id);    if (elm) {        elm.style.visibility = "hidden";    }}function hideAll() {	elementHide("EditArea");			elementHide("contenthomeimage");	elementHide("contenthometext");	elementHide("contenthomenews");		elementHide("contentheader");	elementHide("contentbody");	elementHide("contentbodyaddonkind");	elementHide("contentbodymaininfo");	elementHide("contentbodyaddoninfobox");	elementHide("contentbodyaddonrelatedlinks");	elementHide("contentthumb");		elementHide("contentfile");		elementHide("contentexistingimages");		elementHide("contentnewimages");		elementHide("contentnewimageszip");		elementHide("contentexistingvideos");		elementHide("contentnewvideo");		elementHide("contentexistingyoutubevideos");		elementHide("contentnewyoutubevideos");			elementHide("PublishArea");	elementHide("ActionsTop");	elementHide("ActionsBottom");	elementHide("LevelSorterTop");		elementHide("LevelSorterUp");		elementHide("LevelSorterDown");		elementHide("LevelSorterBottom");	elementHide("ChooseTable");	elementHide("SortTable");		elementHide("tabContent");	elementHide("tabContainer");	elementHide("documentinfo");		elementHide("scroller");}function setHomeTextColor(r, g, b) {    document.forms[0].HomeTextColorRed.value = r;    document.forms[0].HomeTextColorGreen.value = g;    document.forms[0].HomeTextColorBlue.value = b;        setColorShow();}function setColorShow() {	var intR = parseInt(document.forms[0].HomeTextColorRed.value);	var intG = parseInt(document.forms[0].HomeTextColorGreen.value);	var intB = parseInt(document.forms[0].HomeTextColorBlue.value);	if (isNaN(intR) || intR < 0 || intR > 255) intR = 0;		if (isNaN(intG) || intG < 0 || intG > 255) intG = 0;	if (isNaN(intB) || intB < 0 || intB > 255) intB = 0;			document.forms[0].HomeTextColorRed.value = intR.toString();	document.forms[0].HomeTextColorGreen.value = intG.toString();	document.forms[0].HomeTextColorBlue.value = intB.toString();		    document.getElementById("colorshow").style.backgroundColor = "rgb(" + document.forms[0].HomeTextColorRed.value + ", " + document.forms[0].HomeTextColorGreen.value + ", " + document.forms[0].HomeTextColorBlue.value + ")";}function getNodeValue(obj, tag) {	if (obj.getElementsByTagName(tag)[0].firstChild)		return obj.getElementsByTagName(tag)[0].firstChild.nodeValue;	else		return "&nbsp;";}//Processing Statusvar processingStatusURL = "";var lastSecond = -1;var indXPos = 0;var indXDist = 50;var strIndWidth = indXDist.toString();var elemPS;         var iWidthTable = 400;/* called when no information about progress can be retrieved from server */function showIndeterminate() {	if (!elemPS) elemPS = document.getElementById("processingstatus");	html = "<p>" + labelProcessing + "</p>";		html += "<p>&nbsp;</p>";		html += getIndeterminate();				elemPS.innerHTML = html;						window.setTimeout("showIndeterminate()", 1000);}var yDistPS = -200;function initShowProcessingStatus() {		elemPS = document.getElementById("processingstatus");		openProcessingWindow();			processingStatusURL = strLeft(window.location.href, ".nsf") + ".nsf/ProcessingStatus/ProcessingStatus?OpenDocument"; 					window.setTimeout("getProcessingStatus()", 1000);}function initShowProcessingStatusCommon() {			yDistPS = 0;			initShowProcessingStatus();}function getProcessingStatus() {		 	createXMLHttpRequest();		 	if (!xmlHttp) {		showIndeterminate();	}	else {		xmlHttp.onreadystatechange = showProcessingStatus;		xmlHttp.open("GET", processingStatusURL + getCachePreventTime(), true);		xmlHttp.send(null);	}}function showProcessingStatus() {	var html = "";		var status;	if (xmlHttp.readyState == 4) {			try {      //firefox sometimes throws errors     			status = xmlHttp.status;		}		catch (e) {			status = 404;            /*alert("Network error!\nPlease try later.");            try {            alert("Failure: " +  + xmlHttp.statusText);            }            catch(e) {}*/        	}		if (status == 200) {     			var response = xmlHttp.responseXML.documentElement;			var line1 = getNodeValue(response, "line1");			html += "<p>" + line1 + "</p>";			var line2 = getNodeValue(response, "line2");			html += "<p>" + line2 + "</p>";			var progress = getNodeValue(response, "progress");						var iProgress = parseInt(progress);			if (iProgress > -1) {				var width = ((iProgress / 100) * iWidthTable).toString();				html += "<table id=\"progressborder\" cellspacing=\"0\" cellpadding=\"0\"><tr><td>";								html += "<table id=\"progressshow\" style=\"width:" + width + "px\" cellspacing=\"0\" cellpadding=\"0\"><tr><td>&nbsp;</td></tr></table>";				html += "</td></tr></table>";								indXPos = 0;				indXDist = 50			}			else {				 html += getIndeterminate();			}							elemPS.innerHTML = html;											window.setTimeout("getProcessingStatus()", 1000);									if (iProgress == 100 && !isSubmitted) {							//when file was ready uploaded to servlet and form is not yet submitted, then submit it							document.forms[0].submit();				isSubmitted = true;			}		}		else if (status == 404) {			html = getIndeterminate();			elemPS.innerHTML = html;					window.setTimeout("getProcessingStatus()", 1000);				}		else {								}			}}function getIndeterminate() {	var htm = "<table id=\"progressborder\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><table id=\"progressshow\" style=\"width:" + strIndWidth + "px;position:relative;top:0px;left:" + indXPos.toString() + "px\" cellspacing=\"0\" cellpadding=\"0\"><tr><td>&nbsp;</td></tr></table></td></tr></table>";           	indXPos += indXDist;	if (indXPos == (iWidthTable -  indXDist) || indXPos == 0) indXDist *= -1;	return htm;}//opens processing window//is called when page is submittedfunction openProcessingWindow() {	var windowWidth = 418;	var windowHeight = 120;	var windowX;	var windowY;	     if (window.innerWidth) windowX = (window.innerWidth - windowWidth) / 2;     else windowX = (document.body.offsetWidth - windowWidth) / 2;     	      //if (window.innerHeight) windowY = (window.innerHeight - windowHeight) / 2;     //else windowY = (document.body.offsetHeight - windowHeight) / 2;         windowY = Math.round( (viewportGetHeight() - windowHeight)/2 ) + viewportGetScrollY() + yDistPS; //- 200;	        if (windowY < 110) windowY = 110;		elemPS = document.getElementById("processingstatus");	elemPS.style.position = "absolute";	elemPS.style.left = windowX + "px";	elemPS.style.top = windowY + "px";	elemPS.style.visibility = "visible";}/* returns file name of a chosen file in upload input, independent of platform of client */function getFileName(upload) {		var pos;	var fileName = "";	if (document.getElementById(upload)) {		if (document.getElementById(upload).value != "") {			fileName = document.getElementById(upload).value;			if(fileName.indexOf("\\") != - 1) {				pos = fileName.lastIndexOf("\\");				fileName = fileName.substring(pos + 1, fileName.length);			}			else if(fileName.indexOf("/") != - 1) {				pos = fileName.lastIndexOf("/");				fileName = fileName.substring(pos + 1, fileName.length);			}			return fileName;					}	}}/* returns extension of file name */function getFileExtension(fileName) {	var pos = fileName.lastIndexOf(".");		if (pos != -1) {			return fileName.substring(pos + 1, fileName.length).toLowerCase();		}		else {			return "";		}}/*returns first index of an element in an array, when element is not found returns -1 */function arrayGetIndex(array, element) {	var length = array.length;	var found = false;	for(i = 0; i < length && !found; i++) if(array[i] == element) found = true;		if(found) i--;	else i = -1;	return i;}function swapOptions(option1, option2) {		var text = option1.text;	var value = option1.value;	var title = option1.title;	var selected = option1.selected;		option1.text = option2.text;	option1.value = option2.value;	option1.title = option2.title;	option1.selected = option2.selected;			option2.text = text;	option2.value = value;	option2.title = title;	option2.selected = selected;	}function showFailure(failureTitle, failureMsg) {	var divFailureShow = document.createElement("div");	divFailureShow.id = "failureShow";	divFailureShow.style.left = "170px";	var innerHTML = 	innerHTML = '<div id="failureShowHeader">' ;	innerHTML += failureTitle;	innerHTML += '<div id="closeButton" onclick="closeFailureShow()"><a href="javascript:void(null)" onclick="closeFailureShow()"><img src="' + adminPath + 'close-button.gif" alt="x" border="0"></a></div>';	innerHTML += '</div>';	innerHTML += '<table>';	innerHTML += '<tr>';	innerHTML += '<td style="padding:7px"><img src="' + adminPath + 'msgExclamation.gif" alt="!" border="0"></td>';	innerHTML += '<td style="padding:7px">' + failureMsg + '</td>';	innerHTML += '</tr>';	innerHTML += '</table>';	innerHTML += '<span id="failureShowButton"><span><a href="javascript:void(null)" onclick="closeFailureShow()">OK</a></span></span>';		divFailureShow.innerHTML = innerHTML;	document.getElementsByTagName("body")[0].appendChild(divFailureShow);}/************************************************************************************************************	Editable select	Copyright (C) September 2005  DTHMLGoodies.com, Alf Magne Kalleland		This library is free software; you can redistribute it and/or	modify it under the terms of the GNU Lesser General Public	License as published by the Free Software Foundation; either	version 2.1 of the License, or (at your option) any later version.		This library is distributed in the hope that it will be useful,	but WITHOUT ANY WARRANTY; without even the implied warranty of	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU	Lesser General Public License for more details.		You should have received a copy of the GNU Lesser General Public	License along with this library; if not, write to the Free Software	Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA		Dhtmlgoodies.com., hereby disclaims all copyright interest in this script	written by Alf Magne Kalleland.		Alf Magne Kalleland, 2006	Owner of DHTMLgoodies.com			************************************************************************************************************/	g_adminPath = backLeftStr(backLeftStr(leftStr(window.location.href, ".nsf"), "/"), "/") + "/pc_admin.nsf/";// Path to arrow images	var arrowImage = g_adminPath + 'select_arrow.gif';	// Regular arrow	var arrowImageOver = g_adminPath + 'select_arrow_over.gif';	// Mouse over	var arrowImageDown = g_adminPath + 'select_arrow_down.gif';	// Mouse down		var selectBoxIds = 0;	var currentlyOpenedOptionBox = false;	var editableSelect_activeArrow = false;			function selectBox_switchImageUrl()	{		if(this.src.indexOf(arrowImage)>=0){			this.src = this.src.replace(arrowImage,arrowImageOver);			}else{			this.src = this.src.replace(arrowImageOver,arrowImage);		}					}		function selectBox_showOptions()	{		if(editableSelect_activeArrow && editableSelect_activeArrow!=this){			editableSelect_activeArrow.src = arrowImage;					}		editableSelect_activeArrow = this;				var numId = this.id.replace(/[^\d]/g,'');		var optionDiv = document.getElementById('selectBoxOptions' + numId);		if(optionDiv.style.display=='block'){			optionDiv.style.display='none';			if(navigator.userAgent.indexOf('MSIE')>=0)document.getElementById('selectBoxIframe' + numId).style.display='none';			this.src = arrowImageOver;			}else{						optionDiv.style.display='block';			if(navigator.userAgent.indexOf('MSIE')>=0)document.getElementById('selectBoxIframe' + numId).style.display='block';			this.src = arrowImageDown;				if(currentlyOpenedOptionBox && currentlyOpenedOptionBox!=optionDiv)currentlyOpenedOptionBox.style.display='none';				currentlyOpenedOptionBox= optionDiv;					}	}		function selectOptionValue()	{		var parentNode = this.parentNode.parentNode;		var textInput = parentNode.getElementsByTagName('INPUT')[0];		textInput.value = this.innerHTML;			this.parentNode.style.display='none';			document.getElementById('arrowSelectBox' + parentNode.id.replace(/[^\d]/g,'')).src = arrowImageOver;				if(navigator.userAgent.indexOf('MSIE')>=0)document.getElementById('selectBoxIframe' + parentNode.id.replace(/[^\d]/g,'')).style.display='none';			}	var activeOption;	function highlightSelectBoxOption()	{		if(this.style.backgroundColor=='#316AC5'){			this.style.backgroundColor='';			this.style.color='';		}else{			this.style.backgroundColor='#316AC5';			this.style.color='#FFF';					}					if(activeOption){			activeOption.style.backgroundColor='';			activeOption.style.color='';					}		activeOption = this;			}		function createEditableSelect(dest)	{		dest.className='selectBoxInput';				var div = document.createElement('DIV');		div.style.styleFloat = 'left';		div.style.width = dest.offsetWidth + 16 + 'px';		div.style.position = 'relative';		div.id = 'selectBox' + selectBoxIds;		var parent = dest.parentNode;		parent.insertBefore(div,dest);		div.appendChild(dest);			div.className='selectBox';		div.style.zIndex = 10000 - selectBoxIds;		var img = document.createElement('IMG');		img.src = arrowImage;		img.className = 'selectBoxArrow';				img.onmouseover = selectBox_switchImageUrl;		img.onmouseout = selectBox_switchImageUrl;		img.onclick = selectBox_showOptions;		img.id = 'arrowSelectBox' + selectBoxIds;		div.appendChild(img);				var optionDiv = document.createElement('DIV');		optionDiv.id = 'selectBoxOptions' + selectBoxIds;		optionDiv.className='selectBoxOptionContainer';		optionDiv.style.width = div.offsetWidth-2 + 'px';		div.appendChild(optionDiv);				if(navigator.userAgent.indexOf('MSIE')>=0){			var iframe = document.createElement('<IFRAME src="about:blank" frameborder=0>');			iframe.style.width = optionDiv.style.width;			iframe.style.height = optionDiv.offsetHeight + 'px';			iframe.style.display='none';			iframe.id = 'selectBoxIframe' + selectBoxIds;			div.appendChild(iframe);		}				if(dest.getAttribute('selectBoxOptions')){			var options = dest.getAttribute('selectBoxOptions').split(';');			var optionsTotalHeight = 0;			var optionArray = new Array();			for(var no=0;no<options.length;no++){				var anOption = document.createElement('DIV');				anOption.innerHTML = options[no];				anOption.className='selectBoxAnOption';				anOption.onclick = selectOptionValue;				anOption.style.width = optionDiv.style.width.replace('px','') - 2 + 'px'; 				anOption.onmouseover = highlightSelectBoxOption;				optionDiv.appendChild(anOption);					optionsTotalHeight = optionsTotalHeight + anOption.offsetHeight;				optionArray.push(anOption);			}			if(optionsTotalHeight > optionDiv.offsetHeight){								for(var no=0;no<optionArray.length;no++){					optionArray[no].style.width = optionDiv.style.width.replace('px','') - 22 + 'px'; 					}				}					optionDiv.style.display='none';			optionDiv.style.visibility='visible';		}				selectBoxIds = selectBoxIds + 1;	}	
