
function cmnInformation(){
	var eHTML = document.getElementsByTagName( 'html' )[0];
	this.sUser_agent = navigator.userAgent.toLowerCase();
	if( window.opera ){
		this.bOpera = true; Common.Class.add( eHTML, 'Opera');
	}
	if( !this.bOpera && this.sUser_agent.indexOf( 'msie' ) != -1 ){
		this.bIE = true; Common.Class.add( eHTML, 'IE');
	}else if( navigator.product == 'Gecko' ){
		this.bGecko = true; this.bMozilla = true; Common.Class.add( eHTML, 'Mozilla');
	}
	this.bMAC = ( this.sUser_agent.indexOf( 'mac' ) != -1 );
	this.sLanguage = null;
	this.bHTTP = null;
	this.bHandheld = false;
	return this;
}

var cmn_oInformation = new cmnInformation();

function cmnInit_Information(){
	cmn_oInformation.sLanguage = ( document.body && document.body.getAttribute( "lang" ) != "" ) ? document.body.getAttribute( "lang" ) : "ru";
	cmn_oInformation.bHTTP = ( document.location.href.indexOf("http://") == 0 ) ? true : false;
}


function cmnFlash(){
	var aeFlash = new Array();
	this.build = function( vEnabled, vDisabled, vNone, iVersion  ){
		var vVersion = this.get_version( iVersion );
		if( vVersion.toString() != "false" ){
			this.enable();
			vVersion = this.get_version( iVersion );
		}
		if( vVersion ){
			if( vEnabled.nodeType )	vEnabled.style.display = "block";
			else document.write( build_object(vEnabled) );
			if( vDisabled.nodeType ) vDisabled.style.display = "none";
			if( vNone.nodeType ) vNone.style.display = "none";
		}else{
			if( vEnabled.nodeType ) vEnabled.style.display = "none";
			if( vDisabled.nodeType ) vDisabled.style.display = "block";
			else if( vDisabled ) document.write( vDisabled );
			if( parseInt(vVersion) == 0 );
				if( vNone.nodeType ) vNone.style.display = "block";
				else if( vNone ) document.write( vNone );
		}
	}
	this.get_version = function( iVersion ){
		var vVersion = Common.Cookie.get( "flash" );
		if( !vVersion ){
			vVersion = check_flash_version( iVersion );
			set_flash_cookie( vVersion );
			return vVersion;
		}else if( iVersion && iVersion > vVersion ){
			vVersion = false;
		}
		return ( vVersion == "false" ) ?  false : vVersion;
	}
	this.disable = function(){
		set_flash_disabled( true );
	}
	this.enable = function(){
		set_flash_disabled( false );
	}
	this.set_disabled = function( bDisabled ){
		set_flash_disabled( bDisabled );
	}

	return this;

	function build_object( sOptions ){
		var asOptions = sOptions.split( "," );
		for( var i = 0 ; i < asOptions.length ; i++){
			asPair = asOptions[i].split( "=" );
			asOptions[asPair[0]] = unescape( asPair[1] );
		}
		var sHTML = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"';
		sHTML += 'codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"' + 'width="' + asOptions.width + '" height="' + asOptions.height + '" align="middle">' + '<param name="allowScriptAccess" value="sameDomain">' + '<param name="movie" value="' + asOptions.source + '">' + '<param name="quality" value="high">';
		if( asOptions.base ){ sHTML += '<param name="base" value="' + asOptions.base + '">'; }
		if( asOptions.background ){ sHTML += '<param name="bgcolor" value="' + asOptions.background + '">'; }
		if( asOptions.transparent ){ sHTML += '<param name="wmode" value="opaque">' }
		if( asOptions.flashvars ){ sHTML += '<param name="flashvars" value="' + asOptions.flashvars + '">'; }
		sHTML += '<embed quality="high" allowScriptAccess="sameDomain" type="application/x-shockwave-flash"' + ' pluginspage="http://www.macromedia.com/go/getflashplayer"' + ' src="' + asOptions.source + '" width="' + asOptions.width + '" height="' + asOptions.height + '"';
		if( asOptions.base ){ sHTML += ' base="' + asOptions.base + '"'; }
		if( asOptions.background ){ sHTML += ' bgcolor="' + asOptions.background + '"'; }
		if( asOptions.transparent ){ sHTML += ' wmode="opaque"' }
		if( asOptions.flashvars ){ sHTML += ' flashvars="' + asOptions.flashvars + '"'; }
		sHTML += '></embed></object>';
		return sHTML;
	}
	function set_flash_disabled( bDisabled ){
		set_flash_cookie( ( bDisabled ) ?  "false" : "" );
	}
	function check_flash_version( iVersion ){
		if( navigator.plugins && navigator.plugins['Shockwave Flash'] ){
			var sVersion = ( !iVersion ) ? "\\d+" : "[" + iVersion + "-9]\\d*";
			sVersion = parseInt( navigator.plugins['Shockwave Flash'].description.replace( new RegExp( "^[^\\d]+(" + sVersion + ").*$"), "$1" ) );
			return ( isNaN( sVersion ) ) ? ( !iVersion ) ? false : 0 : sVersion;
		}else if( cmn_oInformation.bIE && !cmn_oInformation.bMAC ){
			var oTemp, iMax = 20;
			iVersion = ( !iVersion ) ? 3 : iVersion;
			for( var i = iVersion ; i < iMax ; i++ ){
				try{
					oTemp = new ActiveXObject( "ShockwaveFlash.ShockwaveFlash." + i );
					iVersion = i;
				}catch(e){
					return ( i > iVersion ) ? iVersion : 0;
				}
			}
			return iVersion;
		}else{
			return ( !iVersion ) ? false : 0;
		}
	}
	function set_flash_cookie( sCookie_value ){
		var dNow = new Date();
		var dExpires = new Date();
		dExpires.setTime( dNow.getTime() + 1000 * 60 * 60 * 24 * 365 );
		Common.Cookie.set( "flash", ( !sCookie_value ? "" : sCookie_value ), '/', dExpires );
	}
}

var oFlash = new cmnFlash();
