var show = false;
var timer = null;

$(document).ready(function(){
	makePopup();

	$(".dashboard div.section").bind("mouseenter", function(){$(this).addClass("section-hover");}).bind("mouseleave", function(){$(this).removeClass("section-hover");});
	$(".dashboard div.notice").bind("mouseenter", function(){$(this).addClass("notice-hover");}).bind("mouseleave", function(){$(this).removeClass("notice-hover");});

	$("a.button").hover(function(){this.id="jtip-temp"; this._title = this.title; this.title = ""; JT_show(this.id,this._title)},function(){$('#JT').remove();this.id="";this.title = this._title;});

	$("select").selectbox();
	$("input:checkbox").checkbox();
	$("input:radio").checkbox();
	$("input:file").each(function(i, el){
		if (el.parentNode.id != "browseButton") {
			$(el).file();
		}
	});


	$("#manage-button").bind("click", function(){
		$(this).parent().toggleClass("active");
		return false;
	});

	$('a.flip').click(function(){
	var p = $(this).parent();
		p.toggleClass("b");
		return false;
	});

	$("a[rel=external]").bind("click", function(){
		$("#popup-content").load(this.href, function() {
			openPopup();
		});
		return false;
	});

	var _calendar = document.getElementById("calendar");
	if (_calendar)
	{
		initCalendar();
	}
});

function makePopups() {
	$("a.button").hover(function(){this.id="jtip-temp"; this._title = this.title; this.title = ""; JT_show(this.id,this._title)},function(){$('#JT').remove();this.id="";this.title = this._title;});
}

function initCalendar() {
	makeCalendarPopup();
	$('#calendar ul.data a').bind("mouseenter", function() {
		this.id="tempid";
		show = true;
		$("#calendar-popup-content").load(this.href, function() {
			if (show) {
				openCPopup();
			}
		});
		return false;
	});
	$('#calendar ul.data a').bind("mouseleave", function() {
		this.id="";

		timer = setTimeout('closeCPopup()', 100);
	});
	$("#calendar-popup").bind("mouseenter", function(){
		if (timer) {
			clearTimeout(timer);
		}
	});
	$("#calendar-popup").bind("mouseleave", function(){
		closeCPopup();
	});
}

function makeCalendarPopup() {
	var _popup = $('<div id="calendar-popup" class="calendar-popup"><div class="holder"><div class="bg-t"></div><div class="inner"><div id="calendar-popup-content"></div></div><div class="bg-b"></div></div></div>');
	$('body').append(_popup);
}

function makePopup() {
	var _popup = $('<div id="popup" class="popup"><div class="bg-t"></div><div class="bg"><div class="inner"><a href="#" id="popup-close" class="popup-close" title="Close Popup">Close Popup</a><div id="popup-content"></div></div></div><div class="bg-b"></div></div>');
	$('body').append(_popup);
	$('#popup-close').bind("click", function() {
		closePopup();
		return false;
	});
}

function closePopup() {
	$('#popup').css({
		'visibility': 'hidden',
		'left': '-9999px',
		'top': '-9999px'
	});
}

function closeCPopup() {
	show = false;
	$('#calendar-popup').css({
		'visibility': 'hidden',
		'left': '-9999px',
		'top': '-9999px'
	});
}

function openPopup() {
		$('#popup').css({
			'visibility': 'visible'
		});
		$("#popup-content select").selectbox();
		$("#popup-content input:checkbox").checkbox();
		$("#popup-content input:radio").checkbox();

	_data = getCoords();
	$('#popup').css({
		'left': ((_data['w']/2 - $('#popup').width()/2) + _data['scrollLeft']) + 'px',
		'top': ((_data['h']/2 - $('#popup').height()/2) + _data['scrollTop']) + 'px'
	});

	$('#popup-content input[value=Cancel]').bind("click", function() {
		closePopup();
		return false;
	});
}

function openCPopup(_obj) {
		$('#calendar-popup').css({
			'visibility': 'visible'
		});

	_data = getCoords();
	$('#calendar-popup').css({
		'left': getAbsoluteLeft("tempid") -30 + 'px',
		'top': getAbsoluteTop("tempid") + 'px'
	});
}

function getCoords() {
		var _data = ({'scrollTop': 0, 'scrollLeft': 0, 'h': 0, 'w': 0});
		if (window.innerHeight)
		{
			_data['h'] = window.innerHeight;
		}
		else
		{
			_data['h'] = document.documentElement.clientHeight;
		}
		if (window.innerWidth) {_data['w'] = window.innerWidth;}
		else{_data['w'] = document.documentElement.clientWidth;}


		if (window.pageYOffset){
 			_data['scrollTop'] = window.pageYOffset;
		} else if(document.documentElement && document.documentElement.scrollTop){
 			_data['scrollTop'] = document.documentElement.scrollTop;
		} else if(document.body){
 			_data['scrollTop'] = document.body.scrollTop;
		}

		if(window.pageXOffset){
 			_data['scrollLeft'] =window.pageXOffset;
		} else if(document.documentElement && document.documentElement.scrollLeft){
 			_data['scrollLeft'] =document.documentElement.scrollLeft;
		} else if(document.body){
 			_data['scrollLeft'] =document.body.scrollLeft;
		}
		return _data;
}


function getAbsoluteLeft(objectId) {
	o = document.getElementById(objectId);
	if (o) {
	oLeft = o.offsetLeft;
	while(o.offsetParent!=null) {
		oParent = o.offsetParent;
		oLeft += oParent.offsetLeft;
		o = oParent
	}
	return oLeft;
	}
}

function getAbsoluteTop(objectId) {
	o = document.getElementById(objectId);
	if (o) {
	oTop = o.offsetTop;
	while(o.offsetParent!=null) {
		oParent = o.offsetParent;
		oTop += oParent.offsetTop;
		o = oParent
	}
	return oTop;
	}
}