(function($) {
	$.fn.submenu = function() {
		return this.each(function() {
			var nav = $(this);
			var items = nav.find('> ul > li');
			
			items.each(function() {
				var item = $(this);
				var submenu = item.children('ul');
				
				submenu.children('li:nth-child(6n)').addClass('no-border');
				
				var lis = submenu.children('li:not(.marker)');
				if (lis.length < 6) {
					$(lis[lis.length - 1]).addClass('no-border');
					submenu.width(lis.length * 90 + lis.length);
				}
								
				item.hover(function() {
					var old_submenu = nav.find('> ul > li:not(.hover) > ul:visible');
					
					if (old_submenu.length > 0) {
						old_submenu.fadeOut(300);
						item.addClass('hover');

						if (submenu.length > 0) {

							if (submenu.find('.marker').length === 0) {
								submenu.append($('<li class="marker" />'));
							}
							$('.marker', submenu).width(lis.length * 90 + lis.length).css('backgroundPosition', (lis.length * 90 - 43) + 'px 0');

							submenu.show();
						}
					} else {
						item.addClass('hover');
						
						if (submenu.length > 0) {

							if (submenu.find('.marker').length === 0) {
								submenu.append($('<li class="marker" />'));
							}
							$('.marker', submenu).width(lis.length * 90 + lis.length).css('backgroundPosition', (lis.length * 90 - 43) + 'px 0');

							submenu.fadeIn(150);
						}
					}
				}, function() {
					item.removeClass('hover');
					if (submenu.length > 0) {
						submenu.fadeOut(300);
					}
				});
			});
		});
	};
})(jQuery);



(function($) {
	$.fn.banners = function() {
		return this.each(function() {
			var container = $(this);
			var images = container.children('img');
			
			var a = function slide() {
				images.each(function(index) {
					var image = $(this);

					if (image.hasClass('active')) {
						
						image.fadeOut(800, function() {
							image.removeClass('active');
						});
						var span = image.next();
						if (span.length > 0 && span[0].tagName == 'SPAN') {
							span.fadeOut(800, function() {
								span.removeClass('active');
							});
						}
						
						if (index == images.length - 1) {
							$(images[0]).fadeIn(700).addClass('active');
							
							var span = $(images[0]).next();
							if (span.length > 0 && span[0].tagName == 'SPAN') {
								span.fadeIn(700, function() {
									span.addClass('active');
								});
							}
						} else {
							$(images[index + 1]).fadeIn(700).addClass('active');
							
							var span = $(images[index + 1]).next();
							if (span.length > 0 && span[0].tagName == 'SPAN') {
								span.fadeIn(700, function() {
									span.addClass('active');
								});
							}
						}
						return false;
					}

				});
			};
			var b = setInterval(a, 5000);
		});
	};
})(jQuery);



(function($) {
	$.fn.news = function() {
		return this.each(function() {
			var news = $(this);
			var wrapper = $('#news-wrapper');
			var items = news.find('article');
			var dot_wrapper = $('#controls-dots');
			
			wrapper.css('width', (items.length * 403) + ((items.length) * 3)).show();
			
			items.each(function(index) {
				var div = $('<div />');
				if (index == 0 || index == 1) div.addClass('active');
				dot_wrapper.append(div);
			});
			
			var dots = dot_wrapper.children();
			
			var a = function slide() {
				if ($(dots[0]).hasClass('active') || (!$(dots[dots.length - 1]).hasClass('active') && wrapper.hasClass('to-right'))) {
					wrapper.animate({
						left: parseInt(wrapper.css('left')) - 406
					}, 1500, 'easeInOutQuad');
					
					dots.each(function(index) {
						var item = $(this);
						if (item.hasClass('active')) {
							item.removeClass('active');
							$(dots[index + 2]).addClass('active');
							return false;
						}
					});
					
					if ($(dots[dots.length - 1]).hasClass('active')) wrapper.removeClass('to-right').addClass('to-left');


				} else if ((!$(dots[0]).hasClass('active') && wrapper.hasClass('to-left')) || $(dots[dots.length - 1]).hasClass('active')) {
					wrapper.animate({
						left: parseInt(wrapper.css('left')) + 406
					}, 1500, 'easeInOutQuad');
					
					dots.each(function(index) {
						var item = $(this);
						if (item.hasClass('active')) {
							$(dots[index + 1]).removeClass('active');
							$(dots[index - 1]).addClass('active');
							return false;
						}
					});
					
					if ($(dots[0]).hasClass('active')) wrapper.removeClass('to-left').addClass('to-right');
				}
			};
			var b = setInterval(a, 800000000);  // Added four zeros to stop the articles cycling automatically. 
			
			
			$('#controls-left').click(function() {
				clearInterval(b);
			
				if (!$(dots[0]).hasClass('active') && !wrapper.is(':animated')) {
					wrapper.animate({
						left: parseInt(wrapper.css('left')) + 406
					}, 1500, 'easeInOutQuad');
					
					dots.each(function(index) {
						var item = $(this);
						if (item.hasClass('active')) {
							$(dots[index + 1]).removeClass('active');
							$(dots[index - 1]).addClass('active');
							return false;
						}
					});
				}
			});
			
			$('#controls-right').click(function() {
				clearInterval(b);
				
				if (!$(dots[dots.length - 1]).hasClass('active') && !wrapper.is(':animated')) {
					wrapper.animate({
						left: parseInt(wrapper.css('left')) - 406
					}, 1000, 'easeInOutQuad');
					
					dots.each(function(index) {
						var item = $(this);
						if (item.hasClass('active')) {
							item.removeClass('active');
							$(dots[index + 2]).addClass('active');
							return false;
						}
					});
				}
			});
		});
	};
})(jQuery);


$(document).ready(function() {
	
	$('header nav').submenu();
	
	$('.layout-home #banner').banners();
	
	$('#news').news();
	
});
