
var logoutTimer = false;
window.onbeforeunload = unload;

function init() {
	// called on page load
	startLogoutTimer();
	initDataObject();
	initNewsWheel();
	initNewsList();
	initPolls();
	setColumnHeights();
}

function unload() {
	if (confirmUnsavedChanges) {
		return 'Der er foretaget ændringer der ikke er gemt';
	}
}

// confim unsaved changes vars
var confirmUnsavedChanges = false;

function changeEditStatus() {
	confirmUnsavedChanges = true;
}

function clearEditStatus() {
	confirmUnsavedChanges = false;
}

function setColumnHeights() {
/*	try {
		var rightContainer = document.getElementById('rightFrameContainer');
		var leftContainer = document.getElementById('leftFrameContainer');
		var rightHeight = rightContainer.offsetHeight;
		var leftHeight = leftContainer.offsetHeight;
	
		if (rightHeight < leftHeight) {
			rightContainer.style.height = leftHeight+'px';
		} else {
			leftContainer.style.height = rightHeight+'px';
		}
	} catch (e) {
	
	}*/
}

function startLogoutTimer() {
	logoutTimer = setTimeout("checkSession()", "120000"); // kører checkSession() hvert 2 minut
}

function stopLogoutTimer() {
	if (logoutTimer) clearTimeout(logoutTimer);
}

function displayLogoutWarning() {
	xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) {
			document.getElementById('sessionWarningContent').innerHTML=xmlHttp.responseText;
			document.getElementById('sessionWarning').style.display='inline';
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/timeoutwarning.php");
	xmlHttp.send(null);
}

function continueSession() {
	document.getElementById('sessionWarning').style.display='none';
	
	xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) {
			stopLogoutTimer();
			startLogoutTimer();
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/checksession.php?mode=renew");
	xmlHttp.send(null);
}

function closeSession() {
	xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) {
			stopLogoutTimer();
			document.location.reload();
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/checksession.php?mode=destroy");
	xmlHttp.send(null);
}


function checkSession() {
	xmlHttp = createXmlRequest();

	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) {
			switch (xmlHttp.responseText) {
				case "continue":
					startLogoutTimer();
					break;
				case "reload":
					closeSession();
					break;
				case "warning":
					startLogoutTimer();
					displayLogoutWarning();
					break;
			}
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/checksession.php");
	xmlHttp.send(null);
}

function initPolls() {
	var polls = document.getElementsByName('pollPlaceholder');
	var pollsLength = polls.length
	var polls = polls;
	
	for (var i=0; i < pollsLength; i++) {
		var poll = polls[i] ? polls[i] : polls[0];
		var pollId = poll.getAttribute('pollid');
		populatePoll(poll, pollId, i);
	}
}

function populatePoll(poll, pollId, num) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//
				var pollHeight = parseInt(poll.style.height);
				var pollWidth = parseInt(poll.style.width);
				var pollContainerId = "poll_"+num;
				
				var oContainer = document.createElement('div');
				oContainer.id = pollContainerId;
				oContainer.className='pollContainer';
				oContainer.style.width=pollWidth+'px';
				oContainer.innerHTML=xmlHttp.responseText;
				
				poll.parentNode.insertBefore(oContainer,poll);
				poll.parentNode.removeChild(poll);
				
				setColumnHeights();
				return;
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/poll/ajax/poll.php?pollId="+pollId);
		xmlHttp.send(null);
}

function initDataObject() {
	var dataObjects = document.getElementsByName('dataObject');
	var dataObjectLength = dataObjects.length
	var dataObjects = dataObjects;
	var advertChannels = new Array();
	
	for (var i=0; i < dataObjectLength; i++) {
		(function () {
			var dataObject = dataObjects[i] ? dataObjects[i] : dataObjects[0];
			var dataObjectData = dataObject.getAttribute('data');
			var dataObjectType = dataObject.getAttribute('objecttype');
			var dataObjectTemplate = dataObject.getAttribute('template');
			var dataObjectWidth = dataObject.style.width;
			var dataObjectHeight = dataObject.style.height;
			
			switch (dataObjectType) {
				case 'article':
				case 'articletag':
				case 'articlecategory':
				case 'articleWheel':
				case 'articleList':
				case 'articles':
					populateArticleObject(dataObject, dataObjectData, dataObjectType, dataObjectTemplate, i);
					break;
				case 'eventsCalendarCategory':
				case 'eventsListCategory':
					populateEventObject(dataObject, dataObjectData, dataObjectType, dataObjectTemplate, i);
					break;
				case 'advertChannel':
					advertChannels[advertChannels.length] = dataObject;
					break;
				case 'userList':
					populateUserListObject(dataObject, dataObjectData, dataObjectType, dataObjectTemplate, i);
					break;
				case 'forumListPosts':
					populateForumListObject(dataObject, dataObjectData, dataObjectType, dataObjectTemplate, i);
					break;
			}
		})()
	}
	
	// inserting adverts after all other dataobjects
	if (advertChannels.length > 0) {
		for (var i=0; i < advertChannels.length; i++) {
			populateAdvertObject(advertChannels[i]);
		}
	}
}

function populateAdvertObject(advertChannel) {
	var channelNumber = advertChannel.getAttribute('data');
	var channelTemplate = advertChannel.getAttribute('template');
	var channelClassName = advertChannel.getAttribute('class');
	// setting channel placement var (1 = inside, 2 = outside)
	var channelPlacement = channelClassName.indexOf("inSideAdvert") != -1 ? 1 : 2
	
	// using channelTemplate var to carry the size id
	if (channelPlacement == 1) channelTemplate = channelClassName[channelClassName.indexOf("advertSize")+10];
	
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			// eval() should be replaced with a json function
			advertInfo = eval("("+xmlHttp.responseText+")");
			
			if (!advertInfo) return;
			
			if (advertInfo) {
				switch (advertInfo.advertType) {
					case "1":
						// image advert
						switch (advertInfo.advertFileType) {
							case "2":
								var flashObj = document.createElement('object');
								flashObj.setAttribute('type','application/x-shockwave-flash');
								flashObj.setAttribute('data',advertInfo.advertFile);
								flashObj.setAttribute('width',advertInfo.advertWidth);
								flashObj.setAttribute('height',advertInfo.advertHeight);
								
								var flashParam = document.createElement('param');
								flashParam.setAttribute('name','movie');
								flashParam.setAttribute('value',advertInfo.advertFile+'&clickTAG=http://www.svommebad.dk/modules/adverts/advert.php?adId='+adId+'&channelId='+channelId);
								
								flashObj.appendChild(flashParam);
								
								// clearing container
								if (advertChannel.hasChildNodes()) {
									while (advertChannel.childNodes.length >= 1) {
										advertChannel.removeChild(advertChannel.firstChild);
									}
								}
								
								advertChannel.appendChild(flashObj);
								advertChannel.style.display='block';
								break;
							case "1":
								var advertContainer = document.createElement('div');
								advertContainer.className = channelClassName;
								
								var imageObj = document.createElement('img');
								imageObj.src = advertInfo.advertFile;
								imageObj.style.width = advertInfo.advertWidth;
								imageObj.style.height = advertInfo.advertHeight;
								imageObj.style.cursor = 'pointer';
								var adId = advertInfo.advertId;
								var channelId = advertInfo.channelId;
								imageObj.onclick = function() {
									window.open('http://www.svommebad.dk/modules/adverts/advert.php?adId='+adId+'&channelId='+channelId);
								}
								
								advertContainer.appendChild(imageObj);
								
								advertChannel.parentNode.insertBefore(advertContainer,advertChannel);
								advertChannel.parentNode.removeChild(advertChannel);
								advertContainer.style.display='block';
								break;
						}
						break;
					case "2":
						// text advert
						var advertContainer = document.createElement('div');
						advertContainer.className = channelClassName;
						
						for (var i=0; i<advertInfo.adverts.length; i++) {
							(function () {
								var textAdvertContainer = document.createElement('div');
								textAdvertContainer.className = 'textAdContainer';
								
								// creating title
								var titleContainer = document.createElement('div');
								titleContainer.className = 'textAdTitle';
								var titleLink = document.createElement('a');
								titleLink.setAttribute('target','_blank');
								titleLink.href='http://www.svommebad.dk/modules/adverts/advert.php?adId='+advertInfo.adverts[i].advertId+'&channelId='+advertInfo.adverts[i].channelId;
								titleLink.appendChild(document.createTextNode(advertInfo.adverts[i].advertTitle));
								titleContainer.appendChild(titleLink);
								textAdvertContainer.appendChild(titleContainer);
								
								// creating description 1
								if (advertInfo.adverts[i].advertDescription1 != '') {
									var des1Container = document.createElement('div');
									des1Container.className = 'textAdDescription1';
									des1Container.appendChild(document.createTextNode(advertInfo.adverts[i].advertDescription1));
									textAdvertContainer.appendChild(des1Container);
								}
								
								// creating description 2
								if (advertInfo.adverts[i].advertDescription2 != '') {
									var des2Container = document.createElement('div');
									des2Container.className = 'textAdDescription2';
									des2Container.appendChild(document.createTextNode(advertInfo.adverts[i].advertDescription2));
									textAdvertContainer.appendChild(des2Container);
								}
								
								// creating link
								var urlContainer = document.createElement('div');
								urlContainer.className = 'textAdUrl';
								var urlLink = document.createElement('a');
								urlLink.setAttribute('target','_blank');
								urlLink.href='http://www.svommebad.dk/modules/adverts/advert.php?adId='+advertInfo.adverts[i].advertId+'&channelId='+advertInfo.adverts[i].channelId;
								urlLink.appendChild(document.createTextNode(advertInfo.adverts[i].advertDisplayUrl));
								urlContainer.appendChild(urlLink);
								textAdvertContainer.appendChild(urlContainer);
								
								//
								advertContainer.appendChild(textAdvertContainer);
								
							})()
						}
						
						advertChannel.parentNode.insertBefore(advertContainer,advertChannel);
						advertChannel.parentNode.removeChild(advertChannel);
						// making container visible
						advertContainer.style.display='block';
						break;
				}
			}
			
			setColumnHeights();
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/adverts/ajax/requestadvert.php?pageId="+pageId+"&channelNumber="+channelNumber+"&channelTemplate="+channelTemplate+"&channelPlacement="+channelPlacement);
	xmlHttp.send(null);
}

function populateForumListObject(listObject, listData, listType, listTemplate, num) {
	var xmlHttp = createXmlRequest();
	var listWidth = listObject.style.width;
	
	var forumData = listData.split('|');
	
	var forums = forumData[0];
	var limit = forumData.length == 2 ? forumData[1] : 5;
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			// eval() should be replaced with a json function
			var response = eval("("+xmlHttp.responseText+")");
			
			if (!response) return;
			
			// creating container
			var listObjectId = "forumlist_"+num;
			var oContainer = document.createElement('div');
			oContainer.id = listObjectId;
			oContainer.className=listTemplate;
			oContainer.style.width=listWidth;
			
			for (var i=0; i < response.length; i++) {
				(function(){
					var oItemContainer = document.createElement('div');
					oItemContainer.className = 'forumPluginLatestItemContainer';
					
					var oItemLinkContainer = document.createElement('div');
					oItemLinkContainer.className = 'forumPluginLatestTitle';
					
					var itemLink = document.createElement('a');
					itemLink.href = response[i].threadUrl;
					itemLink.appendChild(document.createTextNode(response[i].threadTitle));
					oItemLinkContainer.appendChild(itemLink);
					
					oItemContainer.appendChild(oItemLinkContainer);
					
					oInfoContainer = document.createElement('div');
					oInfoContainer.className = 'forumPluginLatestInfo';
					
					oInfoContainer.appendChild(document.createTextNode('Af: '));
					
					var userId = response[i].userId;
					if (userId) {
						var itemLink = document.createElement('a');
						itemLink.href = 'javascript:void(0);';
						itemLink.onclick = function () {
							displayUserProfile(userId);
						}
						itemLink.appendChild(document.createTextNode(response[i].username));
						oInfoContainer.appendChild(itemLink);
					} else {
						oInfoContainer.appendChild(document.createTextNode(response[i].username));
					}
					
					oInfoContainer.appendChild(document.createTextNode(' i '));
					
					var itemLink = document.createElement('a');
					itemLink.href = response[i].topicUrl;
					itemLink.appendChild(document.createTextNode(response[i].topicTitle));
					oInfoContainer.appendChild(itemLink);
					
					var oDateContainer = document.createElement('span');
					oDateContainer.className = 'forumPluginLatestDate';
					oDateContainer.appendChild(document.createTextNode(response[i].date));
					oInfoContainer.appendChild(oDateContainer);
					
					oItemContainer.appendChild(oInfoContainer);
					
					oContainer.appendChild(oItemContainer);
				})()
			}
			
			listObject.parentNode.insertBefore(oContainer,listObject);
			listObject.parentNode.removeChild(listObject);
			
			setTimeout('setColumnHeights()', 10);
			
			return;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/forum/ajax/latest_posts.json.php?forums="+forums+"&limit="+limit+"&pageId="+pageId);
	xmlHttp.send(null);
}

function populateUserListObject(listObject, listData, listType, listTemplate, num) {
	var xmlHttp = createXmlRequest();
	var listWidth = listObject.style.width;
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			//
			var listObjectId = "userlist_"+num;
			//<div style="width: 159px;" class="true" id="article_1">
			var oContainer = document.createElement('div');
			oContainer.id = listObjectId;
			oContainer.className=listTemplate;
			oContainer.style.width=listWidth;
			
			var returnData = eval("("+decodeURIComponent(xmlHttp.responseText)+")");
			
			// no user returned so we stop here
			if (returnData.total == 0) return;
			
			for (var i=0; i < returnData.users.length; i++) {
				(function(){
					var oItemContainer = document.createElement('div');
					var itemLink = document.createElement('a');
					itemLink.href='javascript:void(0);';
					var userId = returnData.users[i].userId;
					itemLink.onclick = function () {
						displayUserProfile(userId);
					}
					itemLink.appendChild(document.createTextNode(returnData.users[i].username));
					
					oItemContainer.appendChild(itemLink);
					
					oContainer.appendChild(oItemContainer);
				})()
			}
			
			if (returnData.pageCount > 1) {
				var oNavigationContainer = document.createElement('div');
				
				var prevNavLink = document.createElement('a');
				prevNavLink.href='javascript:void(0);';
				prevNavLink.appendChild(document.createTextNode('<'));
				if ((returnData.current) > 0) {
					// add onclick function
					prevNavLink.onclick = function () {
						updateUserlistObject(listObjectId, (returnData.current-1), listData);
					}
				}
				oNavigationContainer.appendChild(prevNavLink);
				
				oNavigationContainer.appendChild(document.createTextNode((returnData.current+1)));
				oNavigationContainer.appendChild(document.createTextNode('/'));
				oNavigationContainer.appendChild(document.createTextNode(returnData.pageCount));
				
				var nextNavLink = document.createElement('a');
				nextNavLink.href='javascript:void(0);';
				nextNavLink.appendChild(document.createTextNode('>'));
				if ((returnData.current+1) < returnData.pageCount) {
					// add onclick function
					nextNavLink.onclick = function () {
						updateUserlistObject(listObjectId, (returnData.current+1), listData);
					}
				}
				oNavigationContainer.appendChild(nextNavLink);
				
				oContainer.appendChild(oNavigationContainer);
			}
			
			listObject.parentNode.insertBefore(oContainer,listObject);
			listObject.parentNode.removeChild(listObject);
			
			setTimeout('setColumnHeights()', 10);
			
			return;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/userlist/ajax/userlist.json.php?listData="+listData);
	xmlHttp.send(null);
}

function updateUserlistObject(listObjectId, listPage, listData) {
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			var oContainer = document.getElementById(listObjectId);
			var returnData = eval("("+decodeURIComponent(xmlHttp.responseText)+")");
			
			// clearing container
			if (oContainer.hasChildNodes()) {
				while (oContainer.childNodes.length >= 1) {
					oContainer.removeChild(oContainer.firstChild);
				}
			}
			
			for (var i=0; i < returnData.users.length; i++) {
				(function(){
					var oItemContainer = document.createElement('div');
					var itemLink = document.createElement('a');
					itemLink.href='javascript:void(0);';
					var userId = returnData.users[i].userId;
					itemLink.onclick = function () {
						displayUserProfile(userId);
					}
					itemLink.appendChild(document.createTextNode(returnData.users[i].username));
					
					oItemContainer.appendChild(itemLink);
					
					oContainer.appendChild(oItemContainer);
				})()
			}
			
			if (returnData.pageCount > 1) {
				var oNavigationContainer = document.createElement('div');
				
				var prevNavLink = document.createElement('a');
				prevNavLink.href='javascript:void(0);';
				prevNavLink.appendChild(document.createTextNode('<'));
				if ((returnData.current) > 0) {
					// add onclick function
					prevNavLink.onclick = function () {
						updateUserlistObject(listObjectId, (returnData.current-1), listData);
					}
				}
				oNavigationContainer.appendChild(prevNavLink);
				
				oNavigationContainer.appendChild(document.createTextNode((returnData.current+1)));
				oNavigationContainer.appendChild(document.createTextNode('/'));
				oNavigationContainer.appendChild(document.createTextNode(returnData.pageCount));
				
				var nextNavLink = document.createElement('a');
				nextNavLink.href='javascript:void(0);';
				nextNavLink.appendChild(document.createTextNode('>'));
				if ((returnData.current+1) < returnData.pageCount) {
					// add onclick function
					nextNavLink.onclick = function () {
						updateUserlistObject(listObjectId, (returnData.current+1), listData);
					}
				}
				oNavigationContainer.appendChild(nextNavLink);
				
				oContainer.appendChild(oNavigationContainer);
			}
			
			setTimeout('setColumnHeights()', 10);
			
			return;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/userlist/ajax/userlist.json.php?listData="+listData+"&listPage="+listPage);
	xmlHttp.send(null);
}

function populateArticleObject(articleObject, articleData, articleType, articleTemplate, num) {
	var xmlHttp = createXmlRequest();
	var articleWidth = articleObject.style.width;
	
	// eval() should be replaced with a json function
	var artData = eval("("+decodeURIComponent(articleData)+")");
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			//
			if (articleType == 'articleWheel' || (articleType == 'articles' && artData.m == 'wheel')) {
				window['articleWheel_' + num] = new dataObjectWheel(articleObject, xmlHttp.responseText, articleTemplate);
				//var testobj = new dataObjectWheel(articleObject, xmlHttp.responseText);
			} else {
				var articleObjectId = "article_"+num;
				//<div style="width: 159px;" class="true" id="article_1">
				var oContainer = document.createElement('div');
				oContainer.id = articleObjectId;
				oContainer.className=articleTemplate;
				oContainer.style.width=articleWidth;
				oContainer.innerHTML=xmlHttp.responseText;
				
				articleObject.parentNode.insertBefore(oContainer,articleObject);
				articleObject.parentNode.removeChild(articleObject);
			}
			
			setTimeout('setColumnHeights()', 10);
			
			return;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/articles/ajax/showarticle.php?articleData="+articleData+"&articleType="+articleType+"&articleTemplate="+articleTemplate+"&pageId="+pageId+"&width="+articleWidth);
	xmlHttp.send(null);
}

// var dataObjectWheels = new Object();

function dataObjectWheel(objectContainer, objectData, objectTemplate) {
/*	this.objectData = objectData;
	this.objectContainer = objectContainer;*/
	
	var wheelScroll;
	var wheelContent1;
	var wheelContent2;
	var wheelContentHeight = 0;
	
	function startWheel() {
		// stop any scroll there might be running
		clearInterval(wheelScroll);
		//start the scrolling
		wheelScroll = window.setInterval(scrollWheel, 50);
		//alert('start scroll');
	}
	
	function stopWheel() {
		// stop the scrolling
		clearInterval(wheelScroll);
		//alert('stop scroll');
	}
	
	function scrollWheel() {
		// scroll the object
/*		var newsBox1 = document.getElementById(newsWheelId+'_1');
		var newsBox2 = document.getElementById(newsWheelId+'_2');
		var newsBoxHeight = newsBox1;*/
		
		// setting box 2 on startup
		if (parseInt(wheelContent1.style.top) == 0) wheelContent2.style.top = wheelContentHeight+'px';
		// setting box 1 and 2 on end
		if (parseInt(wheelContent1.style.top) <= (parseInt(wheelContentHeight)*-1)) wheelContent1.style.top = wheelContentHeight+'px';
		if (parseInt(wheelContent2.style.top) <= (parseInt(wheelContentHeight)*-1)) wheelContent2.style.top = wheelContentHeight+'px';
		
		wheelContent2.style.top = parseInt(wheelContent2.style.top)-1+'px';
		wheelContent1.style.top = parseInt(wheelContent1.style.top)-1+'px';
	}
	
	function createWheel(start, stop, template) {
		// create the wheel
		var wheelHeight = parseInt(objectContainer.style.height);
		var wheelWidth = parseInt(objectContainer.style.width);
		
		var oContainer = document.createElement('div');
		oContainer.className='dataObjectWheelContainer '+template;
		oContainer.style.height=wheelHeight+'px';
		oContainer.style.width=wheelWidth+'px';
		oContainer.onmouseover = stop;
		oContainer.onmouseout = start;
		
		var oWheel1 = document.createElement('div');
		oWheel1.className='dataObjectWheelContent';
		oWheel1.style.top='0px';
		oWheel1.innerHTML=objectData;
		wheelContent1=oWheel1;
		
		oContainer.appendChild(oWheel1);
		
		var oWheel2 = document.createElement('div');
		oWheel2.className='dataObjectWheelContent';
		oWheel2.style.top=(wheelHeight+1)+'px';
		oWheel2.innerHTML=objectData;
		wheelContent2=oWheel2;
		
		oContainer.appendChild(oWheel2);
		
		objectContainer.parentNode.insertBefore(oContainer,objectContainer);
		objectContainer.parentNode.removeChild(objectContainer);
		
		wheelContentHeight = oWheel1.offsetHeight;
		
		startWheel();
	}
	
	createWheel(startWheel, stopWheel, objectTemplate);
}

function populateEventObject(eventObject, eventData, eventType, eventTemplate, num) {
	var eventObjectWidth = eventObject.style.width;
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			//
			var eventObjectId = "event_"+num;
			
			var oContainer = document.createElement('div');
			oContainer.id = eventObjectId;
			oContainer.className=eventTemplate;
			oContainer.style.width=eventObjectWidth;
			oContainer.innerHTML=xmlHttp.responseText;
			
			eventObject.parentNode.insertBefore(oContainer,eventObject);
			eventObject.parentNode.removeChild(eventObject);
			
			setTimeout('setColumnHeights()', 10);
			
			return;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/events/ajax/showeventobject.php?eventData="+eventData+"&eventType="+eventType+"&eventTemplate="+eventTemplate+"&pageId="+pageId+"&width="+eventObjectWidth+"&objectId="+num);
	xmlHttp.send(null);
}

function displayEventObjectEventList(showDate, objectData, pageId) {
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			//
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
			showPopup(300, 500, 100);
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/events/ajax/eventmonthlist.php?showDate="+showDate+"&objectData="+objectData+"&pageId="+pageId);
	xmlHttp.send(null);
}

function eventObjectCalendarShowMonth(showMonth, showYear, objectId, eventData, eventType, eventTemplate, currentPageId, eventObjectWidth) {
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			//
			var eventObjectId = "event_"+objectId;
			var eventObject = document.getElementById(eventObjectId);
			
			var oContainer = document.createElement('div');
			oContainer.id = eventObjectId;
			oContainer.className=eventTemplate;
			oContainer.style.width=eventObjectWidth;
			oContainer.innerHTML=xmlHttp.responseText;
			
			eventObject.parentNode.insertBefore(oContainer,eventObject);
			eventObject.parentNode.removeChild(eventObject);
			
			setTimeout('setColumnHeights()', 10);
			
			return;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/events/ajax/showeventobject.php?eventData="+eventData+"&eventType="+eventType+"&eventTemplate="+eventTemplate+"&pageId="+currentPageId+"&width="+eventObjectWidth+"&objectId="+objectId+"&showMonth="+showMonth+"&showYear="+showYear);
	xmlHttp.send(null);
}

function initNewsList() {
	var newsLists = document.getElementsByName('newsList');
	var newsListLength = newsLists.length
	var newsLists = newsLists;
	
	for (var i=0; i < newsListLength; i++) {
		var newsList = newsLists[i] ? newsLists[i] : newsLists[0];
		var newsXmlFile = newsList.getAttribute('feed');
		var newsTemplate = newsList.getAttribute('template');
		populateNewsList(newsList, newsXmlFile, newsTemplate, i);
	}
}

function populateNewsList(newsList, newsXmlFile, newsTemplate, num) {
		switch (newsTemplate) {
			default:
			case 'newslist':
				var template = 'http://www.svommebad.dk/modules/rss/newslist-template.php';
				break;
			case 'articlelist':
				var template = 'http://www.svommebad.dk/modules/rss/articlelist-template.php';
				break;
		}
		
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//
				var newsListHeight = parseInt(newsList.style.height);
				var newsListWidth = parseInt(newsList.style.width);
				var newsListId = "newsList_"+num;
				
				var oContainer = document.createElement('div');
				oContainer.id = newsListId;
				oContainer.className='newsListContainer';
				oContainer.style.width=newsListWidth+'px';
				oContainer.innerHTML=xmlHttp.responseText;
				
				newsList.parentNode.insertBefore(oContainer,newsList);
				newsList.parentNode.removeChild(newsList);
				
				setColumnHeights();
				return;
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/rss/rss2html.php?XMLFILE="+newsXmlFile+"&MAXITEMS=5&TEMPLATE="+template);
		xmlHttp.send(null);
}

function initNewsWheel() {
	var newsWheels = document.getElementsByName('newsWheel');
	var newsWheelLength = newsWheels.length
	var newsWheels = newsWheels;
	
	for (var i=0; i < newsWheelLength; i++) {
		var newsWheel = newsWheels[i] ? newsWheels[i] : newsWheels[0];
		var newsXmlFile = newsWheel.getAttribute('feed');
		populateNewsWheel(newsWheel, newsXmlFile, i);
	}
}

function populateNewsWheel(newsWheel, newsXmlFile, num) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//
				var newsWheelHeight = parseInt(newsWheel.style.height);
				var newsWheelWidth = parseInt(newsWheel.style.width);
				var newsWheelId = "newsWheel_"+num;
				
				var oContainer = document.createElement('div');
				oContainer.id = newsWheelId;
				oContainer.className='newsWheelContainer';
				oContainer.style.height=newsWheelHeight+'px';
				oContainer.style.width=newsWheelWidth+'px';
				oContainer.onmouseover= function() { stopNewsWheel(num) }
				oContainer.onmouseout= function() { startNewsWheel(newsWheelId, num) }
				
				
				oWheel1 = document.createElement('div');
				oWheel1.id=newsWheelId+'_1';
				oWheel1.className='newsWheel1';
				oWheel1.style.top='0px';
				oWheel1.innerHTML=xmlHttp.responseText;
				
				oContainer.appendChild(oWheel1);
				
				oWheel2 = document.createElement('div');
				oWheel2.id=newsWheelId+'_2';
				oWheel2.className='newsWheel2';
				oWheel2.style.top=(newsWheelHeight+1)+'px';
				oWheel2.innerHTML=xmlHttp.responseText;
				
				oContainer.appendChild(oWheel2);
				
				newsWheel.parentNode.insertBefore(oContainer,newsWheel);
				newsWheel.parentNode.removeChild(newsWheel);
				
				setColumnHeights();
				startNewsWheel(newsWheelId, num);
				
				return;
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/rss/rss2html.php?XMLFILE="+newsXmlFile+"&MAXITEMS=10");
		xmlHttp.send(null);
}

var newsWheelsArr = new Array();

function startNewsWheel(newsWheelId, num) {
	
	newsWheelsArr[num] = window.setInterval("scrollNewsWheel('"+newsWheelId+"')", 50);
}

function scrollNewsWheel(newsWheelId) {
	var newsBox1 = document.getElementById(newsWheelId+'_1');
	var newsBox2 = document.getElementById(newsWheelId+'_2');
	var newsBoxHeight = newsBox1.offsetHeight;
	
	// setting box 2 on startup
	if (parseInt(newsBox1.style.top) == 0) newsBox2.style.top = newsBoxHeight+'px';
	// setting box 1 and 2 on end
	if (parseInt(newsBox1.style.top) <= (parseInt(newsBoxHeight)*-1)) newsBox1.style.top = newsBoxHeight+'px';
	if (parseInt(newsBox2.style.top) <= (parseInt(newsBoxHeight)*-1)) newsBox2.style.top = newsBoxHeight+'px';
	
	newsBox2.style.top = parseInt(newsBox2.style.top)-1+'px';
	newsBox1.style.top = parseInt(newsBox1.style.top)-1+'px';
}

function stopNewsWheel(num) {
	clearInterval(newsWheelsArr[num]);
}

// variable used by showTab() to set wich tab is showned
var shownedTab = false;

function showTab(tabId) {
	if (shownedTab) {
		document.getElementById(shownedTab+'Tab').className='mySiteTab';
		document.getElementById(shownedTab).style.display='none';
	}
	document.getElementById(tabId+'Tab').className='mySiteTabMarked';
	document.getElementById(tabId).style.display='inline';
	shownedTab = tabId;
	
	setColumnHeights();
}

function showHelp(section) {
	// displays helpbox
	showPopup(300, 500, 100);

	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/help.php?section="+section);
	xmlHttp.send(null);
}

function showChangeProfilePicDialog() {
	// displays the profile picture selector box
	showPopup(400, 728, 100);

	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/browsefiles.php?type=picture&title=Profilbillede");
	xmlHttp.send(null);
}

function setDefaultProfilePic() {
	document.getElementById('fileInput').value=1;
	document.getElementById('fileInputText').innerHTML='Default profil billede';
	document.getElementById('imgProfilePic').src="http://www.svommebad.dk/administration/images/1x1white.png";

}

function showChangePasswordDialog() {
	// displays the change password popup
	showPopup(200, 400, 200);

	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/changepassword.php?username=");
	xmlHttp.send(null);
}

function saveNewPassword() {
	var oldPassword = document.getElementById('oldPassword').value;
	var newPassword1 = document.getElementById('newPassword1').value;
	var newPassword2 = document.getElementById('newPassword2').value;
	var username = document.getElementById('username').value;
	
	if (newPassword1 == newPassword2 && oldPassword != "" && newPassword1 != "") {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				if (closePopupTimer) clearTimeout(closePopupTimer);
				//closePopupTimer = setTimeout('closePopup()', 5000);
				document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/changepassword.php?username="+username+"&oldPassword="+oldPassword+"&newPassword1="+newPassword1+"&newPassword2="+newPassword2);
		xmlHttp.send(null);
	} else {
		alert('Fejl i indtastning');
		document.getElementById('oldPassword').focus();
	}
}

// vars for getFolderFileList()
var folderId = 0;
var displayType = "list";
var fileSortBy = "name";
var fileSortOrder = "desc";
var fileOnclickType = 1;

function getFolderFileList(displayTypeVar,folderIdVar,fileSortByVar,fileSortOrderVar,fileOnclickTypeVar) {
	if (displayTypeVar) displayType = displayTypeVar;
	if (fileSortByVar) fileSortBy = fileSortByVar;
	if (fileSortOrderVar) fileSortOrder = fileSortOrderVar;
	if (fileOnclickTypeVar) fileOnclickType = fileOnclickTypeVar;
	if (folderIdVar || folderIdVar == 0) folderId = folderIdVar;
	
	var xmlHttp = createXmlRequest();

	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('fileContainer').innerHTML=xmlHttp.responseText;
			getFolderList(folderId);
		}
	}
	
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/getfilelist.php?folderId="+folderId+"&displayType="+displayType+"&sortBy="+fileSortBy+"&sortOrder="+fileSortOrder+"&onclickType="+fileOnclickType);
	xmlHttp.send(null);
}

function getFileProfile(fileId) {
	if (fileId) {
		var xmlHttp = createXmlRequest();

		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('fileContainer').innerHTML=xmlHttp.responseText;
			}
		}
	
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/getfileprofile.php?fileId="+fileId);
		xmlHttp.send(null);
	}
}

function saveFileProfile(fileId) {
	if (fileId) {
		var xmlHttp = createXmlRequest();
		var fileTitle = encodeURIComponent(document.getElementById('fileTitle').value);
		var fileAccess = document.getElementById('fileAccess').options[document.getElementById('fileAccess').selectedIndex].value;
		var fileLocation = document.getElementById('fileLocation').options[document.getElementById('fileLocation').selectedIndex].value;

		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				getFileProfile(fileId);
				document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
				setTimeout('closePopup(\'\')', 2000);
				showPopup(100, 180, 200);
			}
		}
	
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/savefileprofile.php?fileId="+fileId+"&fileAccess="+fileAccess+"&fileTitle="+escape(fileTitle)+"&fileLocation="+fileLocation);
		xmlHttp.send(null);
	}
}

function getFolderList(markedFolder) {
	
	var xmlHttp = createXmlRequest();

	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('dirContainer').innerHTML=xmlHttp.responseText;
		}
	}
	
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/getfolderlist.php?markedFolder="+markedFolder);
	xmlHttp.send(null);
}

function showUploadFileDialog() {
	// displays the change password popup
	showPopup(150, 350, 200);

	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/uploadfile.php?folder="+folderId);
	xmlHttp.send(null);
}

function showNewFolderDialog() {
	// displays create new folder popup
	showPopup(150, 350, 200);

	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/newfolder.php?parent="+folderId);
	xmlHttp.send(null);
}

function displayUploadMsg(msg) {
	document.getElementById('uploadFileContainer').innerHTML = msg;
	setTimeout('closePopup(\'\')', 2000);
}

function createNewFolder(folderParent) {
	// creates new folder
	var folderName = encodeURIComponent(document.getElementById('folderName').value);
	
	if (folderName) {

		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
				setTimeout('closePopup(\'\')', 2000);
				getFolderList();
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/newfolder.php?mode=createFolder&parent="+folderParent+"&folderName="+escape(folderName));
		xmlHttp.send(null);
	} else {
		alert('Der skal angives et mappenavn');
	}
}

function selectFile(fileId, fileTitle) {
	// setting hidden field
	document.getElementById('fileInput').value=fileId;
	document.getElementById('fileInputText').innerHTML=fileTitle;
	document.getElementById('imgProfilePic').src="http://www.svommebad.dk/file.php?mode=thumb&id="+fileId;
	// closing popup
	closePopup();
}

var messageOrderBy = "date";
var messageOrderDir = "desc";
var messageFolder = "inbox";

function listMessages(orderBy, orderDir, folder) {
	// list messages
	
	messageOrderBy = orderBy ? orderBy : messageOrderBy;
	messageOrderDir = orderDir ? orderDir : messageOrderDir;
	messageFolder = folder ? folder : messageFolder;
	
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('inboxWindow').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/listmessages.php?orderBy="+messageOrderBy+"&orderDir="+messageOrderDir+"&folder="+messageFolder);
	xmlHttp.send(null);
}

function readMessage(messageId) {
	if (messageId) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('messageWindow').innerHTML=xmlHttp.responseText;
				listMessages();
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/readmessage.php?messageId="+messageId);
		xmlHttp.send(null);
	} else {
		document.getElementById('messageWindow').innerHTML='';
	}
}

function newMessage(sendto) {
	var xmlHttp = createXmlRequest();
	
	showPopup(400, 700, 100);
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	var queryString = sendto ? "?username="+sendto : "";
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/newmessage.php"+queryString);
	xmlHttp.send(null);
}

function deleteMessage(messageId) {
	if (messageId && confirm("er du sikker på du vil slette den besked?")) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//
				listMessages();
				readMessage();
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/deletemessage.php?messageId="+messageId);
		xmlHttp.send(null);
	}
}

function sendMessage() {
	var xmlHttp = createXmlRequest();
	
	var messagetitle = encodeURIComponent(document.getElementById('messageTitle').value);
	var toUsername = encodeURIComponent(document.getElementById('toUsername').value);
	var messageContent = encodeURIComponent(document.getElementById('messageText').value);
	
	//xmlHttp.setRequestHeader("Content-Type", "text/plain;charset=UTF-8");
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			switch(xmlHttp.responseText) {
				case "sendOk":
					document.getElementById('newMessageContainer').innerHTML="Beskeden er sendt";
					setTimeout('closePopup(\'\')', 2000);
					break;
				case "noUser":
					document.getElementById('userErrorBox').innerHTML="Brugeren eksisterer ikke";
					setTimeout('closePopup(\'\')', 2000);
					break;
				case "notLogged":
					document.getElementById('userErrorBox').innerHTML="Du er ikke logget ind";
					setTimeout('closePopup(\'\')', 2000);
					break;
			}
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/sendmessage.php?messageTitle="+escape(messagetitle)+"&toUsername="+escape(toUsername)+"&messageContent="+escape(messageContent));
	xmlHttp.send(null);
}

var shownedProfileTab = false;

function displayUserProfile(userId) {
	if (userId) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//alert(xmlHttp.responseText);
				//document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
				
				var response = eval("("+xmlHttp.responseText+")");
				
				if (response.tabs) {
					// creating fragment
					var fragment = document.createDocumentFragment();
					
					var emptyStr = "\u00a0"; // &nbsp;
					
					// creating tab container fragment
					var fieldContainerFragment = document.createDocumentFragment();
					
					// creating tabs
					var tabContainer = document.createElement('div');
					tabContainer.className = 'mySiteProfileLine';
					
					for (var i = 0;i < response.tabs.length;i++) {
						(function(){
							var tabId = 'profileTab'+i;
							
							var tabSpacer = document.createElement('div');
							tabSpacer.className = 'mySiteTabSpacer';
							tabContainer.appendChild(tabSpacer);
							
							var tab = document.createElement('div');
							tab.className = 'mySiteTab';
							tab.onclick = function() {
								// show tab
								if (shownedProfileTab) {
									document.getElementById(shownedProfileTab+'Tab').className='mySiteTab';
									document.getElementById(shownedProfileTab).style.display='none';
								}
								document.getElementById(tabId+'Tab').className='mySiteTabMarked';
								document.getElementById(tabId).style.display='inline';
								shownedProfileTab = tabId;
							}
							tab.id = tabId+'Tab';
							tab.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].title)));
							tabContainer.appendChild(tab);
							
							// creating field container
							var fieldContainer = document.createElement('div');
							fieldContainer.className = 'mySiteTabContainer';
							fieldContainer.id = 'profileTab'+i;
							
							// setting coloumn design 
							switch (response.tabs[i].layout) {
								default:
								case 1:
									// 1 column
									if (response.tabs[i].fields[1]) {
										for (var r = 0;r < response.tabs[i].fields[1].length;r++) {
											// removing empty fields
											if (response.tabs[i].fields[1][r].length == 0) continue;
											
											var fieldContentContainer = document.createElement('div');
											fieldContentContainer.className = 'listRow';
											
											switch (response.tabs[i].fields[1][r].vt) {
												default:
													// inserting field title
													var fieldTitle = document.createElement('div');
													fieldTitle.className = 'listItemNoHeight listItem180';
													fieldTitle.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].fields[1][r].t)));
													fieldContentContainer.appendChild(fieldTitle);
													
													// inserting value
													var fieldValue = document.createElement('div');
													fieldValue.className = 'listItemNoHeight listItem270';
													fieldValue.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].fields[1][r].v)));
													break;
												case 7:
													// E-mail field
													// inserting field title
													var fieldTitle = document.createElement('div');
													fieldTitle.className = 'listItemNoHeight listItem180';
													fieldTitle.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].fields[1][r].t)));
													fieldContentContainer.appendChild(fieldTitle);
													
													// inserting value
													var fieldValue = document.createElement('div');
													fieldValue.className = 'listItemNoHeight listItem270';
													var oLink = document.createElement('a');
													oLink.href = 'mailto:'+response.tabs[i].fields[1][r].v;
													oLink.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].fields[1][r].v)));
													fieldValue.appendChild(oLink);
													break;
												case 16:
													// image field
													// inserting field title
													var fieldTitle = document.createElement('div');
													fieldTitle.className = 'listItemNoHeight listItem180';
													fieldTitle.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].fields[1][r].t)));
													fieldContentContainer.appendChild(fieldTitle);
													
													// inserting value
													var fieldValue = document.createElement('div');
													fieldValue.className = 'listItemNoHeight listItem270';
													if (response.tabs[i].fields[1][r].v != '') {
														var oImg = document.createElement('img');
														oImg.src = 'http://www.svommebad.dk/file.php?mode=thumb&id='+response.tabs[i].fields[1][r].v;
														oImg.alt = 'Profil billede';
														fieldValue.appendChild(oImg);
													}
													break;
												case 23:
													// spacing
													// inserting field title
													var fieldTitle = document.createElement('div');
													fieldTitle.className = 'listItemNoHeight listItem180';
													fieldTitle.appendChild(document.createTextNode(emptyStr));
													fieldContentContainer.appendChild(fieldTitle);
													
													// inserting value
													var fieldValue = document.createElement('div');
													fieldValue.className = 'listItemNoHeight listItem270';
													fieldValue.appendChild(document.createTextNode(emptyStr));
													break;
												case 24:
													// title
													// inserting field title
													var fieldTitle = document.createElement('div');
													fieldTitle.className = 'listItemNoHeight listItem180';
													fieldTitle.appendChild(document.createTextNode(emptyStr));
													fieldContentContainer.appendChild(fieldTitle);
													
													// inserting value
													var fieldValue = document.createElement('div');
													fieldValue.className = 'listItemNoHeight listItem270';
													fieldValue.appendChild(document.createTextNode(decodeURIComponent(response.tabs[i].fields[1][r].t)));
													break;
											}
											fieldContentContainer.appendChild(fieldValue);
											
											fieldContainer.appendChild(fieldContentContainer);
										}
									}
									break;
							}
							
							fieldContainerFragment.appendChild(fieldContainer);
						})()
					}
					
					var tabSpacer = document.createElement('div');
					tabSpacer.className = 'mySiteTabSpacer';
					tabContainer.appendChild(tabSpacer);
					
					var clearFloatDiv = document.createElement('div');
					clearFloatDiv.className = 'clearFloatDiv';
					tabContainer.appendChild(clearFloatDiv);
					
					fragment.appendChild(tabContainer);
					
					fragment.appendChild(fieldContainerFragment);
					
					// append profile and show popup
					setDefaultPopupContent('Brugerprofil for '+response.username, '', true);
					
					document.getElementById('popupInnerContent').appendChild(fragment);
					
					// displaying first tab
					document.getElementById('profileTab0Tab').className='mySiteTabMarked';
					document.getElementById('profileTab0').style.display='inline';
					shownedProfileTab = 'profileTab0';
					
					showPopup(500, 620, 50);
				}
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/userprofile.php?userId="+userId);
		xmlHttp.send(null);
	}
}

function saveUserProfile() {
	// setting vars
	var userForm = document.getElementById('userProfileForm');
	
	// getting post string
	var userFields = getFormValues(userForm);
	
	// run form check and save association if
	if (userFields) {
		// setting up loadscreen
		//showLoadScreen('userProfileForm');
		setDefaultPopupContent('Bruger', 'Profilen gemmes...', false);
		showPopup(200, 300, 100);
		
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//hideLoadScreen('userProfileForm');
				//alert(xmlHttp.responseText);
				// eval() should be replaced with a json function
				var returnString = eval("("+xmlHttp.responseText+")");
				
				if (returnString.complete === true) {
					// resetting unsaved changes alert
					confirmUnsavedChanges = false;
					setDefaultPopupContent('Bruger', returnString.msg, false);
					showPopup(200, 300, 100);
					setTimeout('window.location.reload()', 2000);
				} else {
					closePopup();
					alert(returnString.msg);
					
					if (returnString.tab) showTab('tab'+returnString.tab);
					
					if (returnString.focus && returnString.name) {
						switch(returnString.focus) {
							case 1:
								// focus
								document.getElementById(returnString.name).focus();
								break;
							case 2:
								// select
								document.getElementById(returnString.name).select();
								break;
						}
					}
					
					return false;
				}
			}
		}
		
		xmlHttp.open("POST","http://www.svommebad.dk/modules/users/ajax/saveprofile.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(userFields);
	}
}

function saveNewUser() {
	// setting vars
	var userForm = document.getElementById('newUserProfileForm');
	
	// getting post string
	var userFields = getFormValues(userForm);
	
	// run form check and save association if
	if (userFields) {
		// setting up loadscreen
		setDefaultPopupContent('Bruger', 'Brugeren oprettes...', false);
		showPopup(200, 300, 100);
		
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//alert(xmlHttp.responseText);
				// eval() should be replaced with a json function
				var returnString = eval("("+xmlHttp.responseText+")");
				
				if (returnString.complete === true) {
					// resetting unsaved changes alert
					confirmUnsavedChanges = false;
					setDefaultPopupContent('Bruger', returnString.msg, false);
					
					// creating close button
					var oCloseButtonContainer = document.createElement('div');
					oCloseButtonContainer.style.textAlign = 'center';
					
					var oCloseButton = document.createElement('input');
					oCloseButton.type = 'button';
					oCloseButton.value = 'Ok';
					oCloseButton.onclick = function() {
						window.location='http://www.svommebad.dk';
					}
					oCloseButtonContainer.appendChild(oCloseButton)
					
					// inserting close button
					document.getElementById('popupInnerContent').appendChild(oCloseButtonContainer);
					showPopup(200, 300, 100);
				} else {
					closePopup();
					alert(returnString.msg);
					
					if (returnString.tab) showTab('tab'+returnString.tab);
					
					if (returnString.focus && returnString.name) {
						switch(returnString.focus) {
							case 1:
								// focus
								document.getElementById(returnString.name).focus();
								break;
							case 2:
								// select
								document.getElementById(returnString.name).select();
								break;
						}
					}
					
					return false;
				}
			}
		}
		
		xmlHttp.open("POST","http://www.svommebad.dk/modules/users/ajax/savenewuser.php", true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(userFields);
	}
}

function showContacts() {
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('newMessageAdressBookContent').innerHTML=xmlHttp.responseText;
			document.getElementById('newMessageAdressBookContainer').style.display='inline';
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/showcontacts.php?mode=compact");
	xmlHttp.send(null);
}

function showAdressBook() {
	var xmlHttp = createXmlRequest();
	
	showPopup(510, 620, 50);
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/adressbook.php");
	xmlHttp.send(null);
}

var adressBookContactsDisplayMode = "full";
var adressBookAdressBook = "personal";
var adressBookContactsOrderBy = "username";
var adressBookContactsOrderDir = "desc";

function getAdressBookContacts(displayMode, orderBy, orderDir, adressBook, searchString) {
	
	adressBookContactsDisplayMode = displayMode ? displayMode : adressBookContactsDisplayMode;
	adressBookContactsOrderBy = orderBy ? orderBy : adressBookContactsOrderBy;
	adressBookContactsOrderDir = orderDir ? orderDir : adressBookContactsOrderDir;
	adressBookAdressBook = adressBook ? adressBook : adressBookAdressBook;
	searchString = !searchString ? "" : searchString;
	
	var xmlHttp = createXmlRequest();
	
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('adressBookContacts').innerHTML=xmlHttp.responseText;
		}
	}
	
	if (!displayMode) displayMode = "personal";
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/showcontacts.php?mode="+adressBookContactsDisplayMode+"&adressBook="+adressBookAdressBook+"&orderBy="+adressBookContactsOrderBy+"&orderDir="+adressBookContactsOrderDir+"&searchString="+searchString);
	xmlHttp.send(null);
}

function searchAdressBook() {
	var searchString = document.getElementById('adressBookSearchString').value;
	if (searchString != "") {
		getAdressBookContacts(false, false, false, false, searchString);
	}
}

function closeAdressBook() {
	document.getElementById('newMessageAdressBookContainer').style.display='none';
}

function selectUserNameFromAdressBook(username) {
	document.getElementById('toUsername').value=username;
	closeAdressBook();
}

function deleteContact(contactId) {
	var deleteConfirm = confirm('Vil du slette denne kontakt');
	if (contactId && deleteConfirm) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				getAdressBookContacts();
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/deletecontact.php?contactId="+contactId);
		xmlHttp.send(null);
	}
}

function addContact(userId) {
	if (userId) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				if (xmlHttp.responseText == "true") {
					alert('Brugeren er tilføjet adressebogen');
				} else if (xmlHttp.responseText == "exists") {
					alert('Brugeren findes allerrede i din adressebog');
				}
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/messagecenter/ajax/addcontact.php?userId="+userId);
		xmlHttp.send(null);
	}
}

function deleteFile(fileId) {
	if (fileId && confirm("Er du sikker på du vil slette denne fil?")) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				getFolderFileList();
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/deletefile.php?fileId="+fileId);
		xmlHttp.send(null);
	}
}

function deleteFolder(folderId) {
	if (folderId && confirm("Er du sikker på du vil slette denne mappe?")) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				getFolderFileList(false,0);
				getFolderList(0);
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/deletefolder.php?folderId="+folderId);
		xmlHttp.send(null);
	}
}

function addSignature(inputId) {
	if (inputId) {
		var xmlHttp = createXmlRequest();
		
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById(inputId).value+=xmlHttp.responseText;
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/getsignature.php");
		xmlHttp.send(null);
	}
}

function displaySearchResult(searchFieldId) {
	if (searchFieldId) {
		var searchField = document.getElementById(searchFieldId);
		if (searchField.value != "") {
			// creating empty placeholder array
			var searchModeArr = new Array();
			// select all searchmode checkboxes
			var searchModes = document.getElementsByName('searchMode');
			for(var i = 0;i < searchModes.length;i++) {
				// add selected searchmode to searchmode array
				if (searchModes[i].checked) searchModeArr[searchModeArr.length] = searchModes[i].value;
			}
			// combine searchmodes into a string
			var searchModeStr = searchModeArr.join(',');
			
			document.location='http://www.svommebad.dk/system/search/'+searchField.value+'/'+searchModeStr+'/'+pageId;
		} else {
			alert('Indtast et søgeord');
			searchField.focus();
		}
	}
}

function checkUsernameExists() {
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			if (xmlHttp.responseText != "true") {
				alert('Brugernavnet findes allerrede');
				document.getElementById('username').focus();
			}
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/checkusername.php?username="+document.getElementById('username').value);
	xmlHttp.send(null);
}

function validatePassword() {
	var password1 = document.getElementById("password1").value;
	var password2 = document.getElementById("password2").value;
	var username = document.getElementById("username").value;
	var errorMessage = "&nbsp;";
	var intreg = /[0-9]/;
	var charreg = /[a-zæøå]/i;
	
	if (password1 != "" && password1.length < 8) {
		errorMessage = "Adgangskode skal være min. 8 ciffre";
	} else if (password1 != "" && password1 == username) {
		errorMessage = "Adgangskode må ikke være det samme som brugernavnet";
	} else if (password1 != "" && !intreg.test(password1)) {
		errorMessage = "Adgangskode skal indeholde min. et tal";
	} else if (password1 != "" && !charreg.test(password1)) {
		errorMessage = "Adgangskode skal indeholde min. et bogstav";
	} else if (password1 == password2 && password1 != "" && password2 != "") {
		errorMessage = "ok";
	} else if (password1 != password2 && password1 != "" && password2 != "") {
		errorMessage = "Adgangskode og bekræftelse stemmer ikke";
	} else if (password1 != "") {
		errorMessage = "Indtast adgangskode";
	} else if (password2 != "") {
		errorMessage = "Bekræft adgangskode";
	}
	
	document.getElementById('validatePasswordOutput').innerHTML=errorMessage;
}

function checkCreateUserForm() {
	var password1 = document.getElementById("password1");
	var password2 = document.getElementById("password2");
	var username = document.getElementById("username");
	var email = document.getElementById("email");
	
	var passwordReg = /^(?=.*\d)(?=.*[a-z]).{8,16}$/i;
	var emailReg = /^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/i;
	var errorMessage = "";
	
	if (!passwordReg.test(password1.value)) {
		errorMessage = "Adgangskode skal indeholde min. et tal";
	} else if (password1.value != password2.value && password1.value != "") {
		errorMessage = "Adgangskode og bekræftelse stemmer ikke";
	} else if (username.value == "") {
		errorMessage = "Brugernavn skal udfyldes";
	} else if (!emailReg.test(email.value)) {
		errorMessage = "E-mail er ikke indtastet korrekt";
		email.focus();
	}
	
	document.getElementById('createUserErrorContainer').innerHTML=errorMessage;
	
	if (errorMessage != "") {
		return false;
	} else {
		return true;
	}
	
}

function signupNewsletter(newsletterCategory) {
	var emailReg = /^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/i;
	
	if (!newsletterCategory) var newsletterCategory = 1;
	
	var newsletterSignupEmail = document.getElementById('newsletterSignupEmail').value;
	if (!emailReg.test(newsletterSignupEmail)) {
		alert('E-mail er ugyldigt format');
		document.getElementById('newsletterSignupEmail').focus();
		return;
	}

	document.location='http://www.svommebad.dk/module/newsletter/add/'+newsletterSignupEmail+'/'+newsletterCategory+'/'+pageId;
}

function checkUserProfile() {
	var nameReg = /\d+/i;
	if (document.getElementById('firstName').value == "") {
		showTab('mySiteEditProfile');
		alert('Fornavn skal udfyldes');
		document.getElementById('firstName').focus();
		return false;
	}
	if (document.getElementById('middleName') != undefined && nameReg.test(document.getElementById('middleName').value)) {
		showTab('mySiteEditProfile');
		alert('Mellemnavn må ikke indeholde tal');
		document.getElementById('middleName').focus();
		return false;
	}
	if (nameReg.test(document.getElementById('lastName').value)) {
		showTab('mySiteEditProfile');
		alert('Efternavn må ikke indeholde tal');
		document.getElementById('lastName').focus();
		return false;
	}
	
	var numberReg = /^([1-9]|[1-9][0-9]|[1-9][0-9][0-9])$/;
	if (document.getElementById('buildingNumber').value != "" && !numberReg.test(document.getElementById('buildingNumber').value)) {
		showTab('mySiteEditProfile');
		alert('Husnummer skal være et tal mellem 1-999');
		document.getElementById('buildingNumber').focus();
		return false;
	}
	
	if (nameReg.test(document.getElementById('buildingLetter').value)) {
		showTab('mySiteEditProfile');
		alert('Husbogstav må ikke indeholde tal');
		document.getElementById('buildingLetter').focus();
		return false;
	}
	
	var storeyReg = /^(\d\d|kl|st)$/;
	if (document.getElementById('storey').value != '' && !storeyReg.test(document.getElementById('storey').value)) {
		showTab('mySiteEditProfile');
		alert('Etage skal være angivet med kl,st,01,02-99');
		document.getElementById('storey').focus();
		return false;
	}
	
	if (nameReg.test(document.getElementById('area').value)) {
		showTab('mySiteEditProfile');
		alert('Stednavn må ikke indeholde tal');
		document.getElementById('area').focus();
		return false;
	}
	
	var postalReg = /^[1-9]{1}[\d]{2,3}$/;
	if (document.getElementById('postal').value != '' && !postalReg.test(document.getElementById('postal').value)) {
		showTab('mySiteEditProfile');
		alert('Postnummeret er i ugyldigt format');
		document.getElementById('postal').focus();
		return false;
	}
	
	var emailReg = /^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/i;
	if (!emailReg.test(document.getElementById('email').value)) {
		showTab('mySiteEditProfile');
		alert('E-mail er ugyldigt format');
		document.getElementById('email').focus();
		return false;
	}
	
	if (document.getElementById('secondary_buildingNumber').value != "" && !numberReg.test(document.getElementById('secondary_buildingNumber').value)) {
		showTab('mySiteEditExtendedProfile');
		alert('Husnummer skal være et tal mellem 1-999 under anden postadresse');
		document.getElementById('secondary_buildingNumber').focus();
		return false;
	}
	
	if (nameReg.test(document.getElementById('secondary_buildingLetter').value)) {
		showTab('mySiteEditExtendedProfile');
		alert('Husbogstav må ikke indeholde tal under anden postadresse');
		document.getElementById('secondary_buildingLetter').focus();
		return false;
	}
	
	if (document.getElementById('secondary_storey').value != '' && !storeyReg.test(document.getElementById('secondary_storey').value)) {
		showTab('mySiteEditExtendedProfile');
		alert('Etage skal være angivet med kl,st,01,02-99 under anden postadresse');
		document.getElementById('secondary_storey').focus();
		return false;
	}
	
	if (nameReg.test(document.getElementById('secondary_area').value)) {
		showTab('mySiteEditExtendedProfile');
		alert('Stednavn må ikke indeholde tal under anden postadresse');
		document.getElementById('secondary_area').focus();
		return false;
	}
	
	if (document.getElementById('secondary_postal').value != '' && !postalReg.test(document.getElementById('secondary_postal').value)) {
		showTab('mySiteEditExtendedProfile');
		alert('Postnummeret er i ugyldigt format under anden postadresse');
		document.getElementById('secondary_postal').focus();
		return false;
	}
	
	return true;
}

function checkPropertyProfile() {
	if (document.getElementById('propStreetname').value == "") {
		showTab('propertyData');
		alert('Vejnavn Skal udfyldes');
		document.getElementById('propStreetname').focus();
		return false;
	}
	if (document.getElementById('propBuildingNumber').value == "") {
		showTab('propertyData');
		alert('Husnummer Skal udfyldes');
		document.getElementById('propBuildingNumber').focus();
		return false;
	}
	if (document.getElementById('propCity').value == "") {
		showTab('propertyData');
		alert('Bynavn Skal udfyldes');
		document.getElementById('propCity').focus();
		return false;
	}
	if (document.getElementById('propPostal').value == "") {
		showTab('propertyData');
		alert('Postnummer Skal udfyldes');
		document.getElementById('propPostal').focus();
		return false;
	}
	
	var nameReg = /\d+/i;
	if (nameReg.test(document.getElementById('propStreetname').value)) {
		showTab('propertyData');
		alert('Vejnavn må ikke indeholde tal');
		document.getElementById('propStreetname').focus();
		return false;
	}
	if (nameReg.test(document.getElementById('propBuildingLetter').value)) {
		showTab('propertyData');
		alert('Husbogstav må ikke indeholde tal');
		document.getElementById('propBuildingLetter').focus();
		return false;
	}
	if (nameReg.test(document.getElementById('propCity').value)) {
		showTab('propertyData');
		alert('Bynavn må ikke indeholde tal');
		document.getElementById('propCity').focus();
		return false;
	}
	
	var numberReg = /^([1-9]|[1-9][0-9]|[1-9][0-9][0-9])$/;
	if (!numberReg.test(document.getElementById('propBuildingNumber').value)) {
		showTab('propertyData');
		alert('Husnummer skal være et tal mellem 1-999');
		document.getElementById('propBuildingNumber').focus();
		return false;
	}
	
	var storeyReg = /^(\d\d|kl|st)$/;
	if (document.getElementById('propStorey').value != '' && !storeyReg.test(document.getElementById('propStorey').value)) {
		showTab('propertyData');
		alert('Etage skal være angivet med kl,st,01,02-99');
		document.getElementById('propStorey').focus();
		return false;
	}
	
	if (nameReg.test(document.getElementById('propArea').value)) {
		showTab('propertyData');
		alert('Stednavn må ikke indeholde tal');
		document.getElementById('propArea').focus();
		return false;
	}
	
	var postalReg = /^[1-9]{1}[\d]{2,3}$/;
	if (document.getElementById('propPostal').value != '' && !postalReg.test(document.getElementById('propPostal').value)) {
		showTab('propertyData');
		alert('Postnummeret er i ugyldigt format');
		document.getElementById('propPostal').focus();
		return false;
	}
	
	return true;
}

function castVote(questionId, pollId) {
	if (questionId) {
		var frm = document.getElementById('pollForm_'+questionId);
		var postStr = getFormValues(frm);
		var container = 'pollContainer_'+pollId;
		
		var xmlHttp = createXmlRequest();
	
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				try {
					document.getElementById(container).innerHTML=xmlHttp.responseText;
				} catch (e) {
					document.location.reload();
				}
			}
		}
		
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/poll/ajax/vote.php?questionId="+questionId+"&pollId="+pollId+"&"+postStr);
		xmlHttp.send(null);
	}
}

/*
	myCalendar object start
*/

//var myCalendar = new Object();

function myCalendar() {
	// setting default values
	
	// selected date
	this.date = '2012-02-22';
	
	var curentDate = '2012-02-22';
	
	// calendar object (contains all the users calendars and defined colors and selections)
	var calendars = false;
	
	// fix for bug with selector dom elemensts
	var calendarSelectorCreated = false;
	
	// method to create the calendar
	this.setupCalendar = function () {
		// get user calendars
		this.getCalendars();
		
		// draw the calendar
		this.drawCalendar();
	}
	
	this.selectCalendar = function (calId, calType, selector) {
		// setting color of selected calendars
		//if (calendars[calType][calId].calSelected != undefined) calendars[calType][calId].calSelected = calendars[calType][calId].calSelected ? false : true;
		
		//this.colorize
		//alert(calendars[calType][calId].calSelected);
		for (cal in calendars[calType]) {
			if (calendars[calType][cal].calId == calId) {
				// invert selection
				calendars[calType][cal].calSelected = calendars[calType][cal].calSelected ? false : true;
				// set color
				if (calendars[calType][cal].calSelected) {
					selector.className = 'calendarSelectorTitle eventStyleFullday'+calendars[calType][cal].calColor;
				} else {
					selector.className = 'calendarSelectorTitle eventStyle'+calendars[calType][cal].calColor;
				}
				
				break;
			}
		}
	}
	
	this.drawCalendar = function() {
		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('calendarContainer').innerHTML=xmlHttp.responseText;
			}
		}
		
		var showCalender = JSON.stringify(calendars);
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/showcalendar.php?date="+this.date+"&showCalender="+showCalender);
		xmlHttp.send(null);
	}
	
	this.changeDate = function (newDate) {
		// setting date to newDate
		this.date = newDate;
		
		// redrawing the calendar
		this.drawCalendar();
	}
	
	this.getCalendars = function() {
		
		var xmlHttp = createXmlRequest();
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/calendars.json.php",false);
		xmlHttp.send(null);
		
		// eval() should be replaced with a json function
		calendars = eval("("+xmlHttp.responseText+")");
	}
	
	this.calendarSelector = function() {
		// display calendar selctor container
		createCalendarSelector(this);
		showPopup(300, 470, 100);
	}
	
	function createCalendarSelector(obj) {
		setDefaultPopupContent('Vælg kalendere', '', true)
		
		var oContainer = document.createElement("div");
		oContainer.id = 'calendarSelectorContainer';
		
		var containerTitleArr = new Array();
		containerTitleArr[1] = "Personlige";
		containerTitleArr[4] = "Booking";
		containerTitleArr[5] = "Booket";
		
		for (cal in calendars) {
			// creating calendar type title container
			oCalTypeTitle = document.createElement("div");
			oCalTypeTitle.className='calendarTypeTitle';
			oCalTypeTitle.appendChild(document.createTextNode(containerTitleArr[cal]));
			// appending calendar type title container
			oContainer.appendChild(oCalTypeTitle);
			
			for (subCal in calendars[cal]) {
				// fixing vars
				(function(){
					var calType = cal;
					var calId = calendars[cal][subCal].calId;
					var calNum = subCal;
					
					// creating calendar container
					oCalendarContainer = document.createElement("div");
					oCalendarContainer.className='calendarSelector';
					oCalendarContainer.id = 'container_'+calType+'_'+calNum;
					
					// creating calendar title container
					oCalendarTitle = document.createElement("div");
					if (calendars[cal][subCal].calSelected) {
						oCalendarTitle.className='calendarSelectorTitle eventStyleFullday'+calendars[cal][subCal].calColor;
					} else {
						oCalendarTitle.className='calendarSelectorTitle eventStyle'+calendars[cal][subCal].calColor;
					}
					oCalendarTitle.appendChild(document.createTextNode(calendars[cal][subCal].calTitle));
					// creating onclick event
					oCalendarTitle.onclick = function () {
						//alert(calId);
						obj.selectCalendar(calId, calType, this);
					}
					oCalendarTitle.id = 'calendarTitle_'+cal+'_'+subCal;

					// appending calendar title container
					oCalendarContainer.appendChild(oCalendarTitle);
					
					// create calendar color selector container
					oCalendarColor = document.createElement("div");
					// setting classnames
					oCalendarColor.className='calendarSelectorColor colorSelector eventStyleFullday'+calendars[cal][subCal].calColor;
					// creating onclick event
					var calColor = calendars[cal][subCal].calColor;
					oCalendarColor.onclick = function () {
						obj.colorSelector(calNum, calType, obj);
					}
					oCalendarColor.id = 'colorSelector_'+cal+'_'+subCal;
					
					// appending color selector
					oCalendarContainer.appendChild(oCalendarColor);
					
					// creating edit and/or delete buttons
					if (cal == '1') {
						// creating container div
						oToolContainer = document.createElement("div");
						oToolContainer.classname = 'calendarToolButtonContainer';
						
						// creating edit button
						oEditButton = document.createElement("img");
						oEditButton.className = 'calendarButton';
						oEditButton.src = 'http://www.svommebad.dk/administration/images/icons/xsmall/edit.png';
						oEditButton.title = 'Rediger kalenderen ('+calendars[cal][subCal].calTitle+')';
						oEditButton.alt = 'Rediger';
						oEditButton.onclick = function () {
							obj.editCalendar(calId, calType);
						}
						
						// appending edit button
						oToolContainer.appendChild(oEditButton);
						
						// creating delete button
						oDeleteButton = document.createElement("img");
						oDeleteButton.className = 'calendarButton';
						oDeleteButton.src = 'http://www.svommebad.dk/administration/images/icons/xsmall/delete.png';
						oDeleteButton.title = 'Slet kalenderen ('+calendars[cal][subCal].calTitle+')';
						oDeleteButton.alt = 'Slet';
						oDeleteButton.onclick = function () {
							obj.deleteCalendar(calId, calType);
						}
						
						// appending delete button
						oToolContainer.appendChild(oDeleteButton);
						
						// appending tool container
						oCalendarContainer.appendChild(oToolContainer);
					}
					
					// appending calendar container
					oContainer.appendChild(oCalendarContainer);
				})()
			}
		}

		// adding selectors to container
		document.getElementById('popupInnerContent').appendChild(oContainer);

		// TODO ok button skal laves pænere
		oButton = document.createElement("input");
		oButton.type = 'button';
		oButton.onclick = function () {
			closePopup();
			saveSelection();
			obj.drawCalendar();
		}
		oButton.value = 'Ok';

		document.getElementById('popupInnerContent').appendChild(oButton);
		
		calendarSelectorCreated = true;
	}

	function saveSelection() {
		// TODO der skal laves en ajax kald der gemmer farver og valgte kalendere til databasen
		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				//document.getElementById('calendarContainer').innerHTML=xmlHttp.responseText;
			}
		}
		
		var dataStr = JSON.stringify(calendars);
		
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/saveselection.php?data="+dataStr);
		xmlHttp.send(null);
	}
	
	function createColorSelector(oParent, cal, calType, obj) {
		var colors = 21;

		// creating selector container
		var oContainer = document.createElement("div");
		oContainer.id = 'calendarColorSelector';
		oContainer.className = 'colorSelectorContainer';

		// creating colors
		for (i=1; i<=colors; i++) {
			(function(){
				var color = i;
				var oColor = document.createElement("div");
				oColor.className = 'colorSelector eventStyleFullday'+i;
				oColor.onclick = function () {
					obj.selectColor(color, cal, calType);
				}

				oContainer.appendChild(oColor);
			})()
		}

		oParent.appendChild(oContainer);
	}

	function removeColorSelector() {
		// removing selector if it exists
		if (document.getElementById('calendarColorSelector')) {

			// removing content from color selector
			while(document.getElementById('calendarColorSelector').hasChildNodes()){
				document.getElementById('calendarColorSelector').removeChild(document.getElementById('calendarColorSelector').childNodes[0]);
			}

			// removing color selector
			document.getElementById('calendarColorSelector').parentNode.removeChild(document.getElementById('calendarColorSelector'));
		}
	}
	
	this.editCalendar = function(calId, calType) {
		// display edit calendar container
		saveSelection();
		createEditCalendarWindow(this, calId, calType);
		showPopup(100, 300, 100);
	}

	this.deleteCalendar = function(calId, calType) {
		// delete calendar
		if (confirm('Er du sikker på at du vil slette denne kalender og alle de aktiviteter den indeholder?')) {
			saveSelection();
			deleteCalendar(calId, calType);
			document.location.reload();
		}
	}
	
	function deleteCalendar(calId, calType) {
		// delete calendar
		var xmlHttp = createXmlRequest();
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/deletecalendar.php?calId="+calId+"&calType="+calType,false);
		xmlHttp.send(null);
	}

	this.deleteEvent = function(eventId, calType) {
		// delete calendar
		if (confirm('Er du sikker på at du vil slette denne aktivitet?')) {
			deleteEvent(eventId, calType);
			this.drawCalendar();
			closePopup();
		}
	}
	
	function deleteEvent(eventId, calType) {
		// delete event
		var xmlHttp = createXmlRequest();
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/deleteevent.php?eventId="+eventId+"&calType="+calType,false);
		xmlHttp.send(null);
	}

	function createEditCalendarWindow(obj, calId, calType) {
		var xmlHttp = createXmlRequest();
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/calendar.json.php?calId="+calId+"&calType="+calType,false);
		xmlHttp.send(null);
		
		// eval() should be replaced with a json function
		var cal = eval("("+xmlHttp.responseText+")");
		
		setDefaultPopupContent('Rediger kalender ('+cal.userCalendarTitle+')', '', true);

		var oContainer = document.createElement("div");
		oContainer.className = '';

		oRow = document.createElement("div");
		oRow.className = 'listRow';

		// creating list row title
		oText = document.createElement("div");
		oText.className = 'listItem90';
		oText.appendChild(document.createTextNode('Titel'));

		// adding list row title to list  row
		oRow.appendChild(oText);

		// creating input container
		oInputContainer = document.createElement("div");
		oInputContainer.className = 'listItem150';

		// creating input
		oInput = document.createElement("input");
		oInput.type = 'text';
		oInput.value = cal.userCalendarTitle;
		oInput.id = 'userCalendarTitle';

		// adding input to container
		oInputContainer.appendChild(oInput);

		// adding input container to row
		oRow.appendChild(oInputContainer);

		// adding row to container
		oContainer.appendChild(oRow);

		// adding container to popup
		document.getElementById('popupInnerContent').appendChild(oContainer);

		// TODO ok button skal laves pænere
		oButton = document.createElement("input");
		oButton.type = 'button';
		oButton.onclick = function () {
			// TODO tilføj validering
			if (validateCalendar()) saveEditCalendar(obj, calId, calType);
		}
		oButton.value = 'Ok';

		document.getElementById('popupInnerContent').appendChild(oButton);
	}

	function saveEditCalendar(obj, calId, calType) {
		var userCalendarTitle = encodeURIComponent(document.getElementById('userCalendarTitle').value);

		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				// reload calendar
				document.location.reload();
			}
		}
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/savecalendar.php?userCalendarTitle="+escape(userCalendarTitle)+"&calId="+calId+"&calType="+calType);
		xmlHttp.send(null);
	}

	this.newCalendar = function() {
		// display create new calendar container
		createNewCalendarWindow(this);
		showPopup(100, 300, 100);
	}

	function createNewCalendarWindow(obj) {
		setDefaultPopupContent('Opret kalender', '', true);

		var oContainer = document.createElement("div");
		oContainer.className = '';

		oRow = document.createElement("div");
		oRow.className = 'listRow';

		// creating list row title
		oText = document.createElement("div");
		oText.className = 'listItem90';
		oText.appendChild(document.createTextNode('Titel'));

		// adding list row title to list  row
		oRow.appendChild(oText);

		// creating input container
		oInputContainer = document.createElement("div");
		oInputContainer.className = 'listItem150';

		// creating input
		oInput = document.createElement("input");
		oInput.type = 'text';
		oInput.id = 'userCalendarTitle';

		// adding input to container
		oInputContainer.appendChild(oInput);

		// adding input container to row
		oRow.appendChild(oInputContainer);

		// adding row to container
		oContainer.appendChild(oRow);

		// adding container to popup
		document.getElementById('popupInnerContent').appendChild(oContainer);

		// TODO ok button skal laves pænere
		oButton = document.createElement("input");
		oButton.type = 'button';
		oButton.onclick = function () {
			// TODO tilføj validering
			if (validateCalendar()) saveNewCalendar(obj);
		}
		oButton.value = 'Ok';

		document.getElementById('popupInnerContent').appendChild(oButton);
	}

	function saveNewCalendar(obj) {
		var userCalendarTitle = encodeURIComponent(document.getElementById('userCalendarTitle').value);

		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				// reload calendar
				document.location.reload();
			}
		}
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/createcalendar.php?userCalendarTitle="+escape(userCalendarTitle));
		xmlHttp.send(null);
	}

	this.newEvent = function() {
		// display create event container
		createNewEventWindow(this);
		showPopup(300, 530, 100);
	}

	function createNewEventWindow(obj, eventDate) {
		setDefaultPopupContent('Opret aktivitet', '', true);

		eventDate = eventDate != undefined ? eventDate : curentDate;
		
		var oContainer = document.createElement("div");
		oContainer.className = '';

		// Title
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Titel'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.id = 'eventTitle';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Date
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Tidspunkt'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oDatetimeContainer = document.createElement("div");
			oDatetimeContainer.className = 'calendarInput';

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarDate';
			oInput.setAttribute('maxlength', 10);
			oInput.value=eventDate;
			oInput.id = 'eventFromDate';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarTime';
			oInput.setAttribute('maxlength', 5);
			oInput.value='08:00';
			oInput.id = 'eventFromTime';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'eventToLabel';
			oText.appendChild(document.createTextNode('til'));
			oDatetimeContainer.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarDateContainer';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarDate';
			oInput.setAttribute('maxlength', 10);
			oInput.value=eventDate;
			oInput.id = 'eventToDate';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarTime';
			oInput.setAttribute('maxlength', 5);
			oInput.value='16:00';
			oInput.id = 'eventToTime';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);
			
			// adding fullday checkbox
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'checkbox';
			oInput.id = 'eventFullday';
			oInput.onclick = function () {
				if (this.checked) {
					document.getElementById('eventToTime').style.display='none';
					document.getElementById('eventFromTime').style.display='none';
				} else {
					document.getElementById('eventToTime').style.display='';
					document.getElementById('eventFromTime').style.display='';
				}
			}
			oInput.value='1';

			// adding input to container
			oInputContainer.appendChild(oInput);
			oInputContainer.appendChild(document.createTextNode('Hele dagen'));

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);
			
			// adding input container to row
			oRow.appendChild(oDatetimeContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Place
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Sted'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.id = 'eventPlace';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Calendar
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Kalender'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("select");
			oInput.id = 'eventCalendar';

			// adding options to select
			for (cal in calendars[1]) {
				oOption = document.createElement("option");
				oOption.value = calendars[1][cal].calId;
				oOption.appendChild(document.createTextNode(calendars[1][cal].calTitle));
				oInput.appendChild(oOption);
			}

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Description
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Beskrivelse'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("textarea");
			oInput.className = 'textarea300';
			oInput.id = 'eventDescription';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// adding container to popup
		document.getElementById('popupInnerContent').appendChild(oContainer);

		// TODO ok button skal laves pænere
		oButton = document.createElement("input");
		oButton.type = 'button';
		oButton.onclick = function () {
			if (validateEvent()) saveNewEvent(obj);
		}
		oButton.value = 'Ok';

		document.getElementById('popupInnerContent').appendChild(oButton);
	}
	
	function validateCalendar() {
		// validating calendar
		var validated = true
		
		var userCalendarTitle = encodeURIComponent(document.getElementById('userCalendarTitle').value);
		
		// validate calendar title
		if (userCalendarTitle == '') {
			alert('Kalenderen skal have en titel');
			document.getElementById('userCalendarTitle').focus();
			validated = false;
		}
		
		return validated;
	}
	
	function validateEvent() {
		// validating event
		var validated = true
		
		// regex
		var datereg = /(19|20)\d\d-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])/;
		var timereg = /(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)/;
		
		// input to validate
		var eventTitle = encodeURIComponent(document.getElementById('eventTitle').value);
		var eventStartDate = document.getElementById('eventFromDate').value;
		var eventStartTime = document.getElementById('eventFromTime').value;
		var eventEndDate = document.getElementById('eventToDate').value;
		var eventEndTime = document.getElementById('eventToTime').value;
		
		var eventStartDateArr = eventStartDate.split("-");
		var eventStartTimeArr = eventStartTime.split(":");
		var startDate = new Date(eventStartDateArr[0], eventStartDateArr[1]-1, eventStartDateArr[2], eventStartTimeArr[0], eventStartTimeArr[1]);
		
		var eventEndDateArr = eventEndDate.split("-");
		var eventEndTimeArr = eventEndTime.split(":");
		var endDate = new Date(eventEndDateArr[0], eventEndDateArr[1]-1, eventEndDateArr[2], eventEndTimeArr[0], eventEndTimeArr[1]);
		
		// validating event title
		if (eventTitle == '') {
			alert('Aktiviteten skal have en titel');
			document.getElementById('eventTitle').focus();
			validated = false;
		} else
		
		if (startDate > endDate) {
			alert('Starttispunktet skal være før sluttidspunktet');
			document.getElementById('eventFromDate').focus();
			validated = false;
		} else
		
		// validating start date
		if (!datereg.test(eventStartDate)) {
			alert('startdatoen skal have formatet ÅÅÅÅ-MM-DD');
			document.getElementById('eventFromDate').focus();
			validated = false;
		} else
		
		// calidating start time
		if (!timereg.test(eventStartTime)) {
			alert('start tidspunktet skal have formatet TT:MM');
			document.getElementById('eventFromTime').focus();
			validated = false;
		} else
		
		// validating end date
		if (!datereg.test(eventEndDate)) {
			alert('slutdatoen skal have formatet ÅÅÅÅ-MM-DD');
			document.getElementById('eventToDate').focus();
			validated = false;
		} else
		
		// calidating end time
		if (!timereg.test(eventEndTime)) {
			alert('slut tidspunktet skal have formatet TT:MM');
			document.getElementById('eventToTime').focus();
			validated = false;
		}
		
		return validated;
	}

	this.editEvent = function(eventId, eventType) {
		// display create event container
		createEditEventWindow(this, eventId, eventType);
		showPopup(300, 530, 100);
	}

	function createEditEventWindow(obj, eventId, eventType) {
		var xmlHttp = createXmlRequest();
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/event.json.php?eventId="+eventId+"&eventType="+eventType,false);
		xmlHttp.send(null);
		
		// eval() should be replaced with a json function
		var event = eval("("+xmlHttp.responseText+")");
		
		var oContainer = document.createElement("div");
		oContainer.className = '';

		setDefaultPopupContent('Rediger aktivitet ('+event.eventTitle+')', '', true);

		// Title
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Titel'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.value = event.eventTitle;
			oInput.id = 'eventTitle';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Date
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Tidspunkt'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oDatetimeContainer = document.createElement("div");
			oDatetimeContainer.className = 'calendarInput';

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarDate';
			oInput.setAttribute('maxlength', 10);
			oInput.value=event.eventStartDate;
			oInput.id = 'eventFromDate';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarTime';
			oInput.setAttribute('maxlength', 5);
			oInput.value=event.eventStartTime;
			oInput.id = 'eventFromTime';
			oInput.style.display = event.eventFullday == 1 ? 'none' : '';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'eventToLabel';
			oText.appendChild(document.createTextNode('til'));
			oDatetimeContainer.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarDateContainer';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarDate';
			oInput.setAttribute('maxlength', 10);
			oInput.value=event.eventEndDate;
			oInput.id = 'eventToDate';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.className = 'calendarTime';
			oInput.setAttribute('maxlength', 5);
			oInput.value=event.eventEndTime;
			oInput.id = 'eventToTime';
			oInput.style.display = event.eventFullday == 1 ? 'none' : '';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);
			
			// adding fullday checkbox
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'eventDateTimeInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'checkbox';
			oInput.id = 'eventFullday';
			oInput.checked = event.eventFullday == 1 ? true : false;
			oInput.onclick = function () {
				if (this.checked) {
					document.getElementById('eventToTime').style.display='none';
					document.getElementById('eventFromTime').style.display='none';
				} else {
					document.getElementById('eventToTime').style.display='';
					document.getElementById('eventFromTime').style.display='';
				}
			}
			oInput.value='1';

			// adding input to container
			oInputContainer.appendChild(oInput);
			oInputContainer.appendChild(document.createTextNode('Hele dagen'));

			// adding input container to row
			oDatetimeContainer.appendChild(oInputContainer);
			
			// adding input container to row
			oRow.appendChild(oDatetimeContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Place
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Sted'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("input");
			oInput.type = 'text';
			oInput.value = event.eventPlace;
			oInput.id = 'eventPlace';

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Calendar
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Kalender'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("select");
			oInput.id = 'eventCalendar';

			// adding options to select
			for (cal in calendars[1]) {
				oOption = document.createElement("option");
				oOption.value = calendars[1][cal].calId;
				oOption.selected = event.eventCalendar == calendars[1][cal].calId ? true : false;
				oOption.appendChild(document.createTextNode(calendars[1][cal].calTitle));
				oInput.appendChild(oOption);
			}

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// Description
			// creating list row
			oRow = document.createElement("div");
			oRow.className = 'calendarNewEventRow';

			// creating list row title
			oText = document.createElement("div");
			oText.className = 'calendarLabel';
			oText.appendChild(document.createTextNode('Beskrivelse'));

			// adding list row title to list  row
			oRow.appendChild(oText);

			// creating input container
			oInputContainer = document.createElement("div");
			oInputContainer.className = 'calendarInput';

			// creating input
			oInput = document.createElement("textarea");
			oInput.className = 'textarea300';
			oInput.id = 'eventDescription';
			oInput.appendChild(document.createTextNode(event.eventDescription));

			// adding input to container
			oInputContainer.appendChild(oInput);

			// adding input container to row
			oRow.appendChild(oInputContainer);

			// adding row to container
			oContainer.appendChild(oRow);

		// adding container to popup
		document.getElementById('popupInnerContent').appendChild(oContainer);

		// TODO ok button skal laves pænere
		oButton = document.createElement("input");
		oButton.type = 'button';
		oButton.onclick = function () {
			// TODO tilføj validering
			if (validateEvent()) saveEditEvent(obj, eventId, eventType);
		}
		oButton.value = 'Ok';

		document.getElementById('popupInnerContent').appendChild(oButton);
	}

	function saveEditEvent(obj, eventId, eventType) {
		var eventTitle = encodeURIComponent(document.getElementById('eventTitle').value);
		var eventPlace = encodeURIComponent(document.getElementById('eventPlace').value);
		var eventDescription = encodeURIComponent(document.getElementById('eventDescription').value);
		var eventCalendar = document.getElementById('eventCalendar').options[document.getElementById('eventCalendar').selectedIndex].value;
		var eventFullday = document.getElementById('eventFullday').checked ? '1' : '0';
		var eventStartDate = document.getElementById('eventFromDate').value+" "+document.getElementById('eventFromTime').value;
		var eventEndDate = document.getElementById('eventToDate').value+" "+document.getElementById('eventToTime').value;

		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				// redraw calendar
				obj.drawCalendar();
				closePopup();
			}
		}
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/saveevent.php?eventId="+eventId+"&eventType="+eventType+"&eventTitle="+escape(eventTitle)+"&eventPlace="+escape(eventPlace)+"&eventDescription="+escape(eventDescription)+"&eventCalendar="+eventCalendar+"&eventFullday="+eventFullday+"&eventStartDate="+eventStartDate+"&eventEndDate="+eventEndDate);
		xmlHttp.send(null);
	}

	function saveNewEvent(obj) {
		var eventTitle = encodeURIComponent(document.getElementById('eventTitle').value);
		var eventPlace = encodeURIComponent(document.getElementById('eventPlace').value);
		var eventDescription = encodeURIComponent(document.getElementById('eventDescription').value);
		var eventCalendar = document.getElementById('eventCalendar').options[document.getElementById('eventCalendar').selectedIndex].value;
		var eventFullday = document.getElementById('eventFullday').checked ? '1' : '0';
		var eventStartDate = document.getElementById('eventFromDate').value+" "+document.getElementById('eventFromTime').value;
		var eventEndDate = document.getElementById('eventToDate').value+" "+document.getElementById('eventToTime').value;

		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				// redraw calendar
				obj.drawCalendar();
				closePopup();
			}
		}
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/createevent.php?eventTitle="+escape(eventTitle)+"&eventPlace="+escape(eventPlace)+"&eventDescription="+escape(eventDescription)+"&eventCalendar="+eventCalendar+"&eventFullday="+eventFullday+"&eventStartDate="+eventStartDate+"&eventEndDate="+eventEndDate);
		xmlHttp.send(null);
	}

	this.colorSelector = function(cal, calType, obj) {
		var oParent = document.getElementById('container_'+calType+'_'+cal);
		
		// removing old selectors
		removeColorSelector();

		// creating new color selector
		createColorSelector(oParent, cal, calType, obj);
	}

	this.selectColor = function(color, cal, calType) {
		// removing selector
		removeColorSelector();

		// setting color value
		calendars[calType][cal].calColor = color;

		var calendarTitle = document.getElementById('calendarTitle_'+calType+'_'+cal);
		var selector = document.getElementById('colorSelector_'+calType+'_'+cal);

		// changing color in calendar selector title
		if (calendars[calType][cal].calSelected) {
			calendarTitle.className = 'calendarSelectorTitle eventStyleFullday'+calendars[calType][cal].calColor;
		} else {
			calendarTitle.className = 'calendarSelectorTitle eventStyle'+calendars[calType][cal].calColor;
		}

		// changing selected color
		selector.className = 'calendarSelectorColor colorSelector eventStyleFullday'+calendars[calType][cal].calColor;
	}
	
	this.showDayEvent = function(date) {
		var calendarJSON = JSON.stringify(calendars);

		showPopup(300, 570, 100);
		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/showevents.php?date="+date+"&calendars="+calendarJSON);
		xmlHttp.send(null);
	}

	this.showEvent = function(calType, eventId) {
		showPopup(300, 570, 100);
		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/showevent.php?eventId="+eventId+"&calType="+calType+"&pageId="+pageId);
		xmlHttp.send(null);
	}
}

/*
	myCalendar object end
*/

function calendarShowMonth(date, showCalendar, pageId) {
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('calendarContainer').innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/showcalendar.php?date="+date+"&showCalender="+showCalender+"&pageId="+pageId);
	xmlHttp.send(null);
}

function calendarCreateEvent(pageId) {
	showPopup(300, 570, 100);
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/createevent.php?pageId="+pageId);
	xmlHttp.send(null);
}

function displayCalendarSelection(pageId) {
	showPopup(300, 570, 100);
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/calendarselector.php?pageId="+pageId);
	xmlHttp.send(null);
}

function loadCalendarPosts(week) {
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById(eventWeeks[week]).innerHTML = xmlHttp.responseText;
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/calendarposts.php?eventWeekDates="+eventWeekDates[week]+"&pageId="+pageId);
	xmlHttp.send(null);
}

function showDayEvent(date, pageId) {
	showPopup(300, 570, 100);
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/showevents.php?date="+date+"&pageId="+pageId);
	xmlHttp.send(null);
}

function calendarShowEvent(eventId, pageId) {
	showPopup(300, 570, 100);
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			document.getElementById('popUpContent').innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("get","http://www.svommebad.dk/modules/calendar/ajax/showevent.php?eventId="+eventId+"&pageId="+pageId);
	xmlHttp.send(null);
}

var calendarColorSelector = false;

function calendarShowColorSelector(calendar) {
	if (calendarColorSelector) document.getElementById(calendarColorSelector).style.display='none';
	
	if (calendarColorSelector == 'colorSelector_'+calendar) {
		calendarColorSelector = false;
	} else {
		calendarColorSelector = 'colorSelector_'+calendar;
		document.getElementById('colorSelector_'+calendar).style.display='inline';
	}
}

var selectedCalendarColors = new Array();

function selectCalendarColor(color, calendar) {
	// resetting opened selector
	calendarColorSelector = false;
	document.getElementById('colorSelector_'+calendar).style.display='none';
	// mark calendar with new color
	if (in_array(calendar, selectedCalendars)) {
		document.getElementById('calendarTitle_'+calendar).className='calendarSelectorTitle eventStyleFullday'+color;
	} else {
		document.getElementById('calendarTitle_'+calendar).className='calendarSelectorTitle eventStyle'+color;
	}
		document.getElementById('calendarColor_'+calendar).className='calendarSelectorColor colorSelector eventStyleFullday'+color;
	selectedCalendarColors[calendar] = color;
}

var selectedCalendars = new Array();

function selectCalendar(calendar) {
	// setting color of selected calendars
	var color = selectedCalendarColors[calendar] == undefined ? document.getElementById('eventCalendarColor_'+calendar).value : selectedCalendarColors[calendar];
	selectedCalendarColors[calendar] = color;
	
	if (in_array(calendar, selectedCalendars)) {
		// calendar is allready selected, so deselect and remove it from the arrays
		for (var i=0; i<selectedCalendars.length;i++ ) { 
			// removing calendar from selectedCalendars array
			if (selectedCalendars[i] == calendar) selectedCalendars.splice(i,1);
		}
		
		// setting calendar to deselected
		document.getElementById('calendarTitle_'+calendar).className='calendarSelectorTitle eventStyle'+color;
	} else {
		// setting calendar to selected
		document.getElementById('calendarTitle_'+calendar).className='calendarSelectorTitle eventStyleFullday'+color;
		selectedCalendars[selectedCalendars.length] = calendar;
	}
	document.getElementById('selectedCalendars').value=selectedCalendars;
}

function saveSelectedCalendars() {
	var selectedCalendarStr = '';
	for (var i=0; i<selectedCalendars.length;i++ ) { 
		// add calendar and color to selected calendar
		selectedCalendarStr += selectedCalendarStr == '' ? '' : ',';
		var eventCalendarType = document.getElementById('eventCalendarType_'+selectedCalendars[i]).value
		var eventCalendar = document.getElementById('eventCalendar_'+selectedCalendars[i]).value
		var eventCalendarColor = document.getElementById('eventCalendarColor_'+selectedCalendars[i]).value
		selectedCalendarStr += eventCalendarType+'|'+eventCalendar+'|'+eventCalendarColor;
	}
	
	document.getElementById('selectedCalendars').value=selectedCalendarStr;
}

function calendarSearch(pageId) {
	var searchKeyword = document.getElementById('calendarSearchKeyword').value;
	if (searchKeyword != "") {
		gotoPage("http://www.svommebad.dk/system/mysite/mycalendar/events/0/"+searchKeyword+"/"+pageId);
	} else {
		document.getElementById('calendarSearchKeyword').focus();
		alert("Indtast et søgeord");
	}
}

function deleteEvent(eventId) {
	if (confirm("Er du sikker på at du vil slette den aktivitet?")) {
		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				alert(xmlHttp.responseText);
				document.location.reload();
			}
		}
		
		xmlHttp.open("get","http://www.svommebad.dk/includes/ajax/deleteevent.php?eventId="+eventId);
		xmlHttp.send(null);
	}
}

function updateTextareaPrint(elmId, textValue) {
	var div = document.getElementById(elmId);
	
	div.innerHTML = nl2br(textValue);
}

function displayAssociationListPage() {
	var xmlHttp = createXmlRequest();
	xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			// eval() should be replaced with a json function
			var userassoc = eval("("+xmlHttp.responseText+")");
			
			var assocListContainer = document.getElementById('userAssociationList');
			
			if (userassoc.length > 1) {
				// clearing container
				if (assocListContainer.hasChildNodes()) {
					while (assocListContainer.childNodes.length >= 1) {
						assocListContainer.removeChild(assocListContainer.firstChild);
					}
				}
				
				for (var i=0; i<userassoc.length; i++) {
					(function () {
						// creating list container
						var listRowContainer = document.createElement('div');
						listRowContainer.className = 'listRow';
						
						var assocProfileLink = document.createElement('a');
						assocProfileLink.href='javascript:void(0);';
						assocProfileLink.appendChild(document.createTextNode(userassoc[i].assocName));
						var assocId = userassoc[i].assocId;
						assocProfileLink.onclick = function() {
							displayAssociationProfilePage(assocId);
						}
						listRowContainer.appendChild(assocProfileLink);
						assocListContainer.appendChild(listRowContainer);
					})()
				}
			} else if (userassoc.length == 1) {
				displayAssociationProfilePage(userassoc[0].assocId);
			} else {
				// clearing container
				if (assocListContainer.hasChildNodes()) {
					while (assocListContainer.childNodes.length >= 1) {
						assocListContainer.removeChild(assocListContainer.firstChild);
					}
				}
				
				// creating list container
				var listRowContainer = document.createElement('div');
				listRowContainer.className = 'listRow';
				listRowContainer.appendChild(document.createTextNode('Du er ikke medlem af nogen foreninger'));
				assocListContainer.appendChild(listRowContainer);
			}
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/associations/ajax/userassoc.json.php");
	xmlHttp.send(null);
}

function displayAssociationProfilePage(assocId) {
	var assocListContainer = document.getElementById('userAssociationList');
	var emptyStr = "\u00a0"; // &nbsp;
	
	//if (assocId) {
		
	// clearing container
	if (assocListContainer.hasChildNodes()) {
		while (assocListContainer.childNodes.length >= 1) {
			assocListContainer.removeChild(assocListContainer.firstChild);
		}
	}
		
		var xmlHttp = createXmlRequest();
		xmlHttp.onreadystatechange=function() {
		if(xmlHttp.readyState==4) {
			// eval() should be replaced with a json function
			var assocInfo = eval("("+xmlHttp.responseText+")");
			
			for (var i=0; i<assocInfo.length; i++) {
				// value, title, type
				(function () {
					var fieldValue = assocInfo[i].value;
					var fieldTitle = assocInfo[i].title;
					var fieldType = assocInfo[i].type;
					
					var fieldContainer = document.createElement('div');
					fieldContainer.className = 'listRow';
					
	/*
*1 tekst
2 bruger
3 gruppe
4 superbruger
5 side
6 url
7 email
8 fritekst (textarea)
9 heltal
10 kommatal
11 option box
12 checkbox
13 radioboxe (bruger samme syntax som otion)
14 dato
15 datotid
16 billede
17 fil (default sætter hvilke filtyper)
18 ekstern funktion fieldDataSource angiver fil/funktion default angiver evt. input vars
19 værdi fra stamdata
20 bank data
	 */
					switch (Number(fieldType)) {
						default:
						case 1:
							// text
							var titleField = document.createElement('div');
							titleField.className = 'listItem180';
							titleField.appendChild(document.createTextNode(fieldTitle));
							fieldContainer.appendChild(titleField);
							
							var valueField = document.createElement('div');
							valueField.className = 'listItem300';
							valueField.appendChild(document.createTextNode(fieldValue));
							fieldContainer.appendChild(valueField);
							break;
						case 6:
							// url
							var titleField = document.createElement('div');
							titleField.className = 'listItem180';
							titleField.appendChild(document.createTextNode(fieldTitle));
							fieldContainer.appendChild(titleField);
							
							if (fieldValue) {
								var valueField = document.createElement('div');
								valueField.className = 'listItem300';
								var oLink = document.createElement('a');
								oLink.href = fieldValue;
								oLink.appendChild(document.createTextNode(fieldValue));
								valueField.appendChild(oLink);
								fieldContainer.appendChild(valueField);
							} else {
								var valueField = document.createElement('div');
								valueField.className = 'listItem300';
								valueField.appendChild(document.createTextNode(emptyStr));
								fieldContainer.appendChild(valueField);
							}
							break;
						case 7:
							// email
							var titleField = document.createElement('div');
							titleField.className = 'listItem180';
							titleField.appendChild(document.createTextNode(fieldTitle));
							fieldContainer.appendChild(titleField);
							
							if (fieldValue) {
								var valueField = document.createElement('div');
								valueField.className = 'listItem300';
								var oLink = document.createElement('a');
								oLink.href = 'mailto:'+fieldValue;
								oLink.appendChild(document.createTextNode(fieldValue));
								valueField.appendChild(oLink);
								fieldContainer.appendChild(valueField);
							} else {
								var valueField = document.createElement('div');
								valueField.className = 'listItem300';
								valueField.appendChild(document.createTextNode(emptyStr));
								fieldContainer.appendChild(valueField);
							}
							break;
					}
					
					assocListContainer.appendChild(fieldContainer);
				})()
			}
			
			
			/*if (assocInfo.assocId != undefined) {
				// column 1
				var column1 = document.createElement('div');
				column1.className = 'listItem420 listItemNoHeight';
				
				var nameRowContainer = document.createElement('div');
				nameRowContainer.className = 'listRow';
				
				var nameLabelContainer = document.createElement('div');
				nameLabelContainer.className = 'listItem180';
				nameLabelContainer.appendChild(document.createTextNode('Foreningsnavn'));
				nameRowContainer.appendChild(nameLabelContainer);
				
				var nameContainer = document.createElement('div');
				nameContainer.className = 'listItem210';
				nameContainer.appendChild(document.createTextNode(assocInfo.assocName));
				nameRowContainer.appendChild(nameContainer);
				
				column1.appendChild(nameRowContainer);
				
				if (assocInfo.assocEmail != undefined && assocInfo.assocEmail != "") {
					var emailRowContainer = document.createElement('div');
					emailRowContainer.className = 'listRow';
					
					var emailLabelContainer = document.createElement('div');
					emailLabelContainer.className = 'listItem180';
					emailLabelContainer.appendChild(document.createTextNode('E-mail'));
					emailRowContainer.appendChild(emailLabelContainer);
					
					var emailContainer = document.createElement('div');
					emailContainer.className = 'listItem210';
					emailContainer.appendChild(document.createTextNode(assocInfo.assocEmail));
					emailRowContainer.appendChild(emailContainer);
					
					column1.appendChild(emailRowContainer);
				}
				
				// column 2
				assocListContainer.appendChild(column1);
				var column2 = document.createElement('div');
				column2.className = 'listItem240 listItemNoHeight';
				
				if (assocInfo.assocPhoto != undefined && assocInfo.assocPhoto != 0) {
					var photoContainer = document.createElement('div');
					photoContainer.className = 'listItem210 listItemNoHeight';
					var profilePhoto = document.createElement('img');
					profilePhoto.src = 'http://www.svommebad.dk/file.php?id='+assocInfo.assocPhoto+'&mode=thumb&w=200&h=150&zc=true';
					profilePhoto.style.width = '200px';
					profilePhoto.style.height = '150px';
					photoContainer.appendChild(profilePhoto);
					column2.appendChild(photoContainer);
				}
				
				
				var columnContainer = document.createElement('div');
				columnContainer.className = 'listRow';
				columnContainer.appendChild(column1);
				columnContainer.appendChild(column2);
				assocListContainer.appendChild(columnContainer);
			}*/
		}
	}
	
	xmlHttp.open("get","http://www.svommebad.dk/modules/associations/ajax/associationprofile.json.php?assocId="+assocId);
	xmlHttp.send(null);
}
