/**
 * Global Javascript For The Template
 * 
 * To be included on every page on site
 * 
 */
/**
 * 0.5 - Loading functionality starts
 * For perfomance issue.
 * 
 * @author Ravinder Singh Rawat
 * @since 0.5
 */

 var html = '<div class="innerFooter">\
						<ul id="meta">\
							<li><a href="https://www.cocacolabelgium.be/Contact--/?sLangcode=FR" target="_blank" title="Nous contacter">Nous contacter</a></li>\
							<li><a href="privacy.html" title="Politique de confidentialit&#233;">Politique de confidentialit&#233;</a></li>\
							<li><a href="terms.html" title="Conditions d\'utilisation">Conditions d\'utilisation</a></li><br />\
							<li class="first">&copy; 2012 The Coca-Cola Company. "Minute Maid" est une marque d&#233;pos&#233;e de The Coca-Cola Company.</li>\
						</ul>\
					</div>';
		$(document).ready(function(){
			$("footer").html(html);
		});
 
function removePreloader() {
 stopLoading();
}

$(window).load(function(){
	flashSupportLoading==true?noFlashLoadingObj():stopLoading();
});

function noFlashLoadingObj() {
	if(typeof $("#hero-module object")[0]=="undefined" && siteLoader==true) {
		stopLoading();
	}
}

function flashLoader(per) {
	var percentage = per*100/2;
	var loadingContainer = $("#loading_div span.percentageAmount");
	var loadedPer = (parseInt(loadingContainer.html().replace("%", "")) + percentage);
	if(loadedPer<99) {
		loadedPer += "%";
		$("#loading_div span.loaderImg img").css("width", loadedPer);
		loadingContainer.html(loadedPer);
	}
}

function stopLoading() {
	
	if(siteLoader==true) {
		$(".loading_content span").eq(0).html("PR&#202;T");
		$("#loading_div span.loaderImg img").css("width", " 99%");
		$("#loading_div span.percentageAmount").html(" 99%");
	
		$("#loading_site").fadeOut(500, function(){});
		$("#loading_div").fadeOut(500, function(){
			//$("#loading_site").remove();
			//$(this).remove();
		});
	}
}

function addCurrentPageClass(){
	var pageName = window.location.pathname;
		pageName = pageName.substring(pageName.lastIndexOf('/') + 1);
		pageName = pageName.split('.')[0]+"Section";
		$('body').addClass(pageName);
}

function startLoading() {

	if(siteLoader==true) {
		var loadingContainer = $("#loading_div span.percentageAmount");
		loadingContainer.html("25%");
		$("#loading_div span.loaderImg img").css("width", "25%");
		var imgLen = $("img").length;
		
		var perImgePercentage = Math.round(75/imgLen);
		$("img").each(function(i){
			$(this).load(function(){
				try {
					var loadedPer = (parseInt(loadingContainer.html().replace("%", "")) + perImgePercentage);					
					//console.log(loadedPer);
					if(loadedPer<99) {
						loadedPer += "%";
						$("#loading_div span.loaderImg img").css("width", loadedPer);
						loadingContainer.html(loadedPer);
					}else{						
						stopLoading();
					}
				}
				catch(err){}
			});
		});
	}	
}

function flashLoad(){
		var loadingContainer = $("#loading_div span.percentageAmount");
		loadingContainer.html("15%");
		$("#loading_div span.loaderImg img").css("width", "25%");
		var imgLen = $("img").length;
		var perImgePercentage = Math.floor(35/imgLen);
		$("img").each(function(i){
			$(this).load(function(){
				try {
					var loadedPer = (parseInt(loadingContainer.html().replace("%", "")) + perImgePercentage);
					if(loadedPer<50) {
						loadedPer += "%";
						$("#loading_div span.loaderImg img").css("width", loadedPer);
						loadingContainer.html(loadedPer);
					}
				}
				catch(err){}
			});
		});
		MinuteMaid.modifiedFeatures.loadVideoPlayer();
}

function subMenuDropDownShadow() {
	$("nav ul.submenu").each(function(i){
		var this_height = $(this).height();
		var lastchildheight = $(this).find("ul li.sublast").height();
		$(this).find("li.right_border").css("height", this_height-lastchildheight+2+"px");
	});
}

$(document).ready(function(){	
	//addCurrentPageClass();
	subMenuDropDownShadow();
	addCurrentPageClass();
	
	if($(".videopage").length>0){
		flashLoad();
	}
	else {
		startLoading();
	}
});
 
/*
	Functions calling on page load
*/

$(function(){ 
	UWBGlobal();
	UWBeditlink();	
	//footerClass();
	navSelector();
});


/** find the value of glp from url to open or close the div of global landing page **/
function UWBGup( name )
{
	name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");  
	var regexS = "[\\?&]"+name+"=([^&#]*)";  
	var regex = new RegExp( regexS );  
	var results = regex.exec( window.location.href ); 
	if( results == null )   return "";  
	else    return results[1];
}


/**
 * Kick starts global methods.
 * 
 * @author Since 0.5 Release (Client)
 * @since 0.1
 */
UWBGlobal = function () {

	UWBGlobal.RegionSelector();
	$('#regionPulldown').prependTo('body');
	var glp = UWBGup( 'glp' );
	if(glp == 1)
	$('#handlePulldown').click();
};

/**
 * All events and code for the Pull Down Region Selector
 * 
 * @author Ravinder Singh Rawatn
 * @since 0.1
 */
UWBGlobal.RegionSelector = function () {

	var ANIMATION_SPEED = 150,
		PULLDOWN_HEIGHT = 739,
		iAnchorHeight	= $('a:first', '#regionIndex').outerWidth(),
		oRegionMarker	= '';
	
	// Bind the pulldown trigger
	$('#handlePulldown').click(function () {
		UWBOnRegionPulldownClick();
		return false;
		
	});
	
	/**
	 * Brings the region selector into view by adjusting the
	 * height (defaulted in CSS to 0px);
	 * 
 	 * @author Since 0.5 Release (Client)
 	 * @since 0.1
	 */
	 function UWBOnRegionPulldownClick () {		
		var pulldown = $('#regionPulldown');
		//$('#toolbar li:eq(0)').addClass('regionselected');
		
		if( parseFloat( pulldown.css('height') ) > 0 ){
			pulldown.animate({
				height: '0'
			});
			$('#toolbar li.region a').html('Pays<span>(BELGIUM)</span>');
			$('#toolbar li.region a').css("color", "#546700");
		} else {
			pulldown.animate({
				height: PULLDOWN_HEIGHT
			});
			$('#toolbar li.region a').html('X  FERMEZ');
			$('#toolbar li.region a').css("color", "#ffffff");
		}
	}
	
	function UWBReplaceTranslatedText() {		
		$("div#regionSelector h2").text(UWBselectYourRegionTranslatedText);
		var index = 0;
		$("#regionIndex li a").each(function(index) {
			$(this).text(UWBregionNamesTranslatedArr[index]);
		});		
	}
	
	// Build the selected marker and append it to the DOM	
	oRegionMarker = $('<div id="regionMarker"></div>');

	// Calling Region Selector from glp.html @ Ravinder	
	
	if($("#regionPulldown").length>0){
		$.ajax({
			url: "/common/glp.html",
			cache: false,
			success: function(data){
				$("#regionPulldown").html(data);
				UWBReplaceTranslatedText();
				$('#regionSelector').append(oRegionMarker);
				// Click event for region selection
				$('a', '#regionIndex').click(function () {
					UWBOnRegionIndexClick($(this));
					return false;
					
				});
		  }
		});
	}
	
	function UWBNavSelector(oAnchor){
		var iIndex	= oAnchor.parents('li').index();
		$('#regionList').find('.selected').removeClass('selected');
		$('#regionIndex li:eq('+iIndex+')').addClass('selected');
	}
	 	
	/**
	 * When user clicks the region title in the region index
	 * the ordered list of the same index is to be shown
	 * 
 	 * @author Since 0.5 Release (Client)
 	 * @since 0.1
	 */
	function UWBOnRegionIndexClick (oAnchor) {
		
		var iIndex	= oAnchor.parents('li').index(),
			iTop	= oAnchor.position().top;
		
		// Remove all selected classes
		$('#regionList').find('.selected').removeClass('selected');
		$('#regionIndex').find('.selected').removeClass('selected');
		// Now add it back to the new selection
		$('li.region' + iIndex, '#regionList').addClass('selected');
		$('#regionIndex li:eq('+iIndex+')').addClass('selected');
		
		// Moving forward or backward
		// True  === Moving backward
		// False === Moving forward
		iDirection	= (iTop < oRegionMarker.position().top);
		
		// Move the marker to the selected region
		oRegionMarker.animate({
			top: iTop
		}, {
			duration: ANIMATION_SPEED,
			step: function (iPosition) {
				
				// Timing is everything to make the class switch to active
				if (iDirection && iPosition <= (iTop + (iAnchorHeight / 2))) {
					oAnchor.addClass('selected');
				}
				else if(!iDirection && iPosition >= (iTop - (iAnchorHeight / 2))) {
					oAnchor.addClass('selected');
				}
				
			}
		});
		
	}
	
	// Click event for country click
		


	/**
	 * When user clicks the country name within the region
	 * the pulldown closes and the lang in the toolbar is updated
	 * 
 	 * @author Since 0.5 Release (Client)
 	 * @since 0.1
	 */
	function onCountryClick (oAnchor) {
		$('li.region span', '#toolbar').text( '(' + oAnchor.text() + ')' );
		$('#regionPulldown').animate({
			height: '0'
		});		
	}
};

	function setCookie(l_name,l_value,r_name,r_value,c_name,c_value,exdays, path, domain, secure)
	{
	var exdate=new Date();
	exdate.setDate(exdate.getDate() + exdays);
	var l_value=escape(l_value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
	document.cookie=l_name + "=" + l_value + ";path=/";
	var r_value=escape(r_value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
	document.cookie=r_name + "=" + r_value + ";path=/";
	var c_value=escape(c_value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
	document.cookie=c_name + "=" + c_value + ";path=/"
			+ (domain ? "; domain=" + domain : "")
			+ (secure ? "; secure" : "");
	return true;
	}

	function getCookie(region)
	{
	var i,region_name,region_value,ARRcookies=document.cookie.split(";");
	for (i=0;i<ARRcookies.length;i++)
	  {
	  region_name=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
	  region_value=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
	  region_name=region_name.replace(/^\s+|\s+$/g,"");
	  if (region_name==region)
		{
		return unescape(region_value);
		}
	  }
	}

	function setRegion(region)
	{
		var listitems = $('#regionIndex > li');
	  $('#regionIndex > li').each(function() {
		if($(this).text() == region) {
			$(this).find("a").click();
		}
	  });  
	}
	
	// Prevent logging errors and redirect write method
	window.log = function(){
	  log.history = log.history || [];   
	  log.history.push(arguments);
	  if(this.console){
	//	console.log( Array.prototype.slice.call(arguments) );
	  }
	};
	(function(doc){
	  var write = doc.write;
	  doc.write = function(q){ 
		log('document.write(): ',arguments); 
		if (/docwriteregexwhitelist/.test(q)) write.apply(doc,arguments);  
	  };
	})(document);
	
	/**
	 * This logic is added to play mp3 file from downloads page
	 * for 0.5 Release
 	 * @author Ravinder Singh Rawat
 	 * @since 0.1
	 */
	
	var my_window;
		
		function playMp3(obj) {
			if(my_window) {
				my_window.close();
			}
			
			var html = '<embed src="' + obj.getAttribute("href") + '" type="audio/mpeg" />';
			//var html = '<embed type="application/x-shockwave-flash" flashvars="audioUrl=' + obj.getAttribute("href") + '" src="http://www.google.com/reader/ui/3523697345-audio-player.swf" width="400" height="27" quality="best"  wmode="opaque"></embed>';		
			my_window = window.open("", "mywindow1", "status=0,menubar=0,resizable=0,width=415,height=210");
			//my_window.document.write('<h1>Ravinder</h1>');
			my_window.document.write(html);
			
			
			return false;
		}
	function UWBeditlink(){
	var cssLink=document.createElement('link');
	cssLink.type="text/css";
	cssLink.rel="stylesheet";
//	cssLink.href="../../common/css/V1_UWB_Global_edit_link.css";
	document.body.appendChild(cssLink);

	var script=document.createElement('script');
	script.type="text/javascript";
//script.src="../../common/js/V1_UWB_Global_edit_link.js";
	document.body.appendChild(script);
	};
	
	//Adding Class in the footer in the first <li>
	/*
	
	function footerClass() {
		$('ul#meta li:first').addClass('footerRight');
	}
	*/
	
	function navSelector(){
		var productsPage = $('.onProductPage'), downloadsPage = $('#downloadsPage'), historyofbrandpage = $('.historyofbrandpage'), videoPage = $('.videopage'), productLandingPage = $('.productLandingPage'), breakfastpage = $('.onBiftfPage');





		if(productsPage.length != 0){
			$('nav ul li.main_nav_1').addClass('selected');
			$('nav ul li.main_nav_2').addClass('selectednext');
			
			$('.shadow').css('display', 'inline-block');
		} else if(downloadsPage.length != 0){
			$('nav ul li.main_nav_2').addClass('selected');
			$('nav ul li.main_nav_3').addClass('selectednext');
		} else if(videoPage.length != 0){
			$('nav ul li.main_nav_3').addClass('selected');
			$('nav ul li.main_nav_4').addClass('selectednext');
		} else if(historyofbrandpage.length != 0){
			$('nav ul li.main_nav_4').addClass('selected');
			$('nav ul li.main_nav_5').addClass('selectednext');
		}
		else if(breakfastpage.length != 0){
			$('nav ul li.main_nav_5').addClass('selected');
		}
		if(productLandingPage.length != 0){			
			$('.feature_module:eq(0)').find('.callout').addClass('bottomBorder');
		}
		
	/*	
		$('nav ul li').hover(function () {
		$(this).('ul.submenu').parent().addClass('selected');
		
		  });
		*/
		
		
	}
	
	function showCarouselShadowToggle(){
		var shadowElement = $('.shadow');		
		if(shadowElement.is(':visible')){
			$('.shadow').css('display', 'none');			
		} else{
			$('.shadow').css('display', 'inline-block');
		}
	}


(function( window, $, undefined ) {
    //Main/Root object for MinuteMaid
    var MinuteMaid = (function (MinuteMaid) {
        return MinuteMaid;

    }(MinuteMaid || {}));
	


    //expose the MinuteMaid object to global scope.
    window.MinuteMaid = MinuteMaid;

}(window, jQuery));
	
(function( window, MinuteMaid, $, undefined ) {
  
	/**
    * modifiedFeatures module
    */
 
	MinuteMaid.modifiedFeatures = (function(){
	  function _modifiedFeatures(){
		this.config={
			fbLink:'http://www.facebook.com/MinuteMaid',
			twitterLink:'http://www.twitter.com/MinuteMaid'
		},
		
		this.customCssStyle=function(){
			for(var i=0; i<3; i++){
					$('.innerPromoContainer').eq(i).parent().addClass('promoContainer_'+i);
				}
			$('.innerPromoContainer').parent().parent().css('padding','12px 31px 0');
			$('.facebook_2').parent().addClass('promoContainer_0').click(function(){window.open(MinuteMaid.modifiedFeatures.config.fbLink,'_blank');});
			$('.twitter_2').parent().addClass('wapperTwitter').click(function(){window.open(MinuteMaid.modifiedFeatures.config.twitterLink,'_blank');});
		},
		
		this.loadVideoPlayer = function(){
				var params = {
					quality: "high",
					scale: "noscale",
					wmode: "transparent",
					allowscriptaccess: "always"	
				};
				var flashvars = {
					baseConfigURL: "../common/swf/assets/xml/data.xml"
				};
				var attributes = {
					id: "flashcontent",
					name: "flashcontent"
				};
				swfobject.embedSWF("../../common/swf/videoGallery.swf", "flashcontent", "1070", "750", "10.0.0", "../../common/swf/expressInstall.swf", flashvars, params, attributes);
		},
		
		this.getPageName = function(){
			var rex = new RegExp("\\/[^\\/]+\\.\\w+($|\\?)");
			var match = rex.exec(location.pathname);
			return rex.exec(location.pathname)==null?"index.html":match[0].substring(1);
		},
		
		this.init=function(){
			MinuteMaid.modifiedFeatures.customCssStyle();
			//MinuteMaid.modifiedFeatures.loadXml();
		}	
		
		
	  }
	  return new _modifiedFeatures();
    }());
    
	
}(window, MinuteMaid, jQuery));


$(function(){ 
		MinuteMaid.modifiedFeatures.init();
		//alert(MinuteMaid.modifiedFeatures.config.fbLink);

});

