// RICH MEDIA PROJECT : JAVASCRIPT PHP FLV PLAYER v2.0.0

// Modified and edited to work with SWFOBJECT by tom-c (tom@adartdesign.co.uk) 28.06.08

var flv_player = {};
var flashvars = {};
var params = {};
var attributes = {};
var props = {};


// DETECT FLASH PLAYER VERSION FOR FULLSCREEN EXPERIENCE (from Flash Player v9.0.28) 
flashvars.detectFlashPlayer = true;
flashvars.detectFlashPlayerVersion = '9.0.0';
// fullScreenFunction : if false, fullscreen mode won't be available
flashvars.fullScreenFunction = true;

// PHP SCRIPT PATH 
// Path of the PHP provider script; path relative to the "RMP_Player.swf" file or absolute path (movies should be located in the same folder)
flashvars.phpPath = "/video/stream.php";
// movieName without extension; see "bandwidth detection" section if you want to use movies with different bitrates.
flashvars.movieName = "table";


// BEHAVIOURS
flashvars.bufferTime = 1;
flashvars.volume = 100;
// If autostart=false, the movie will be paused at start.
flashvars.autoStart = false;
// endBehaviour : behaviour when the movie ends.
// endBehaviour="Stop" | endBehaviour="Loop"
flashvars.endBehaviour = "Stop";
// endFullScreenBackToNormal : if true, return from full screen to normal mode when the movie ends
flashvars.endFullScreenBackToNormal = true;
// endJavascriptFunction : your custom javascript function that will be called at the end of the movie
flashvars.endJavascriptFunction = "";
// CloseConnect: If true, the Nestream connection will be closed when stop button is pressed.
flashvars.stopCloseConnect = true;


// BANDWIDTH DETECTION
// Set differentVersions to true to enable bandwidth detection
flashvars.differentVersions = false;
// Define the different bitrates values in kbps (audio+video bitrate); 
// When the detected bandwidth equals of exceeds these values, the associated movie will be selected
flashvars.version_hi_value = 800;
flashvars.version_medium_value = 400;
flashvars.version_low_value = 200;
// If differentVersions=false: upload a single version of a movie to your server : [movieName].flv
// if differentVersions=true: upload multiple versions (ex: low, med, hi) of a movie to your server :
// [movieName][version_hi_extension].flv
// [movieName][version_medium_extension].flv
// [movieName][version_low_extension].flv
// Set the movie name extension that is associated with each different bitrate version
// Use format of "_text" for each version name;  this value will be appended to the movieName
flashvars.version_hi_extension = "_800";
flashvars.version_medium_extension = "_400";
flashvars.version_low_extension = "_200";


// PICTURES
// Set pictures parameters to true to display a picture at start (if autostart=false) and when the movie is stopped.
// The picture has to be a jpeg file and must be named exactly the same as the movieName parameter.
// If movieName="myVideo", the player will try to load myVideo.jpg file.
flashvars.pictures = true;
// The pictures must be located in the pictures folder and path listed here.
flashvars.picturesFolder = "/video/";
//Set a background color for the picture
flashvars.picturesBackgroundColor = "#000000";
flashvars.picturesKeepAspectRatio = false;
// Set "picturesKeepAspectRatioFullScreen" to true to prevent distortion during full screen mode
flashvars.picturesKeepAspectRatioFullScreen = true;


// CLICK ON SCREEN
// Set  following to true to use hand cursor to indicate the screen is clickable
flashvars.clickOnScreen_useHandCursor = true;
// set singleClickPlayPause to true to pause or resume the playback with a single click anywhere on the screen 
flashvars.singleClickPlayPause = true;
// Set to true to show a play button on screen, 
flashvars.screenPlayButton = true;
// Set the alpha transparency (low value is most transparent)
flashvars.screenPlayButtonAlpha = 80;
// set doubleClickListener to true to go full screen with a double click
flashvars.doubleClickListener = true;


// VIDEO QUALITY
// Smoothing and bestQuality options 
// Note: enabling these options will increase CPU usage.  Users with low-powered computers
// or that have multiple applications open may have viewing problems.  Use these with caution.
flashvars.bestQuality = false;
flashvars.smoothing = true;
flashvars.smoothingFullScreen = false;
flashvars.deblocking = 0;


// PLAYER'S PROPERTIES
flashvars.playerWidth = 400;
// playerHeight includes the size of the control bar (15 pixels) when in NORMAL MODE
flashvars.playerHeight = 305;
// autoSize="Movie" or autoSize="Off". Set autoSize to "Movie" to make player fit the 
// movie and to keep the aspect ratio.
flashvars.autoSize = "Off";
// autoSizeFullScreen="Movie" maintains the movie's aspect ratio during full screen mode;
// autoSizeFullScreen="Off" allows the movie to distort and fill the screen in full screen mode;
flashvars.autoSizeFullScreen = "Movie";

// NORMAL MODE
// Player parameters: colors and positions
// playerHeight includes the size of the control bar (15 pixels)
flashvars.playerColor = "#222222";
flashvars.barColor = "#FFFFFF";
flashvars.playbarColor = "#E2F9D9";
flashvars.screenBorder = false;
flashvars.screenBorderColor = "#FFFFFF";
flashvars.buttonsColor = "#FFFFFF";
flashvars.timeColor = "#FFFFFF";
flashvars.backgroundColor = "#000000";
flashvars.backgroundAlpha = 100;
//controlsY : space between the bottom of the screen and the control bar.
flashvars.controlsY = -16;

// FULL SCREEN MODE
// Enables you to change player controls colors, dimensions, and positions during full screen mode
// ControlsYFullScreen, y position from the bottom of the screen
flashvars.controlsYFullScreen = 15;
// Set controlsWidthFullScreen=0 to  fit with the width of the screen
flashvars.controlsWidthFullScreen = 500;
flashvars.playerColorFullScreen = "#222222";
flashvars.barColorFullScreen = "#FFFFFF";
flashvars.playbarColorFullScreen = "#E2F9D9";
flashvars.buttonsColorFullScreen = "#FFFFFF";
flashvars.timeColorFullScreen = "#FFFFFF";
flashvars.backgroundColorFullScreen = "#000000";
flashvars.backgroundAlphaFullScreen = 100;


// CONTROLS
// controls="Hide" | controls="Autohide" | controls="Show"
flashvars.controls = "Hide";
flashvars.controlsFullScreen = "Autohide";
// Enable buttons: true  | false
flashvars.stopButton = true;
flashvars.stopButtonFirst = true;
flashvars.rewindFastForwardButtons = true;
// rewind and fast forward intervals (rw_ff_interval) in seconds
flashvars.rw_ff_interval = 4;
// Enable volume slider: true  | false
flashvars.volumeSlider = true;
// Enable timecode display: true  | false
flashvars.showTimecode = true;
flashvars.controlsBarPress = true;
// Set time display format: timeFormat="mm:ss" | timeFormat="hh:mm:ss" | timeFormat="mm:ss|duration" | timeFormat="hh:mm:ss|duration"
flashvars.timeFormat = "mm:ss|duration";


// BUFFER MESSAGE
// Set buffer message parameters
flashvars.bufferMessage = true;
flashvars.bufferText = "buffering";
flashvars.bufferTextColor = "#FFFFFF";
flashvars.bufferTextBackgroundColor = "#993333";
flashvars.bufferTextBackgroundAlpha = 40;
// bufferTextPosition="Upper Right" | bufferTextPosition="Upper Left" | bufferTextPosition="Lower Right" | bufferTextPosition="Lower Left" | bufferTextPosition="Center"
flashvars.bufferTextPosition = "Upper Right";


// LOGO
// Enables a logo to be displayed on the screen during playback: true | false
// logo file has to be a jpg or a swf.
flashvars.logo = false;
// Set path to the logo file
flashvars.logoPath = "/myFlash/swf/logo.swf";
// logoPosition="Upper Right" | logoPosition="Upper Left" | logoPosition="Lower Right" | logoPosition="Lower Left"
flashvars.logoPosition = "Upper Right";
flashvars.logoAlpha = 70;
// Set logo position in pixels from edge of player
flashvars.logo_x = 10;
flashvars.logo_y = 10;


// COMMERCIAL
// If differentVersions=false then only upload a single version of a commercial movie to your server: [commercialMovieName].flv
// if differentVersions=true, you will need to upload multiple versions (ex: low, med, hi) of a commercial movie to your server:
// Set the commercial movie name extension that is associated with each different bitrate version
// Use the same bitrate version extensions that were defined in the BANDWIDTH DETECTION section above
// [commercialMovieName][version_hi_extension].flv
// [commercialMovieName][version_medium_extension].flv
// [commercialMovieName][version_low_extension].flv
// Set the commercialMovieName without extension:
flashvars.commercialMovieName = "";
// Javascript functions to call when the commercial starts and when the user clicks on the screen during a commercial.
// Flash will call getURL("javascript:"+nameOfYourFunction);
// For example you can call an alert Function, commercialFunctionStart="alert('start commercial');"
flashvars.commercialFunctionStart = "";
flashvars.commercialFunctionClickScreen = "";
// Select to show either a commercial text message or a commercial text message plus the "coming next" movie title
// commercialMessage="CommercialText" | commercialMessage="CommercialText and MovieTitle"
flashvars.commercialMessage = "CommercialText";
// Set movieTitleForComingNext property if commercialMessage="CommercialText and MovieTitle"
flashvars.movieTitleForComingNext = "";
// Define the commercial text message and its properties:
flashvars.commercialText = "Your movie will start after this commercial...";
flashvars.commercialTextColor = "#FFFFFF";
flashvars.commercialTextBold = true;


// SUBTITLES
// Subtitles are defined in an XML file; set the XML file name here:
flashvars.subtitleXML = "";
// Sub Titles are visible at start: subVisible= true | false  
flashvars.subVisible = true;
// Sub titles can be controlled with a button; subButton= true | false:
flashvars.subButton = false;
flashvars.subButtonOffColor = "#FFFFFF";
flashvars.subColor = "#FFFFFF";
flashvars.subBackground = true;
flashvars.subBackgroundColor = "#000000";
flashvars.subBackgroundAlpha = 90;
flashvars.subFontSize = 16;
flashvars.autohideSubBackground = true;
// Set sub title text alignment: subAlign="left" | subAlign="center" | subAlign="right"
flashvars.subAlign = "center";

// SUBTITLES IN FULLSCREEN MODE
// Enables sub titles to be styled differently when in full screen mode
flashvars.subColorFullScreen = "#FFFFFF";
flashvars.subBackgroundFullScreen = false;
flashvars.subBackgroundColorFullScreen = "#000000";
flashvars.subBackgroundAlphaFullScreen = 90;
flashvars.subFontSizeFullScreen = 30;
flashvars.autohideSubBackgroundFullScreen = true;
// subAlignFullScreen="left" | subAlignFullScreen="center" | subAlignFullScreen="right"
flashvars.subAlignFullScreen = "center";
flashvars.blankLineFullScreen = 0;


// POP UP
// Set display properties for Detect Flash Player Pop Up
// Detect Flash Player Text=[detectPopUpText1]+[versionNumber]+[detectPopUpText2]
// You can use HTML tags to style your text
flashvars.detectPopUpTitle = "Adobe Flash Player Version";
flashvars.detectPopUpText1 = "You have Flash Player<br>version ";
flashvars.detectPopUpText2 = " installed.<br><br>Enjoy a fullscreen<br>experience with the new Flash Player.";
// Button label to get update for Flash Player
flashvars.detectPopUpButton1 = "Get Flash";
// Button label to bypass Flash Player update feature
flashvars.detectPopUpButton2 = "Continue";

// Detect Bandwidth Pop Up
// Enable Bandwidth Detect Pop Up window: true | false
flashvars.displayBandwidthDetectPopUp = true;
// Set display text for Bandwidth detect Pop Up feature
// Detect Bandwidth Result Text=[bandwidthDetectPopUpText2]+[bandwidth]+" kbps"
flashvars.bandwidthDetectPopUpTitle = "Rich Media Project Speed Detector";
flashvars.bandwidthDetectPopUpText1 = "Detecting Bandwidth<br>Please wait...";
flashvars.bandwidthDetectPopUpText2 = "Your Bandwidth :<br>"

// Loading Movie Pop Up	
// Enable Movie Loading Pop Up window text: true | false
flashvars.displayLoadingMoviePopUp = false;
flashvars.loadingMoviePopUpTitle = "Loading...";
flashvars.loadingMoviePopUpText = "Loading Movie<br>Please wait..."

// Select Bandwidth Pop Up
// Enables viewer to select bandwidth manually via this popup window
// Select Bandwidth Text=[bandwidthSelectPopUpText1]+[bandwidthTextForXXXBandwidth]+[bandwidthSelectPopUpText2]+[version_XXX_value]+[bandwidthSelectPopUpText3]
flashvars.bandwidthSelectPopUpTitle = "Bandwidth Selector";
flashvars.bandwidthSelectPopUpButton1 = "Low";
flashvars.bandwidthSelectPopUpButton2 = "Medium";
flashvars.bandwidthSelectPopUpButton3 = "Hi";
flashvars.bandwidthTextForLowBandwidth = "Low";
flashvars.bandwidthTextForMediumBandwidth = "Medium";
flashvars.bandwidthTextForHiBandwidth = "Hi";
flashvars.bandwidthSelectPopUpText1 = "";
flashvars.bandwidthSelectPopUpText2 = " bandwidth is selected :<br>";
flashvars.bandwidthSelectPopUpText3 = " kbps movie.<br><br>Please select the desired<br>bandwidth :";

// Info Pop Up
// This pop up is displayed if no movie is loaded at start (movieName="")
flashvars.displayInfoPopUp = true;
flashvars.infoPopUpTitle = "Select movie";
flashvars.infoPopUpText = "Please select a movie in the gallery"



// SWF PROPERTIES
// swfPath : path of the swf that contains the player
props.swfPath = "/swf/videoplayer.swf";
// expressInstallPath : path of the expressinstall swf that updates the player
props.expressInstallPath = "/swf/expressInstall.swf";
// swfID : name of the Flash Object
props.swfID = "slideshow";
// speedClipPath : path of the swf that contains the speed detector clip (without swf extension)
flashvars.speedClipPath = "/swf/speed";
params.bgcolor = "#FFFFFF";

params.menu 	=	"false";
params.quality	=	"high";
params.allowFullScreen	=	"true";
params.allowScriptAccess	=	"always";

attributes.id	=	"video";
attributes.name	=	"video";


flv_player.create = function()
{
	props.swfWidth = flashvars.playerWidth;
	props.swfHeight = eval(flashvars.playerHeight + (flashvars.controlsY + 1));
	swfobject.embedSWF(props.swfPath, props.swfID, props.swfWidth, props.swfHeight, flashvars.detectFlashPlayerVersion, props.expressInstallPath, flashvars, params, attributes);
};


// CONTROL FLASH FROM JAVASCRIPT
function RMP_play() {
	getMovieName(attributes.id).RMP_play();
};
function RMP_pause() {
	getMovieName(attributes.id).RMP_pause(); 
};
function RMP_stop() {
	getMovieName(attributes.id).RMP_stop(); 
};
function RMP_seek(val) {
	getMovieName(attributes.id).RMP_seek(val); 
};
function RMP_load(movie,subtitles) {
	getMovieName(attributes.id).RMP_load(movie,subtitles,autostart); 
};
function RMP_loadWithCommercial(commercial,movie,movieTitle,subtitles,autostart) {
	getMovieName(attributes.id).RMP_loadWithCommercial(commercial,movie,movieTitle,subtitles); 
};
function RMP_showSubtitles() {
	getMovieName(attributes.id).RMP_showSubtitles(); 
};
function RMP_hideSubtitles() {
	getMovieName(attributes.id).RMP_hideSubtitles(); 
};
function RMP_showControls() {
	getMovieName(attributes.id).RMP_showControls(); 
};
function RMP_hideControls() {
	getMovieName(attributes.id).RMP_hideControls(); 
};
function RMP_setVolume(vol) {
	getMovieName(attributes.id).RMP_setVolume(vol); 
};
function RMP_mute() {
	getMovieName(attributes.id).RMP_mute(); 
};
function RMP_changeSubtitles(subt) {
	getMovieName(attributes.id).RMP_changeSubtitles(subt); 
};

function RMP_changeProp(x,y,w,h) {
	getMovieName(attributes.id).RMP_changeProp(x,y,w,h); 
};
function RMP_changeZoom(zoom) {
	getMovieName(attributes.id).RMP_changeZoom(zoom); 
};
function RMP_close() {
	getMovieName(attributes.id).RMP_close(); 
};

function getMovieName(movieName) {
	if (navigator.appName.indexOf("Microsoft") != -1) {
		return window[movieName]
	}
	else {
		return document[movieName]
	}
};


// SLIDESHOW SCRIPT

var slideshow = {

	getData : function(url)
	{
		$.getJSON(url, function(json){
			var slideshowdata = json;
			slideshow.imgs = slideshowdata.imgs;
			(slideshow.loop) ? slideshow.loop : slideshowdata.loop;
			(slideshow.speed) ? slideshow.speed : slideshowdata.speed;
			slideshow.init();
		});
	},
	
	init : function()
	{
		this.container = $("#slideshow");

		$(this.container).click(function() { 
			flv_player.create();
			RMP_play();
		});
		this.number_of_images = this.imgs.length;
		if(this.number_of_images==0) return false;
		this.current_image = 0;
		this.previous_image = null;
		this.current_loop = 0;
		this.removeImages();
		$(this.container).addClass('loading');
		this.imgloadtimeout = setTimeout('slideshow.loadImages()',this.speed);
	},

	loadImages : function()
	{
		$.each(this.imgs,function(i) {
			this.preload = new Image();
			this.preload.onload = function() { slideshow.isLoaded(i); };
			this.preload.src = this.src;
		});
	},
	
	isLoaded : function(i)
	{
		this.imgs[i].loaded = (this.imgs[i].preload.width!=0) ? true : null;
		if(i==0) { this.showImage(); }
	},
	
	removeImages : function()
	{
		$("img",this.container).remove();
	},
	
	showImage : function(number,callback)
	{
		if(number){ this.current_image=number-1; number=undefined; };
		
		if(!this.imgs[this.current_image].loaded) {
			if(this.current_image!=this.number_of_images-1) {
				this.current_image++;
			} else {
				this.current_image=0;
				this.current_loop++;
			}
		}
		
		if((this.loop!=0)&&this.current_loop>=this.loop||this.number_of_images==1) 
		{
			this.pause();
			
			$("img",this.container).fadeOut(this.speed, function(){ 
				$(this).remove();
				flv_player.create();
			});
			
			return;
		}
		
		$(this.container).append('<img src="'+this.imgs[this.current_image].src+'" alt="'+this.imgs[this.current_image].alt+'" style="display: none" />');
		
		$("img:last").css('z-index','10');
		$("img:last",this.container).fadeIn(this.speed,callback);
		
		this.imgtimeout = setTimeout('slideshow.fadeImage()',this.speed*2);
		
		this.previous_image=this.current_image;
		
		if(this.current_image!=this.number_of_images-1) {
			this.current_image++;
		} else { 
			this.current_image=0;
			this.current_loop++;
		}
	},
	
	pause : function()
	{
		clearTimeout(this.imgtimeout);
	},
	
	fadeImage : function(number)
	{
		$(this.container).removeClass('loading');
		$("img:first").css('z-index','15');
		
		this.showImage(number, function(){
			$("img:first",this.container).fadeOut(this.speed, function(){ 
				$(this).remove();
			});
		});
	}
};


window.onunload = function() { slideshow.pause(); };




// SWF OBJECT LIBRARY


/*	SWFObject v2.0 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
var swfobject=function(){var Z="undefined",P="object",B="Shockwave Flash",h="ShockwaveFlash.ShockwaveFlash",W="application/x-shockwave-flash",K="SWFObjectExprInst",G=window,g=document,N=navigator,f=[],H=[],Q=null,L=null,T=null,S=false,C=false;var a=function(){var l=typeof g.getElementById!=Z&&typeof g.getElementsByTagName!=Z&&typeof g.createElement!=Z&&typeof g.appendChild!=Z&&typeof g.replaceChild!=Z&&typeof g.removeChild!=Z&&typeof g.cloneNode!=Z,t=[0,0,0],n=null;if(typeof N.plugins!=Z&&typeof N.plugins[B]==P){n=N.plugins[B].description;if(n){n=n.replace(/^.*\s+(\S+\s+\S+$)/,"$1");t[0]=parseInt(n.replace(/^(.*)\..*$/,"$1"),10);t[1]=parseInt(n.replace(/^.*\.(.*)\s.*$/,"$1"),10);t[2]=/r/.test(n)?parseInt(n.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof G.ActiveXObject!=Z){var o=null,s=false;try{o=new ActiveXObject(h+".7")}catch(k){try{o=new ActiveXObject(h+".6");t=[6,0,21];o.AllowScriptAccess="always"}catch(k){if(t[0]==6){s=true}}if(!s){try{o=new ActiveXObject(h)}catch(k){}}}if(!s&&o){try{n=o.GetVariable("$version");if(n){n=n.split(" ")[1].split(",");t=[parseInt(n[0],10),parseInt(n[1],10),parseInt(n[2],10)]}}catch(k){}}}}var v=N.userAgent.toLowerCase(),j=N.platform.toLowerCase(),r=/webkit/.test(v)?parseFloat(v.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,i=false,q=j?/win/.test(j):/win/.test(v),m=j?/mac/.test(j):/mac/.test(v);/*@cc_on i=true;@if(@_win32)q=true;@elif(@_mac)m=true;@end@*/return{w3cdom:l,pv:t,webkit:r,ie:i,win:q,mac:m}}();var e=function(){if(!a.w3cdom){return }J(I);if(a.ie&&a.win){try{g.write("<script id=__ie_ondomload defer=true src=//:><\/script>");var i=c("__ie_ondomload");if(i){i.onreadystatechange=function(){if(this.readyState=="complete"){this.parentNode.removeChild(this);V()}}}}catch(j){}}if(a.webkit&&typeof g.readyState!=Z){Q=setInterval(function(){if(/loaded|complete/.test(g.readyState)){V()}},10)}if(typeof g.addEventListener!=Z){g.addEventListener("DOMContentLoaded",V,null)}M(V)}();function V(){if(S){return }if(a.ie&&a.win){var m=Y("span");try{var l=g.getElementsByTagName("body")[0].appendChild(m);l.parentNode.removeChild(l)}catch(n){return }}S=true;if(Q){clearInterval(Q);Q=null}var j=f.length;for(var k=0;k<j;k++){f[k]()}}function J(i){if(S){i()}else{f[f.length]=i}}function M(j){if(typeof G.addEventListener!=Z){G.addEventListener("load",j,false)}else{if(typeof g.addEventListener!=Z){g.addEventListener("load",j,false)}else{if(typeof G.attachEvent!=Z){G.attachEvent("onload",j)}else{if(typeof G.onload=="function"){var i=G.onload;G.onload=function(){i();j()}}else{G.onload=j}}}}}function I(){var l=H.length;for(var j=0;j<l;j++){var m=H[j].id;if(a.pv[0]>0){var k=c(m);if(k){H[j].width=k.getAttribute("width")?k.getAttribute("width"):"0";H[j].height=k.getAttribute("height")?k.getAttribute("height"):"0";if(O(H[j].swfVersion)){if(a.webkit&&a.webkit<312){U(k)}X(m,true)}else{if(H[j].expressInstall&&!C&&O("6.0.65")&&(a.win||a.mac)){D(H[j])}else{d(k)}}}}else{X(m,true)}}}function U(m){var k=m.getElementsByTagName(P)[0];if(k){var p=Y("embed"),r=k.attributes;if(r){var o=r.length;for(var n=0;n<o;n++){if(r[n].nodeName.toLowerCase()=="data"){p.setAttribute("src",r[n].nodeValue)}else{p.setAttribute(r[n].nodeName,r[n].nodeValue)}}}var q=k.childNodes;if(q){var s=q.length;for(var l=0;l<s;l++){if(q[l].nodeType==1&&q[l].nodeName.toLowerCase()=="param"){p.setAttribute(q[l].getAttribute("name"),q[l].getAttribute("value"))}}}m.parentNode.replaceChild(p,m)}}function F(i){if(a.ie&&a.win&&O("8.0.0")){G.attachEvent("onunload",function(){var k=c(i);if(k){for(var j in k){if(typeof k[j]=="function"){k[j]=function(){}}}k.parentNode.removeChild(k)}})}}function D(j){C=true;var o=c(j.id);if(o){if(j.altContentId){var l=c(j.altContentId);if(l){L=l;T=j.altContentId}}else{L=b(o)}if(!(/%$/.test(j.width))&&parseInt(j.width,10)<310){j.width="310"}if(!(/%$/.test(j.height))&&parseInt(j.height,10)<137){j.height="137"}g.title=g.title.slice(0,47)+" - Flash Player Installation";var n=a.ie&&a.win?"ActiveX":"PlugIn",k=g.title,m="MMredirectURL="+G.location+"&MMplayerType="+n+"&MMdoctitle="+k,p=j.id;if(a.ie&&a.win&&o.readyState!=4){var i=Y("div");p+="SWFObjectNew";i.setAttribute("id",p);o.parentNode.insertBefore(i,o);o.style.display="none";G.attachEvent("onload",function(){o.parentNode.removeChild(o)})}R({data:j.expressInstall,id:K,width:j.width,height:j.height},{flashvars:m},p)}}function d(j){if(a.ie&&a.win&&j.readyState!=4){var i=Y("div");j.parentNode.insertBefore(i,j);i.parentNode.replaceChild(b(j),i);j.style.display="none";G.attachEvent("onload",function(){j.parentNode.removeChild(j)})}else{j.parentNode.replaceChild(b(j),j)}}function b(n){var m=Y("div");if(a.win&&a.ie){m.innerHTML=n.innerHTML}else{var k=n.getElementsByTagName(P)[0];if(k){var o=k.childNodes;if(o){var j=o.length;for(var l=0;l<j;l++){if(!(o[l].nodeType==1&&o[l].nodeName.toLowerCase()=="param")&&!(o[l].nodeType==8)){m.appendChild(o[l].cloneNode(true))}}}}}return m}function R(AE,AC,q){var p,t=c(q);if(typeof AE.id==Z){AE.id=q}if(a.ie&&a.win){var AD="";for(var z in AE){if(AE[z]!=Object.prototype[z]){if(z=="data"){AC.movie=AE[z]}else{if(z.toLowerCase()=="styleclass"){AD+=' class="'+AE[z]+'"'}else{if(z!="classid"){AD+=" "+z+'="'+AE[z]+'"'}}}}}var AB="";for(var y in AC){if(AC[y]!=Object.prototype[y]){AB+='<param name="'+y+'" value="'+AC[y]+'" />'}}t.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AD+">"+AB+"</object>";F(AE.id);p=c(AE.id)}else{if(a.webkit&&a.webkit<312){var AA=Y("embed");AA.setAttribute("type",W);for(var x in AE){if(AE[x]!=Object.prototype[x]){if(x=="data"){AA.setAttribute("src",AE[x])}else{if(x.toLowerCase()=="styleclass"){AA.setAttribute("class",AE[x])}else{if(x!="classid"){AA.setAttribute(x,AE[x])}}}}}for(var w in AC){if(AC[w]!=Object.prototype[w]){if(w!="movie"){AA.setAttribute(w,AC[w])}}}t.parentNode.replaceChild(AA,t);p=AA}else{var s=Y(P);s.setAttribute("type",W);for(var v in AE){if(AE[v]!=Object.prototype[v]){if(v.toLowerCase()=="styleclass"){s.setAttribute("class",AE[v])}else{if(v!="classid"){s.setAttribute(v,AE[v])}}}}for(var u in AC){if(AC[u]!=Object.prototype[u]&&u!="movie"){E(s,u,AC[u])}}t.parentNode.replaceChild(s,t);p=s}}return p}function E(k,i,j){var l=Y("param");l.setAttribute("name",i);l.setAttribute("value",j);k.appendChild(l)}function c(i){return g.getElementById(i)}function Y(i){return g.createElement(i)}function O(k){var j=a.pv,i=k.split(".");i[0]=parseInt(i[0],10);i[1]=parseInt(i[1],10);i[2]=parseInt(i[2],10);return(j[0]>i[0]||(j[0]==i[0]&&j[1]>i[1])||(j[0]==i[0]&&j[1]==i[1]&&j[2]>=i[2]))?true:false}function A(m,j){if(a.ie&&a.mac){return }var l=g.getElementsByTagName("head")[0],k=Y("style");k.setAttribute("type","text/css");k.setAttribute("media","screen");if(!(a.ie&&a.win)&&typeof g.createTextNode!=Z){k.appendChild(g.createTextNode(m+" {"+j+"}"))}l.appendChild(k);if(a.ie&&a.win&&typeof g.styleSheets!=Z&&g.styleSheets.length>0){var i=g.styleSheets[g.styleSheets.length-1];if(typeof i.addRule==P){i.addRule(m,j)}}}function X(k,i){var j=i?"visible":"hidden";if(S){c(k).style.visibility=j}else{A("#"+k,"visibility:"+j)}}return{registerObject:function(l,i,k){if(!a.w3cdom||!l||!i){return }var j={};j.id=l;j.swfVersion=i;j.expressInstall=k?k:false;H[H.length]=j;X(l,false)},getObjectById:function(l){var i=null;if(a.w3cdom&&S){var j=c(l);if(j){var k=j.getElementsByTagName(P)[0];if(!k||(k&&typeof j.SetVariable!=Z)){i=j}else{if(typeof k.SetVariable!=Z){i=k}}}}return i},embedSWF:function(n,u,r,t,j,m,k,p,s){if(!a.w3cdom||!n||!u||!r||!t||!j){return }r+="";t+="";if(O(j)){X(u,false);var q=(typeof s==P)?s:{};q.data=n;q.width=r;q.height=t;var o=(typeof p==P)?p:{};if(typeof k==P){for(var l in k){if(k[l]!=Object.prototype[l]){if(typeof o.flashvars!=Z){o.flashvars+="&"+l+"="+k[l]}else{o.flashvars=l+"="+k[l]}}}}J(function(){R(q,o,u);if(q.id==u){X(u,true)}})}else{if(m&&!C&&O("6.0.65")&&(a.win||a.mac)){X(u,false);J(function(){var i={};i.id=i.altContentId=u;i.width=r;i.height=t;i.expressInstall=m;D(i)})}}},getFlashPlayerVersion:function(){return{major:a.pv[0],minor:a.pv[1],release:a.pv[2]}},hasFlashPlayerVersion:O,createSWF:function(k,j,i){if(a.w3cdom&&S){return R(k,j,i)}else{return undefined}},createCSS:function(j,i){if(a.w3cdom){A(j,i)}},addDomLoadEvent:J,addLoadEvent:M,getQueryParamValue:function(m){var l=g.location.search||g.location.hash;if(m==null){return l}if(l){var k=l.substring(1).split("&");for(var j=0;j<k.length;j++){if(k[j].substring(0,k[j].indexOf("="))==m){return k[j].substring((k[j].indexOf("=")+1))}}}return""},expressInstallCallback:function(){if(C&&L){var i=c(K);if(i){i.parentNode.replaceChild(L,i);if(T){X(T,true);if(a.ie&&a.win){L.style.display="block"}}L=null;T=null;C=false}}}}}();