if (window.addEventListener) { 
window.addEventListener('load', showGlobalMessage, false); 
} else if (window.attachEvent) { 
window.attachEvent('onload', showGlobalMessage); 
} 

// Form validation -------------------------------------------------------------------------------------

function runGlobalQuickSearch(input)
{
    if(input.value.length > 0) {
        document.getElementById("globalQuickSearch").value = input.value;
        document.getElementById("form_globalQuickSearch").submit();
    }
}

function validateFollow()
{
    document.getElementById("form_follow").submit();
}

function startFollowing(action,userId,btn)
{
    //action 1 = start following
    //action 2 = stop following

    document.getElementById("followAction").value = action;
    document.getElementById("followUserId").value = userId;
    
    if(btn != null) {
        btn.disabled = true;
    }
    
    document.getElementById("form_follow").submit();
}

function startFollowingMultiple(action,btn)
{
    //action 1 = start following
    //action 2 = stop following
    var bRunForm = false;
    var allInputs = document.getElementsByTagName("input");
    for (var i = 0; i < allInputs.length; i++) { //Loop through inputs
        if(allInputs[i].id.substring(0,15) == "startFollowing_") {
            if(allInputs[i].checked) {
                splitId = allInputs[i].id.split("_");
               document.getElementById("followUserId").value = document.getElementById("followUserId").value + splitId[1] + ",";
            }
        }
    }

    document.getElementById("followAction").value = action;
    
    if(btn != null) {
        if(document.getElementById("followUserId").value.length > 0) {
            btn.style.display = "none";
            bRunForm = true;
        }
    }
    
    if(bRunForm) {
        document.getElementById("form_follow").submit();
    }
}

function inviteMultiple(btn)
{
    var bRunForm = false;
    var allInputs = document.getElementsByTagName("input");
    for (var i = 0; i < allInputs.length; i++) { //Loop through inputs
        if(allInputs[i].id.substring(0,14) == "inviteContact_") {
            if(allInputs[i].checked) {
               document.getElementById("inviteEmails").value = document.getElementById("followUserId").value + allInputs[i].value + ",";
            }
        }
    }

    if(btn != null) {
        if(document.getElementById("inviteEmails").value.length > 0) {
            btn.style.display = "none";
            bRunForm = true;
        }
    }
    
    if(bRunForm) {
        document.getElementById("form_invite").submit();
    }
}

function showHideGetStarted(val)
{
    //0 = hide
    //1 = show
    document.getElementById("getStartedAction").value = val;
    document.getElementById("form_getStarted").submit();
}

function globalSetAction(val)
{
    document.getElementById("globalAction").value = val;
}    

function globalSetId(val)
{
    document.getElementById("globalId").value = val;
}  

function setGlobalFormSubmit(val)
{
    var globalFormSubmit = document.getElementById("globalFormSubmit");
    
    if(val == null) {
    globalFormSubmit.value = "1";
    } else {
    globalFormSubmit.value = val;
    }
}

function globalValidateForm(btn)
{
    var runForm = true;
    var allInputs = document.getElementsByTagName("input");
    for (var i = 0; i < allInputs.length; i++) { //Loop through inputs
        if(allInputs[i].id.substring(0,10) == "formCheck_") {
            if(allInputs[i].value != "2") {
                var focusInputId = allInputs[i].id.replace("formCheck_","");
                document.getElementById(focusInputId).focus();
                runForm = false;
                break;
            }
        }
    }
    
    if(runForm) {
    if(btn != null) {
    btn.disabled = true;
    }
    document.getElementById("theform").submit();
    }
}

function checkLive(evt,checkFor) 
{ 
// onkeypress="return checkInput(event)"

//checkFor 1 = [a-zA-Z]

    var re = /[a-zA-Z0-9_-]/

    if (checkFor == 1) { //URL proof text
    re = /[a-zA-Z0-9_-]/
    } else if (checkFor == 2) { //Only numbers
    re = /[0-9]/
    } else if (checkFor == 3) { //Email
    re = /[(.)(@)a-zA-Z0-9_-]/
    } else if (checkFor == 4) { //Mobile number
    re = /[0-9+]/
    }

    var charCode = (evt.which) ? evt.which : window.event.keyCode; 
 
    if (charCode <= 13) 
    { 
        return true; 
    } 
    else 
    { 
        var keyChar = String.fromCharCode(charCode); 
        return re.test(keyChar); 
    } 
}

//// returns true if the string is a valid date formatted as...
//// mm dd yyyy, mm/dd/yyyy, mm.dd.yyyy, mm-dd-yyyy
//function isDate_(str){
//  //var re = /^(\d{1,2})[\s\.\/-](\d{1,2})[\s\.\/-](\d{4})$/
//  var re = /^(\d{4})[\s\.\/-](\d{1,2})[\s\.\/-](\d{1,2})$/ //YYYY-MM-DD
//  if (!re.test(str)) return false;
//  var result = str.match(re);
//  var m = parseInt(result[2]);
//  var d = parseInt(result[3]);
//  var y = parseInt(result[1]);
//  if(m < 1 || m > 12 || y < 1900 || y > 2100) return false;
//  if(m == 2){
//          var days = ((y % 4) == 0) ? 29 : 28;
//  }else if(m == 4 || m == 6 || m == 9 || m == 11){
//          var days = 30;
//  }else{
//          var days = 31;
//  }
//  return (d >= 1 && d <= days);
//}

function isDate(dateStr) {

//var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
var datePat = /^(\d{4})(\/|-)(\d{1,2})(\/|-)(\d{1,2})$/;
var matchArray = dateStr.match(datePat); // is the format ok?

if (matchArray == null) {
//alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
return false;
}

//month = matchArray[1]; // p@rse date into variables
//day = matchArray[3];
//year = matchArray[5];

year = matchArray[1];
month = matchArray[3]; // p@rse date into variables
day = matchArray[5];

if (month < 1 || month > 12) { // check month range
//alert("Month must be between 1 and 12.");
return false;
}

if (day < 1 || day > 31) {
//alert("Day must be between 1 and 31.");
return false;
}

if ((month==4 || month==6 || month==9 || month==11) && day==31) {
//alert("Month "+month+" doesn`t have 31 days!")
return false;
}

if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
//alert("February " + year + " doesn`t have " + day + " days!");
return false;
}
}
return true; // date is valid
}


function checkText(input,eventMethod,checkFor,numberOfCharacters,showError,msgTextNormal,msgTextValid,msgTextError)
{
// onblur="checkText(this,1,1,1,'<%=StringHandling.JavascriptSafe(Global.Translate("TEXT_TextNormal"))%>','<%=StringHandling.JavascriptSafe(Global.Translate("COMMON_Ok"))%>','<%=StringHandling.JavascriptSafe(Global.Translate("TEXT_TextError"))%>');"
// E-mail check: onblur="checkText(this,0,2,0,1,'<%=StringHandling.JavascriptSafe(Global.Translate("ACCOUNT_EmailSignUpInfo"))%>','<%=StringHandling.JavascriptSafe(Global.Translate("COMMON_Ok"))%>','<%=StringHandling.JavascriptSafe(Global.Translate("ACCOUNT_EmailSignUpError"))%>');"

//input: form object
//checkFor: 1 = minimum text length
//          2 = valid e-mail
//          3 = valid password
//          4 = valid birthdate

//eventMethod:  0 = onblur - always use
//              1 = onfocus - only when form submitted
    var globalFormSubmit = document.getElementById("globalFormSubmit");

    if(eventMethod == 0 || eventMethod == 1 && globalFormSubmit.value == "1") { 

        var statusMsg = document.getElementById(input.id + "_StatusMsg"); //DIV where msg is displayed
        var statusInput = document.getElementById("formCheck_" + input.id); //INPUT HIDDEN where form is checked
        var checkState = 1;
        var displayStatusText = msgTextNormal;
        var displayStatusClass = "inputCheck";
        
        if(checkFor == 1) { //Minimum text length
            if(input.value.length < numberOfCharacters) {
                checkState = 3;
            } else {
                checkState = 2;
            }
        } else if(checkFor == 2) { //Valid e-mail
            var emailRegEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
            if(emailRegEx.test(input.value) == false) {
                checkState = 3;
            } else {
                checkState = 2;
            }
        } else if(checkFor == 4) { //Valid birthdate
            var getIsDate = isDate(input.value);
            if(!getIsDate && input.value.length > 0) {
                checkState = 3;
            } else {
                checkState = 2;
            }
        }
        
        //Check state and select msg   
        if(checkState == 2) {
            displayStatusText = msgTextValid;
            displayStatusClass = "inputCheckValid";
        } else if(checkState == 3) {
            displayStatusText = msgTextError;
            displayStatusClass = "inputCheckNotValid";
        }
        
        if(showError == 1) {
        statusMsg.innerHTML = displayStatusText;
        statusMsg.className = displayStatusClass;
        }

        statusInput.value = checkState;
        
    }    
}

function formEnable(minLength,input,targetInputId,classNameDisabled,classNameEnabled)
{
    var targetInput = document.getElementById(targetInputId);
    if(input.value.length < minLength) {
        targetInput.disabled = true;
        targetInput.className = classNameDisabled;
    } else {
        targetInput.disabled = false;
        targetInput.className = classNameEnabled;
    }
}

// Global ----------------------------------------------------------------------------------------------

function layer(layerId,inputId)
{
    if(document.getElementById(layerId).style.display != "block") {
        document.getElementById(layerId).style.display = "block";
        if(document.getElementById(inputId) != null) {
            document.getElementById(inputId).focus();
        }
    } else {
        if(document.getElementById(inputId) != null) {
            document.getElementById(inputId).blur();
        }    
        document.getElementById(layerId).style.display = "none";
    }
}   

function link(url)
{
    window.location.href = url;
}

function linkBlank(url)
{
    window.open(url,'tos','width=800,height=600,menubar=yes,status=yes,location=yes,toolbar=yes,scrollbars=yes,resizable=yes');
}  

// #### Limit textareas ####
// onkeyup="limitText(this,500);"
// <span id="textAreaIdCounter">0</span>
function limitText(obj, maxchars)
{
	var labelname = obj.id + 'Counter';

	if (obj.value.length > maxchars)
	{
		obj.value = obj.value.substr(0, maxchars);
		
	}

	var counter = document.getElementById(labelname);
	if (navigator.userAgent.indexOf('Gecko') >= 0)
		counter.innerHTML = obj.value.length;
	else
		counter.innerText = obj.value.length;
}


function getObjectPos(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function getObjectSize(obj) 
{
    var objectWidth = obj.offsetWidth;
    var objectHeight = obj.offsetHeight;
    
    return [objectWidth,objectHeight];
}

function getScrollPos()
{
    var position = [0, 0];
    if (typeof window.pageYOffset != 'undefined') {
        position = [
        window.pageXOffset,
        window.pageYOffset
        ];
    } else if (typeof document.documentElement.scrollTop != 'undefined') {
        position = [
        document.documentElement.scrollLeft,
        document.documentElement.scrollTop
        ];
    } else if (typeof document.body.scrollTop != 'undefined') {
        position = [
        document.body.scrollLeft,
        document.body.scrollTop
        ];
    }

    return position;
}

function getBrowserSize()
{
    var size = [0, 0];

    if (self.innerHeight) { // all except Explorer
        size = [
        self.innerWidth,
	    self.innerHeight
	    ];
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
	    size = [
	    document.documentElement.clientWidth,
	    document.documentElement.clientHeight
	    ];
	} else if (document.body) { // other Explorers
	    size = [
	    document.body.clientWidth,
	    document.body.clientHeight
	    ];
	}
	
    return size;	
}

function getCursorPos(e)
{
    e = (e) ? e : window.event;

	//Get scroll position
	var scrollPos = getScrollPos();

    var position = [0, 0];

    if(e.pageX) {
        position = [
		e.pageX,
		e.pageY
		];
	} else if(e.clientX) {
	    position = [
		e.clientX + scrollPos[0], //If IE add scrollX position
		e.clientY + scrollPos[1] //If IE add scrollY position
		];
	} 

    return position;	
}

function getPageSizeWithScroll()
{     
    if (window.innerHeight && window.scrollMaxY) { // Firefox         
        yWithScroll = window.innerHeight + window.scrollMaxY;         
        xWithScroll = window.innerWidth + window.scrollMaxX;     
    } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac         
        yWithScroll = document.body.scrollHeight;         
        xWithScroll = document.body.scrollWidth;     
    } else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari         
        yWithScroll = document.body.offsetHeight;         
        xWithScroll = document.body.offsetWidth;       
    }     
    
    arrayPageSizeWithScroll = new Array(xWithScroll,yWithScroll);     
    //alert( 'The height is ' + yWithScroll + ' and the width is ' + xWithScroll );     
    return arrayPageSizeWithScroll; 
}

// FADE effects --------------------------------------------------------------------------------------------

// #### Opacity ####

function opacityGlobal(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpacGlobal(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpacGlobal(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpacGlobal(opacity, id) { 
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
} 



// LIVE SEARCH for userName / email

function liveSearchAfterSubmit(input,msgTextNotValid)
{
    var globalFormSubmit = document.getElementById("globalFormSubmit");

    if(globalFormSubmit.value == "1") {     
        var statusMsg = document.getElementById(input.id + "_StatusMsg"); //DIV where msg is displayed
        var displayStatusText = msgTextNotValid;
        var displayStatusClass = "inputCheckNotValid";
        
        if(input.value.length < 1) { //If value is missing
        statusMsg.innerHTML = displayStatusText; //Set status text
        statusMsg.className = displayStatusClass; //Set status class
        }
    }        
}

function liveSearch(input,type,msgTextNormal,msgTextSearching)
{
//Type 1 = username, 2 = email, 3 = mobile

    var iframeLiveSearch = document.getElementById("iframeLiveSearch_"+type);
    var inputValue = input.value;
    var newSearch = true;
    var submitSearch = true;
    var validEmail = true;
    
    var displayStatusClass = "inputCheck";
    var displayStatusText = msgTextNormal;
    var statusMsg = document.getElementById(input.id + "_StatusMsg"); //DIV where msg is displayed
    var statusInput = document.getElementById("formCheck_" + input.id); //INPUT HIDDEN where form is checked
    if(document.getElementById("savedValue_" + input.id) != null) {
        var savedValue = document.getElementById("savedValue_" + input.id).value; //INPUT HIDDEN with already saved value for match with new value
    }
    var checkState = 1;
    var latestLiveSearch = document.getElementById("latestLiveSearch");
    var timeStamp = new Date(); //Timestamp to remove cache in IE
    
//    if(type == 2) { //If e-mail search
//        //var emailRegEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
//        var emailRegEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,100})$/;
//        if(emailRegEx.test(input.value) == false) {
//        submitSearch = false;
//        validEmail = false;
//        }
//    }
    
    if(inputValue == latestLiveSearch.value) { //Check if inputValue has changed
        newSearch = false;
        submitSearch = false;
        validEmail = false;
    }  
          
    if(inputValue.length > 0 && validEmail) { //Check if inputValue has a value AND email is valid
        displayStatusText = msgTextSearching;
    } else {
        displayStatusText = msgTextNormal;
        submitSearch = false;
    }    
    
    if(newSearch && validEmail) { //If input value is not the same as last
        statusMsg.innerHTML = displayStatusText; //Set status text
        statusMsg.className = displayStatusClass; //Set status class
    }
    
    if(submitSearch) {
        statusInput.value = checkState; //Reset checkState
        iframeLiveSearch.src = "/account/liveSearch.aspx?timeStamp=" + timeStamp.getTime() + "&statusMsgId=" + statusMsg.id + "&statusInputId=" + statusInput.id + "&type=" + type + "&inputValue=" + inputValue + "&savedValue=" + savedValue; //Submit search
    }
    
    latestLiveSearch.value = inputValue; //Set latest search value
}

function liveSearchState(checkState,statusMsgId,statusInputId,displayStatusTextValid,displayStatusTextNotValid)
{
//checkState    1 = normal
//              2 = valid
//              3 = error - already exists

    var statusMsg = document.getElementById(statusMsgId);
    var statusInput = document.getElementById(statusInputId);
    var displayStatusClass = "inputCheck";
    var displayStatusText = "";
    
    if(checkState == 2) {
        displayStatusClass = "inputCheckValid";
        displayStatusText = displayStatusTextValid;
    } else if(checkState == 3) {
        displayStatusClass = "inputCheckNotValid";
        displayStatusText = displayStatusTextNotValid;
    }
    
    statusMsg.innerHTML = displayStatusText; //Set status text
    statusMsg.className = displayStatusClass; //Set status class
    statusInput.value = checkState; //Set status state
}


// GLOBAL INFO --------------------------------------------------------------------------------------------

function showGlobalHoverInfo(e,infoText)
{
// onmouseover="showGlobalHoverInfo(event,'<%=StringHandling.JavascriptSafe(string.Format(Global.Translate("POP_WhatIsUserNameDoing"), strUserName))%>');" onmouseout="hideGlobalHoverInfo();" 
    
    var globalHoverInfo = document.getElementById("globalHoverInfo");
    var globalHoverInfoText = document.getElementById("globalHoverInfoText");
    globalHoverInfoText.innerHTML = infoText //Set info text
    globalHoverInfo.style.display = "block";
    
    //Get size of globalHoverInfo
    var divWidth = globalHoverInfo.offsetWidth;
    var divHeight = globalHoverInfo.offsetHeight;
    
    //Get cursor position
    var cursorPos = getCursorPos(e);  
	
	//Get browser size
	var browserSize = getBrowserSize();
	
	//Position globalHoverInfo
	var divPosX = Math.round(cursorPos[0]-(divWidth/2));
	var divPosY = Math.round(cursorPos[1]-(divHeight+15));
	globalHoverInfo.style.left = divPosX+"px";
	globalHoverInfo.style.top = divPosY+"px";   

} 

function hideGlobalHoverInfo() 
{
    var globalHoverInfo = document.getElementById("globalHoverInfo");
    var globalHoverInfoText = document.getElementById("globalHoverInfoText");
    globalHoverInfo.style.display = "none";
    globalHoverInfoText.innerHTML = "";
}


// GLOBAL MESSAGE --------------------------------------------------------------------------------------------

function showGlobalMessage()
{   
    if(document.getElementById("globalMessageText") != null) {
        if(document.getElementById("globalMessageText").innerHTML.length > 0) {
            var globalMessage = document.getElementById("globalMessage");
            var globalMessageCenter = document.getElementById("globalMessageCenter");
            var pageSize = getPageSizeWithScroll();
            var browserSize = getBrowserSize();
            var scrollPos = getScrollPos();
            var blackHeight = pageSize[1];
            
            if(browserSize[1] > pageSize[1]) {
                blackHeight = browserSize[1];
            }            
            
            globalMessageCenter.style.top = scrollPos[1]+200+"px";
            globalMessage.style.height = blackHeight + "px";
            globalMessage.style.display = "block";
        }
    }
}    

function hideGlobalMessage()
{
    var globalMessage = document.getElementById("globalMessage");
    globalMessage.style.display = "none";
    
    var globalMessageFormFocus = document.getElementById("globalMessageFormFocus").value;
    
    if(globalMessageFormFocus.length > 0) {
        document.getElementById(globalMessageFormFocus).focus();
    }
    
    document.getElementById("globalMessageFormFocus").value = "";
    
//    opacityGlobal('globalMessage', 50, 0, 500);
//    setTimeout("document.getElementById('globalMessage').style.display = 'none'", 500);
}

function runGlobalMessage(text,inputIdFocus)
{
//runGlobalMessage('<%=StringHandling.JavascriptSafe(Global.Translate("ACCOUNT_MustSelectPicture"))%>','pictureFile');
    var globalMessageText = document.getElementById("globalMessageText");
    globalMessageText.innerHTML = text;
    
    if(inputIdFocus != null) {
        document.getElementById("globalMessageFormFocus").value = inputIdFocus;
    } else {
        document.getElementById("globalMessageFormFocus").value = "";
    }      
    
    showGlobalMessage();
}


// GLOBAL STATUS --------------------------------------------------------------------------------------------

function showGlobalStatus()
{   
    if(document.getElementById("globalStatusText") != null) {
        if(document.getElementById("globalStatusText").innerHTML.length > 0) {
            var globalStatus = document.getElementById("globalStatus");
            var globalStatusCenter = document.getElementById("globalStatusCenter");
            var pageSize = getPageSizeWithScroll();
            var browserSize = getBrowserSize();
            var scrollPos = getScrollPos();
            var blackHeight = pageSize[1];
            
            if(browserSize[1] > pageSize[1]) {
                blackHeight = browserSize[1];
            }            
            
            globalStatusCenter.style.top = scrollPos[1]+200+"px";
            globalStatus.style.height = blackHeight + "px";
            globalStatus.style.display = "block";
        }
    }
}   

function runGlobalStatus(text)
{
//runGlobalStatus('<%=StringHandling.JavascriptSafe(Global.Translate("ACCOUNT_MustSelectPicture"))%>');
    var globalStatusText = document.getElementById("globalStatusText");
    globalStatusText.innerHTML = text;
         
    showGlobalStatus();
}


// GLOBAL FOLLOW --------------------------------------------------------------------------------------------

function showGlobalFollow(userId,followBy1,followBy2,userName)
{   
    document.getElementById("followUserId").value = userId; //Set user id
    document.getElementById("followAction").value = "1"; //Set action to START following
    
    //SET CURRENT SETTINGS start -------------------------------------------------------------------------
    //followBy1 = mobile = 0 or 1
    //followBy2 = web = 0 or 1
    
    var affectInput1 = document.getElementById("followBy_1");
    var affectInput2 = document.getElementById("followBy_2");
    
    affectInput1.value = followBy1;
    affectInput2.value = followBy2;
    
    document.getElementById("globalFollowHeadline").innerHTML = document.getElementById("globalFollowResetHeadline").value; //RESET headline
    var newHeadline = document.getElementById("globalFollowHeadline").innerHTML.replace("{0}",userName); 
    document.getElementById("globalFollowHeadline").innerHTML = newHeadline;
    
    evalFollowSettings();
    //SET CURRENT SETTINGS end -------------------------------------------------------------------------

            var globalFollow = document.getElementById("globalFollow");
            var globalFollowCenter = document.getElementById("globalFollowCenter");
            var pageSize = getPageSizeWithScroll();
            var browserSize = getBrowserSize();
            var scrollPos = getScrollPos();
            var blackHeight = pageSize[1];
            
            if(browserSize[1] > pageSize[1]) {
                blackHeight = browserSize[1];
            }            
            
            globalFollowCenter.style.top = scrollPos[1]+100+"px";
            globalFollow.style.height = blackHeight + "px";
            globalFollow.style.display = "block";
}    

function hideGlobalFollow()
{
    var globalFollow = document.getElementById("globalFollow");
    globalFollow.style.display = "none";
}

function changeFollow(affect)
{
    var affectInput = document.getElementById("followBy_"+affect);
    var affectImg = document.getElementById("globalFollowImg_"+affect);
    var btn = document.getElementById("globalFollowBtnSubmit");
    
    if(affectInput.value == "1") {
        affectInput.value = "0";
        //affectImg.src = affectImg.src.replace("1.gif","0.gif");
    } else {
        affectInput.value = "1";
        //affectImg.src = affectImg.src.replace("0.gif","1.gif");
    }
    
    evalFollowSettings();
}

function evalFollowSettings()
{
    var showText = 1;
    var followImg1 = document.getElementById("globalFollowImg_1");
    var followImg2 = document.getElementById("globalFollowImg_2");
    
    if(document.getElementById("followBy_1").value == "0" && document.getElementById("followBy_2").value == "0") {
        showText = 1; //Don't follow
        followImg1.src = followImg1.src.replace("1.gif","0.gif");
        followImg2.src = followImg2.src.replace("1.gif","0.gif");
    } else if(document.getElementById("followBy_1").value == "1" && document.getElementById("followBy_2").value == "0") {
        showText = 2; //Follow in mobile
        followImg1.src = followImg1.src.replace("0.gif","1.gif");
        followImg2.src = followImg2.src.replace("1.gif","0.gif");
    } else if(document.getElementById("followBy_1").value == "0" && document.getElementById("followBy_2").value == "1") {
        showText = 3; //Follow on site
        followImg1.src = followImg1.src.replace("1.gif","0.gif");
        followImg2.src = followImg2.src.replace("0.gif","1.gif");
    } else if(document.getElementById("followBy_1").value == "1" && document.getElementById("followBy_2").value == "1") {
        showText = 4; //Follow in mobile and on site
        followImg1.src = followImg1.src.replace("0.gif","1.gif");
        followImg2.src = followImg2.src.replace("0.gif","1.gif");
    }
    
    var allSpans = document.getElementsByTagName("span");
    for (var i = 0; i < allSpans.length; i++) { //Loop through <span>
        if(allSpans[i].id.substring(0,24) == "globalFollowSettingText_") { 
            allSpans[i].style.display = "none";
        }
    }
    
    document.getElementById("globalFollowSettingText_" + showText).style.display = "block";              
}

function showHideFollowInfo(affect) {
    var affectDiv = document.getElementById("globalFollowByInfo_"+affect);
    
    if(affectDiv.style.display == "none") {
        affectDiv.style.display = "block"
    } else {
        affectDiv.style.display = "none"
    }
}


// POP ####################################################################################################################

function setReplyToMessage(replyType,messageId,userName,messageTextShort,userId)
{
    //replyType = 0: Public reply
    //replyType = 1: Private reply
    
    document.getElementById("pop").style.display = "block";

    //Inputs
    var replyToMessageId = document.getElementById("replyToMessageId");
    var replyToUserName = document.getElementById("replyToUserName");
    var replyToUserId = document.getElementById("replyToUserId");
    var message = document.getElementById("message");
    var replySign = document.getElementById("replySign").value;
    var privateReplySign = document.getElementById("privateReplySign").value;
    
    //Divs / spans
    var replyTo = document.getElementById("replyTo");
    var replyToText = document.getElementById("replyToText");

    if(messageId != 0) {
        replyToMessageId.value = messageId;
        replyToUserName.value = userName;
        replyToUserId.value = userId;
    }
    
    replyToText.innerHTML = messageTextShort;
    
    var splitMessage = message.value.split(" ");
    
    var insertMessageStart = replySign + userName;
    if(replyType == 1) {
        insertMessageStart = privateReplySign + replySign + userName;
    }

    
//    if(splitMessage[0] != null) {
//        if(splitMessage[0].toLowerCase() != (replySign.toLowerCase() + userName.toLowerCase()) && replyType == 0) { //If public reply
//            message.value = replySign + userName + " " + message.value; //Set message to "@username existing text"
//        } else if(splitMessage[0].toLowerCase() != (privateReplySign.toLowerCase() + replySign.toLowerCase() + userName.toLowerCase()) && replyType == 1) { //If private reply
//            message.value = privateReplySign + replySign + userName + " " + message.value; //Set message to "p@username existing text"
//        }
//    }
    
    
    if(message.value.substring(0,1).toLowerCase() == replySign || message.value.substring(0,2).toLowerCase() == privateReplySign + replySign) {
        message.value = message.value.replace(splitMessage[0],insertMessageStart);
    } else {
        message.value = insertMessageStart + " " + message.value;
    }
   
    setCursorPosToEnd(message.id);
}

function setCursorPosToEnd(elId) {
    var el = document.getElementById(elId);
    var v = el.value;
    if (el.createTextRange) {
        var r = el.createTextRange();
        r.moveStart('character', v.length);
        r.select();
    } else if (el.setSelectionRange) {
        el.setSelectionRange(v.length, v.length);
    }
    el.focus(); 
}

function evalMessage()
{
//    alert('evaluate reply to message som avgör om det ska synas Svar till username eller inte osv.. sätter också replyTo message = 1 lr 0');
//    var replyToMessage = 1;
//    return replyToMessage;
//    //alert('i validateform returnerar denna värde 1 om @username är = replyToUserName, annars 0');

    var message = document.getElementById("message");
    var replySign = document.getElementById("replySign").value;
    var privateReplySign = document.getElementById("privateReplySign").value;
    
    var splitMessageReplySign = message.value.split(replySign);
    var valueAfterReplySign = "";
    
    if(splitMessageReplySign[1] != null) {
        valueAfterReplySign = splitMessageReplySign[1]; //Set value after @
    }

    var splitValueAfterReplySign = valueAfterReplySign.split(" "); //Get value before first spacing
    var userName = splitValueAfterReplySign[0];
    
    var headline = document.getElementById("textAreaHeadlineStartText").value;
    var bWhiteSpaceAfterUserName = false;
    
    if(message.value.substring(0,1).toLowerCase() == replySign && userName.length > 0) {
        if((message.value.substring(replySign.length + userName.length,replySign.length + userName.length + 1)) == " ") { //If white space after username
            bWhiteSpaceAfterUserName = true;
            headline = document.getElementById("textAreaHeadlineReplyToUserName").value.replace("{0}",userName); //Set headline to reply to and replace {0} with username
        }
    } else if(message.value.substring(0,2).toLowerCase() == (privateReplySign + replySign) && userName.length > 0) {
        if((message.value.substring(privateReplySign.length + replySign.length + userName.length,privateReplySign.length + replySign.length + userName.length + 1)) == " ") { //If white space after username
            bWhiteSpaceAfterUserName = true;
            headline = document.getElementById("textAreaHeadlinePrivateReplyToUserName").value.replace("{0}",userName); //Set headline to private reply to and replace {0} with username
        }
    }
    
    document.getElementById("textAreaHeadline").innerHTML = headline; //Fill correct headline value
    
    var replyToUserName = document.getElementById("replyToUserName").value; //Value defined on setReplyToMessage()
    var replyTo = document.getElementById("replyTo"); //Span with short version of message
    
    if(bWhiteSpaceAfterUserName && replyToUserName.length > 0 && replyToUserName.toLowerCase() == userName.toLowerCase()) { //If username matches the username defined on setReplyToMessage()
        replyTo.style.display = "block";
    } else {
        replyTo.style.display = "none";
    }
}


function popIconHover(iconId,fileName)
{
    var globalStandardImageUrl = document.getElementById("globalStandardImageUrl").value;
    var icon;
    if(iconId.length > 0) {
    icon = document.getElementById(iconId);
    } else {
    icon = iconId;
    }
    icon.src = globalStandardImageUrl + "/pop/icons/" + fileName;
}


function showHideReplyToMessage(messageId)
{
    var replyToMessage = document.getElementById("replyToMessage_" + messageId);
    
    if(replyToMessage.style.display == "block") {
        replyToMessage.style.display = "none";
    } else {
        replyToMessage.style.display = "block";
    }
}


function showRotateImage(imageObject,entryId,imageCount)
{
    var rotateImageEntryId = document.getElementById("rotateImageEntryId");
    var rotateImageImageCount = document.getElementById("rotateImageImageCount");
    rotateImageImageCount.value = imageCount;
    rotateImageEntryId.value = entryId;
    
    var objectPos = getObjectPos(imageObject);
    var objectSize = getObjectSize(imageObject);
    
    var rotateImageControl = document.getElementById("rotateImageControl");
    var rotateImageControlWidth = objectSize[0]-100; //-20 for padding
    var rotateImageControlPosLeft = objectPos[0] + 40;
    var rotateImageControlPosTop = objectPos[1]+Math.round(objectSize[1]/3);
    
    rotateImageControl.style.width = rotateImageControlWidth + "px";
    rotateImageControl.style.left = rotateImageControlPosLeft + "px";
    rotateImageControl.style.top = rotateImageControlPosTop + "px";
    
    rotateImageControl.style.display = "block";
}

function hideRotateImage(imageObject,e)
{
    var rotateImageControl = document.getElementById("rotateImageControl");
    var bHideRotateImageControl = false;
    
    var objectPos = getObjectPos(imageObject);
    var objectSize = getObjectSize(imageObject);
    
    var imageLeftBoundary = objectPos[0]+30;
    var imageRightBoundary = objectPos[0] + objectSize[0] - 30;
    var imageTopBoundary = objectPos[1] + 10;
    var imageBottomBoundary = objectPos[1] + objectSize[1] - 10;
        
    //Get cursor position
    var cursorPos = getCursorPos(e);
    
    //Check if cursor is outside imageObject
    if((cursorPos[0] < imageLeftBoundary) || (cursorPos[0] > imageRightBoundary) || (cursorPos[1] < imageTopBoundary) || (cursorPos[1] > imageBottomBoundary)) {
        bHideRotateImageControl = true;  
    }
    
    if(bHideRotateImageControl) {
        rotateImageControl.style.display = "none";
    }
}

function runRotateImage(action)
{
    document.getElementById("rotateImageAction").value = action;
    document.getElementById("form_rotateImage").submit();
}


function showEntryAsEmail(e,entryId,fromUserId)
{   
    //Reset form
    document.getElementById("emailReceiver").value = "";
    document.getElementById("emailFromName").value = "";
    document.getElementById("emailFromEmail").value = "";
    
    var entryAsEmail = document.getElementById("entryAsEmail");
    
    document.getElementById("emailEntryId").value = entryId;
    document.getElementById("emailFromUserId").value = fromUserId;
    
    if(entryAsEmail.style.display != "block") {
        entryAsEmail.style.display = "block";
        document.getElementById("emailReceiver").focus();
        
        var cursorPos = getCursorPos(e); //Get cursor position
        var objectSize = getObjectSize(entryAsEmail); //Get object size
        
        entryAsEmail.style.left = cursorPos[0]-Math.round(objectSize[0]/2)+"px";
        entryAsEmail.style.top = cursorPos[1]+15+"px";
    } else {
        hideEntryAsEmail();
    }
}

function hideEntryAsEmail()
{   
    document.getElementById("emailReceiver").blur();
    var entryAsEmail = document.getElementById("entryAsEmail");
    entryAsEmail.style.display = "none";
}


function sendEntryAsEmail(loggedIn)
{
    var errorText1 = document.getElementById("emailErrorText1").value;
    var errorText2 = document.getElementById("emailErrorText2").value;
    var errorText3 = document.getElementById("emailErrorText3").value;
    
    if(document.getElementById("emailReceiver").value.length < 1) {
        runGlobalMessage(errorText1,'emailReceiver');
    } else if(document.getElementById("emailFromName").value.length < 1 && loggedIn == 0) {
        runGlobalMessage(errorText2,'emailFromName'); 
    } else if(document.getElementById("emailFromEmail").value.length < 1 && loggedIn == 0) {
        runGlobalMessage(errorText3,'emailFromEmail');               
    } else {
        document.getElementById("form_email").submit();
    }
}


// SETTINGS ####################################################################################################################

function setDesignTheme(designThemeId,page_backgroundColor,page_backgroundImage,page_backgroundRepeat,box_1_backgroundColor,box_1_backgroundImage,box_1_backgroundRepeat,box_1_textColor,box_2_backgroundColor,box_2_backgroundImage,box_2_backgroundRepeat,box_2_textColor)
{
    document.getElementById("designThemeId").value = designThemeId;    
    
    document.getElementById("tempTheme_page_backgroundColor").value = page_backgroundColor;
    document.getElementById("tempTheme_page_backgroundImage").value = page_backgroundImage;
    document.getElementById("tempTheme_page_backgroundRepeat").value = page_backgroundRepeat;
    document.getElementById("tempTheme_box_1_backgroundColor").value = box_1_backgroundColor;
    document.getElementById("tempTheme_box_1_backgroundImage").value = box_1_backgroundImage;
    document.getElementById("tempTheme_box_1_backgroundRepeat").value = box_1_backgroundRepeat;
    document.getElementById("tempTheme_box_1_textColor").value = box_1_textColor;
    document.getElementById("tempTheme_box_2_backgroundColor").value = box_2_backgroundColor;
    document.getElementById("tempTheme_box_2_backgroundImage").value = box_2_backgroundImage;
    document.getElementById("tempTheme_box_2_backgroundRepeat").value = box_2_backgroundRepeat;
    document.getElementById("tempTheme_box_2_textColor").value = box_2_textColor;  
    
    previewDesign(0);
}

function previewDesign(type)
{
    //TYPE 0 = preset themes
    //TYPE 1 = custom design
    
    if(type == 0) { //On preset themes set variable input sources
        page_backgroundColor = document.getElementById("tempTheme_page_backgroundColor").value;
        page_backgroundImage = document.getElementById("tempTheme_page_backgroundImage").value;
        page_backgroundRepeat = document.getElementById("tempTheme_page_backgroundRepeat").value;
        box_1_backgroundColor = document.getElementById("tempTheme_box_1_backgroundColor").value;
        box_1_backgroundImage = document.getElementById("tempTheme_box_1_backgroundImage").value;
        box_1_backgroundRepeat = document.getElementById("tempTheme_box_1_backgroundRepeat").value;
        box_1_textColor = document.getElementById("tempTheme_box_1_textColor").value;
        box_2_backgroundColor = document.getElementById("tempTheme_box_2_backgroundColor").value;
        box_2_backgroundImage = document.getElementById("tempTheme_box_2_backgroundImage").value;
        box_2_backgroundRepeat = document.getElementById("tempTheme_box_2_backgroundRepeat").value;
        box_2_textColor = document.getElementById("tempTheme_box_2_textColor").value;        
    } else if(type == 1) { //On custom design set variable input sources
        page_backgroundColor = document.getElementById("page_backgroundColor").value;
        page_backgroundImage = document.getElementById("page_backgroundImage").value;
        page_backgroundRepeat = document.getElementById("page_backgroundRepeat").value;
        box_1_backgroundColor = document.getElementById("box_1_backgroundColor").value;
        box_1_backgroundImage = document.getElementById("box_1_backgroundImage").value;
        box_1_backgroundRepeat = document.getElementById("box_1_backgroundRepeat").value;
        box_1_textColor = document.getElementById("box_1_textColor").value;
        box_2_backgroundColor = document.getElementById("box_2_backgroundColor").value;
        box_2_backgroundImage = document.getElementById("box_2_backgroundImage").value;
        box_2_backgroundRepeat = document.getElementById("box_2_backgroundRepeat").value;
        box_2_textColor = document.getElementById("box_2_textColor").value;
    }
    
    //Page
    document.body.style.backgroundColor = "#" + page_backgroundColor;
    if(page_backgroundImage.length == 0) {
        document.body.style.backgroundImage = "none";
    } else {
        document.body.style.backgroundImage = "url(" + page_backgroundImage + ")";
    }
    document.body.style.backgroundRepeat = page_backgroundRepeat;
    
    var allDivs = document.getElementsByTagName("div");
    for (var i = 0; i < allDivs.length; i++) { //Loop through divs
        if(allDivs[i].className == "box_1") { 
            //Box_1
            allDivs[i].style.backgroundColor = "#" + box_1_backgroundColor;
            if(box_1_backgroundImage == 0) {
                allDivs[i].style.backgroundImage = "none";
            } else {
                allDivs[i].style.backgroundImage = "url(" + box_1_backgroundImage + ")";
            }
            allDivs[i].style.backgroundRepeat = box_1_backgroundRepeat;
            allDivs[i].style.color = "#" + box_1_textColor;
        } else if(allDivs[i].className == "box_2") { 
            //Box_2
            allDivs[i].style.backgroundColor = "#" + box_2_backgroundColor;
            if(box_2_backgroundImage == 0) {
                allDivs[i].style.backgroundImage = "none";
            } else {
                allDivs[i].style.backgroundImage = "url(" + box_2_backgroundImage + ")";
            }    
            allDivs[i].style.backgroundRepeat = box_2_backgroundRepeat;
            allDivs[i].style.color = "#" + box_2_textColor;
        }
    }
}

function previewCustomDesign(input)
{
    if(input.id == "page_backgroundColor") {
        document.body.style.backgroundColor = input.value;
    }
}



