
/**
 * This is for migrating from old player to new player
 * */
var mogulusPlayerNew =
	{
		embedWidget: function (parameters) {
			var iconColorOver, iconColor, baseURL, clip, mute, autoPlay;
			baseURL = "http://cdn.livestream.com/embed/";	

			clip = (parameters.clip ? "&clip="+parameters.clip:"");

			mute = (parameters.mute != undefined ? "&mute="+parameters.mute:"");
			autoPlay = (parameters.autoPlay != undefined ? "&autoPlay="+parameters.autoPlay:"");
			if (parameters.color!=undefined){
				if (!this.checkForBrightness(parameters.color)) {
						if (parameters.iconColorOver == undefined) {                
							iconColorOver = "0xE7E7E7";
						}
						if (parameters.iconColor == undefined) {
							iconColor = "0xCCCCCC";
						}
				}
			}
			iconColorOver = (iconColorOver == undefined ? "" :"&iconColorOver="+iconColorOver);
			iconColor = (iconColor == undefined ? "" :"&iconColor="+iconColor);
			document.write('<iframe src="' + baseURL+parameters.channel+"?layout="+parameters.layout+'&color='+parameters.color+clip+mute+autoPlay+iconColorOver+iconColor+'" height="'+parameters.height+'" width="'+parameters.width+'" style="border:0;outline:0" frameborder=0 scrolling=no></iframe>');
	},
	setParams:function (parameters){
			if(parameters.layout == 'playerEmbedDefault') {
				parameters.layout = 4;
			}else if(parameters.layout == 'playerEmbedWide' || parameters.layout == 'playerEmbedWideExtNav') {
				parameters.layout = 3;
			}else if(parameters.layout == 'playerEmbedTall') {
				if (parameters.chatEnabled == 'true') {
					parameters.layout = 2;
				}else if (parameters.onDemandEnabled == 'true') {
					parameters.layout=1;
				}else {
					parameters.layout = 4;
				}
			}else if(parameters.layout == 'playerEmbedTallExtNav') {
				if (parameters.chatEnabled == 'true') {
					parameters.layout=0;
				}else if (parameters.onDemandEnabled == 'true') {
					parameters.layout=1;
				}else {
					parameters.layout = 4;
				}
			}else{
				parameters.layout = 4;				
			}
			//for the below layout the chrome color is always passed as white.
			if ((parameters.layout == 0 || parameters.layout == 1 || parameters.layout == 2 || parameters.layout == 3)){
				parameters.color="0xffffff";
			}
			parameters.width=(parameters.width == undefined ? 400:parameters.width);
			parameters.height=(parameters.height == undefined ? 400:parameters.height);
			parameters.layout=this.checkPlayerLayout(parameters.width,parameters.height,parameters.layout);
	},
	checkForBrightness: function (color) {
		var c,col,r,g,b,brightness;
		c=color.replace("0x","#");
		col = c.toString(16);
		if(col.indexOf("#") == 0) {
			col = col.substr(1);
		}
		r = parseInt(col.substr(0, 2),16);
		g = parseInt(col.substr(2, 2),16);
		b = parseInt(col.substr(4, 2),16);
		brightness = Math.sqrt(r * r * 0.241 + g * g * 0.691 + b * b * 0.068);
	   return (brightness > 130);
	},
	checkPlayerLayout: function (width,height,layout) {
		if (layout == 3 ) {
			return ((width < 544 || height < 175)? 4:layout);			
		} else if (layout == 2 ) {
			return ((width < 340 || height < 315) ? 4:layout);
		} else if (layout == 1 ) {
			return ((width < 340 || height < 325) ? 4:layout);
		} else if (layout == 0 ) {
			return ((width < 544 || height < 325) ? 4:layout);
		} else 
			return layout;
	}
};
(function(){
        var scriptTags = document.getElementsByTagName("script");
        var source, params, pair;
        var playerTags = [];
		var parameters={};
        var index = 0;
		for(var i = 0; i < scriptTags.length; i++)
        {
                source = scriptTags[i].src.split("?");
                if(source[0].match(/(^http:\/\/mogulus\.com\/scripts\/playerv2\.js)|(^http:\/\/\w*\.mogulus\.com\/scripts\/playerv2\.js)|(^http:\/\/\w*\.livestream\.com\/scripts\/playerv2\.js)|(^http:\/\/livestream\.com\/scripts\/playerv2\.js)|(^\/scripts\/playerv2\.js)/i))
                {
                        playerTags[index++] = source[1];
                }
        }
        if(playerTags.length > 0) {
			source = playerTags[playerTags.length - 1];
			if(source) {
					params = source.split("&");
				for(var j = 0; j < params.length; j++) {
					pair = params[j].split("=");
					if(pair.length != 2)
					{
							continue;
					}

					if(pair[0] == "channel"){
						parameters.channel = pair[1];
					}else if(pair[0] == "width"){
						parameters.width =pair[1];
					}else if(pair[0] == "height"){
							parameters.height =pair[1];
					}else if(pair[0] == "initialIsOn"){
						parameters.autoPlay= pair[1];
					}else if(pair[0] == "initialIsMute"){
						parameters.mute= pair[1];
					}else if(pair[0] == "chromeColor"){
						parameters.color= pair[1];
					}else if(pair[0] == "contentId"){
						parameters.clip= (pair[1]!="null"?pair[1]:"");									
					}else if(pair[0] == "layout"){
						parameters.layout=pair[1];
					}else if(pair[0] == "chatEnabled"){
						parameters.chatEnabled= pair[1];									
					}else if(pair[0] == "onDemandEnabled"){
						parameters.onDemandEnabled= pair[1];	
					}else {
						continue;
					}		
				}                       
			}		



			mogulusPlayerNew.setParams(parameters);
			mogulusPlayerNew.embedWidget(parameters);
        }
})();
