function docReady()
{
	initPlayer();
	initFancybox();
	initMenu();
	initSubmenu();
	ajaxLogo();
	setTimeout('initMenuSlider();', 500);
	initLeftmenu();
	initPaging();
	preloadLogos();
	//globals.temp.topURL = globals.temp.bottomURL = globals.temp.rightURL = null;
	globals.temp.lastURL = null;
	initCountdown();
	//$('form').submit(function(){globals.temp.lastURL = null;});
	//$(window).unload(function(){if(globals.temp.lastURL != null) gotoURL(globals.temp.lastURL);});
	$('.listThumb img').attr('width', '150');
	$('.listThumb img').removeAttr('height');
}

function gotoURL(url)
{
	window.location.href = url;
}

function goBack()
{
	history.go(-1);
	return false;
}

function logout()
{
	document.logout_form.logout.value=1;
	document.logout_form.submit();
}

function reloadImage(id, mysrc)
{
	var rand_value = Math.floor(Math.random()*200);
	document.getElementById(id).src=mysrc+'?'+rand_value;
}

function confirmMsg(msg)
{
	return confirm(msg) || false;
}

function changeLang(lid)
{
	gotoURL(document.getElementById('lang_link_'+lid).href);
}

function isEmptyString(str)
{
	return (str.replace(/\s/gi, '') == '');
}

function isEmptyObject(obj)
{
	for(var i in obj)
		return false;
	return true;
}

function genRandom(length)
{
	var s = '';
	var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghiklmnopqrstuvwxyz";
	var randomstring = '';
	for (var i=0; i<length; i++) {
		var rnum = Math.floor(Math.random() * chars.length);
		s += chars.substring(rnum,rnum+1);
	}
	return s;
}

function getYoutubeThumbUrl(url, size)
{
	if(url === null)
		return '';
	
	size = size || 'big';
	
	var matches = url.match("[\\?&\/]v[=\/]([^&#]*)");
	var vid = (matches === null) ? url : matches[1];
	
	if(size == 'small')
		return 'http://img.youtube.com/vi/'+vid+'/2.jpg';
	else
		return 'http://img.youtube.com/vi/'+vid+'/0.jpg';
}

function check_vote(elname, msg)
{
	var sel = $(':radio[name="'+elname+'"]:checked').length > 0;
	if(!sel)
		alert(msg);
	return sel;
}

function add_file(wrapperId, name)
{
	$w = $('#'+wrapperId);
	$('#'+wrapperId+' input:file').unbind('change');
	$('#'+wrapperId+' .removeFile').click(function(){
		remove_file(this);
	});
	$w.append('<div class="file_upload"><input type="file" name="'+name+'"><a class="removeFile"><img src="'+globals.params._images_dir+'del.png" alt="X"/></a></div>');
	$('#'+wrapperId+' .file_upload:last input:file').change(function(){
		add_file(wrapperId, name);
	});
}

function remove_file(t)
{
	$(t).parent().remove();
}

function ajaxLogo()
{
	return;
	$('#logoLeft a').click(function(){
	});
}
function showHome()
{
	/*if(globals.temp.topURL != _root_url)
	{
		closeMenu();
		globals.temp.topURL = _root_url
	}*/
	if(globals.temp.bottomURL != _root_url)
	{
		globals.temp.bottomURL = _root_url;
		$.getJSON(_ajax_url+'content.php',
			{
				u: globals.temp.bottomURL,
				c: 'bottom'
			},
			function(data) {
				if(globals.temp.bottomURL != data.u)	//menu changed
					return false;
				//$('#subMenuLoading').slideUp(200);
				$('#mainDiv')
				.stop(true, true)
				.css({visibility:'hidden', opacity:0})
				.html(data.html)
				.css({visibility:'visible', opacity:1})
				.slideDown($('#mainDiv').height());
				
				initFancybox();
			}
		);
	}
}

function initMenu()
{
	globals.temp.topContents = new Array();
	globals.temp.topContentsF = new Array();
	$('#menuDiv .menuItem a').
	each(function(){
		$a = $(this);
		url = $a.attr('href');
		$.getJSON(_ajax_url+'content.php',
			{
				u: url,
				c: 'top'
			},
			function(data) {
				globals.temp.topContents[data.u] = data.html;
			}
		);
		$a.click(function(){
			return openMenu(this);
		});
		if($a.data('selected') == 1)
		{
			$a.click();
			$a.removeData('selected');
		}
	});
}

function initSubmenu()
{
	/*$('#subMenu a.submenuLink').click(function(){	//:not(.slideBtn, .ui-widget)
		return openSubmenu(this);
	});*/
}

function initLeftmenu()
{
	/*$('#leftDiv a').click(function(){
		return openLeftmenu(this);
	});*/
}

function initPaging()
{
	/*$('.listing_item a').click(function(){
		return openSubmenu(this);
	});
	$('.pages a').click(function(){
		return openLeftmenu(this);
	});
	$('a#backBtn').click(function(){
		return openSubmenu(this);
	});*/
}

function initScores()
{
	$('.score_this').click(function(){
		$(this).slideUp();
		return false;
	});
	
	$('.score a').click(function() {
		$(this).parent().parent().parent().addClass('scored');
		$.get(_abroot_url+"rate.php" + $(this).attr("href") +"&update=true", {}, function(data){
			$('.scored').fadeOut("normal",function() {
				$(this).html(data);
				$(this).fadeIn();
				$(this).removeClass('scored');
			});
		});
		return false; 
	});
}

function closeMenu()
{
	$sepL = $('#menuDiv .menuSepSelL');
	$sepR = $('#menuDiv .menuSepSelR');
	if($sepL.is(':first-child'))
		$sepL.remove();
	else
		$sepL.removeClass('menuSepSelL').addClass('menuSep');
	if($sepR.is(':last-child'))
		$sepR.remove();
	else
		$sepR.removeClass('menuSepSelR').addClass('menuSep');
	
	$('#menuDiv .menuItem').removeClass('selected');
	$('#menuDiv .menuItem a').removeClass('selectedMenu');
}

function hideSubmenu()
{
	if($('#subMenu').is(':visible'))
		$('#subMenu').slideUp();
}

function openMenu(a)
{
	changeLogo();
	$a = $(a);
	url = $a.attr('href');
	$mDiv = $a.parents('.menuItem');
	$subMenu = $('#subMenu');
	var subOpened = $subMenu.is(':visible');
	subH = $subMenu.height();

	//if(globals.temp.topURL != url)
		closeMenu();

	if(globals.temp.topURL != url || !subOpened)
	{
		$mDiv.addClass('selected');
		$a.addClass('selectedMenu');
		if($mDiv.is(':first-child'))
			$mDiv.before('<div />');
		else if($mDiv.is(':last-child'))
			$mDiv.after('<div />');
		$mDiv.prev().removeClass().addClass('menuSepSelL');
		$mDiv.next().removeClass().addClass('menuSepSelR');
		if(globals.temp.inRegForm)
		{
			showHome();
			globals.temp.inRegForm = false;
		}
	}
	else // globals.temp.topURL == url && subOpened
	{
		if(closeSubmenuOnOpen)
			hideSubmenu();
		if(globals.temp.inRegForm)
		{
			showHome();
			globals.temp.inRegForm = false;
		}
		return false;
	}
	var noChange = false;
	if(globals.temp.noChange)
	{
		noChange = (globals.temp.topURL == url);
		globals.temp.noChange = false;
	}
	globals.temp.topURL = url;
	globals.temp.lastURL = url;
	hideSubmenu();
	//$('#subMenuLoading').slideDown(200);
	loadSubmenuData(url, noChange);
	return false;
}

function loadSubmenuData(url, noChange)
{
	if(globals.temp.topURL != url)//menu changed
		return;
	html = globals.temp.topContents[url];
	if(!noChange && ($.type(html) == 'null' || $.type(html) == 'undefined'))
	{
		$.getJSON(_ajax_url+'content.php',
			{
				u: url,
				c: 'top'
			},
			function(data) {
				globals.temp.topContents[data.u] = data.html;
				loadSubmenuData(data.u);
			}
		);
	}
	else
	{
		htmlFormatted = globals.temp.topContentsF[url];
		var firstOpen = ($.type(htmlFormatted) == 'null' || $.type(htmlFormatted) == 'undefined');
		if(!firstOpen)
			html = htmlFormatted;
		//$('#subMenuLoading').slideUp(200);
		//$('#subMenu').stop(true, true).css({visibility:'hidden', opacity:0/*, position:'absolute'*/});
		if(!noChange)
		$.queue($('#subMenu')[0], "fx", function(){
			$(this).html(html);
			$.dequeue(this);
		});
		//.css({visibility:'visible', opacity:1, paddingLeft:0, paddingRight:0/*, position:'relative'*/});
		if(globals.temp.topURL != _root_url)
			$('#subMenu').slideDown(function(){
				//if(firstOpen)
				{
					initSubmenu();
					initMenuSlider();
					scaleSubImages();
					//globals.temp.topContentsF[globals.temp.topURL] = $('#subMenu').html();
				}
			});
	}
}

function openSubmenu(a, callback, keepSubmenuOpen)
{
	changeLogo();
	$a = $(a);
	url = $a.attr('href');
	//if(globals.temp.bottomURL == url)
	//	return false;
	globals.temp.bottomURL = url;
	globals.temp.lastURL = url;
	$('#mainDiv').slideUp();
	if(closeSubmenuOnOpen && !keepSubmenuOpen)
	{
		closeMenu();
		hideSubmenu();
	}
	//$('#subMenuLoading').slideDown(200);
	
	$.getJSON(_ajax_url+'content.php',
		{
			u: url,
			c: 'bottom'
		},
		function(data) {
			if(globals.temp.bottomURL != data.u)	//menu changed
				return false;
			//$('#subMenuLoading').slideUp(200);
			$('#mainDiv')
			.stop(true, true)
			.css({visibility:'hidden', opacity:0})
			.html(data.html)
			.css({visibility:'visible', opacity:1})
			.slideDown($('#mainDiv').height());
			
			initLeftmenu();
			initPaging();
			initFancybox();
			if(typeof callback == 'function')
				callback.call();
		}
	);
	return false;
}

function scaleSubImages()
{
	$('#subMenu .submenuItem img').each(function(){
		$(this).load(function(){
			$t = $(this);
			//alert($t.width())
			if($t.width() > globals.params.td_width)
				$t.removeAttr('height').attr('width', globals.params.td_width);
		});
		$(this).load();
	});
}

function openLeftmenu(a)
{
	changeLogo();
	$a = $(a);
	url = $a.attr('href');
	var urlData = fetchUrlData(url);
	url = urlData[0];
	urlData = urlData[1];
	//if(globals.temp.rightURL == url)
	//	return false;
	globals.temp.rightURL = url;
	globals.temp.lastURL = url;
	$('#rightDiv').slideUp();
	//$('#subMenuLoading').slideDown(200);
	
	urlData['u'] = url;
	urlData['c'] = 'right';
	
	$.getJSON(_ajax_url+'content.php',
		urlData,
		function(data) {
			if(globals.temp.rightURL != data.u)	//menu changed
				return false;
			//$('#subMenuLoading').slideUp(200);
			$('#rightDiv')
			.stop(true, true)
			.css({visibility:'hidden', opacity:0})
			.html(data.html)
			.css({visibility:'visible', opacity:1})
			.slideDown($('#right').height());
			initFancybox();
			initPaging();
		}
	);
	return false;
}

function initMenuSlider()
{
//	alert($('#subMenuInner').width() - $('#subMenu').width())
	if($('#subMenuInner').width() <= $('#subMenu').width())
		return;
	$('#subMenuInner')
	.before('<a href="#" class="slideBtn" id="slideLeft"><div id="arrowL"></div></a>')
	.after('<a href="#" class="slideBtn" id="slideRight"><div id="arrowR"></div></a>');
	$('#subMenu').css({paddingLeft:'54px', paddingRight:'54px'});
	$('#slideLeft')
	.hide()
	//.css('background-image', 'url('+globals.params._images_dir+'arrowLeftDisabled.png)')
	.click(function(){slideMenu(0);});
	$('#slideRight')
	//.css('background-image', 'url('+globals.params._images_dir+'arrowRight.png)')
	.click(function(){slideMenu(1);});
}

function slideMenu(dir)	// 1->right, 0->left
{
	$target = $('#subMenuInner');
	if($target.is(':animated'))
		return;

	var mr = parseInt($target.css('margin-left'));
	var w = $target.width();
	var rightLimit = $('#subMenu').width();
	if(mr >=0 && dir == 0 || mr < 0 && dir != 0 && mr+w <= rightLimit)
		return;
	$('.slideBtn').show();
	//$('#shopMenu, #homeTbl').stop(true, true).animate({marginLeft : mr+'px'});
	if(dir == 0)
	{
		mr +=globals.params.td_width;// $('#subMenuInner td[rel=hidden]:last').width();
		try{
			$('#subMenuInner').stop(true, true).animate({marginLeft : eval('mr+"px"')});/*, function(){$('#subMenuInner td[rel=hidden]:last').removeAttr('rel');}*/
		}
		catch(err){
			$('#subMenuInner').stop(true, true).css({'margin-left' : eval('mr+"px"')});
		}
		if(mr >= 0)
			$('#slideLeft').hide();
	}
	else
	{
		mr -=globals.params.td_width;// $('#subMenuInner td:not([rel=hidden]):first').width();
		try{
			$('#subMenuInner').stop(true, true).animate({marginLeft : eval('mr+"px"')});/*, function(){$('#subMenuInner td:not([rel=hidden]):first').attr('rel', 'hidden');}*/
		}
		catch(err){
			$('#subMenuInner').stop(true, true).css({'margin-left' : eval('mr+"px"')});/*, function(){$('#subMenuInner td:not([rel=hidden]):first').attr('rel', 'hidden');}*/
		}
		if(mr+w <= rightLimit)
			$('#slideRight').hide();
	}
	//alert(mr)
	//$('#slideLeft').css('background-image', 'url('+globals.params._images_dir+((mr == 0) ? 'arrowLeftDisabled.png' : 'arrowLeft.png')+')');
	//$('#slideRight').css('background-image', 'url('+globals.params._images_dir+((mr+w <= rightLimit) ? 'arrowRightDisabled.png' : 'arrowRight.png')+')');
}

function fetchUrlData(url)
{
	var data = {};
	var qArr = url.split('?');
	url = qArr[0];
	qArr = qArr[1];
	if(qArr == null)
		return new Array(url, data);
	qArr = qArr.split('&');
	for(var i in qArr)
	{
		tmp = qArr[i].split('=');
		data[tmp.shift()] = tmp.shift();
	}
	return new Array(url, data);
}

function preloadLogos()
{
	var imgs = new Array();
	for(i = 1; i < 5; i++)
	{
		imgs[i] = new Image();
		imgs[i].src = globals.params.rightLogo.replace('{i}', i);
	}
}

function changeLogo()
{
	$logoImg = $('#logoRight img');
	var r;
	do{
		r = Math.ceil(Math.random()*4);
	}
	while(r == $logoImg.data('num'));
	$logoImg.data('num', r).attr('src', globals.params.rightLogo.replace('{i}', r));
}

function initCountdown()
{
	var od = new Date(globals.params.openDate);
	var left = Math.floor((od.getTime() - (new Date()).getTime())/1000);
	if(left <= 0)
		return;
	var d = Math.floor(left / (24*60*60));
	left = left % (24*60*60);
	var h = Math.floor(left /(60*60));
	left = left % (60*60);
	var m = Math.floor(left /60);
	left = Math.floor(left % 60);
	if(h<10)
		h = '0'+h;
	if(m<10)
		m = '0'+m;
	if(left<10)
		left = '0'+left;
	$('#countDown').html(globals.lang.opening_in+' '+d+' '+h+':'+m+':'+left);
	setTimeout('initCountdown()', 1000);
}
