/* CHECKS AND IF MISSING CREATES applemarketing NAMESPACE */ 
if(!applemarketing) {
	// Creates local $ shortcut for jQuery so will run in noConflict mode
	var applemarketing={ jQueryNoConflict: $ = jQuery };
}

$(document).ready(function(){
	$(".subNav ul li ul").hide();
	
	// Handles top level show and hide of sub nav
	$(".cat-item-14 a").toggle(
		function() {
			$("ul", $(this).parent()).slideDown();
		}, function() {
			$("ul", $(this).parent()).slideUp();
		}
	);
	
	// Re-sets click action for sub navigation
	$(".cat-item-14 ul li a").click(function(){
		  document.location = $(this).attr('href');
	});
	
	// Handles top level show and hide of sub nav
	$(".cat-item-8 a").toggle(
		function() {
			$("ul", $(this).parent()).slideDown();
		}, function() {
			$("ul", $(this).parent()).slideUp();
		}
	);
	
	// Re-sets click action for sub navigation
	$(".cat-item-8 ul li a").click(function(){
		  document.location = $(this).attr('href');
	});
});

applemarketing.social = function(options) {
	var settings = {
		socialContent: ''
	}	
	
	// Private methods
	var methods = {
		init: function() {
			publicMethods.buildTwitter();
			publicMethods.buildGoogle();
			//publicMethods.buildFacebook();
			
			// Outputs the buttons to the page
			methods.writeToPage();
		},
		
		createJSinDOM: function(jsSource) {
			// Creates the JavaScript using the DOM method
			var createJS = document.createElement('script');
			createJS.type = 'text/javascript';
			createJS.async = true;
			createJS.src = jsSource;
			
			var script = document.getElementsByTagName('script')[0];
			script.parentNode.insertBefore(createJS, script);			
		},
		
		writeToPage: function() {
			// Builds the content depended on what Social options were chose
			contentToDisplay = '<div class="postActions contain">';
			contentToDisplay += settings.socialContent;
			contentToDisplay += '</div>';
			
			// Actuall outputs to the page
			$(contentToDisplay).insertBefore('.postActions');
		}
	};
	
	// Public methods
	var publicMethods = {
		buildTwitter: function() {
			// Adds Twitter to the socialContent object
			settings.socialContent += '<a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal">Tweet</a>';
			// Includes the Twitter JS
			methods.createJSinDOM('http://platform.twitter.com/widgets.js');
		},
		
		buildGoogle: function() {
			settings.socialContent += '<g:plusone size="medium"></g:plusone>';
			// Includes the Google JS
			methods.createJSinDOM('https://apis.google.com/js/plusone.js');
		},
		
		buildFacebook: function() {
			settings.socialContent += '<div class="fb-like" data-send="true" data-layout="button_count" data-width="450" data-show-faces="true"></div>';			
			// Includes the Facebook JS
			methods.createJSinDOM('https://connect.facebook.net/en_GB/all.js#xfbml=1');
		}
	};
	
	
	// Initialises an instance of the social object
	methods.init();
	
	// Returns public methods
	return publicMethods;
}

applemarketing.social();
