﻿var behaviourObjects = new Array();

var index = 0;
var containerId;
var centerPlayDivId_prefix = "_center_play_btn_";
var stoppedStatus = "stopped";
var playingStatus = "playing";
var pauseStatus = "paused";
var imagePath = "Flash/images/";
var swfControlPath = "Flash/swf/";

var flvDivId="";
var controlsDivId="";
var isIdleLoop = false;
var isFrontEndLoop = false;
var isBackEndLoop = false;
var isAutoPlay = false;
var isPlayEnd = false;
var playerWidth = "";
var playerHeight ="";
//Floating 
var float_player__id = '_floater_FL';
var flvOuterDivId = "";
var playerRendered = false;
var minFlag = false;
var blur = false;
var currVolume = 20;
var muteFlag = false;
//RoundRobin
var maxVisit=0;

var play_btn_html = "<img id='_floater__playbtn' onmouseover='javascript:this.src=\"" + imagePath + "play_hover.png\";' onmouseout='javascript:this.src=\"" + imagePath + "play.png\";' src='" + imagePath + "play.png' onclick='javascript:play(\"" + float_player__id + "\")' style='cursor: pointer;'/>";
var pause_btn_html = "<img id='_floater__pausebtn' onmouseover='javascript:this.src=\"" + imagePath + "pause_hover.png\";' onmouseout='javascript:this.src=\"" + imagePath + "pause.png\";' src='" + imagePath + "pause.png' onclick='javascript:pause(\"" + float_player__id + "\")' style='cursor: pointer;'/>";
var maxbtn_html = "<img src='" + imagePath + "icon_expand.gif' onmouseover='javascript:this.src=\"" + imagePath + "icon_expand_HOVER.gif\";' onmouseout='javascript:this.src=\"" + imagePath + "icon_expand.gif\";' style='cursor: pointer;' onclick='javascript:maximize();'/>";
var minbtn_html = "<img src='" + imagePath + "icon_compress.gif' onmouseover='javascript:this.src=\"" + imagePath + "icon_compress_HOVER.gif\";' onmouseout='javascript:this.src=\"" + imagePath + "icon_compress.gif\";' style='cursor: pointer;' onclick='javascript:minimize();'/>";
var muteoffbtn_html = "<img src='" + imagePath + "mute_off.png' onmouseover='javascript:this.src=\"" + imagePath + "mute_on.png\";' onmouseout='javascript:this.src=\"" + imagePath + "mute_off.png\";' onclick='javascript:mute(\"" + float_player__id + "\");' style='cursor: pointer;'/>";
var muteonbtn_html = "<img src='" + imagePath + "mute_on.png' onclick='javascript:mute(\"" + float_player__id + "\");' style='cursor: pointer;'/>";

function render_iplayer(posX, posY, visitCount, playerURL, behaviourXML, mediaXML, brandXML)
{
    if(playerRendered)
    {	        
	    document.getElementById('_floater_frame_div').innerHTML = "";
    }
    else
    {
	    var iframeHTML = "<div id='_floater_frame_div' style='position:absolute;z-index:90;left:" + posX + "px;top:" + posY + "px;'>";
	    iframeHTML = iframeHTML + "</div>";
	    document.body.innerHTML = document.body.innerHTML + iframeHTML;	
    }	   
    var iframeURL = playerURL + "?xpos=" + posX + "&ypos=" + posY + "&visitCount=" + visitCount + "&behavior=" + behaviourXML + "&presentation=" + mediaXML + "&brand=" + brandXML;		    
	    
    var frameHTML = "<iframe id='_floater_frame' name='_floater_frame' frameborder='0' width='250' height='231' allowtransparency='true' style='display: inline;z-index:0;position: absolute;top:" + document.body.scrollTop + "'></iframe>";
    frameHTML = frameHTML + "<div id='_floater_dragDiv' style='cursor:move;width:200px;height:22px;z-index:100;position:absolute;top:0px;left:0px;'></div>";
    document.getElementById('_floater_frame_div').innerHTML = frameHTML;
    	    	    
     if(navigator.appName.indexOf("Microsoft") != -1) 
     {
        if(document.getElementById('_floater_frame') != null)
       {document.getElementById('_floater_frame').src = iframeURL;}
     } 
     else
     {
        window.frames["_floater_frame"].location.href = iframeURL;
     }
    var theHandle = document.getElementById("_floater_dragDiv");
    var theRoot = document.getElementById("_floater_frame_div");
    Drag.init(theHandle, theRoot);
    var playerDiv = float_player__id + "flv_div__outer";
    playerRendered = true;
}

function pausePlayer()
{
	if(document.getElementById('_floater_frame')!=null)
	document.getElementById('_floater_frame').src = document.getElementById('_floater_frame').src + "#Pause"
}

function render_player(playerType, id, container, width, height, visitCount, behaviourXML, mediaXML, brandXML)
{
    if(playerType.toString().toUpperCase() == 'FLOATING')
	{
		var posX = width;
		var posY = height;
		containerId = container; 
		
		playerWidth = "215";
		playerHeight = "155"; 
		if(document.getElementById(flvOuterDivId) != null)
		{
			document.getElementById(flvOuterDivId).style.display = 'block';
			play(float_player__id);
			return;
		}
		id=float_player__id;		
		var behaviourObj = getScriptXML(id, behaviourXML, mediaXML, visitCount);		
		behaviourObjects[index] = behaviourObj;
		index = index + 1;
	    getbrandXML(behaviourObj.id, brandXML);
		if(behaviourObj == null || mediaXML == null || trim(mediaXML) == "")
		{
			return;
		}		
		flvDivId = "flv_div_" + id;
		flvOuterDivId = flvDivId + "_outer";
		controlsDivId = "controls_" + id;
		centerPlayDivId = centerPlayDivId_prefix + id;
		var outerDivStart = "<div id='" + flvOuterDivId + "' style='border=1px;width:250px;position:absolute;left:0px; top:0px;'>";
		var outerDivEnd = "</div>";

		innerDivs = "<table id='_floater__container_table' style='width:250px;' cellpadding='0px' cellspacing='0px' ";
		
		innerDivs = innerDivs + "border='0'><tr><td width='250px'>";
		innerDivs = innerDivs + "<div id='_floater__topDiv' ";
		innerDivs = innerDivs + "style='cursor:move;height=22px;width=250px;";
		innerDivs = innerDivs + "background-image:url(" + imagePath + "top_bg_251x22.png);background-repeat:no-repeat;'>";
		innerDivs = innerDivs + "<table height=22px' width='250px' border='0'><tr><td id='_floater__minbtntd' ";
		innerDivs = innerDivs + "valign='bottom' align='right' width='216px'><img src='" + imagePath + "icon_compress.gif' ";
		innerDivs = innerDivs + "onmouseover='javascript:this.src=\"" + imagePath + "icon_compress_HOVER.gif\";' onmouseout='javascript:this.src=\"" + imagePath + "icon_compress.gif\";' style='cursor: pointer;' onclick='javascript:minimize();'/></td><td valign='bottom' >";
		innerDivs = innerDivs + "<img src='" + imagePath + "icon_close.gif' onmouseover='javascript:this.src=\"" + imagePath + "icon_close_HOVER.gif\";' onmouseout='javascript:this.src=\"" + imagePath + "icon_close.gif\";' onclick='javascript:closePlayer();' style='cursor: pointer;'/></td>";
		innerDivs = innerDivs + "</tr></table></div>";
		innerDivs = innerDivs + "<div id='" + flvDivId + "' align='center' height='155px' ";
		innerDivs = innerDivs + "style='height:155px;width:250px;background-image:url(" + imagePath + "mid_bg_251x155.png);background-repeat:no-repeat;'>";		
		innerDivs = innerDivs + "</div>";
		innerDivs = innerDivs + "<div id='_floater__bottomDiv' ";
		innerDivs = innerDivs + "style='border:0px solid;height:54px;width=250px;align:center;valign:top;background-image:url(" + imagePath + "bottom_bg_251x54.png);background-repeat:no-repeat;'>";
		innerDivs = innerDivs + "<table border='0' valign='top' width='250px' height='45px' cellpadding='0px' cellspacing='0px'>";
		if(behaviourObj.isBrand.toUpperCase() == "TRUE" && behaviourObj.brandLogo.toUpperCase() != "NONE" && behaviourObj.brandURL.toUpperCase() != "NONE")
		{
		    innerDivs = innerDivs + "<tr><td align='center' valign='middle' width='85px' style='padding-left:0px;'><img src='" + behaviourObj.brandLogo+ "' style='cursor: pointer;'";
		    innerDivs = innerDivs + "onclick='window.open(\""+ behaviourObj.brandURL +"\",\"\",\"scrollbars=yes, width=800,height=700\");'/></td>";
		}
		else
		{
		    innerDivs = innerDivs + "<tr><td align='center' valign='middle' width='85px' style='padding-left:0px;'></td>";		    
		}		
		innerDivs = innerDivs + "<td width='32px' valign='middle'><div id='floater_btn__div'>" + play_btn_html + " </div></td>";
		innerDivs = innerDivs + "<td valign='middle' width='32px'><img id='_floater__replaybtn' ";
		innerDivs = innerDivs + "onmouseover='javascript:this.src=\"" + imagePath + "replay_hover.png\";' ";
		innerDivs = innerDivs + "onmouseout='javascript:this.src=\"" + imagePath + "replay.png\";' src='" + imagePath + "replay.png' ";
		innerDivs = innerDivs + "onclick='javascript:replay(\"" + float_player__id + "\")' style='cursor: pointer;'/></td>";
		        
        innerDivs = innerDivs + "<td id='_floater__voltd' width='45px' valign='middle' align='right'><input type='hidden' ID='_floater__hdnvolvalue' name='_floater__hdnvolvalue'/></td>";
		innerDivs = innerDivs + "<td width='5px'></td><td id='_floater__mute_container' width='35px' valign='middle' align='left'>";
		innerDivs = innerDivs + "<img id='_floater__mutebtn' src='" + imagePath + "mute_off.png' onmouseover='javascript:this.src=\"" + imagePath + "mute_on.png\";' onmouseout='javascript:this.src=\"" + imagePath + "mute_off.png\";' ";
		innerDivs = innerDivs + "onclick='javascript:mute(\"" + float_player__id + "\")' style='cursor: pointer;'/></td>";
		
		innerDivs = innerDivs + "</tr></table></div></td></tr></table>";
		
		if(!behaviourObj.isAutoPlay)
		{
			innerDivs = innerDivs + "<div id='" + centerPlayDivId + "' style='height:38px;width:38px;position:relative; left:" + (width/2 - 25) + "px; bottom:" + (height/2 + 20 ) + "px;'><a href='javascript:playAndHide(\"" + centerPlayDivId + "\",\"" + id + "\");' STYLE='text-decoration:none;'><img style='border: none;' src='" + imagePath + "play_button.png'/></a></div>";
		}
		var mainFlDiv = outerDivStart + innerDivs + outerDivEnd;
		document.body.innerHTML = mainFlDiv;	
		
		var A_TPL = {'b_vertical' : true,'b_watch': true,'n_controlWidth': 7,'n_controlHeight': 22,'n_sliderWidth': 7,'n_sliderHeight': 7,'n_pathLeft' : 0,'n_pathTop' : 1,'n_pathLength' : 18,'s_imgControl': imagePath+'slider_bg.png','s_imgSlider': imagePath+'slider_ball.png','n_zIndex': 1};

		var A_INIT = {'s_name': '_floater__hdnvolvalue','n_minValue' : 5,'n_maxValue' : 100,'n_value' : currVolume,'n_step' : 5};

		new slider(A_INIT, A_TPL);		
	}
    else if(playerType.toString().toUpperCase() == 'EMBEDDED')
	{
        playerWidth = width;
		playerHeight = height;        
        
	    containerId = container;	    
	    var behaviourObj = getScriptXML(id, behaviourXML, mediaXML, visitCount);
	    behaviourObjects[index] = behaviourObj;
	    index = index + 1;
	    getbrandXML(behaviourObj.id, brandXML);
	    if(behaviourObj == null || mediaXML == null || trim(mediaXML) == "")
	    {
		    return;
	    }    	
	    flvDivId = "flv_div_" + id;
	    controlsDivId = "controls_" + id;
	    centerPlayDivId = centerPlayDivId_prefix + id;
	    var flvOuterDivId = flvDivId + "_outer";
	    var outerDivStart = "<div id='" + flvOuterDivId + "' style='border=1px;width:" + width + "px;height:" + height + "px;align:center;' >";
	    var outerDivEnd = "</div>";  	    	
	        	
	    innerDivs = "<div id='" + flvDivId + "' ";	    
	       
	    if(getShowControls(id).toLowerCase() == "none" || getShowControls(id).toLowerCase() != "true")
	    {
	        innerDivs = innerDivs + "onmouseover='showControls(\"" + id + "\");'";
	        innerDivs = innerDivs + "onmouseout='hideControls(\"" + id + "\");'";
	    }	    
	    innerDivs = innerDivs + "style='height:" + height + "px;";
	    innerDivs = innerDivs + "width:" + width + "px;'></div>";	    	    
	    
	    innerDivs = innerDivs + "<div id='" + controlsDivId + "'";
	    if(getShowControls(id).toLowerCase() == "none" || getShowControls(id).toLowerCase() != "true")
	    {	        
	        innerDivs = innerDivs + "onmouseover='showControls(\"" + id + "\");'";
	        innerDivs = innerDivs + "onmouseout='hideControls(\"" + id + "\");'";
	        innerDivs = innerDivs + "style='visibility:hidden;";        	        
	    }
	    else
	    {
	        innerDivs = innerDivs + "style='visibility:visible;";        	        
	    }	    
	    innerDivs = innerDivs + "background-image:url(" + imagePath + "trans_bg.png);";
	    innerDivs = innerDivs + "background-repeat:no-repeat;background-position:center;height:37px;width:" + (width - 30) + "px;";
	    innerDivs = innerDivs + "position:relative; left:15px;bottom:37px;valign:middle;border:2px;'></div>";
	    var mainFlDiv = outerDivStart + innerDivs + outerDivEnd;	    
	    document.getElementById(container).innerHTML = mainFlDiv; 	    
    }    
    
    createSWFObject(flvDivId,id,playerWidth,playerHeight,mediaXML,behaviourObj.isAutoPlay);        
    if(playerType.toString().toUpperCase() == 'EMBEDDED')
            renderControls(id, controlsDivId, behaviourObj.isAutoPlay);   
     
	if(getFrontEndLoop(id).toLowerCase() == "true" && behaviourObj.isAutoPlay.toLowerCase() == "false")       
	{	    
        isIdleLoop = true;
        isFrontEndLoop = true;
        setPlayerStatus(id, stoppedStatus);
	}
	else if(getFrontEndLoop(id).toLowerCase() == "false" && behaviourObj.isAutoPlay.toLowerCase() == "false")
	{     
        setPlayerStatus(id, stoppedStatus);
	}
	else
	{	    	    
	    isAutoPlay = true;
	    setPlayerStatus(id, playingStatus);
	}
}
function createSWFObject(flvDivId,id,width,height,file,autoPlay)
{

    var s1 = new SWFObject("FLVPlayer.swf",id,width,height,"8");
	s1.addParam('allowscriptaccess','always');
	s1.addParam('wmode','transparent');
	s1.addVariable("javascriptid",id);
	s1.addVariable("width",width);
	s1.addVariable("height",height);
	s1.addVariable("file",file);
	s1.addVariable('shownavigation','false');
	s1.addVariable('showicons','false');	
	s1.addVariable('autostart',autoPlay);
	s1.addVariable('enablejs','true');
	s1.addVariable('repeat',"true");	
	s1.addVariable('transition','slowfade');
	s1.addVariable('bufferlength','3');
	s1.addVariable('rotatetime','5');
	s1.write(flvDivId);
}

function btnHover(btn, img)
{
	btn.src=img;
}

function closePlayer()
{
	stop(float_player__id);		
	if(document.getElementById("flv_div__floater_FL_outer") != null)
	    document.getElementById("flv_div__floater_FL_outer").style.display = 'none';
	//location.reload(true);
	//window.location.reload(); 


}

function openPlayer()
{
    if(document.getElementById("flv_div__floater_FL_outer") != null)
	    document.getElementById("flv_div__floater_FL_outer").style.display = 'block';
	play(float_player__id);
}
function minimize()
{    
	stop(float_player__id);
	var middiv = document.getElementById(flvDivId);
	var botdiv = document.getElementById('_floater__bottomDiv');
	middiv.style.display = 'none';
	botdiv.style.background = 'url('+imagePath+'bottom_bg_small_251x54.png)';
	botdiv.style.backgroundRepeat = 'no-repeat';
	document.getElementById('_floater__minbtntd').innerHTML = maxbtn_html;
	
}

function maximize()
{    
	var middiv = document.getElementById(flvDivId);
	var botdiv = document.getElementById('_floater__bottomDiv');
	middiv.style.display='block';
	botdiv.style.background = 'url('+imagePath+'bottom_bg_251x54.png)';
	botdiv.style.backgroundRepeat = 'no-repeat';
	document.getElementById('_floater__minbtntd').innerHTML = minbtn_html;
}

function showControls(id)
{
	document.getElementById("controls_" + id).style.visibility = "visible";
}

function hideControls(id)
{
	document.getElementById("controls_" + id).style.visibility = "hidden";
}

function pausePlayer(id)
{
	

if(document.getElementById(id)!=null)
	document.getElementById(id).src = document.getElementById(id).src + "#Pause"
}

function getPlayerStatus(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}		
		return behaviourObjects[i].playerStatus;
	}
}

function setPlayerStatus(id, status)
{        
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		behaviourObjects[i].playerStatus = status;
		break;
	}
}

function getMuteFlag(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].muteFlag;
	}
}

function setMuteFlag(id, status)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		behaviourObjects[i].muteFlag = status;
		break;
	}
}
function getRepeatCount(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].repeatCount;
	}
}


function getCurrentVideoIndex(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].currentVideoIndex;
	}
}

function setCurrentVideoIndex(id, position)
{        
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		behaviourObjects[i].currentVideoIndex= position;
		break;
	}
}

function getShowControls(id)
{    
    for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].isShowControls;
	}
}

function getIdleLoop(id)
{    
    for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].idleLoop;
	}
}

function isDisappear(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return (behaviourObjects[i].isDisappear.toUpperCase() == "TRUE");
	}
}

function getIdleLoopCount(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].idleLoopCount;
	}
}

function setIdleLoopCount(id, count)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		behaviourObjects[i].idleLoopCount= count;
		break;
	}
}

function getPlayCount(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].playCount;
	}
}

function setPlayCount(id, count)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		behaviourObjects[i].playCount= count;
		break;
	}
}

function getFrontEndLoop(id)
{    
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].frontEndLoop;
	}
}

function getBackEndLoop(id)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].backEndLoop;
	}
}

function getPlayList(id)
{
    for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].presentationFiles;
	}
}
function getPlayIndex(id)
{
    for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		return behaviourObjects[i].playIndex;
	}
}
function setPlayIndex(id, playIndex)
{
	for( var i = 0; i < index; i++)
	{
		if(id != behaviourObjects[i].id)
		{
			continue;
		}
		behaviourObjects[i].playIndex= playIndex;
		break;
	}
}

function play(id)
{	
	var url = window.location.toString();		
	var URLIndex = url.toUpperCase().indexOf("#PAUSE");
	if(URLIndex > 0)
	{
		pause(id);
		window.location = url.substring(0, URLIndex + 1);	
		
	}
	
    if(getPlayerStatus(id) == stoppedStatus)
    {        
        if(isPlayEnd)
		    {isPlayEnd = false; setPlayIndex(id,0);}
        if(!isPlayEnd && parseInt(getPlayIndex(id)) == parseInt(getPlayList(id).length) - 1) 
        {
            isPlayEnd= true;
        }       	
        isIdleLoop = false;
        isFrontEndLoop = false;
        stop(id);        
        sendEvent(id, "playitem", getPlayList(id)[getPlayIndex(id)]);                 
        setPlayerStatus(id, playingStatus);
        
    }
    else if(getPlayerStatus(id) != playingStatus)
    {                 
        playpause(id);
        setPlayerStatus(id, playingStatus);		
    }
}

function playAndHide(btn, id)
{
	if(getPlayerStatus(id) != playingStatus)
	{
		playpause(id);
		setPlayerStatus(id, playingStatus);
		document.getElementById(btn).style.visibility = "hidden";
	}
}

function pause(id)
{    
	if(getPlayerStatus(id) == playingStatus)
	{	    
	    if(isIdleLoop != true)
        {            
            playpause(id);
            setPlayerStatus(id, pauseStatus);
        }	
	}
}

function volume(current,id)
{
    if(id == 'undefined' || id == null || id.toString().toUpperCase() == float_player__id.toString().toUpperCase())
	{
		sendEvent(float_player__id, 'volume', current);		
		if(muteFlag)
		{	    
			document.getElementById('_floater__mute_container').innerHTML = muteoffbtn_html;
			muteFlag = false;
		}
		currVolume = current;
	}
	else
	{
		sendEvent(id, 'volume', current);
		if(getMuteFlag(id))
		{
			setMuteFlag(id, false);
		}
	}
}

function playpause(id)
{             
	sendEvent(id, 'playpause');	
}

function replay(id)
{

    stop(id);
    setPlayCount(id, 0);
    
    if(isIdleLoop)
    {if (getPlayIndex(id) > 0){setPlayIndex(id,parseInt(getPlayIndex(id)) - 1 );}}
    isPlayEnd = false; play(id);
}

function stop(id)
{            
    sendEvent(id, 'stop');
    setPlayerStatus(id, stoppedStatus);
}

function mute(id)
{
   
    if(id.toString().toUpperCase() == float_player__id.toString().toUpperCase())
	{		
		if(muteFlag)
		{
			document.getElementById('_floater__mute_container').innerHTML = muteoffbtn_html;
			muteFlag = false;
			if(currVolume == 0)
			    currVolume = 20;
			sendEvent(id, 'volume', currVolume);
		}
		else
		{
			document.getElementById('_floater__mute_container').innerHTML = muteonbtn_html;
			muteFlag = true;
			currVolume = 0;
			sendEvent(id, 'volume', currVolume);
		}
	}
	else
	{
		if(getMuteFlag(id))
		{
			var s5 = new SWFObject(swfControlPath +"mute_small.swf","mute_btn","20","20","8");
			s5.addParam('allowscriptaccess','always');
			s5.addParam('wmode','transparent');
			s5.addVariable("player_id", id);
			s5.write("mute_" + id);
			setMuteFlag(id, false);
			sendEvent(id, 'volume', '100');
		}
		else
		{
		    
			var s5 = new SWFObject(swfControlPath +"nomute_small.swf","mute_btn","20","20","8");
			s5.addParam('allowscriptaccess','always');
			s5.addParam('wmode','transparent');
			s5.addVariable("player_id", id);
			s5.write("mute_" + id);
			setMuteFlag(id, true);
			sendEvent(id, 'volume', '0');
		}
	}
}

function renderControls(id, container, autoplay)
{
	var controls_table = "<table height='100%' align='center'><tr><td valign='middle'><div id='replay_" + id + "' />&nbsp;</td>";
	controls_table = controls_table + "<td valign='middle'><div id='play_" + id + "' />&nbsp;</td><td valign='middle'>";	
	controls_table = controls_table + "<div id='mute_" + id + "' />&nbsp;</td></tr></table>";

	document.getElementById(container).innerHTML = controls_table;
	var s3 = new SWFObject(swfControlPath +"repeat.swf","replay_btn","20","20","8");
	s3.addParam('allowscriptaccess','always');
	s3.addParam('wmode','transparent');
	s3.addVariable("player_id", id);
	s3.write("replay_" + id);
	if(!autoplay)
	{	   
	    
		var s2 = new SWFObject(swfControlPath +"play_small.swf","play_btn","20","20","8");
		s2.addParam('allowscriptaccess','always');
		s2.addParam('wmode','transparent');
		s2.addVariable("player_id", id);
		s2.write("play_" + id);
	}
	else
	{	    
		var s2 = new SWFObject(swfControlPath +"pause_small.swf","pause_btn","20","20","8");
		s2.addParam('allowscriptaccess','always');
		s2.addParam('wmode','transparent');
		s2.addVariable("player_id", id);
		s2.write("play_" + id);
	}

	var s5 = new SWFObject(swfControlPath +"mute_small.swf","mute_btn","20","20","8");
	s5.addParam('allowscriptaccess','always');
	s5.addParam('wmode','transparent');
	s5.addVariable("player_id", id);
	s5.write("mute_" + id);
}


function sendEvent(swf,typ,prm) {
    if(thisMovie(swf) != null)
        thisMovie(swf).sendEvent(typ,prm);    
};
function getUpdate(typ,pr1,pr2,swf) 
{    
	if(typ == 'state') 
	{
	    if(!isIdleLoop)
	    {
		    if(pr1 == 0)
		    {			
			    setPlayerStatus(swf, stoppedStatus);
    			
			    if(document.getElementById('floater_btn__div') != null )
			       {document.getElementById('floater_btn__div').innerHTML = play_btn_html;}
			    else
			    {
			        var s3 = new SWFObject(swfControlPath +"play_small.swf","play_btn","20","20","8");
			        s3.addParam('allowscriptaccess','always');
			        s3.addParam('wmode','transparent');
			        s3.addVariable("player_id", swf);
			        s3.write("play_" + swf);
			        
			    }
		    }
		    if (pr1 == 2)
		    {
		        setPlayerStatus(swf, playingStatus);  	      
		        if(isAutoPlay)
		            {isAutoPlay=false;sendEvent(swf,"stop");sendEvent(swf,"playitem",getPlayList(swf)[getPlayIndex(swf)]);}		            		          		    
		        if(document.getElementById('floater_btn__div') != null)
		            document.getElementById('floater_btn__div').innerHTML = pause_btn_html;
		        else
			    {
			        if(document.getElementById(centerPlayDivId_prefix + swf) != null)
			        {
				        document.getElementById(centerPlayDivId_prefix + swf).style.visibility = "hidden";
			        }
			        var s3 = new SWFObject(swfControlPath +"pause_small.swf","pause_btn","20","20","8");
			        s3.addParam('allowscriptaccess','always');
			        s3.addParam('wmode','transparent');
			        s3.addVariable("player_id", swf);
			        s3.write("play_" + swf);
			        
			    }
		        if(getMuteFlag(swf))
		        {
			        sendEvent(swf, 'volume', '0');
		        }
		        else
		        {
		            if(document.getElementById('_floater__mute_container') != null)
		                sendEvent(swf, 'volume', currVolume);
			        else 
			            sendEvent(swf, 'volume', '100');
		        }			
		    }
		}
		else if(isIdleLoop && isFrontEndLoop)
		{
		    if(pr1 == 0)
	        {
	            sendEvent(swf,"playitem",getIdleLoop(swf));
	            if(document.getElementById('floater_btn__div') != null )
			       {document.getElementById('floater_btn__div').innerHTML = play_btn_html;}
			    else
			    {
			        var s3 = new SWFObject(swfControlPath +"play_small.swf","play_btn","20","20","8");
			        s3.addParam('allowscriptaccess','always');
			        s3.addParam('wmode','transparent');
			        s3.addVariable("player_id", swf);
			        s3.write("play_" + swf);
			    }
	        }
		}
	}	
    if(typ == 'time')
	{
		var url = window.location.toString();        
		var URLIndex = url.toUpperCase().indexOf("#PAUSE");		
		
		if(URLIndex > 0)
		{
			pause(swf);
			window.location = url.substring(0, URLIndex + 1);			
		}
		
		if(pr2 == 0 && pr1 != 0)//End Of Current Video Displayed
		{
		    if(isIdleLoop && isFrontEndLoop)
	        {	            
	            sendEvent(swf,"playitem",getIdleLoop(swf));
	        }
            if(isIdleLoop && isBackEndLoop)
            {                
	            setIdleLoopCount(swf,parseInt(getIdleLoopCount(swf))+1);	            
	            if(parseInt(getBackEndLoop(swf)) != NaN 
					&& (parseInt(getBackEndLoop(swf)) == getIdleLoopCount(swf) || parseInt(getBackEndLoop(swf)) == -1))
				{
				    setIdleLoopCount(swf,0);  				    
				    isBackEndLoop = false;				    
				    sendEvent(swf,"stop");				   
				    if(isDisappear(swf))
			        {			      
				        document.getElementById(containerId).style.visibility = "hidden";
			        }
				}
				else
				{
				    setPlayerStatus(swf,stoppedStatus);
				    if(getIdleLoop(swf) <= thisMovie(swf).getLength())
                        sendEvent(swf,"playitem",getIdleLoop(swf));
                    else
                        sendEvent(swf,"stop");
				}
            }
            else if (!isIdleLoop)
            {
                if(parseInt(getPlayList(swf).length) <= thisMovie(swf).getLength())
                {
		            setPlayCount(swf, getPlayCount(swf) + 1); 
                    if(parseInt(getRepeatCount(swf)) != NaN && parseInt(getRepeatCount(swf))+ 1 <= getPlayCount(swf))
		            {
		                isBackEndLoop = true;		                
		                setPlayCount(swf,0);
		                if(parseInt(getPlayList(swf).length) > 1 && parseInt(getPlayIndex(swf)) <= parseInt(getPlayList(swf).length) - 1)
		                    setPlayIndex(swf,parseInt(getPlayIndex(swf)) + 1);	
		                if(parseInt(getBackEndLoop(swf)).toString() == 'NaN' || parseInt(getBackEndLoop(swf)) > 0)
                        {
                            isIdleLoop = true;
                            if(isDisappear(swf))
                            {sendEvent(swf,"stop");document.getElementById(containerId).style.visibility = "hidden";}
                            else
                            {
                                setPlayerStatus(swf,stoppedStatus);
                                sendEvent(swf,"playitem",getIdleLoop(swf));
                            }                            
                            if(document.getElementById('floater_btn__div') != null )
		                    {document.getElementById('floater_btn__div').innerHTML = play_btn_html;}
	                        else
	                        {
                                var s3 = new SWFObject(swfControlPath +"play_small.swf","play_btn","20","20","8");
	                            s3.addParam('allowscriptaccess','always');
	                            s3.addParam('wmode','transparent');						
	                            s3.addVariable("player_id", swf);
	                            s3.write("play_" + swf);
	                        }
                        }                        
                        else
                        {                            
                            sendEvent(swf,"stop");			                	                        
	                    }				        
		            }	
		            else
		            {		 		            
		                sendEvent(swf, "playitem", getPlayList(swf)[getPlayIndex(swf)]);
		            }
		        }
		        else
		        	sendEvent(swf,"stop");
            }
		}
	}
};

function thisMovie(swf) {
  if(navigator.appName.indexOf("Microsoft") != -1) {
    return window[swf];
  } else {
    return document[swf];
  }
};

function loadXML(xmlURL)
{
  try //Internet Explorer
  {
    xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
  }
  catch(e)
  {
    try //Firefox, Mozilla, Opera, etc.
      {
        
        xmlDoc=document.implementation.createDocument("","",null);
      }
      catch(e)
      {
        return;
      }
  }
  xmlDoc.async=false;
try{xmlDoc.load(xmlURL);}
catch(e)

{     if(window.XMLHttpRequest)
        {
            var errorHappendHere = "Error handling XMLHttpRequest request";
            var d = new XMLHttpRequest();
            d.open("GET", xmlURL, false);
            d.send(null);
            xmlDoc=d.responseXML;
        }
}
}

function getbrandXML(scriptBehavior, brandXML)
{
    loadXML(brandXML);
    var brandXMLs = xmlDoc.getElementsByTagName("Configuration"); 
    
    if(brandXMLs[0].getAttribute("BrandDisplay") != null && trim(brandXMLs[0].getAttribute("BrandDisplay")) != "" && brandXMLs[0].getAttribute("BrandDisplay").toUpperCase()== "TRUE")
    {     
        scriptBehaviour.isBrand = brandXMLs[0].getAttribute("BrandDisplay").toUpperCase();
      if(brandXMLs[0].getAttribute("BrandLogo") != null && trim(brandXMLs[0].getAttribute("BrandLogo")) != "")
      {
        scriptBehaviour.brandLogo = brandXMLs[0].getAttribute("BrandLogo");
      }
      else
        scriptBehaviour.brandLogo = "none";
      if(brandXMLs[0].getAttribute("BrandURL") != null && trim(brandXMLs[0].getAttribute("BrandURL")) != "")
      {
        scriptBehaviour.brandURL = brandXMLs[0].getAttribute("BrandURL");
      }
      else
        scriptBehaviour.brandURL = "none";
    }
    else
        scriptBehaviour.isBrand = "none";  
}
function getScriptXML( id, behaviourXML, mediaXML, visitCount)
{    
  loadXML(behaviourXML);
  
  var scriptXMLs = xmlDoc.getElementsByTagName("Script");  
  var scriptBehaviour = null;  
   
  for( var i = 0; i < scriptXMLs.length; i++)
  {
        var visit = scriptXMLs[i].getAttribute("Visit");
        if(visit == null || trim(visit) == "")
        {
          continue;
        }
        visit = trim(visit);       
        
        if(visit.toUpperCase() == "FIRST" || visit == 1)
        {
            if(maxVisit < visitCount)
                maxVisit = 1;
            if(visitCount == 1)
            {
    	    	scriptBehaviour = setBehaviourObject(scriptXMLs[i], mediaXML, visitCount,false);
    	    	break;
    	    }
        }        
        else if(visit.indexOf("-") > 0)
        {      
              var start = parseInt(visit.substring(0,visit.indexOf("-")));
              var end = parseInt(visit.substring(visit.indexOf("-") + 1));
              
              if(maxVisit < end)
                maxVisit = end;
              if(visitCount >= start && visitCount <= end)
              {                
                scriptBehaviour = setBehaviourObject(scriptXMLs[i], mediaXML, visitCount,false);
                break;
              }
        }
        else if(visit.indexOf(",") > 0)
        {
              validateVisitWithComma(visit, visitCount);
              if(visit.indexOf("" + visitCount + ",") >= 0 || visit.endsWith("," + visitCount))
              {       
                scriptBehaviour = setBehaviourObject(scriptXMLs[i], mediaXML, visitCount,false);
                break;
              }
        }
        else if(parseInt(visit) != NaN && parseInt(visit).toString() != 'NaN')
        {      
              if(maxVisit < visitCount)
                maxVisit = parseInt(visit);      
              if(parseInt(visit) == visitCount)
              {                
                scriptBehaviour = setBehaviourObject(scriptXMLs[i], mediaXML, visitCount,false);
                break;
              }
        }
        else if(visit.toUpperCase() == "ROUNDROBIN")
        {            
    	    scriptBehaviour = setBehaviourObject(scriptXMLs[i], mediaXML, parseInt(visitCount-(parseInt(maxVisit)+1)),true);    	    
    	    break;
        }
    }
        
  scriptBehaviour.id = id;     
  return scriptBehaviour;
}
function validateVisitWithComma(visit, visitCount)
{
    if(visit.indexOf(",") > 0)
    {
        var index = 0;
        var Startindex = visit.indexOf(",");
        var track = visit;           
        var length = visit.length;
        var splitVisit =0;
       
      while(Startindex > 0)
      {
        Startindex = track.indexOf(",");
        if(Startindex != -1)
        {                    
            splitVisit = parseInt(track.substring(0,Startindex)); 
            if(maxVisit < splitVisit && splitVisit <= visitCount)
                maxVisit = splitVisit;
            track = track.substring(Startindex+1);             
        }
        else
        {
            splitVisit = parseInt(track);
            if(maxVisit < splitVisit && splitVisit <= visitCount)
                maxVisit = splitVisit;
        }        
        index ++;
      }      
    }
}
function setBehaviourObject(xml, mediaXML, visit, roundRobin)
{
    
  scriptBehaviour = new Behaviour();
  scriptBehaviour.visitCount = trim(xml.getAttribute("Visit"));  
  
  if(xml.getAttribute("PlayTrack") != null && trim(xml.getAttribute("PlayTrack")) != "")
  {
    var playTrack = trim(xml.getAttribute("PlayTrack"));
    var presentationFiles = new Array();    
    
    if(playTrack.indexOf(",") > 0)
    {
        var index = 0;
        var Startindex = playTrack.indexOf(",");
        var track = playTrack;           
        var length = playTrack.length;
       
      while(Startindex > 0)
      {
        Startindex = track.indexOf(",");
        if(Startindex != -1)
        {                    
            presentationFiles[index] = parseInt(track.substring(0,Startindex)) - 1; 
            track = track.substring(Startindex+1);             
        }
        else
        {
            presentationFiles[index] = parseInt(track) - 1;                     
        }
        index ++;
      }      
      scriptBehaviour.presentationFiles = presentationFiles;
    }
    else if(parseInt(playTrack) != NaN && parseInt(playTrack).toString() != 'NaN')
    {            
        presentationFiles[0] = parseInt(playTrack) - 1;
        scriptBehaviour.presentationFiles = presentationFiles;
    }
  }
  if(roundRobin)
  {  	
    var nodeIndex = visit%scriptBehaviour.presentationFiles.length;    
    
    presentationFiles = new Array();
    presentationFiles[0] = scriptBehaviour.presentationFiles[nodeIndex];
    scriptBehaviour.presentationFiles = presentationFiles;  
    
    getBehavior(xml, roundRobin, nodeIndex);          
  } 
  else
    getBehavior(xml, roundRobin, "none");          
  
  scriptBehaviour.playCount = 0;  
  scriptBehaviour.playIndex = 0; 
  scriptBehaviour.idleLoopCount = 0;  
  return scriptBehaviour;
}

function getCurrentValue_Attribute(attributeValue, attributeIndex, roundRobin)
{
    var currentAttributes = new Array();
    var currentAttributeValue;
    var index = 0;
    var Startindex = attributeValue.indexOf(",");
    var track = attributeValue;           
    var length = attributeValue.length;
    if(roundRobin)
    {
        if(attributeValue.indexOf(",") > 0 )
        {
          while(Startindex > 0)
          {
            Startindex = track.indexOf(",");            
            if(Startindex != -1)
            {                                    
                currentAttributes[index] = track.substring(0,Startindex);
                track = track.substring(Startindex+1);  
                              
            }
            else
            {
                currentAttributes[index] = track;
            }
            index ++;
          } 
          if(currentAttributes.length <= attributeIndex)
            currentAttributeValue = currentAttributes[currentAttributes.length - 1];
         else            
            {currentAttributeValue = currentAttributes[attributeIndex];}
        }   
        else
            currentAttributeValue = track;      
    }
    else
        currentAttributeValue = track;
    return currentAttributeValue;
}

function getBehavior(xml, roundRobin, nodeIndex)
{
      if(xml.getAttribute("ShowControls") != null && trim(xml.getAttribute("ShowControls")) != "" && parseInt(trim(xml.getAttribute("ShowControls"))) != NaN)
      {      
        scriptBehaviour.isShowControls = getCurrentValue_Attribute(xml.getAttribute("ShowControls").toLowerCase(), nodeIndex, roundRobin);
      }
      else
      {
        scriptBehaviour.isShowControls = "false";
      }
      if(xml.getAttribute("RepeatCount") != null && trim(xml.getAttribute("RepeatCount")) != "")
      {
        scriptBehaviour.repeatCount = getCurrentValue_Attribute(xml.getAttribute("RepeatCount"), nodeIndex, roundRobin);
      }
      else
      {
        scriptBehaviour.repeatCount = "0";
      }
      if(xml.getAttribute("AutoPlay") != null && trim(xml.getAttribute("AutoPlay")) != "")
      {
        scriptBehaviour.isAutoPlay = getCurrentValue_Attribute(xml.getAttribute("AutoPlay").toLowerCase(), nodeIndex, roundRobin);        
      }
      else
      {
        scriptBehaviour.isAutoPlay = "false";
      }
      if(xml.getAttribute("FrontEndLoop") != null && trim(xml.getAttribute("FrontEndLoop")) != "")
      {
        scriptBehaviour.frontEndLoop = getCurrentValue_Attribute(xml.getAttribute("FrontEndLoop").toLowerCase(), nodeIndex, roundRobin);
      }
      else
      {
        scriptBehaviour.frontEndLoop = "false";
      }  
      if(xml.getAttribute("BackEndLoop") != null && trim(xml.getAttribute("BackEndLoop")) != "")
      {
        scriptBehaviour.backEndLoop = getCurrentValue_Attribute(xml.getAttribute("BackEndLoop"), nodeIndex, roundRobin);
      }
      else
      {
        scriptBehaviour.backEndLoop = "0";
      }
      if(xml.getAttribute("IdleLoop") != null && trim(xml.getAttribute("IdleLoop")) != "")
      {
        scriptBehaviour.idleLoop = parseInt(getCurrentValue_Attribute(trim(xml.getAttribute("IdleLoop")), nodeIndex, roundRobin)) - 1;              
      } 
      else
      {
        scriptBehaviour.idleLoop = "None";
      }      
      if(xml.getAttribute("Disappear") != null && trim(xml.getAttribute("Disappear")) != "")
      {
        scriptBehaviour.isDisappear = getCurrentValue_Attribute(xml.getAttribute("Disappear").toLowerCase(), nodeIndex, roundRobin);
      }
      else
      {
        scriptBehaviour.isDisappear = "false";
      }
      if(xml.getAttribute("Delay") != null && trim(xml.getAttribute("Delay")) != "" && parseInt(trim(xml.getAttribute("Delay"))) != NaN)
      {
        scriptBehaviour.delay = parseInt(trim(getCurrentValue_Attribute(xml.getAttribute("Delay"), nodeIndex, roundRobin)));
      }
      else
      {
        scriptBehaviour.delay = 0;
      }
}

function trim(str) {
    chars = " ";
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

String.prototype.endsWith = function(str)
{return (this.match(str+"$")==str)}

String.prototype.startsWith = function(str)
{return (this.match("^"+str)==str)}


var pickedUp = new Array("", false);

var Y = 0;
var X = 0;
function getReadyToMove(element, evt) {
//var cols = element1.tBodies[0].rows.item(0).cells;

pickedUp[0] = element;
pickedUp[1] = true;
var isOpera, isIE, isNav, isFox, isOther = false;
if (navigator.userAgent.indexOf("Opera")!=-1) {
 isOpera = true;
} else if (navigator.userAgent.indexOf("Firefox")!=-1) {
 isFox = true;
} else if (navigator.appName == "Microsoft Internet Explorer") {
 isIE = true;
} else if (navigator.appName == "Netscape") {
 isNav = true;
} else {
 isOther = true;
}
if(isIE)
{
X=evt.offsetX;
Y=evt.offsetY;
}
else if(isFox)
{
X =  evt.pageX-document.getElementById(pickedUp[0]).offsetLeft;
Y =  evt.pageY-document.getElementById(pickedUp[0]).offsetTop;
  }
}

function checkLoadedObjects(evt) {
  if (pickedUp[1] == true) {
  var currentSelection = document.getElementById(pickedUp[0]);
  currentSelection.style.position = "absolute";
  currentSelection.style.top = (evt.clientY-Y) + "px";
  currentSelection.style.left = (evt.clientX-X)+ "px";
  }
}
function dropLoadedObject(evt) {
  pickedUp = new Array("", false);
}
function chat()
{
	view = document.getElementById("viewchat");
	view.innerText = view.innerText + "\n" + document.getElementById("inchat").value;
	document.getElementById("inchat").value = "";
}
function showChat()
{
	document.getElementById("chatBox").style.display = "block";
	document.getElementById("chatlink").href = "javascript:hideChat();";
	document.getElementById("chatlink").innerText = "Hide Chat";
}
function hideChat()
{
	document.getElementById("chatBox").style.display = "none";
	document.getElementById("chatlink").href = "javascript:showChat();";
	document.getElementById("chatlink").innerText = "Chat";
}