// USER LOADER STUFF ...

function loadUserGallery(idUser, idDiv, iPage){

document.getElementById('galleryloadtitle').style.display = 'none';
var divTarget = document.getElementById(idDiv);
divTarget.innerHTML = 'Loading ...';
divTarget.style.display = 'block';

var requestUrl = '/cms2k/modules/newforum/ajax.user.images.asp?siteID=1&userID='+ idUser +'&p='+ iPage;



		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {


divTarget.innerHTML =  request.responseText;
				
				
				
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				
								
			}
		}); 
	




}


function loadUserThreads(idUser, idDiv, iPage){

var divTarget = document.getElementById(idDiv);
divTarget.innerHTML = 'Loading ...';
divTarget.style.display = 'block';

var requestUrl = '/cms2k/modules/newforum/ajax.user.posts.asp?siteID=1&userID='+ idUser +'&mode=thread&p='+ iPage;



		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {


divTarget.innerHTML =  request.responseText;
				
				
				
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				
								
			}
		}); 
	




}



function loadUserPosts(idUser, idDiv, iPage){

var divTarget = document.getElementById(idDiv);
divTarget.innerHTML = 'Loading ...';
divTarget.style.display = 'block';

var requestUrl = '/cms2k/modules/newforum/ajax.user.posts.asp?siteID=1&userID='+ idUser +'&mode=posts&p='+ iPage;



		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {


divTarget.innerHTML =  request.responseText;
				
				
				
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				
								
			}
		}); 
	




}





// FORUM SCRIPTS ...
function setHtmlFilter(allowedTags, strHtml) 
    {
        //Pierre Fawcett
        //allowedTags er en tekststreng separeret med | (pipes).
        //Det skal være | (pipes), da de bruges som "or" operator i RegEx.
        //Strengen må ikke begynde eller ende på en ´| (pipe)
        //Strengen removeStyles er en streng, hvor de styles, der skal fjernes er listet separeret af kommaer.

        var removeStyles = "display, position, top, right, bottom, left"; // De styles, der skal fjernes
        
        //Fjern de tags vi ikke vil have
        var regEx = new RegExp("<{1}?(?=\/?(" + allowedTags + ")( |>))", "gi");
        var txt = strHtml.replace(regEx, "##&##");

		regEx = new RegExp("<[^>]+>", "gi");
        txt = txt.replace(regEx, "");
        txt = txt.replace(/##&##/gi, "<");
        
        //Fra de tags vi gerne vil have - fjern de styles vi ikke vil have.
        var mydiv = document.createElement("div");
        mydiv.innerHTML = txt;
        
		regEx = new RegExp(" ", "gi");
		removeStyles = removeStyles.replace(regEx, "");
		//removeStyles = removeStyles.replace(/" "/gi, "");
        
		var styleElements = removeStyles.split(",");
        var tagElements = allowedTags.split("|");
        for (var x = 0; x < tagElements.length; x++)
        {
            var elem = mydiv.getElementsByTagName(tagElements[x]);
            if (elem) 
            {
                for (var i = 0; i < elem.length; i++) 
                {
                    //Fjern de style-elementer vi ikke vil have
                    for (y = 0; y < styleElements.length; y++) 
                    {
                        try 
                        {
							elem[i].style.removeProperty(styleElements[y]);
                        }
                        catch (e) 
                        { // Igen kører IE < 9 solo
                            elem[i].style.removeAttribute(styleElements[y]);
                        }
                    }
                }
            }
        }
		return mydiv.innerHTML;
    }
	
function getEditorValue( instanceName )
{
    // Get the editor instance that we want to interact with.
    var oEditor = FCKeditorAPI.GetInstance( instanceName ) ;

    // Get the editor contents as XHTML.
    return oEditor.GetXHTML( true ) ; // "true" means you want it formatted.
}

var text = "Her";

function FCKEditor_OnComplete(oEdit)
	{
		oEdit.SetHTML( text ) ;
	}

function setEditorValue( instanceName, txt )
{
    // Get the editor instance that we want to interact with.
    var oEditor = FCKeditorAPI.GetInstance( instanceName ) ;

    // Set the editor contents.
	text = txt;
	FCKEditor_OnComplete(oEditor);
}
	
function validateForumPostSubmission(theForm){

// check for at headline ...
var myHeadline = theForm.headline.value;
// alert('Headline: '+ myHeadline );

if(myHeadline == ''){

alert('Venligst skriv en overskrift på dit indlæg');
theForm.headline.focus();
return false;

}

	//var html = getEditorValue( 'postText' );
	//html = setHtmlFilter('b|u|i|p|br|a|img|div|span|font|strong|small|blockquote|center|hr|cite|del|q|s|strike|sub|sup|h1|h2|h3|h4|h5|h6|ul|ol|li|table|tr|td|th', html);
	//setEditorValue( 'postText', html );

return true;


}

function validateForumThreadSubmission(theForm){

// check for at headline ...
var myHeadline = theForm.title.value;
// alert('Headline: '+ myHeadline );

if(myHeadline == ''){

alert('Venligst skriv en overskrift på din tråd');
theForm.title.focus();
return false;

}

return true;


}





// FAV / SHARE / Toggle scripts

function toggleArticleFunctions(preItem,funcSel){

var btnFav = document.getElementById(preItem +'btnFavSel');
var divFav = document.getElementById(preItem +'divFavPanel');
var icoFave = document.getElementById(preItem +'icoForumFave')

var btnShare = document.getElementById(preItem +'btnShareSel');
var divShare = document.getElementById(preItem +'divSharePanel');
var icoShare = document.getElementById(preItem +'icoForumShare')

var btnFlag = document.getElementById(preItem +'btnFlagSel');
var divFlag = document.getElementById(preItem +'divFlagPanel');
var icoFlag = document.getElementById(preItem +'icoForumFlag');

// RESET
divFav.style.display = 'none';
divShare.style.display = 'none';
divFlag.style.display = 'none';

icoFave.src = '/gfx/ico_forum_fave.gif';
icoShare.src = '/gfx/ico_forum_share.gif';
icoFlag.src = '/gfx/ico_forum_flag.gif';






switch(funcSel){

    case 'flag':
        divFlag.style.display = 'block';
        icoFlag.src = '/gfx/ico_forum_flag_active.gif';
        break;

    case 'fav':
       divFav.style.display = 'block';
       icoFave.src = '/gfx/ico_forum_fave_active.gif';
        break;

    case 'share':
       divShare.style.display = 'block';
       icoShare.src = '/gfx/ico_forum_share_active.gif';

        break;


}




}




function ConfirmDialog(txt,url){

if(confirm(txt)){
location.href = url;
}
}


function killChatInvitation(){
    var divDisplay = document.getElementById('div_chat_invite');
    divDisplay.style.display = 'none';
}


function displayChatInvitation(idInvite){

    var divDisplay = document.getElementById('div_chat_invite');

    // html
    var html = '<div style="border:solid 1px #000000;background-color:#FFFFFF;"><iframe width="350" height="250" src="/cms2k/modules/chat/requests/chat.display.invitation.asp?inv='+ idInvite +'"></iframe></div>';

    // Position ...
    var toppos;
    var leftpos;
    if (navigator.appName.indexOf("Microsoft")!=-1) {
        toppos = document.body.clientHeight / 2 - 100;
        leftpos = document.body.clientWidth / 2 - 100;
    }else{
        toppos = window.innerHeight / 2 - 100;
        leftpos = window.innerWidth / 2 - 100;
    }


    divDisplay.innerHTML = html;

    divDisplay.style.top = toppos; 
    divDisplay.style.left = leftpos;

    divDisplay.style.display = 'block';

}



function ShowLoginBox(){

	try{
        var divFrm = document.getElementById('divloginform');
        if(divFrm.style.display == 'none'){
        divFrm.style.display = 'block';
    
        }else{
            divFrm.style.display = 'none';
    
        }
    }
    
    catch(ex){
    
    
    }
	
}

function HideLoginBox(){
	var divFrm = document.getElementById('divloginform');
	divFrm.style.display = 'none';
}





// Div form functions
function checkCheckbox(objField, stAlert){
	if (objField.checked){
		return true
	}else{
		alert (stAlert)
		setFocusField(objField)
		return false
		}
	}
	
function selectIsSelected(objField, stName){
	if (objField.options.selectedIndex == 0){
		alert ("Vælg \"" + stName + "\"")
		setFocusField(objField)
		return false
	}else{
		return true
		}
	}

function checkRadio(objField, stName){
	if (radioIsSelected(objField)){
		return true
	}else{
		alert ("Vælg \"" + stName + "\"")
		setFocusField(objField[0])
		return false
		}
	}
	
function checkTextFieldEmpty(objField, stName){
	if (objField.value == ""){
		alert ("Udfyld \"" + stName + "\"")
		setFocusField(objField)
		return false
	}else{
		return true
		}
	}
	
var highLightedField = ""
function setFocusField(objField){
	//if (document.all){
		if (highLightedField != ""){
			var myType = highLightedField.type
			if (myType == "radio" || myType == "checkbox"){
				myBg = "#FFFFFF"  // Hvid
			}else{
				myBg = "#FFFFFF"  // Hvid
				//myBg = "#A0D0EC"  // Blaa
				}
			highLightedField.style.backgroundColor = myBg
            //highLightedField.style.border = '';
			}
		
        
        //objField.style.border = '1px solid #FF0000';
        objField.style.backgroundColor = "#fff3ff"
		highLightedField = objField
	//	}
	objField.focus()
	}
	
function checkNumeric(objField, stName, iLength, bRyd){
	if (myIsNumeric(objField.value) == false || (objField.value.length != iLength && iLength != 0)){
		field = "Etableringstidspunkt"
		fieldName = "Etableringstidspunkt"	
		alert ("Udfyld \"" + stName + "\" korrekt")
		if (bRyd) objField.value = ""
		setFocusField(objField)
		return false
	}else{
		return true
		}
	}
	
var Chars = "0123456789";
function myIsNumeric(st){
	if (st == "") return (false)
	for (var i = 0; i < st.length; i++) {
		if (Chars.indexOf(st.charAt(i)) == -1){
			return (false);
			}
		}
	return true
	}

function getCheckCpr(lngCpr) {
	intError = 0;
	if (lngCpr.length == 10) {
		var arrCiffer = new Array(10);
		for (i = 0; (i < 10) && (intError == 0); i++) {
			arrCiffer[i] = lngCpr.substring(i,i+1);
			if (!myIsNumeric(arrCiffer[i])) {
				intError = 1;
				}
			}
	}else{
		intError = 1;
		}
	if (intError == 0) {
		lngTotal = (4 * arrCiffer[0]) + (3 * arrCiffer[1]) + (2 * arrCiffer[2]) + (7 * arrCiffer[3]) + (6 * arrCiffer [4]) + (5 * arrCiffer[5]) + (4 * arrCiffer[6]) + (3 * arrCiffer[7]) + (2 * arrCiffer[8]) + (1 * arrCiffer[9]);
		if (lngTotal % 11 != 0) {
			intError = 2;
			}
		}
	if (intError == 1) {
		return 2;
		}
	else if (intError == 2) {
		return 0;
		}
	else if (intError == 0) {
		return 1;
		}
	}

function is18years(st) {
	if (st.length == 5) st = "0" + st
	y = st.substring(4, 6)
	m = st.substring(2, 4) - 1
	d = st.substring(0, 2)
	
	dato = new Date(y, m, d)
	nu = new Date()
	
	zY = nu.getYear() - dato.getYear()
	zM = nu.getMonth() - dato.getMonth()
	zD = nu.getDate() - dato.getDate()
	if (zY > 1000) zY = zY - 1900
	
	is18 = false
	
	if ((zY > 18) || (zY == 18 && zM > 0) || (zY == 18 && zM == 0 && zD >= 0)) is18 = true
	return is18
	}
	
	
function checkemail(fileName,stName) {
		
		var source = fileName.value;
		var str = source
		
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		   alert(stName +" er ugyldig");
		   setFocusField(fileName);
		    return false;
		 }

 		 return true					
	}



function checkDato(st){
	if (st.indexOf("/") == -1 && st.indexOf("-") == -1) return (false);
	testArr = st.split("/");
	if (testArr.length != 3){
		testArr = st.split("-");
		if (testArr.length != 3) return (false);
		}
	if (myIsNumeric(""+testArr[0]) == false || testArr[0] == "" ) return (false);
	if (myIsNumeric(""+testArr[1]) == false || testArr[1] == "") return (false);
	if (myIsNumeric(""+testArr[2]) == false || testArr[2] == "") return (false);
	testDato = new Date(testArr[2], testArr[1]-1, testArr[0])
	if (testDato.getMonth() != testArr[1]-1) return (false)
	return true
	}

function tjekDato(dat,dField,aMsg) {
  temp = dat.split("-");
  //d = new Date(parseInt(temp[0], 10), parseInt(temp[1], 10), parseInt(temp[2], 10));
  d = new Date(parseInt(temp[2], 10), parseInt(temp[1], 10) - 1, parseInt(temp[0], 10));
  if (d.getFullYear() != parseInt(temp[2], 10) || (d.getMonth() + 1) != parseInt(temp[1], 10) || d.getDate() != parseInt(temp[0], 10)) {


    alert("Datoen er ikke gyldig!\n"+ aMsg);
	setFocusField(dField);
    return false;
	
  }
//  nu = new Date();
//  if (d.getTime() > nu.getTime()) {
//    //alert("Datoen skal være i fremtiden!");
//	alert("Datoen kan ikke være i fremtiden!");
//    return false;
//  }
  return true;
}

function TestFileType(fileName,fileTypes,eMsg){ 

	allowSubmit = false;
	extArray = fileTypes;
	
	var source = fileName.value;
	var fileType = source.substr(source.lastIndexOf(".")+1).toLowerCase();
	
	
	for (var i = 0; i < extArray.length; i++) {
	if (extArray[i] == fileType) { allowSubmit = true; break; }
	}

	
	if (allowSubmit) {
	return(true)
	} 
	else{
	alert(eMsg);
	}

}





function LimitAttach(form, file) {
allowSubmit = false;
extArray = new Array(".gif", ".jpeg", ".jpg", ".png");
if (!file) return;
while (file.indexOf("\\") != -1)
file = file.slice(file.indexOf("\\") + 1);
ext = file.slice(file.indexOf(".")).toLowerCase();
for (var i = 0; i < extArray.length; i++) {
if (extArray[i] == ext) { allowSubmit = true; break; }
}
if (allowSubmit) form.submit();
else
alert("Please only upload files that end in types: " + (extArray.join(" ")) + "\nPlease select a new file to upload and submit again.");
}




function getFormValues(fobj,valFunc)
{ 
   var str = ""; 
   var valueArr = null; 
   var val = ""; 
   var cmd = ""; 
   for(var i = 0;i < fobj.elements.length;i++) 
   { 
       switch(fobj.elements[i].type) 
       { 
           case "text": 
//                if(valFunc) 
//                { 
//                    //use single quotes for argument so that the value of 
//                    //fobj.elements[i].value is treated as a string not a literal 
//                    cmd = valFunc + "(" + 'fobj.elements[i].value' + ")"; 
//                    val = eval(cmd) 
//                } 
                str += fobj.elements[i].name + 
                 "=" + escape(fobj.elements[i].value) + "&"; 
                 break; 
				 
		   case "hidden":
		   		 str += fobj.elements[i].name + 
                 "=" + escape(fobj.elements[i].value) + "&"; 
                 break; 

           case "select-one": 
                str += fobj.elements[i].name + 
                "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&"; 
                break; 
				
			default:
				str += fobj.elements[i].name + 
                 "=" + escape(fobj.elements[i].value) + "&"; 
                 break; 
       } 
   } 
}

function toggleElement(id) {
		if ( document.getElementById(id).style.display == 'none' ) {
			document.getElementById(id).style.display = '';
		} else {
			document.getElementById(id).style.display = 'none';
		}
	}




function valComment(theForm){

	if (theForm.commentName.value == ''){
		alert('Du skal skrive dit navn');
		theForm.commentName.focus();
		return false;
	}
	
	if (theForm.commentEmail.value == ''){
		alert('Du skal skrive din e-mail');
		theForm.commentEmail.focus();
		return false;
	}
	
	if (theForm.commentDesc.value == ''){
		alert('Du skal skrive en kommentar!');
		theForm.commentDesc.focus();
		return false;
	}

}

// Tip en ven
function sndPage(eID,eType,pageID){
   window.open('/sendpage/?ePid='+ pageID +'&eID='+ eID +'&eType='+ eType +'','sndPage','scrollbars=yes,width=440,height=400');
}

jQuery(function () {
  // BEGIN Claus 20101002 Resize forum images to fit
  jQuery(".boxpadder img").each(function () {
    if (this.width/464 > 1) {
      this.height = this.height/(this.width/464);
      this.width=464;
    }
  });
  // END Claus 20101002 Resize forum images to fit
  // BEGIN Claus 20110628 Add ellipsis and title to "read more" links
  jQuery("ul.readalso > li > a").each(function () {
	if (jQuery(this).height() > 20) {
		this.title = this.innerText;
		this.innerText = this.innerText.substr(0, 33) + "…";
	}
  });
  // END Claus 20110628 Add ellipsis and title to "read more" links
  // BEGIN Claus 20101016 Enable scrolling for overflowing tables in forum posts
  jQuery(".boxpadder").each(function () {
    if (this.scrollWidth && this.scrollWidth > 488) {
      jQuery(this).css("overflow-x", "scroll");
    }
  });
  // END Claus 20101016 Enable scrolling for overflowing tables in forum posts
  // BEGIN Claus 20101022 Improve login form
  jQuery("input.no-label").each(function () {
    this.labelValue = this.value;
    jQuery(this).bind({
        focusin: function () {
              if (this.value == this.labelValue) {
                  this.value = "";
              }
          },
            focusout: function () {
                if (this.value == "") {
                    this.value = this.labelValue;
                }
            }
        })
    });
    // END Claus 20101022 Improve login form
    // BEGIN Claus 20101029 Disable spell check
    jQuery("input.no-spellcheck,textarea.no-spellcheck").attr("spellcheck", "false");
    // END Claus 20101029 Disable spell check
    // BEGIN Claus 20101101 Workaround for lack of nth-child support in older IE / only necessary until cls_menu can include these classes programmatically
    jQuery("ul.nav.main > li").each(function (idx) {
        jQuery(this).addClass("index-" + idx);
    });
    // END Claus 20101101 Workaround for lack of nth-child support in older IE / only necessary until cls_menu can include these classes programmatically
    // BEGIN Claus 20101102 Remove bg img from password box on focus, re-add on focus lost
    jQuery("input.password-bg").each(function () {
        if (this.value) {
            jQuery(this).removeClass("password-bg");
        }
        jQuery(this).bind({
            focusin: function () {
                jQuery(this).addClass("remove-bg-img");
            },
            focusout: function () {
                if (!this.value) {
                    jQuery(this).removeClass("remove-bg-img");
                }
            }
        })
    });
    // END Claus 20101102 Remove bg img from password box on focus, re-add on focus lost
    // BEGIN Claus 20101108 Workaround for setting login form fields
    jQuery("#refPage,#returnURL,#confirm").val(location.pathname);
    // END Claus 20101108 Workaround for setting login form fields
    // BEGIN Claus 20101108 Alert user of incorrect password
    if (location.search.indexOf("errorcode=1") != -1) {
      alert("Der var en fejl i brugernavnet eller kodeordet. Prøv venligst igen.");
    }
    // END Claus 20101108 Alert user of incorrect password
  // BEGIN Claus 20101114 Resize signature images to fit
  jQuery(".boxsignature img").each(function () {
    if (this.width/464 > 1) {
      this.height = this.height/(this.width/464);
      this.width=464;
    }
    if (this.height/210 > 1) {
      this.width = this.width/(this.height/210);
      this.height=210;
    }
  });
  // END Claus 20101114 Resize forum images to fit
  // BEGIN Claus 20110102 Fix forums share links
  jQuery('a[href^="http://www.facebook.com/sharer.php"]').each(function () {
    try {
      decodeURI(jQuery(this).attr("href"));
    }
    catch (ex) {
      jQuery(this).attr("href", encodeURI(unescape(jQuery(this).attr("href"))));
    }
  });
  jQuery('a[href^="http://twitter.com/home"]').each(function () {
    try {
      decodeURI(jQuery(this).attr("href"));
    }
    catch (ex) {
      jQuery(this).attr("href", encodeURI(unescape(jQuery(this).attr("href"))));
    }
  });
// END Claus 20110102 Fix forums share links
  // BEGIN Claus 20111017 Make PLUS+ post wallpaper clickable
  jQuery(".boxthreadpostcontent.vip,.boxthreadcontent.vip").click(function (e) {
      if (e && e.target && jQuery(e.target).length && jQuery(e.target).hasClass("vip")) {
          location.href = "/min-mave-plus.htm";
      }
  });
  // END Claus 20111017 Make PLUS+ post wallpaper clickable
});

// BEGIN Claus 20110129 cross-browser cross-domain fetching
var getCORS = function (url, data, callback, type) {
    if (jQuery.browser.msie) {
        if (window.XDomainRequest) {
            var xdr = new XDomainRequest();
            xdr.open("get", url);
            xdr.timeout = 10000;
            xdr.onerror = function () { };
            xdr.ontimeout = function () { };
            xdr.onprogress = function () { };
            xdr.onload = function () {
                callback(this.responseText, "success");
            };
            // BEGIN Claus 20110812 IE9 "XDR aborted without error" fix
            setTimeout(function () {
                xdr.send();
            }, 0);
            // END Claus 20110812 IE9 "XDR aborted without error" fix
        }
    }
    else {
        jQuery.get(url, data, callback, type);
    }
};
// END Claus 20110129 cross-browser cross-domain fetching

// BEGIN Claus 20101128 previously separate file "favorites.js"

// Required libraries:
// - prototype
// - script.aculo.us


function CloseFavoriteList(idDiv){
	
	var divTarget = $(idDiv); // document.getElementById(idDiv);

	Effect. SlideUp(divTarget);
	// Effect.DropOut(idItem);
	// Effect.Fade(idItem, { duration: 0.3 });
	// divTarget.style.display = 'none';

}



function QuickListLoadFolder(idFolder, idSite, sOrder, iPage){
	
	var requestUrl = '/cms2k/modules/favorites/api/quicklist.asp?siteID='+ idSite +'&folderID='+ idFolder +'&order='+ sOrder +'&p='+ iPage ;
	var divTarget = document.getElementById('divmyfavorites');
	
	// USING: Prototype
		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {
				divTarget.innerHTML = request.responseText;
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				// liFolder.removeClassName('favoriteLoaderBox');
								
			}
		}); 
	
	
}



function FavoriteFolderDelete(idItem){
	
	var liFolder = $('favFolder-'+ idItem );
	
	liFolder.addClassName('favoriteLoaderBox');
	
	if(confirm('Vil du slette denne mappe?')){
		
		var requestUrl = '/cms2k/modules/favorites/api/folder.asp?mode=delete&fid='+ idItem +'';
		
		// USING: Prototype
		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {
				
				
				liFolder.update('Mappe blev slettet ...');
				liFolder.removeClassName('favoriteLoaderBox');
				liFolder.addClassName('favoriteLoaderBoxSuccess');
				
				Effect.Shrink('favFolder-'+ idItem);
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				liFolder.removeClassName('favoriteLoaderBox');
								
			}
		}); 
		
		
		
		
		
	} else {
		liFolder.removeClassName('favoriteLoaderBox');
		
	}
	
	
	
	
}


var idItemMove = '0';
var cntFavMove = '';

function CancelMove(){
	
	var btn = $('divFavItemBtnMove-'+ idItemMove );
	btn.removeClassName('favoriteLoaderBoxSuccess');
	// btn.addClassName('favoriteLoaderBoxSuccess');
	btn.update(cntFavMove);
	btn.addClassName('frmAddFaveFolder');
}



function MoveToFolder(idItem){
	
	var btn = $('divFavItemBtnMove-'+ idItem )
	
	btn.removeClassName('favoriteLoaderBoxSuccess');
	btn.addClassName('favoriteLoaderBox'); //.update('Gemmer ...');
	
    var divLabel = $('divFavItemFolderLabel-'+ idItem );
    
	var myForm = $('frmMoveFavItem-'+ idItem); // document.getElementById(formstr); //  $('frmMoveFavItem-'+ idItem);
	
	// alert(myForm);
	
	$(myForm).request({   
		onComplete: function(request){ 
			// alert('Form data saved!')
			// alert(request.status);
			
			if (200 == request.status){

				// alert('responseText : '+ request.responseText);
				// btn.update('Favorite blev gemt i valgte folder');
                btn.update('');
                
                                
                divLabel.update(request.responseText);
                
				btn.removeClassName('favoriteLoaderBox');
				btn.addClassName('frmAddFaveFolder');
			} else {
				alert('FEJL!');
			}

			return false;
		} 
	})
	
}





// divFavItemBtnMove-{favID}
function MoveFavorite(idSite, idItem){

	var btn = $('divFavItemBtnMove-'+ idItem )
	var btnCntOriginal = btn.innerHTML; //toHTML ; // <- Do we have a prototype function for this???
    
    

	if(idItemMove == '0'){
		
		
		
	} else {
		
		//var idItemMove = ''+ idItem + '';
		//var cntFavMove = btnCntOriginal;
		// alert('no olds....');
		
		// alert(idItemMove);
		var btnOld = $('divFavItemBtnMove-'+ idItemMove );
		
		btnOld.removeClassName('favoriteLoaderBoxSuccess');
		btnOld.removeClassName('favoriteLoaderBox');
		btnOld.update(cntFavMove);
		
	}


	idItemMove = ''+ idItem +'';
	cntFavMove = btnCntOriginal;
	
	btn.addClassName('favoriteLoaderBox').update('Indlæser mapper ...');
	
	// alert('Doing request ...')
	
	var requestUrl = '/cms2k/modules/favorites/api/move.asp?siteID='+ idSite +'&fid='+ idItem +'';
		
		// USING: Prototype
		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {
				
				
				// btn.update('<form name=\'frmMoveFavItem-'+ idItem +'\' id=\'frmMoveFavItem-'+ idItem +'\' action=\'/cms2k/modules/favorites/api/move.asp?siteID='+ idSite +'&fid='+ idItem +'\' > '+ request.responseText + ' <span id="XXX" onClick="MoveToFolder('+ idItem +');" style="cursor:pointer;">ok</span> | <span style=\'cursor:pointer;\' onClick=\'CancelMove();\'>annuller</span></form>');
				btn.innerHTML= '<form name=\'frmMoveFavItem-'+ idItem +'\' id=\'frmMoveFavItem-'+ idItem +'\' action=\'/cms2k/modules/favorites/api/move.asp?siteID='+ idSite +'&fid='+ idItem +'\' >'+ request.responseText + ' <span id="XXX" onClick="MoveToFolder('+ idItem +');" style="cursor:pointer;">ok</span> | <span style=\'cursor:pointer;\' onClick=\'CancelMove();\'>annuller</span></form>';
				
				btn.removeClassName('favoriteLoaderBox');
				btn.addClassName('favoriteLoaderBoxSuccess');
				
				
				// divItem.innerHTML = 'Favorit blev fjernet'; //request.responseText;
				// divContainer.
				//divContainer.update('Folder blev fjernet').addClassName('favoriteLoaderBoxSuccess');
				
				// divItem.update('Favorit blev fjernet').setStyle({ background: '#dfd' });
				
				// divItem.style.display = 'block';
				
				
				// divLoader.style.display = 'none';
				//divContainer.style.display = 'none';
				//divContainerIsFav.style.display = 'none';
				// divTarget.style.display = 'block';
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.responseText);
				// alert('statusText: '+ request.statusText);
				// alert('responseText: '+ request.responseText);
				btn.removeClassName('favoriteLoaderBox');
				btn.update(btnCntOriginal);
				
				//divContainer.removeClassName('favoriteLoaderBox');
				//divContainer.addClassName('favoriteBtnDelete');
				
				// divLoader.style.display = 'none';
				
			}
		}); 

}


function FavoriteAddFolder(){
	
	
	// Event.observe('myForm', 'submit', function(event) {    $('myForm').request({        onFailure: function() { .... },        onSuccess: function(t) {            $('result').update(t.responseText);        }    });    Event.stop(event); // stop the form from submitting});
	
	// var idStatus = $();
	var btn = $('divFavoriteFolderBtnAdd');
	var ulList = $('ulFavFolderList');
	
	// alert('ulList: '+ ulList);
	
	btn.addClassName('favoriteLoaderBox');
	
	var folderName = $('addfoldername').value; // frmAddFaveFolder.name.value;; // frmAddFaveFolder.innerHTML; //.name.value; // document.getElementById('frmAddFaveFolder')
	// alert(folderName);
	
	// Submit form
	// alert('Submit form coming up!');
	
	// $('frmAddFaveFolder').request(); //done - it's posted // do the same with a callback: 
	
	$('frmAddFaveFolder').request({   
		onComplete: function(request){ 
		
			btn.removeClassName('favoriteLoaderBox');
			btn.addClassName('favoriteLoaderBoxSuccess');
			
			var newItemid = request.responseText;
			var strDivId = 'favFolder-'+ newItemid;
			// alert(strDivId);
			
			
			
			 
			// frmAddFaveFolder.name.value = '';
			var liContent = '<div style="width:200px;overflow:hidden;float:left;padding-top:5px;"><a href="folder-'+ newItemid +'.htm">'+ folderName +'</a></div> <div style="cursor:pointer;float:right;" onclick="FavoriteFolderDelete('+ newItemid +');"><img alt="Slet mappe" src="/gfx/ico-folder-delete.gif" /></div><br>';
			// var liContent = '<strong>'+ folderName +'</strong> | <span style=\'cursor:pointer;\' onClick=\'FavoriteFolderDelete('+ newItemid +');\'>Slet mappe</span>';
			
			
			var elem = new Element('li', {id: ''+ strDivId +'', style: 'display:none;'});
			// var elem = new Element('li', {id: newItemid, style: 'display:none;'});
			
			// alert(liContent);
			//elem.update(liContent);
			//var elem = new Element('li', {id: id, style: 'display:none;'}).update("Navn: "+ folderName +" ... | <a href='#'>Slet</a> ");
			
			ulList.insert(elem); // -> HTMLElement
			elem.update(liContent);
			
			$('addfoldername').value = ''; // ('XXXXXXXXXXXXXXXXXXXXXXXXx');
			
			// insert(element, { position: content }); //-> HTMLElement 
			//insert(elem, 'ulFavFolderList'); // -> HTMLElement
			
			// Reload folder list? - Hide form? Display success message?
			
			
			
			Effect.Grow(strDivId);
			
			btn.removeClassName('favoriteLoaderBoxSuccess');
			
			return false;
		} 
	})
	
	return false;
	
	
	
	
	
}


function RemoveFavorite(idSite, idItem, idDivItem, idDivLoader){
	
	// alert('Remove the bastard!');
	
	var divItem = $(idDivItem); // document.getElementById(idDivItem);
	var divLoader = $(idDivLoader); // document.getElementById(idDivLoader);
	// var divBtn = $('favContainerRemove')
	
	
	var divContainer = $('favContainerRemove'); // document.getElementById('favContainerRemove');
	var divContainerIsFav = $('favContainerIsFav'); // document.getElementById('favContainerIsFav');
	
	divItem.style.display = 'none';
	
	// divLoader.innerHTML = 'Bekræft fjernelse af favorit ...';
	// divLoader.style.display = 'block';
	
	
	divContainer.removeClassName('favoriteBtnDelete');
	divContainer.addClassName('favoriteLoaderBox');
	
	
	
	
	if(confirm('Vil du slette denne favorit?')){
		// divLoader.innerHTML = 'Fjerner favorit ...';
		
		
		var requestUrl = '/cms2k/modules/favorites/api/delete.asp?siteid='+ idSite +'&fid='+ idItem +'';
		
		
		// USING: Prototype
		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {
				
				
				// divItem.innerHTML = 'Favorit blev fjernet'; //request.responseText;
				// divContainer.
				divContainer.update('Favorit blev fjernet').addClassName('favoriteLoaderBoxSuccess');
				
				// divItem.update('Favorit blev fjernet').setStyle({ background: '#dfd' });
				
				// divItem.style.display = 'block';
				
				
				// divLoader.style.display = 'none';
				//divContainer.style.display = 'none';
				divContainerIsFav.style.display = 'none';
				// divTarget.style.display = 'block';
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				// alert('statusText: '+ request.statusText);
				// alert('responseText: '+ request.responseText);
				
				
				divContainer.removeClassName('favoriteLoaderBox');
				divContainer.addClassName('favoriteBtnDelete');
				
				// divLoader.style.display = 'none';
				
			}
		}); 
		
		
		
		
		
	} else {
		divLoader.style.display = 'none';
		
		divContainer.removeClassName('favoriteLoaderBox');
		divContainer.addClassName('favoriteBtnDelete');
		
	}
	
	
	
	
	
	
	
}


function RemoveItem(idItem, doFadeOut){
	
		// alert('Remove item: '+ idItem );
		var myItem = $(''+ idItem +''); // document.getElementById(idItem); // $(''+ idItem +'');
		//alert('myItem: '+ myItem );
		
		
		if(doFadeOut){
			
			// alert('Itemmustfadeout');
			
			Effect.Shrink(idItem,{direction: 'top-right' } );
			// Effect.DropOut(idItem);

			// Effect.Fade(idItem, { duration: 0.3 });

			} else {
			
				myItem.remove();
		}
		
		
	}


function DeleteFavorite(idSite, idItem){
	
	
	var divStatus = $('divFavItem-'+ idItem +'-status');
	var divBtn = $('divFavItemBtnDelete-'+ idItem +'');
	// divStatus.update('Sletter favorit ...');
	
	// divStatus.classNames().inspect();
	// removeClassName
	
	divBtn.removeClassName('favoriteBtnDelete');
	divBtn.addClassName('favoriteLoaderBox');
	
	
	
	
	
	
	
	// divStatus.addClassName('favoriteLoaderBox');
	// divStatus.setStyle({display: 'block'});
	
	// Effect.Grow('divFavItem-'+ idItem +'-status');
	
	
	var divFav = $('divFavItem-'+ idItem);
	divFav.setStyle({backgroundColor: '#FF0'});
	
	if(confirm('Vil du slette denne favorit?')){
		
		
		
		var requestUrl = '/cms2k/modules/favorites/api/delete.asp?siteid='+ idSite +'&fid='+ idItem +'';
		
		// alert(requestUrl);
		
		// USING: Prototype
		new Ajax.Request(requestUrl, {
			method: 'get',
			onSuccess: function(request) {
				
				
				// divItem.innerHTML = 'Favorit blev fjernet'; //request.responseText;
				
				// divFav.hide; // ('Favorit blev fjernet').setStyle({ background: '#dfd' });
				
				// divFav.update('Favorit blev fjernet').setStyle({ background: '#dfd' });
				

				// setTimeout('RemoveItem(\'divFavItem-'+ idItem +'-status\')',2000);
				//divStatus.removeClassName('favoriteLoaderBox');
				//divStatus.addClassName('favoriteLoaderBoxSuccess');
				
				divBtn.update('Slettet').addClassName('favoriteLoaderBoxSuccess');
				// divBtn.addClassName('favoriteLoaderBoxSuccess');
				// divStatus.update('Favorit blev fjernet').setStyle({ background: '#dfd' });
				// divStatus.remove();
				
				// setTimeout('RemoveItem(\'divFavItem-'+ idItem +'-status\',false)',500);
				setTimeout('RemoveItem(\'divFavItem-'+ idItem +'\',true)',500);
				
				
				// setTimeout("alert('divFavItem-\''+ idItem +'\'-status');",1000);

				// setTimeout("$(\'divFavItem-\''+ idItem +'\'-status\').remove;",2000);

				
				// divStatus.setStyle({display: 'none'});
				// divItem.style.display = 'block';
				
				
				//divLoader.style.display = 'none';
				//divContainer.style.display = 'none';
				//divContainerIsFav.style.display = 'none';
				// divTarget.style.display = 'block';
				
			},
			onFailure: function(request) {
				
				alert('Der opstod en fejl!\n'+ request.statusText +'\n'+ request.responseText);
				// alert('statusText: '+ request.statusText);
				// alert('responseText: '+ request.responseText);
				divStatus.setStyle({display: 'none'});
				
				
				divBtn.removeClassName('favoriteLoaderBox');
				divBtn.addClassName('favoriteBtnDelete');
				
				
				
				//divLoader.style.display = 'none';
				
			}
		}); 
		
		
		
		
		
		// Todo: Do ajax request? Would be nice! -> $idFav
		// location.href = url;
		
	} else {
	
		divStatus.setStyle({display: 'none'});
		divFav.setStyle({backgroundColor: '#FFF'});
		
		divBtn.removeClassName('favoriteLoaderBox');
		divBtn.addClassName('favoriteBtnDelete');
		
		
	}
}


function AddToFavorites(idSite,idPage,idItemType, idItem, favTitle, favUrl, idDivLoader, idDivTarget){
	
	
	// encodeURIComponent(favUrl)
	var requestUrl = '/cms2k/modules/favorites/api/add.asp?siteid='+ idSite +'&name='+ encodeURIComponent(favTitle) +'&url='+ encodeURIComponent(favUrl) +'&typeid='+ idItemType +'&itemid='+ idItem +'&pageid='+ idPage +'';
	
	var divTarget = $(idDivTarget); // document.getElementById(idDivTarget);
	var divLoader = $(idDivLoader); // document.getElementById(idDivLoader);
	var divContainer = $('favContainerAdd'); // document.getElementById('favContainerAdd');
	
	divTarget.style.display = 'none';
	
	
	//divLoader.update('Tilføjer til favoritter ...').setStyle({ background: '#dfd' });
	// divLoader.innerHTML = 'Tilføjer til favoritter ...';
	//divLoader.style.display = 'block';
	
	// alert(requestUrl);
	
	// USING: Prototype
	new Ajax.Request(requestUrl, {
		method: 'get',
		onSuccess: function(transport) {
			//var notice = $('notice');
			//if (transport.responseText.match(/href="http:\/\/prototypejs.org/))
			//	notice.update('Yeah! You are in the Top 10!').setStyle({ background: '#dfd' });
			//else
			//	notice.update('Damn! You are beyond #10...').setStyle({ background: '#fdd' });
			
			// divTarget.innerHTML = transport.responseText;
			//divTarget.update('Tilføjet til dine favoritter!').setStyle({ background: '#dfd' });
			//divLoader.style.display = 'none';
			//divTarget.style.display = 'block';
			
			
			divContainer.removeClassName('favoriteBtnAdd');
			// divBtn.addClassName('favoriteBtnDelete');
			
			divContainer.update('Tilføjet til dine favoritter!').addClassName('favoriteLoaderBoxSuccess');
			
			// divContainer.style.display = 'none';
			
		},
		onFailure: function() {
			
			alert('Der opstod en fejl!');
			
			divLoader.style.display = 'none';
			divTarget.style.display = 'none';
			
		}
	}); 
	
	
	
	
	
}




function FavoriteQuickList(idDivTarget, idDivLoader, idSite){
	
	var divTarget = $(idDivTarget); // document.getElementById(idDivTarget);
	var divLoader = $(idDivLoader); // document.getElementById(idDivLoader);
	
	divLoader.style.display = 'block';
	divTarget.style.display = 'none';
	
	// var requestUrl = '/_plugins/favorites/quicklist.asp?siteID='+ idSite;
	var requestUrl = '/cms2k/modules/favorites/api/quicklist.asp?siteID='+ idSite;
	
	
	
	
	// USING: jQuery
	
	/*
	jQuery.get(requestUrl , '',
	  function(data){
		alert("Data Loaded: " + data);
		
		// -> Set as content in divTarget and hide loader!
		divLoader.style.display = 'none';
		idDivTarget.style.display = 'block';
		
	  }, 'html');

	*/
	
	// USING: Prototype
	new Ajax.Request(requestUrl, {
		method: 'get',
		onSuccess: function(transport) {
			//var notice = $('notice');
			//if (transport.responseText.match(/href="http:\/\/prototypejs.org/))
			//	notice.update('Yeah! You are in the Top 10!').setStyle({ background: '#dfd' });
			//else
			//	notice.update('Damn! You are beyond #10...').setStyle({ background: '#fdd' });
			
			divTarget.innerHTML = transport.responseText;

			Effect. SlideDown(divTarget);
			divLoader.style.display = 'none';
			// divTarget.style.display = 'block';
			
		},
		onFailure: function() {
			
			alert('Der opstod en fejl!');
			
			divLoader.style.display = 'none';
			divTarget.style.display = 'none';
			
		}
	}); 
	
	
	
	
}


function ToggleFolderList(divId,divDisplay){
   var myDiv = document.getElementById(divId);

   if(divDisplay == 'show'){
      myDiv.style.display = 'block';
   } else {

      if(myDiv.style.display == 'none'){
         myDiv.style.display = 'block';
      } else {
         myDiv.style.display = 'none';
      }


}



}

// END Claus 20101128 previously separate file "favorites.js"

// BEGIN Claus 20101128 previously separate file "subscribe.js"

// Subscribe to Category, Subject, Thread, User
function subscribe(elementID, elementType) {
	
var requesturl = "/cms2kuser/sites/minmave/includes/subscribe.asp?id="+elementID+"&type="+elementType;
// alert("URL: "+requesturl)
AjaxRequest.get(
	{
	'url':requesturl,'onSuccess':function(req){ 

		if(req.responseText = "OK")
		{
			// alert(req.responseText);
		}else {
			// alert(req.responseText);
		}

		document.getElementById('sub'+ elementID ).style.display = 'none';
		document.getElementById('unsub'+ elementID ).style.display = 'block';

	}
	,'onError':function(req){
		alert('Der opstod en fejl:'+ req.statusText +'\n\n' + req.responseText );
		}
	}
);

}



function unsubscribe(elementID, elementType) {
	
	var requesturl = "/cms2kuser/sites/minmave/includes/subscribe.asp?id="+elementID+"&type="+elementType;

	
	AjaxRequest.get(
	{
	'url':requesturl,'onSuccess':function(req){ 
		if(req.responseText = "OK")
		{
			// alert(req.responseText);
		}else {
			// alert(req.responseText);
		}
		
		document.getElementById('sub'+ elementID ).style.display = 'block';
		document.getElementById('unsub'+ elementID ).style.display = 'none';
	}
	,'onError':function(req){
		alert('Der opstod en fejl:'+ req.statusText +'\n\n' + req.responseText );
		}
	}
);

}




// Remove link from personal collection
function removeLink(linkID) {
	
var requesturl = "/cms2kuser/sites/seo/includes/addlink.asp?mode=remove&linkid="+linkID;
AjaxRequest.get(
	{
	'url':requesturl,'onSuccess':function(req){ 
		if(req.responseText != "")
		{
			alert(req.responseText );
		}
		document.getElementById('removeLink_'+linkID).style.display = 'none';
		new Effect.Appear(document.getElementById('addLink_'+linkID),{
			duration:.5
		})
	}
	,'onError':function(req){
		alert('Error occured:'+ req.statusText +'\n\n' + req.responseText );
		}
	}
);

}

// END Claus 20101128 previously separate file "subscribe.js"

// BEGIN Claus 20101128 previously separate file "moderator.js"

function deletePost(postID) {
    jQuery("#DIV-postid" + postID).css("background-color", "red");
    if (confirm("Er du sikker på at du vil slette dette indlæg?")) {
        var requesturl = "/cms2k/modules/newforum/ajax.deletepost.asp?id=" + postID;
        jQuery("body").css("cursor", "wait");
		AjaxRequest.get({
		    'url': requesturl,
		    'onSuccess': function (req) {
		        jQuery("body").css("cursor", "auto");
                if (req.responseText != "") {
                    alert(req.responseText);
                }
                else {
                    jQuery("#DIV-postid" + postID).hide("slow");
                    // jQuery("#postTextDeleted" + postID).show("slow");
				}
            },
            'onError': function (req) {
                jQuery("body").css("cursor", "auto");
                alert('Der er opstaaet en fejl: ' + req.statusText + '\n\n' + req.responseText);
            }
        });
	}
    jQuery("#DIV-postid" + postID).css("background-color", "");
}

// END Claus 20101128 previously separate file "moderator.js"

/* BEGIN Claus 20110609 Message updater */
function updateNewMessages() {
    jQuery.get("/own/user/update.asp", function (obj) {
        // logged in?
        if (obj && !isNaN(obj.newMessages)) {
            // compare values, if bigger, update page
            if (obj.newMessages > localStorage.newMessagesCount) {
                jQuery("#newMessages").text(obj.newMessages.toString());
                jQuery(".nnm").show();
                // alert allowed Chrome users
                if (window.webkitNotifications && window.webkitNotifications.checkPermission() == 0) {
                    window.webkitNotifications.createNotification("/favicon.ico", "Du har en ny besked på Min-Mave", "Klik på linket 'Ulæste beskeder' i toppen af Min-Mave for at læse den.").show();
                }
            }
            // save
            localStorage.newMessagesUpdated = new Date().getTime();
            localStorage.newMessagesCount = obj.newMessages;
        }
    }, "json");
	setTimeout("updateNewMessages()", 1000 * 60 * 2);
}

jQuery(function () {
	var newMessages = jQuery("#newMessages");
	// logged in?
	if (newMessages.length) {
		// localStorage supported?
		if (window.localStorage) {
			var cnt = localStorage.newMessagesCount;
			var upd = localStorage.newMessagesUpdated;
			// last update expired?
			if (!upd || (new Date().getTime() - parseInt(upd)) > (1000 * 60 * 2)) {
				updateNewMessages();
			}
			else {
				setTimeout("updateNewMessages()", 1000 * 60 * 2);
			}
		}
	}
});
/* END Claus 20110609 Message updater */
