jQuery(document).ready(function($) {
	jQuery('input,textarea').focus(function(){
		jQuery('button').removeClass('focused');
	});
	jQuery('button').focus(function() {
		jQuery(this).blur();
		jQuery(this).addClass('focused');
	});
	jQuery('button').hover(
		function()
		{
			jQuery(this).addClass('focused');
		},
		function()
		{
			jQuery(this).removeClass('focused');
		})
	;
	jQuery('a.related-posts-link').each(function()
	{
		var link = this;
		link.isOpen = false;
		link.flag_div = jQuery(this).parent().find('.more-flags');
		link.element = jQuery(link).append('<input style="display: none" />');
		link.active = false;

		jQuery('.more-flags a').hover(
			function()
			{
				link.active = true;
			},
			function()
			{
				link.active = false;
			}
		);

		jQuery(this).hover(
			function()
			{
				link.active = true;
			},
			function()
			{
				link.active = false;
			}
		);

		link.element.blur(function()
		{
			if(link.active)
			{
				jQuery(this).focus();
				return false;
			}
			link.isOpen = false;
			link.flag_div.hide();
		});

		jQuery(this).click(function()
		{
			link.toggleFocus();
			return false;
		});
		link.toggleFocus = function()
		{
			if(link.isOpen)
			{
				link.isOpen = false;
				link.flag_div.hide();
				link.element.blur();
			}
			else
			{
				link.flag_div.show();
				link.isOpen = true;
				link.element.focus();
			}
		}
	});


	jQuery('a.language-link').each(function()
	{
		var link = this;
		link.isOpen = false;
		link.flag_div = jQuery(this).parent().parent().find('.more-languages');
		link.element = jQuery(link).append('<input style="display: none" />');
		link.active = false;

		jQuery('.more-languages a').hover(
			function()
			{
				link.active = true;
			},
			function()
			{
				link.active = false;
			}
		);

		jQuery(this).hover(
			function()
			{
				link.active = true;
			},
			function()
			{
				link.active = false;
			}
		);

		link.element.blur(function()
		{
			if(link.active)
			{
				jQuery(this).focus();
				return false;
			}
			link.isOpen = false;
			link.flag_div.hide();
		});

		jQuery(this).click(function()
		{
			link.toggleFocus();
			return false;
		});
		link.toggleFocus = function()
		{
			if(link.isOpen)
			{
				link.isOpen = false;
				link.flag_div.hide();
				link.element.blur();
			}
			else
			{
				link.flag_div.show();
				link.isOpen = true;
				link.element.focus();
			}
		}
	});
	$('body').supersleight();
	var $twitter_update = jQuery('#twitter-update');
	var lastLink = twitter_updates.length - 1;
	var currentLink = 0;
	scrollLinks = function() {
		if (currentLink > lastLink) {
			currentLink = 0;
		}
		$twitter_update.text(twitter_updates[currentLink].title).attr('href', twitter_updates[currentLink].link);
		currentLink ++;
	}
	scrollLinks();
	var scroll = setInterval(scrollLinks, 8000);

	$twitter_update.bind('mouseenter',function(){
		clearInterval(scroll);
	})
	.bind('mouseleave',function(){
		scroll = setInterval(scrollLinks, 3000);
	});

});
jQuery.fn.supersleight = function(settings) {
	settings = jQuery.extend({
		imgs: true,
		backgrounds: true,
		shim: templateUrl + '/images/x.gif',
		apply_positioning: false
	}, settings);

	return this.each(function(){
		if (jQuery.browser.msie && parseInt(jQuery.browser.version) < 7 && parseInt(jQuery.browser.version) > 4) {
			jQuery(this).find('*').each(function(i,obj) {
				var self = jQuery(obj);
				// background pngs
				if (settings.backgrounds && self.css('background-image').match(/\.png/i) !== null) {
					var bg = self.css('background-image');
					var src = bg.substring(5,bg.length-2);
					var mode = (self.css('background-repeat') == 'no-repeat' ? 'crop' : 'scale');
					var styles = {
					'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='" + mode + "')",
					'background-image': 'url('+settings.shim+')'
					};
					self.css(styles);
				};
				// image elements
				if (settings.imgs && self.is('img[src$=png]')){
					var styles = {
					'width': self.width() + 'px',
					'height': self.height() + 'px',
					'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + self.attr('src') + "', sizingMethod='scale')"
					};
					self.css(styles).attr('src', settings.shim);
				};
				// apply position to 'active' elements
				if (settings.applyPositioning && self.is('a, input') && self.css('position') === ''){
					self.css('position', 'relative');
				};
			});
		};
	});
};

