/* flash.js */
var flash=new Object();
flash.load=function(typ,name,path,width,height,wm){
    if(typeof deconcept=="undefined"){ var deconcept=new Object(); }
    if(typeof deconcept.util=="undefined"){ deconcept.util=new Object(); }
    if(typeof deconcept.SWFObjectUtil=="undefined"){ deconcept.SWFObjectUtil=new Object(); }
    deconcept.SWFObject=function(swf,id,w,h,ver,c,quality,xiRedirectUrl,redirectUrl,detectKey){
        if(!document.getElementById){ return; }
        this.DETECT_KEY=detectKey?detectKey:'detectflash';
        this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);
        this.params=new Object();
        this.variables=new Object();
        this.attributes=new Array();
        if(swf){ this.setAttribute('swf',swf); }
        if(id){ this.setAttribute('id',id); }
        if(w){ this.setAttribute('width',w); }
        if(h){ this.setAttribute('height',h); }
        if(ver){ this.setAttribute('version',new deconcept.PlayerVersion(ver.toString().split("."))); }
        this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();
        if(!window.opera&&document.all&&this.installedVer.major>7){ deconcept.SWFObject.doPrepUnload=true; }
        if(c){ this.addParam('bgcolor',c); }
        var q=quality?quality:'high';
        this.addParam('quality',q);
        this.setAttribute('useExpressInstall',false);
        this.setAttribute('doExpressInstall',false);
        var xir=(xiRedirectUrl)?xiRedirectUrl:window.location;
        this.setAttribute('xiRedirectUrl',xir);
        this.setAttribute('redirectUrl','');
        if(redirectUrl){ this.setAttribute('redirectUrl',redirectUrl); }
    };
    deconcept.SWFObject.prototype={
        useExpressInstall:function(path){
            this.xiSWFPath=!path?"expressinstall.swf":path;
            this.setAttribute('useExpressInstall',true);
        },
        setAttribute:function(name,value){
            this.attributes[name]=value;
        },
        getAttribute:function(name){ return this.attributes[name]; },
        addParam:function(name,value){ this.params[name]=value; },
        getParams:function(){ return this.params; },
        addVariable:function(name,value){ this.variables[name]=value; },
        getVariable:function(name){ return this.variables[name]; },
          getVariables:function(){ return this.variables; },
          getVariablePairs:function(){ 
              var variablePairs=new Array();
              var key;
              var variables=this.getVariables();
              for(key in variables){
                  variablePairs[variablePairs.length]=key+"="+variables[key];
              }
              return variablePairs;
          },
          getSWFHTML:function(){
              var mctype='"application/x-shockwave-flash"';
              var classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000';
              var swfNode="";
              if(typ=='sw'){
                  mctype='type="application/x-director"';
                  classid='clsid:166B1BCA-3F9C-11CF-8075-444553540000';
              }
              if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
                  if(this.getAttribute("doExpressInstall")){
                      this.addVariable("MMplayerType","PlugIn");
                      this.setAttribute('swf',this.xiSWFPath);
                  }
                  swfNode='<embed '+mctype+' src="'+this.getAttribute('swf')+'" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'" style="'+this.getAttribute('style')+'"';swfNode+=' id="'+this.getAttribute('id')+'" name="'+this.getAttribute('id')+'" ';                   var params=this.getParams();                   for(var key in params){                       swfNode+=[key]+'="'+params[key]+'" ';                   }                   var pairs=this.getVariablePairs().join("&");                   if(pairs.length>0){ swfNode+='flashvars="'+pairs+'"'; }
                  swfNode+='/>';
              } else {
                  if(typ=='sw'){
                      swfNode='<object id="'+this.getAttribute('id')+'" classid="'+classid+'" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'" style="'+this.getAttribute('style')+'">';
                      var params=this.getParams();
                      for(var key in params){
                          swfNode+='<param name="'+key+'" value="'+params[key]+'" />';
                      }
                      swfNode+='<param name="allowScriptAccess" value="sameDomain" />';
                      swfNode+='<param name="src" value="'+this.getAttribute('swf')+'" />';
                      swfNode+='<param name="swStretchStyle" value="meet" />';
                      swfNode+="</object>";
                  } else {
                      if(this.getAttribute("doExpressInstall")){
                          this.addVariable("MMplayerType","ActiveX");
                          this.setAttribute('swf',this.xiSWFPath);
                      }
                      swfNode='<object id="'+this.getAttribute('id')+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'" style="'+this.getAttribute('style')+'">';swfNode+='<param name="movie" value="'+this.getAttribute('swf')+'" />';
                      var params=this.getParams();
                      for(var key in params){
                          swfNode+='<param name="'+key+'" value="'+params[key]+'" />';
                      }
                      var pairs=this.getVariablePairs().join("&");
                      if(pairs.length>0){ swfNode+='<param name="flashvars" value="'+pairs+'" />'; }
                      swfNode+="</object>";
                  }
              }
              return swfNode;
          },
          write:function(elementId){
              if(this.getAttribute('useExpressInstall')){
                  var expressInstallReqVer=new deconcept.PlayerVersion([6,0,65]);
                  if(this.installedVer.versionIsValid(expressInstallReqVer)&&!this.installedVer.versionIsValid(this.getAttribute('version'))){
                      this.setAttribute('doExpressInstall',true);
                      this.addVariable("MMredirectURL",escape(this.getAttribute('xiRedirectUrl')));
                      document.title=document.title.slice(0,47)+" - Flash Player Installation";
                      this.addVariable("MMdoctitle",document.title);
                  }
              }
              if(this.skipDetect||this.getAttribute('doExpressInstall')||this.installedVer.versionIsValid(this.getAttribute('version'))){
                  var n=(typeof elementId=='string')?document.getElementById(elementId):elementId;
                  n.innerHTML=this.getSWFHTML();
                  return true;
              } else {
                  if(this.getAttribute('redirectUrl')!=""){
                      document.location.replace(this.getAttribute('redirectUrl'));
                  }
              }
              return false;
          }
      };
      deconcept.SWFObjectUtil.getPlayerVersion=function(){
          var PlayerVersion=new deconcept.PlayerVersion([0,0,0]);
          if(navigator.plugins&&navigator.mimeTypes.length){
              var x=navigator.plugins["Shockwave Flash"];
              if(x&&x.description){
                  PlayerVersion=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));
              }
          } else if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){
              var axo=1;
              var counter=3;
              while(axo){
                  try {
                      counter++;
                      axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+counter);
                      PlayerVersion=new deconcept.PlayerVersion([counter,0,0]);
                  } catch(e){
                      axo=null;
                  }
              }
          } else {
              try {
                  var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
              } catch(e){
                  try {
                      var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
                      PlayerVersion=new deconcept.PlayerVersion([6,0,21]);
                      axo.AllowScriptAccess="always";
                  } catch(e) {
                      if(PlayerVersion.major==6){
                          return PlayerVersion;
                      }
                  }
                  try {
                      axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
                  } catch(e) {}
              }
              if(axo!=null){
                  PlayerVersion=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
              }
          }
          return PlayerVersion;
      };
      deconcept.PlayerVersion=function(arrVersion){
          this.major=arrVersion[0]!=null?parseInt(arrVersion[0]):0;
          this.minor=arrVersion[1]!=null?parseInt(arrVersion[1]):0;
          this.rev=arrVersion[2]!=null?parseInt(arrVersion[2]):0;
      };
      deconcept.PlayerVersion.prototype.versionIsValid=function(fv){
          if(this.major<fv.major){ return false; }
          if(this.major>fv.major){ return true; }
          if(this.minor<fv.minor){ return false; }
          if(this.minor>fv.minor){ return true; }
          if(this.rev<fv.rev){ return false; }
          return true;
      };
      deconcept.util={getRequestParameter:function(param){
          var q=document.location.search||document.location.hash;
          if(param==null){ return q; }
          if(q){
              var pairs=q.substring(1).split("&");
              for(var i=0;i<pairs.length;i++){
                  if(pairs[i].substring(0,pairs[i].indexOf("="))==param){
                      return pairs[i].substring((pairs[i].indexOf("=")+1));
                  }
              }
          }
          return"";
      }};
      deconcept.SWFObjectUtil.cleanupSWFs=function(){
          var objects=document.getElementsByTagName("OBJECT");
          for(var i=objects.length-1;i>=0;i--){
              objects[i].style.display='none';
              for(var x in objects[i]){
                  if(typeof objects[i][x]=='function'){
                      objects[i][x]=function(){};
                  }
              }
          }
      };
      if(deconcept.SWFObject.doPrepUnload){
          if(!deconcept.unloadSet){
              deconcept.SWFObjectUtil.prepUnload=function(){
                  __flash_unloadHandler=function(){};
                  __flash_savedUnloadHandler=function(){};
                  window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);
              };
              window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);
              deconcept.unloadSet=true;
          }
      }
      if(!document.getElementById&&document.all){
          document.getElementById=function(id){
              return document.all[id];
          };
      }
      var getQueryParamValue=deconcept.util.getRequestParameter;
      var FlashObject=deconcept.SWFObject;
      var SWFObject=deconcept.SWFObject;
      var width=width>0?width:'100%';
      var height=height>0?height:'100%';
      var fla=new FlashObject(path,name+"_mc",width,height,"6");
      if(wm=='transparent'){
          fla.addParam("wmode","transparent");
      }
      fla.write(name);
};
