var BrightTreshold = 180;

var default_color;
var default_C = "#ff6a06";
var default_BG = "#ffffff";
var default_FG = '#545353';
var default_HC = '#333333'; 
var default_BG_dark = '#000000';
var default_FG_dark = '#ababab';
var default_HC_dark = '#ffffff';

var BG;
var FG;
var HC;

function palette(color) {
	var R = parseInt(color.substr(1, 2), 16);
  var G = parseInt(color.substr(3, 2), 16);
	var B = parseInt(color.substr(5, 2), 16);
	if (0.299*R + 0.587*G + 0.114*B >= BrightTreshold) {
		BG = default_BG_dark;
		FG = default_FG_dark;
		HC = default_HC_dark;
		$('#header').css('background-position', 'bottom left');
		$('#blew').css('background-position', 'bottom left');
		$('#icon_home').css('background-position', '77px 102px');
		$('#icon_mail').css('background-position', '77px 80px');
		$('#icon_map').css('background-position', '77px 58px');
		$('#icon_search').css('background-position', '77px 36px');
		$('#login, #search').css('background-position', '33px 57px').unbind().bind('mouseover', function(){
			$(this).css('background-position', '33px 29px');
		}).bind('mouseout', function(){
			$(this).css('background-position', '33px 57px');
		});
		$('#scrollUp').css('background-position', '77px 120px');
		$('#scrollDown').css('background-position', '62px 120px');
		$('.folioLeft').css('background-position', '49px 113px');
		$('.folioRight').css('background-position', '41px 113px');
		$('#rs_submit').css('background-position', 'top right').unbind().bind('mouseover', function(){
			$(this).css('background-position', 'bottom right');
		}).bind('mouseout', function(){
			$(this).css('background-position', 'top right');
		});
		$('.grippie').css('background-color', '#666');
		
	}	else {
		BG = default_BG;
		FG = default_FG;
		HC = default_HC;
		$('#header').css('background-position', 'top left');
		$('#blew').css('background-position', 'top left');
		$('#icon_home').css('background-position', '77px 113px');
		$('#icon_mail').css('background-position', '77px 91px');
		$('#icon_map').css('background-position', '77px 69px');
		$('#icon_search').css('background-position', '77px 47px');
		$('#login, #search').css('background-position', '33px 113px').unbind().bind('mouseover', function(){
			$(this).css('background-position', '33px 85px');
		}).bind('mouseout', function(){
			$(this).css('background-position', '33px 113px');
		});
		$('#scrollUp').css('background-position', '77px 127px');
		$('#scrollDown').css('background-position', '62px 127px');
		$('.folioLeft').css('background-position', '65px 113px');
		$('.folioRight').css('background-position', '57px 113px');
		$('#rs_submit').css('background-position', 'top left').unbind().bind('mouseover', function(){
			$(this).css('background-position', 'bottom left');
		}).bind('mouseout', function(){
			$(this).css('background-position', 'top left');
		});
		$('.grippie').css('background-color', '#eee');
		
	}

	
	$('.changableBG').add('#icons .current').add('#leftMenu .current').css('background-color', color);
	
	//$('#path strong').css('color', color);
	$('body').add('.BorW').not('#palette').add('.BorW input[type=text]').add('.BorW input[type=password]').add('.BorW textarea').css({
		backgroundColor: BG,
		color: FG
	});
	$('.folioLeft, .folioRight').not('.current').css('background-color', BG);
	$('h1, h2, h3, h4').css('color', HC);
	
	$('.changableBG').add('.changableBG a').css('color', BG);
		
	$('#leftMenu div a').unbind().bind('mouseover', function(){
		if ($('.folioLeft', this).hasClass('current'))
			$('.current', this).removeClass('transparent');
		else
			$('#leftMenu .current').addClass('transparent');
				
		$('.folioLeft, .folioRight', this).css('background-color', color);
		$(this).css('color', color);
		
	}).bind('mouseout', function(){
		$('#leftMenu .current').removeClass('transparent');
		if ($('.folioLeft', this).hasClass('current'))
			$('.folioLeft, .folioRight', this).css('background-color', color);
		else
			$('.folioLeft, .folioRight', this).css('background-color', BG);
		$(this).css('color', FG);
		
	});

	$('.BorW a').not('a.icons, a.strong, a.verySpecial, a.withImage').css({
		color: FG,
		borderColor: FG
	}).unbind().bind('mouseover', function(){
		$(this).css({
			color: color,
			borderColor: color
		});
	}).bind('mouseout', function(){
		$(this).css({
			color: FG,
			borderColor: FG
		});
	});

	$('#icons a.icons').add('#scrollUp').add('#scrollDown').unbind().bind('mouseover', function(){
		$(this).css('background-color', color);
	}).bind('mouseout', function(){
		$(this).css('background-color', '#877C84');
	});
	
	$('#rightMenu a').add('a.strong').add('#rs_full').unbind().bind('mouseover', function(){
		if ($(this).parents('div').is('#rightMenu')) {
			$('small', this).css('color', color);
		}
		$(this).css({
			color: color,
			borderColor: color
		});
	}).bind('mouseout', function(){
		if ($(this).parents('div').is('#rightMenu')) {
			if ($(this).parent().is('dd'))
				$(this).css({
					color: FG,
					borderColor: BG
				});
			else {
				$(this).css({
					color: HC,
					borderColor: BG
				});
				$('small', this).css('color', FG);
			}
		} else {
			$(this).css({
				color: HC,
				borderColor: HC
			});
		}
	});
	$('a.strong').add('#rs_full').css({
		borderColor: HC,
		color: HC
	});
	$('#rightMenu small').css('color', FG);
	$('#rightMenu dt a').css('color', HC);
	$('#rightMenu dd a').css('color', FG);
	$('#rightMenu a').css('border-color', BG);
	$('#blin_text *').css('color', BG);
	
	$.cookie('blew_bgcolor', color, {expires: 366, path: '/'});
	$('#currentSiteColor').html(color);
}

$(document).ready(function(){
  if ($.browser.msie && $.browser.version < 7) {
    $("#search").add("#loginForm #login").bind('mouseover', function(){
      $(this).css({backgroundPosition: "50px 71px"});
    }).bind('mouseout', function(){
      $(this).css({backgroundPosition: "50px 99px"});
    });  
  }

	default_color = $.cookie('blew_bgcolor');
	if (default_color == null)
		default_color = $('.changableBG').css('background-color');
	color = default_color;

	$('#palette').toggle(function(){
			$('#colorpickerHolder').width('180px');
			$('#colorpicker').css({display: 'block'});
			$('#palette').css('background-position', '200px 136px').unbind('mouseover').unbind('mouseout').bind('mouseover', function(){
				$(this).css('background-position','241px 136px');
			}).bind('mouseout', function(){
				$(this).css('background-position','200px 136px');
			});
		  
	}, function(){
			$('#colorpicker').css({display: 'none'});
			$('#colorpickerHolder').width('40px');
						
			$('#palette').css('background-position','118px 136px').unbind('mouseover').unbind('mouseout').bind('mouseover', function(){
				$(this).css('background-position','159px 136px');
			}).bind('mouseout', function(){
				$(this).css('background-position','118px 136px');
			});
	});

	$.farbtastic('#colorpicker', palette).setColor(color);
	
	$('#recommendedColors input').bind('focus', function(){
		setTimeout(function(){
		reccolor = $('#recommendedColors input:checked').val();
		$.farbtastic('#colorpicker').setColor(rgb2hex(reccolor) || rgb2hex(default_color));
		}, 200);
	});
});


function rgb2hex(rgb)
{
	if (typeof rgb != 'string')
		return false;
	if (rgb.substr(0,1) == '#')
		return rgb;
	else if (rgb.substr(0,3) == 'rgb') {
		rgb = rgb.substring(rgb.indexOf('(') + 1, rgb.indexOf(')'));	
		var rgbs = rgb.split(/,/);
		for (color in rgbs)
			rgbs[color] = parseInt(rgbs[color]);
    return '#' + (rgbs[0] < 16 ? '0' : '') + rgbs[0].toString(16) +
           (rgbs[1] < 16 ? '0' : '') + rgbs[1].toString(16) +
           (rgbs[2] < 16 ? '0' : '') + rgbs[2].toString(16);
	}
	return false;
}

