
// image on-off

function imgOn(imgName) {
	if (document.getElementById) {
		document.getElementById(imgName).src = eval(imgName + '1.src');
	}
}

function imgOff(imgName) {
	if (document.getElementById) {
		document.getElementById(imgName).src = eval(imgName + '0.src');
	}
}


// text on-off

function txtOn(imgName) {
	if (document.images) {
		if (document.images[imgName].src != eval(imgName + '2.src')) {
			document.images[imgName].src = eval(imgName + '1.src');
		}
	}
}

function txtOff(imgName) {
	if (document.images) {
		if (document.images[imgName].src != eval(imgName + '2.src')) {
			document.images[imgName].src = eval(imgName + '0.src');
		}
	}
}


// main nav functions

function navOn(imgName) {
	if (document.images) {
		if (document.images[imgName].src != eval(imgName + '2.src')) {
			document.images[imgName].src = eval(imgName + '1.src');
		}
	}
}

function navOff(imgName) {
	if (document.images) {
		if (document.images[imgName].src != eval(imgName + '2.src')) {
			document.images[imgName].src = eval(imgName + '0.src');
		}
	}
}

function navSelect(imgName) {
	if (document.images) {
		document.images[imgName].src = eval(imgName + '2.src');
	}
}


// left nav functions

function lnavSelect(navName) {
	if (document.getElementById) {
		document.getElementById(navName).className = 'lnav-select';
	}
}

// function lnavTopSelect(navName) {
//	if (document.getElementById && elt = document.getElementById(navName)) {
//		elt.className = 'lnav-top-select';
//		document.getElementById('lnav-top').src = '/sites/global/images/lnav-top-select.gif';
//	}
// }


function lnavTopSelect(navName) {
	if (document.getElementById) {
		document.getElementById(navName).className = 'lnav-top-select';
		document.getElementById('lnav-top').src = '/sites/global/images/lnav-top-select.gif';
	}
}


function lnavOpen(navName) {
	if (document.getElementById) {
		document.getElementById(navName).className = 'lnav-open';
		if (document.getElementById(navName + 'sub')) {
			document.getElementById(navName + 'sub').style.display = 'block';
		}
	}
}

function lnavTopOpen(navName) {
	if (document.getElementById) {
		document.getElementById(navName).className = 'lnav-top-open';
		document.getElementById('lnav-top').src = '/sites/global/images/lnav-top-select.gif';
		if (document.getElementById(navName + 'sub')) {
			document.getElementById(navName + 'sub').style.display = 'block';
		}
	}
}

function snavSelect(navName) {
	if (document.getElementById) {
		if (document.getElementById(navName).className = 'norm') {
			document.getElementById(navName).className = 'norm-select';
		} 
		if (document.getElementById(navName).className = 'first') {
			document.getElementById(navName).className = 'first-select';
		}
		if (document.getElementById(navName).className = 'last') {
			document.getElementById(navName).className = 'last-select';
		}
	}
}


// util nav function

function utilSelect(navName) {
	if (document.getElementById) {
		document.getElementById(navName).style.fontWeight = 'bold';
		document.getElementById(navName).style.textDecoration = 'none';
		document.getElementById(navName).style.color = '#666666';
	}
}


// footer nav function
// 
// function footerSelect(navName) {
// 	if (document.getElementById) {
// 		document.getElementById(navName).style.fontWeight = 'bold';
// 		document.getElementById(navName).style.textDecoration = 'none';
// 		document.getElementById(navName).style.color = '#666666';
// 	}
// }
// 
// 
// thumb functions
// 
// function thumbOn(imgName) {
// 	if (document.getElementById) {
// 		if (document.getElementById('thumb' + imgName).className != 'framed-select') {
// 			document.getElementById('thumb' + imgName).className = 'framed-on';
// 		}
// 	}
// }
//
// function thumbOff(imgName) {
// 	if (document.getElementById) {
// 		if (document.getElementById('thumb' + imgName).className != 'framed-select') {
// 			document.getElementById('thumb' + imgName).className = 'framed';
// 		}
// 	}
// }
// 
// function thumbSelect(imgName) {
// 	if (document.getElementById) {
// 		document.getElementById('thumb' + imgName).className = 'framed-select';
// 	}
// }
// 
// poll bar functions
// 
// function showWeeklyPoll() {
// 	if (document.getElementById) {
// 		document.getElementById('poll-incomplete').style.display = 'none';
// 		document.getElementById('poll-complete').style.display = 'block';
// 	}
// }
// 
// function getPollBar1() {
// 	if (document.getElementById) {
// 		var pollNumber = document.getElementById('poll-1-number').innerHTML;
// 		document.getElementById('poll-1-bg').style.width = pollNumber + 'px';
// 	}
// } 
// 
// function getPollBar2() {
// 	if (document.getElementById) {
// 		var pollNumber = document.getElementById('poll-2-number').innerHTML;
// 		document.getElementById('poll-2-bg').style.width =  pollNumber + 'px';
// 	}
// }
// 
// function getPollBar3() {
// 	if (document.getElementById) {
// 		var pollNumber = document.getElementById('poll-3-number').innerHTML;
// 		document.getElementById('poll-3-bg').style.width = pollNumber + 'px';
// 	}
// }
// 
// 
// show recent/popular
// 
// function showRecent(contentName) {
// 	if (document.getElementById) {
// 		document.getElementById(contentName + '-popular').style.display = 'none';
// 		document.getElementById(contentName + '-recent').style.display = 'block';
// 	}
// }
// 
// function showPopular(contentName) {
// 	if (document.getElementById) {
// 		document.getElementById(contentName + '-recent').style.display = 'none';
// 		document.getElementById(contentName + '-popular').style.display = 'block';
// 	}
// }

// Show/hide editing overlay

function hideEditOverlay(elt) {
  $(".cmb-wrapper").attr("class", "cmb-wrapper-hidden");
  elt.onclick = function() { showEditOverlay(this); return false; };
  elt.innerHTML = "Show Editing Overlay";
}

function showEditOverlay(elt) {
  $(".cmb-wrapper-hidden").attr("class", "cmb-wrapper");
  elt.onclick = function() { hideEditOverlay(this); return false; };
  elt.innerHTML = "Remove Editing Overlay";
}


// show-hide content functions
// 
// function showHideContent(divNum) {
// 	if (document.getElementById) {
// 		if (document.getElementById('div1')) {
// 			if (document.getElementById('div' + divNum).style.display == 'block') {
// 				document.getElementById('div' + divNum).style.display = 'none';
// 				document.getElementById('open-close' + divNum).src = '/sites/global/images/icon-open.gif';
// 			}
// 			else {
// 				document.getElementById('div' + divNum).style.display = 'block';
// 				document.getElementById('open-close' + divNum).src = '/sites/global/images/icon-close.gif';
// 			}
// 		}
// 	}
// }
// 
// 
// show remote content
// 
// 5 divs
// 
// function showRemoteContent5() {
// 	if (document.getElementById) {
// 		var query = document.location.search.substring(1); 
// 		var pairs = query.split(); 
// 		var values;
// 		var url;
// 		for (var i=0; i < pairs.length; i++) {
// 			values = pairs[i].split();
// 			url = values[0].substring(0,values[0].length);
// 		}
// 		for (i = 1; i <= 5; i++) {
// 			if ('div' + url == 'div' + i) {
// 				showHideContent('1');
// 				showHideContent(url);
// 				document.location.href = '#content' + url;
// 			}
// 		}
// 	}
// }
// 
// 11 divs
// 
// function showRemoteContent11() {
// 	if (document.getElementById) {
// 		var query = document.location.search.substring(1); 
// 		var pairs = query.split(); 
// 		var values;
// 		var url;
// 		for (var i=0; i < pairs.length; i++) {
// 			values = pairs[i].split();
// 			url = values[0].substring(0,values[0].length);
// 		}
// 		for (i = 1; i <= 11; i++) {
// 			if ('div' + url == 'div' + i) {
// 				showHideContent('1');
// 				showHideContent(url);
// 				document.location.href = '#content' + url;
// 			}
// 		}
// 	}
// }
// 
// 
// Bookmark
// 
// function bookmark() {
// 	if (document.all) {
// 		window.external.AddFavorite(window.document.location,window.document.title);
// 	}
// 	else {
// 		alert('Your browser doesn\'t support this function.');
// 	}
// }

function processOnKeyPress(event, clientId) {
    if (event.keyCode == 13) {
        forceClick(clientId);
        return false;
    }
    return true;
}

function forceClick(buttonId) {
    var button = document.getElementById(buttonId);
    if (button) button.click();
}

function hideControl(ctrlId) {
    var ctrl = document.getElementById(ctrlId);
    if (ctrl) ctrl.style.display = 'none';
}



// function toggle(id)
// {
// 	if (document.getElementById) {
// 
// 		if(document.getElementById(id).style.display == 'block')
// 		{
//			document.getElementById(id).style.display = 'none';
// 		}
// 		else
// 		{
// 			document.getElementById(id).style.display = 'block';
// 		}
// 	}
//
// }

$(document).ready(function() {
    // $(".toggle").next("div").hide();
    $("h3.toggle").toggle(function() {
        $(this).addClass("active");
    }, function() {
        $(this).removeClass("active");
    });
    $("h3.toggle").click(function() {
        $(this).next("div").slideToggle(125);
    });
    autoOpenToggle();

    // Apply onfocus on second input field
    var inputs = $('input[type=text]');
    if (inputs.length > 1) {
        inputs[1].focus();
    }

});

function autoOpenToggle() {
    try {
        var fullUrl = parent.document.URL;
        var indexOfAutoOpenId = fullUrl.indexOf('#open_toggle_');
        if (indexOfAutoOpenId > 0) {
            var autoOpenId = fullUrl.substring(indexOfAutoOpenId + 13, fullUrl.length);
            $('#' + autoOpenId).click();
        }
    }
    catch (e) {
    }
}

function bindCalendar(jqSelector, clientCalendarDataSource, inline) {
    bindCalendarEx(jqSelector, clientCalendarDataSource, inline, false, null, null);
}


function bindCalendarEx(jqSelector, clientCalendarDataSource, inline, selectableByDefault, onChangeDate, onChangeMonth) {
    // Load data pickers
    $(jqSelector).datepicker({
        inline: inline,
        showOtherMonths: false,
        beforeShowDay: function(date) {
            if (clientCalendarDataSource && clientCalendarDataSource.SpecialDates) {
                for (var i = 0; i < clientCalendarDataSource.SpecialDates.length; i++) {
                    var specialDate = clientCalendarDataSource.SpecialDates[i];
                    if (date.getTime() - date.getTimezoneOffset() * 60000 == specialDate.Date) {
                        var result = new Array();
                        result[0] = specialDate.Selectable;
                        result[1] = specialDate.CssClass;
                        result[2] = specialDate.Note;
                        return result;
                    }
                }
            }
            var result = new Array();
            result[0] = selectableByDefault;
            result[1] = "";
            result[2] = "";
            return result;
        },
        onChangeMonthYear: onChangeMonth,
        onSelect: onChangeDate,
        changeMonth: true,
        changeYear: true,
        defaultDate: clientCalendarDataSource.InitialDate > 0 ? getDateObject(clientCalendarDataSource.InitialDate) : null
    });
}

function getDateObject(mscount) {
    var date = new Date();
    date.setTime(mscount + date.getTimezoneOffset() * 60000);
    return date;
}

function showHiddenButtons() {
    var buttons = $(".button")
    for (var i = 1; i < buttons.length; i++) {
        var button = buttons[i];
        var pos = findPos(button);
        for (var j = 0; j < i; j++) {
            var prevButton = buttons[j];
            var prevPos = findPos(prevButton)
            if (pos.X == prevPos.X && pos.Y == prevPos.Y) {
                $(button).animate({ "left": "-=" + prevButton.offsetWidth + "px" });
            }
        }
    }
}


function findPos(obj) {
    var curleft = curtop = 0;
    if (obj.offsetParent) { 
        curleft = obj.offsetLeft
        curtop = obj.offsetTop
        while (obj = obj.offsetParent) {
            curleft += obj.offsetLeft
            curtop += obj.offsetTop
        }
    }
    var result = new Object();
    result.X = curleft;
    result.Y = curtop;
    return result;
}


// show/hide calendar

function showCal() {
	if (document.getElementById) {
		document.getElementById('minical1').style.display = 'block';
	}
}

function hideCal() {
	if (document.getElementById) {
		document.getElementById('minical1').style.display = 'none';
	}
}
