// JavaScript Copyright 2007 GameTracker.com.
var selColorPicker	= null;
var picker			= null;
//*****************************
//*****************************
$(document).ready(function () {
	picker = $.farbtastic('#colorpicker', function callback(color)
	{
		if (selColorPicker != null)
		{
			$(selColorPicker).val(color.replace('#', ''));
			updateColorInput($(selColorPicker));
		}
	});
	//FFFF41
	$("input.color_sel").each(function(i)
	{
		updateColorInput($(this));
		$(this).attr('maxlength', 6);
		$(this).bind("focus", function()
		{
			selColorPicker = $(this);
			$('#colorpicker').css({ display: 'block' });
			picker.setColor('#' + $(this).val());
			var objPos = $(this).position();
			var objWidth = $(this).width();
			var posTop = objPos.top - 1;
			var posLeft = objPos.left + objWidth + 10;
			$('#colorpicker').css({ top: posTop, left: posLeft });
		});
		$(this).bind("change", function()
		{
			updateColorInput($(this));
		});
		$(this).bind("blur", function()
		{
			selColorPicker = null;
			$('#colorpicker').css({ display: 'none' });
			updateBannerPreviewImage();
		});
		$(this).keyup(function(e)
		{
			if(e.which==13)
				return false;
			c = $(this).val().replace( /[^A-Fa-f0-9]/ ,'');
			$(this).val(c);
		});
	});
	$("#460x42_code").bind("click", function()
	{
		$(this).select();
	});
 });
//*****************************
//*****************************
function selectBannerColorTheme()
{
	var theme = document.getElementById('460x42_theme').value;
	var staticTheme = false;
	if (theme == 'gt_red')
	{
		$('#460x42_bordercolor').val('000000');
		$('#460x42_bkgdtopcolor').val('692108');
		$('#460x42_bkgdbotcolor').val('381007');
		$('#460x42_textcolor').val('FFFFFF');
		$('#460x42_textaltcolor').val('FF9900');
		$('#460x42_highlightcolor').val('FFCC00');
		staticTheme = true;
	}
	else if (theme == 'gt_orange')
	{
		$('#460x42_bordercolor').val('591F11');
		$('#460x42_bkgdtopcolor').val('FFAD41');
		$('#460x42_bkgdbotcolor').val('E98100');
		$('#460x42_textcolor').val('000000');
		$('#460x42_textaltcolor').val('202743');
		$('#460x42_highlightcolor').val('FFCC00');
		staticTheme = true;
	}
	else if (theme == 'gt_green')
	{
		$('#460x42_bordercolor').val('2E3226');
		$('#460x42_bkgdtopcolor').val('5A6C3E');
		$('#460x42_bkgdbotcolor').val('383F2D');
		$('#460x42_textcolor').val('D2E1B5');
		$('#460x42_textaltcolor').val('FF9900');
		$('#460x42_highlightcolor').val('FFCC00');
		staticTheme = true;
	}
	else if (theme == 'gs')
	{
		$('#460x42_bordercolor').val('000000');
		$('#460x42_bkgdtopcolor').val('323957');
		$('#460x42_bkgdbotcolor').val('202743');
		$('#460x42_textcolor').val('FFFFFF');
		$('#460x42_textaltcolor').val('F19A15');
		$('#460x42_highlightcolor').val('FFCC00');
		staticTheme = true;
	}
	else if (theme == 'custom_colors')
	{
		$('#460x42_bordercolor').val(		$('#460x42_bordercolor').attr('custom_color'));
		$('#460x42_bkgdtopcolor').val(		$('#460x42_bkgdtopcolor').attr('custom_color'));
		$('#460x42_bkgdbotcolor').val(		$('#460x42_bkgdbotcolor').attr('custom_color'));
		$('#460x42_textcolor').val(			$('#460x42_textcolor').attr('custom_color'));
		$('#460x42_textaltcolor').val(		$('#460x42_textaltcolor').attr('custom_color'));
		$('#460x42_highlightcolor').val(	$('#460x42_highlightcolor').attr('custom_color'));
		staticTheme = true;
	}
	if(staticTheme)
	{
		//FORMAT COLOR INPUTS
		updateColorInput($("#460x42_bordercolor"));
		updateColorInput($("#460x42_bkgdtopcolor"));
		updateColorInput($("#460x42_bkgdbotcolor"));
		updateColorInput($("#460x42_textcolor"));
		updateColorInput($("#460x42_textaltcolor"));
		updateColorInput($("#460x42_highlightcolor"));
		updateBannerPreviewImage();
		$('.color_input').hide();
		return;
	}
	$('.color_input').show();	
}
//*****************************
//*****************************
function selectBannerCodeType()
{
	if(document.getElementById('460x42_tabweb').style.display != 'none')
	{
		document.getElementById('460x42_tabweb').style.display = 'none';
		document.getElementById('460x42_tabforum').style.display = 'block';
	}
	else
	{
		document.getElementById('460x42_tabweb').style.display = 'block';
		document.getElementById('460x42_tabforum').style.display = 'none';
	}
	updateBannerCode();
}
//*****************************
//*****************************
function updateColorInput(jqObj)
{
	//VALIDATE
	$(jqObj).val($(jqObj).val().toUpperCase());
	var re = new RegExp('[0-9A-F]{6}');
	if(!re.test($(jqObj).val()))
		$(jqObj).val('000000');
	//STYLE
	color = $(jqObj).val();
	var rgb = picker.unpack('#' + color);
	var hsl = picker.RGBToHSL(rgb);
	$(jqObj).css("background-color", '#' + color);
	$(jqObj).css("color", hsl[2] > 0.5 ? '#000' : '#fff');
}
//*****************************
//*****************************
function updateBannerPreviewImage()
{
	//GET THE IMAGE SOURCE
	var imgsrc = bannerLinkBase + "b_460x42_";
	imgsrc += "C";
	imgsrc += $('#460x42_bordercolor').val().toUpperCase()	+ "-";
	imgsrc += $('#460x42_bkgdtopcolor').val().toUpperCase()	+ "-";
	imgsrc += $('#460x42_bkgdbotcolor').val().toUpperCase()	+ "-";
	imgsrc += $('#460x42_textcolor').val().toUpperCase()		+ "-";
	imgsrc += $('#460x42_textaltcolor').val().toUpperCase()	+ "-";
	imgsrc += $('#460x42_highlightcolor').val().toUpperCase();
	imgsrc += ".png";
	//SET PREVIEW IMAGE
	document.getElementById("460x42_preview").src = imgsrc;
	updateBannerCode();
}
//*****************************
//*****************************
function updateBannerCode()
{
	var code = "";
	var imgsrc = document.getElementById("460x42_preview").src;
	if(document.getElementById('460x42_tabweb').style.display != 'none')
	{
		code += '<a href="' + profileLink + '" target="_blank">';
		code += '<img src="' + imgsrc + '" border="0" />';
		code += '</a>';
	}
	else
	{
		code += '[url=' + profileLink + ']';
		code += '[img]' + imgsrc + '[/img]';
		code += '[/url]';
	}
	document.getElementById("460x42_code").value = code;
}