$(document).bind('ready', function(){
	//$('.slider-box ul.view').homepageBusinessPages();

	externalLinks();

	$('#tool-bar li.main').toolBar();
	$('#sub-nav li.main').mainSubNav();

	$('.nav li')
		.bind({
			mouseenter: function(){
				if(!$('a:first', $(this)).is('.selected')) $(this).closest('li').prev('li').toggleClass('previous');
			},
			mouseleave: function(){
				if(!$('a:first', $(this)).is('.selected')) $(this).closest('li').prev('li').toggleClass('previous');
			}
		})
		.find('a.selected').closest('li').prev().addClass('previous');
	$('ul.tabs').tabbedContent();
	$('ul.droplist').slideContent();

	$('form.calculator').each(function(){
		var o = $(this);
		
		var v = {
			unit_cost: $('input#f_unit_cost', o),
			annual_target_turnover: $('input#f_annual_target_turnover', o),
			arrangements_to_meetings: $('input#f_arrangements_to_meetings', o),
			meetings_to_business_won: $('input#f_meetings_to_business_won', o),
			total_sales_needed_per_year: $('input#f_total_sales_needed_per_year', o),
			total_sales_needed_per_month: $('input#f_total_sales_needed_per_month', o),
			total_meetings_needed_per_year: $('input#f_total_meetings_needed_per_year', o),
			total_meetings_needed_per_week: $('input#f_total_meetings_needed_per_week', o),
			total_sales_calls_needed_per_year: $('input#f_total_sales_calls_needed_per_year', o),
			total_sales_calls_needed_per_week: $('input#f_total_sales_calls_needed_per_week', o),
			total_sales_calls_needed_per_day: $('input#f_total_sales_calls_needed_per_day', o)
		};
		
		$('input', o).bind('change', function(){
			o.run_calculations();
		});
		
		o.run_calculations = function(){
			// Total Sales Needed per Year
			v.total_sales_needed_per_year.val( Math.round( v.annual_target_turnover.val() / v.unit_cost.val() ) );

			// Total Sales Needed per Month
			v.total_sales_needed_per_month.val( Math.round( v.total_sales_needed_per_year.val() / 12 ) );


			// Total Number of Face to Face Meetings per Year
			v.total_meetings_needed_per_year.val( Math.round( ( v.total_sales_needed_per_year.val() * 100 ) / v.meetings_to_business_won.val() ) );

			// Total Number of Face to Face Meetings per Week
			v.total_meetings_needed_per_week.val( Math.round( v.total_meetings_needed_per_year.val() / 52 ) );


			// Total Number of Telephone Calls per Year
			v.total_sales_calls_needed_per_year.val( Math.round( ( v.total_meetings_needed_per_year.val() * 100 ) / v.total_sales_needed_per_year.val() ) );

			// Total Number of Telephone Calls per Week
			v.total_sales_calls_needed_per_week.val( Math.round( v.total_sales_calls_needed_per_year.val() / 52 ) );

			// Total Number of Telephone Calls per Day
			v.total_sales_calls_needed_per_day.val( Math.round( v.total_sales_calls_needed_per_week.val() / 5 ) );
		};
		
		o.run_calculations();
		
	});

});

$.fn.slideContent = function(){
	$(this).each(function(){
		var o = $(this);
		
		$('a.expand', o).bind('click', function(){
			if(o.is('.more')){
				o.removeClass('more').addClass('less');
			}else{
				o.removeClass('less').addClass('more');
			}
			
			return false;
		});
		
	});
};

$.fn.homepageBusinessPages = function(){
	$(this).each(function(){
		
		var o = $(this).parent();

		var v = {
			header: $(this),
			header_next: $('li.next a', $(this)),
			header_prev: $('li.prev a', $(this)),
			main_links: $('a.main', o),
			sub_sections: $('.sub-sections-container', o)
		};

		v.header_prev.bind('click', function(){
			var selected_li = $('.selected', v.header).removeClass('selected').parent();
			var new_current = selected_li.prev();
			$('a', new_current).addClass('selected').trigger('click');
			return false;
		});
		
		v.header_next.bind('click', function(){
			var selected_li = $('.selected', v.header).removeClass('selected').parent();
			var new_current = selected_li.next();
			$('a', new_current).addClass('selected').trigger('click');
			return false;
		});
		
		v.header_check_links = function(){
			var selected_li = $('.selected', v.header).parent();

			if(!selected_li.next().is('li.business-page')){
				v.header_next.css('display', 'none');
			}else{
				v.header_next.css('display', 'block');
			}

			if(!selected_li.prev().is('li.business-page')){
				v.header_prev.css('display', 'none');
			}else{
				v.header_prev.css('display', 'block');
			}

			return false;
		};

		v.main_links.bind('click', function(){
			var target = $(this);
			v.main_links.removeClass('selected');
			v.sub_sections.css('display', 'none');
			$('.'+target.attr('id'), o).css('display', 'block');
			target.addClass('selected');
			v.header_check_links();
			return false;
		});
		
		v.header_check_links();

		$('div.sub-sections-container', o).each(function(){
			
			var container = $(this);
			var prev = $('a.prev', container);
			var next = $('a.next', container);
			
			prev.bind('click', function(){
				var current_first = $('.active:first', container);
				var current_last = $('.active:last', container);
				current_last.removeClass('active');
				current_first.prev().addClass('active');
				container.container_check_links();
				return false;
			});
			
			next.bind('click', function(){
				var current_first = $('.active:first', container);
				var current_last = $('.active:last', container);
				current_first.removeClass('active');
				current_last.next().addClass('active');
				container.container_check_links();
				return false;
			});
			
			container.container_check_links = function(){
				var current_first = $('.active:first', container);
				var current_last = $('.active:last', container);
	
				if(!current_last.next().is('li.business-subpage')){
					next.css('display', 'none');
				}else{
					next.css('display', 'block');
				}

				if(!current_first.prev().is('li.business-subpage')){
					prev.css('display', 'none');
				}else{
					prev.css('display', 'block');
				}

				return false;
			};
			
			container.container_check_links();

		});

	});
};

$.fn.toolBar = function(){
	$(this).each(function(){

		var o = $(this);

		o.bind({
			mouseenter: function(){
				o.addClass('selected');
			},
			mouseleave: function(){
				o.removeClass('selected');
			}
		});
		
	});
};
$.fn.mainSubNav = function(){
	$(this).each(function(){
		var o = $(this);
		var v = {
			main_link: $('a:first', o),
			subpages: $('ul', o)
		};
		
		$('.paging a.prev', v.subpages).css('display', 'none');

		if($('li:not(.paging)', v.subpages).length <= 3){
			$('.paging a.next', v.subpages).css('display', 'none');
		}

		$('.paging a', v.subpages).bind('click', function(){
			var target = $(this);
			if(target.is('.prev')){
				var start = $('li.active:first', v.subpages).removeClass('first').prev().addClass('first').addClass('active');
				if(!start.is('li.paging')){
					var end = $('li.active:last', v.subpages).removeClass('active').prev();
					start.addClass('active');
					if(!start.prev().is('li:not(.paging)')){
						$('.paging a.prev', v.subpages).css('display', 'none');
					}
					$('.paging a.next', v.subpages).css('display', 'block');
				}
			}else if(target.is('.next')){
				var end = $('li.active:last', v.subpages).next();
				if(!end.is('li.paging')){
					var start = $('li.active:first', v.subpages).removeClass('active').removeClass('first').next().addClass('first');
					end.addClass('active');
					if(!end.next().is('li')){
						$('.paging a.next', v.subpages).css('display', 'none');
					}
					$('.paging a.prev', v.subpages).css('display', 'block');
				}
			}
			return false;
		});

		o.bind({
			mouseenter: function(){
				v.main_link.addClass('selected');
				v.subpages.css('display', 'block');
			},
			mouseleave: function(){
				v.main_link.removeClass('selected');
				v.subpages.css('display', 'none');
			}
		});

	});
}
$.fn.tabbedContent = function(){
	$(this).each(function(){
		var o = $(this).parent();
		var v = {
			tabs: $(this)
		};

		$('a', v.tabs).bind('click', function(){
			var target = $(this);
			if(target.is('.selected') === false){
				$('a', v.tabs).removeClass('selected');
				target.addClass('selected');
				var li = target.parent();
				$('.container:visible', o).fadeOut(200, function(){
					$('.'+li.attr('class'), o).fadeIn(200);
				});
			}
			return false;
		});

	});
};
function externalLinks(){
	var _a = document.getElementsByTagName('a');
	var _c = window.location.href.split('/')[2];
	for(var i=0;i<_a.length;i++){
		// Links
		if(_a[i].href.indexOf(_c)==-1&&_a[i].href.indexOf('http')==0&&_a[i].href.length>0){
			_a[i].setAttribute('target','_blank');		// target
			_a[i].className +=' ext';					// class to add icon
			if(_a[i].title.length>0){
				//_a[i].title+=" ";
			}else{
				_a[i].title=_a[i].href;
			}
			_a[i].title+=' (Opens in a new window)';	// title
		}
		// PDF files
		if(_a[i].href.indexOf('.pdf')>0&& _a[i].href.length>0){
			_a[i].setAttribute('target','_blank');		// target
			_a[i].className +=' pdf';					// class to add icon
			//if(_a[i].title.length>0) _a[i].title+=' ';
			_a[i].title+=' (PDF Document)';				// title
		}
		if(_a[i].href=='#') _a[i].href='javascript:void(0);';
	}
}