/***
* 
* 	SWFOBJET UTIL 
*   @author Henry Schmieder
*   helps by providing player version specific content files choose of optimal file for user system player
* 	PlayerVersionContents.setVersionContent(8, "test8.swf");
*	PlayerVersionContents.setVersionContent(10, "test10.swf");
*	PlayerVersionContents.setVersionContent(9, "test9.swf");
*	var f = PlayerVersionContents.getOptimalContent();
*		
*	var so = new SWFObject("so_tester.swf", "sotester", "300", "300", "9", "#FF6600");
*	so.write("flashcontent");
*
*/
	PlayerVersionContents = function() {}
	var p = PlayerVersionContents;
	p.contentStack = new Object();
	
		
	/**
	* @param versionMajor int major player version
	* @param versionSwf string path to swf file for this major version
	*/
	p.setVersionContent = function( versionMajor, versionSwf )
	{
		var versionMinor = 0;
		var versionRev = 0;
		if( typeof versionMajor == 'object' ) {
			var v = versionMajor;
			versionMajor = v[0];
			versionMinor = v[1];
			versionRev = v[2];
		}
		this.contentStack['V'+versionMajor] = versionSwf;
		this.contentStack['r'+versionMajor] = versionRev;
		this.contentStack['m'+versionMajor] = versionMinor;
	}
		
	p.getOptimalContent = function()
	{
		var thisMajor = deconcept.SWFObjectUtil.getPlayerVersion().major;
		var thisRev = deconcept.SWFObjectUtil.getPlayerVersion().rev;
	
		var minDiff = 1000;
		for(var i in this.contentStack) {
			var n =  Number( i.substr(1, 3) );
			var tmpDiff = thisMajor - n;
			if(tmpDiff < minDiff && tmpDiff > -1)  {
				if( tmpDiff === 0 ) {
					if( this.contentStack['r'+thisMajor] <= thisRev ) {
						minDiff = tmpDiff;
					}
				}else{
					minDiff = tmpDiff;
				}
			}
		}
		
		
		return ( thisMajor - minDiff <= thisMajor ) ? { fname: this.contentStack['V'+(thisMajor - minDiff)].toString(), version: thisMajor} : null;
	}