$('div.videoshot-tab a').live('click', change_featured);
$('.desc-switcher').live('click', function(){$('.game-list-description').toggle(); return false;});
$('a[rel!=""]').live('click',function(){
	link = decode_link($(this).attr('rel'));
	$.post('/mainpage/set_cookie',{set: 'true'});
	$(this).attr('target','_blank').attr('href', link);
});
$('a.thumbnail-image').live('click', load_preview);

function change_featured()
{
	$('div.videoshot-tab').css('background-image', 'url(/images/view/videoshot-tab-bg.png)');
	$(this).parent().css('background-image', 'url(/images/view/videoshot-tab-bg-wide.png)');
	$('div.movie a').attr('href', $(this).attr('ref'))
	$('div.movie a img').attr('src' , $(this).attr('href'));
	//$('#featured-videoshot1 param[name="movie"]').attr('value', $(this).attr('rel'));
	//$('#featured-videoshot1 param[name="FlashVars"]').attr('value', $(this).attr('ref'));
	//$('#featured-videoshot1 embed').attr('src', $(this).attr('rel'));
	//$('#featured-videoshot1 embed').attr('flashvars', $(this).attr('ref'));
	//$('#featured-videoshot1 object img').attr('src', $(this).attr('href'));

	return false;
}

var preview_zoomed = false;

function load_preview()
{
	if ($('#preview-image').size() == 0) return false;
	if (preview_zoomed) return false;
	$('a.thumbnail-image').css('background', 'none');
	$(this).css('background-color', '#B8E7EA');
	$('#preview-image').unbind('click');
	$('img.preview-loader').show();
	$('#preview-image').attr('src', $(this).attr('href')).load(show_preview);
	return false;
}

function getImageSize( id) {
	var oHlpr = document.createElement( 'IMG');
	var oPic = document.getElementById( id);
	oHlpr.style.visibility = 'hidden';
	oHlpr.style.position = 'absolute';
	oHlpr.top = 0; oHlpr.left = 0;
	oHlpr.src = oPic.src;
	document.body.appendChild( oHlpr);
	var imSize = {
		'width':oHlpr.offsetWidth,
		'height':oHlpr.offsetHeight
	}
	document.body.removeChild( oHlpr);
	return imSize;
}

function show_preview()
{
	$('#preview-adsense').hide();
	offset = $('#preview-image').show().offset();
	$('#preview-image').css('position', 'absolute').css('margin', '0').css('top', offset.top + 'px').css('left', offset.left+'px').click(zoom_in);
	$('img.preview-loader').hide();
}

function zoom_in()
{
	preview_zoomed = true;
	var is = getImageSize('preview-image');
	x = (is.width - 387) / 2;
	y = (is.height - 290) / 2;
	$(this).unbind('click').animate({
		marginLeft: (-x) + 'px',
		marginTop: (-y)+'px',
		width: is.width,
		height: is.height
	}, 200, function(){
		$(this).click(zoom_out);
	});
	return false;
}

function zoom_out()
{
	$(this).unbind('click').animate({
		marginLeft: '0',
		marginTop: '0',
		width: '378px',
		height: '290px'
	}, 200, function(){
		$(this).hide(); $('#preview-adsense').show(); preview_zoomed = false;
	});
	return false;
}

function writePanel(domains)
{
	document.write('<div id="header-languages">JS required</div>');
	document.write('<abbr title="Choose Language"><img src="/images/view/language-button.png" alt="Languages" id="language-selector"/></abbr>');
	document.write('<ul id="header-languages-list">');
	requri = domains[21];
	document.write('<li><a href="'+domains[0]+requri+'"><img src="/images/flags/gb.gif"/>English</a></li>');
	document.write('<li><a href="'+domains[1]+requri+'"><img src="/images/flags/ru.gif"/>Russian</a></li>');
	document.write('<li><a href="'+domains[2]+requri+'"><img src="/images/flags/de.gif"/>German</a></li>');
	document.write('<li><a href="'+domains[3]+requri+'"><img src="/images/flags/bg.gif"/>Bulgarian</a></li>');
	document.write('<li><a href="'+domains[4]+requri+'"><img src="/images/flags/cn.gif"/>Chinese</a></li>');
	document.write('<li><a href="'+domains[5]+requri+'"><img src="/images/flags/cz.gif"/>Czech</a></li>');
	document.write('<li><a href="'+domains[6]+requri+'"><img src="/images/flags/nl.gif"/>Dutch</a></li>');
	document.write('<li><a href="'+domains[7]+requri+'"><img src="/images/flags/fr.gif"/>French</a></li>');
	document.write('<li><a href="'+domains[8]+requri+'"><img src="/images/flags/gr.gif"/>Greek</a></li>');
	document.write('<li><a href="'+domains[9]+requri+'"><img src="/images/flags/it.gif"/>Italian</a></li>');
	document.write('<li><a href="'+domains[10]+requri+'"><img src="/images/flags/jp.gif"/>Japanese</a></li>');
	document.write('<li><a href="'+domains[11]+requri+'"><img src="/images/flags/kr.gif"/>Korean</a></li>');
	document.write('<li><a href="'+domains[12]+requri+'"><img src="/images/flags/no.gif"/>Norway</a></li>');
	document.write('<li><a href="'+domains[13]+requri+'"><img src="/images/flags/pl.gif"/>Polish</a></li>');
	document.write('<li><a href="'+domains[14]+requri+'"><img src="/images/flags/pt.gif"/>Portuguese</a></li>');
	document.write('<li><a href="'+domains[15]+requri+'"><img src="/images/flags/rs.gif"/>Serbian</a></li>');
	document.write('<li><a href="'+domains[16]+requri+'"><img src="/images/flags/es.gif"/>Spanish</a></li>');
	document.write('<li><a href="'+domains[17]+requri+'"><img src="/images/flags/se.gif"/>Swedish</a></li>');
	document.write('<li><a href="'+domains[18]+requri+'"><img src="/images/flags/ro.gif"/>Romanian</a></li>');
	document.write('<li><a href="'+domains[19]+requri+'"><img src="/images/flags/hu.gif"/>Hungarian</a></li>');
	document.write('<li><a href="'+domains[20]+requri+'"><img src="/images/flags/tr.gif"/>Turkish</a></li>');
	document.write('</ul>');
}
function searchPanelInit(i)
{
	$('#header-languages').text('Languages...');
/*	if (i)
	{
	$('.search-input').css({
		color: 'silver',
		fontStyle: 'italic'
	}).val('Search...').focus(function(){
		if ($(this).val() == 'Search...')
			$(this).css({
				color: 'black',
				fontStyle: 'normal'
			}).val('');
	}).blur(function()
	{
		if ($(this).val() == '') $(this).css({
			color: 'silver',
			fontStyle: 'italic'
		}).val('Search...');
	});
	}*/
	$('#header-languages, #language-selector').click(langDropDown);
}




function langDropDown()
{
	$('#header-languages-list').show();
	$('#header-languages-list').mouseleave(function(){
		$('#header-languages-list').hide();
	});
	return false;
}
var Base64 = {

	// private property
	_keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",

	// public method for decoding
	decode : function (input) {
		var output = "";
		var chr1, chr2, chr3;
		var enc1, enc2, enc3, enc4;
		var i = 0;

		input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");

		while (i < input.length) {

			enc1 = this._keyStr.indexOf(input.charAt(i++));
			enc2 = this._keyStr.indexOf(input.charAt(i++));
			enc3 = this._keyStr.indexOf(input.charAt(i++));
			enc4 = this._keyStr.indexOf(input.charAt(i++));

			chr1 = (enc1 << 2) | (enc2 >> 4);
			chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
			chr3 = ((enc3 & 3) << 6) | enc4;

			output = output + String.fromCharCode(chr1);

			if (enc3 != 64) {
				output = output + String.fromCharCode(chr2);
			}
			if (enc4 != 64) {
				output = output + String.fromCharCode(chr3);
			}

		}

		output = Base64._utf8_decode(output);

		return output;

	},
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;

		while ( i < utftext.length ) {

			c = utftext.charCodeAt(i);

			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}

		}

		return string;
	}

}

function add_download(id)
{
	$.post('/game/new_download', {
		'game_id': id
	});
}

function goto_link(link)
{
	link = link.replace("-", "+");
	link = link.replace("_", "/");
    $.post('/mainpage/set_cookie',{set: 'true'});
	//alert(Base64.decode(link));
	window.open(Base64.decode(link));
}

function decode_link(link)
{
	link = link.replace("-", "+");
	link = link.replace("_", "/");
	return Base64.decode(link);
}

