//smartsite site root: equivalent to ~/
var siteroot = (typeof(fullsiteroot) == "function") && (typeof(sitehost) == "function") ? fullsiteroot().replace(sitehost(), "") : "/";
//language
var lang = location.href.indexOf("/en/") > - 1 ? "en" : "fr";
//fixes double slash in URLs
var normalizePath = function(string) {return string.replace(/(\/+)|\\+/g, "/");}
//escapes <, > & and " into corresponding html entities
var escapeHTML = function(string) {return string.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");}
//rounds a number to two decimals places. Returns a string
var toCurrency = function(number) {return number.toFixed(2);}
//IE background image cache script
//@cc_on document.execCommand("BackgroundImageCache", false, true);


//Modal mask
var Modal = {
	onOpen : function() {},
	onClose : function() {},
	onResize : function() {},
	open : function(options) {
		options = options || {};
		var title = options.title || "";
		var url = options.url || "";
		var params = options.params || {};
		var contentEl = options.contentEl || "";
		var onComplete = params.onComplete || function() {};
		Modal.onOpen = options.onOpen || function() {};
		Modal.onClose = options.onClose || function() {};
		Modal.onResize = options.onResize || function() {};
		Modal.onTransferContent = options.onTransferContent || function() {};
		Modal.modalStyle = options.modalStyle || "standardmodal";
		Modal.top = options.top || 100;
		Modal.width = options.width || 400;
		Modal.cleanUp();//clean up old modal
		params.onComplete = function() {
			if ($("modalloader")) $("modalloader").remove();//in case of error, don't show loading animation forever
			onComplete.apply(null, arguments);
		};
		
		if (url != "") {
			$("modalcontent").innerHTML = "<div id='modalloader' class='modalloader'></div>";//show loading animation
			if (Modal.updater) Modal.updater.transport.abort();//abort old ajax requests
			Modal.updater = new Ajax.Updater("modalcontent", url, params);
		}
		else if (contentEl != "") {//make sure moving contentEl into the modal doesn't duplicate id's
			Modal.contentOrigin = $(contentEl);
			Modal.transferContent(Modal.contentOrigin, "modalcontent");
		}
		$("modalcontainer").addClassName(Modal.modalStyle).removeClassName("hidden");
		$("modaltitle").innerHTML = title;
		Modal.resize();
		Modal.onOpen();//use params.onComplete if you want something to run after the AJAX finishes
	},
	close : function() {
		Modal.onClose();
		Modal.cleanUp();
		$("modalcontent").update("");
	},
	cleanUp : function() {
		$("modalcontainer").removeClassName(Modal.modalStyle).addClassName("hidden");
		if (Modal.contentOrigin) {//make sure restoring contentEl doesn't duplicate id's
			Modal.transferContent("modalcontent", Modal.contentOrigin);
			Modal.contentOrigin = null;
		}
	},
	resize : function() {
		var dimensions = document.viewport.getDimensions();
		var height = $("modalbody").offsetHeight;
		var left = (document.documentElement.offsetWidth / 2) - (Modal.width / 2);
		var top = (dimensions.height > height + Modal.top) ? Modal.top : (dimensions.height - height) / 2;
		var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
		var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
		left = (left > 0) ? left : 0;
		top = (top > 0) ? top : 0;
		$("modalbody").setStyle({
			width : Modal.width + "px",
			left : (scrollLeft + left) + "px",
			top : (scrollTop + top) + "px"
		});
		//only calculate scroll dimensions after modal body has been repositioned
		$("modalmask").hide();//hide mask temporarily to measure document size
		var scrollHeight = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight, dimensions.height);
		var scrollWidth = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth);
		$("modalmask").setStyle({
			height : scrollHeight + "px",
			width : scrollWidth + "px"
		});
		$("modalmask").show();
		Modal.onResize();
	},
	transferContent : function(source, dest) {
		$(dest).innerHTML = $(source).innerHTML;
		$(source).innerHTML = "";
		Modal.onTransferContent();
	}
}
Event.observe(window, "resize", Modal.resize);
Event.observe(window,"load",function() {
	$("modalcloser").observe("click", Modal.close);
});


var playVideo = function(vName) {	
	vName = lang + "_" + vName + ".flv";
	//alert(vName);
	//var vPlayer = siteroot + "local/flash/pharmaPlayerBuff_v5.swf";
	var vPlayer = siteroot + "local/flash/VideoPlayer_480x324_v5.swf";
	var flashDet;
	if (lang=="en")
		flashDet = 'This content requires Flash. To download Flash <a href="http://www.adobe.com/go/getflashplayer" target="_blank">click here.</a>';
	else
		flashDet = 'This content requires Flash. To download Flash <a href="http://www.adobe.com/go/getflashplayer" target="_blank">click here.</a>';

	
	Modal.open({contentEl:"", width:478})
	$("modalcontent").update('<div id="player">' + flashDet + '</div>');
	
 	var flashvars = {};	
	var attributes = {};	
	var params = {allowScriptAccess: "always", wmode:"transparent"};
 	flashvars.videoSource = siteroot + "local/videos/" + vName;
 	swfobject.embedSWF(vPlayer, "player", "458", "371", "9","", flashvars, params, attributes);
	pageTracker._trackPageview(ssnormalizedurl+"video/"+vName+"/");
	
}



