



if(typeof swfObj == "undefined") swfObj = new Object(); 

if(typeof swfObj.util == "undefined") swfObj.util = new Object(); 

if(typeof swfObj.swfObjUtil == "undefined") swfObj.swfObjUtil = new Object(); 



swfObj.ObjSwf = function(swf, id, w, h, ver, skipDetect, useExpressInstall, xiRedirectUrl, redirectUrl){ 

   if (!document.createElement || !document.getElementById) { return; }    

   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); } 

   this.skipDetect = skipDetect ? skipDetect : false; 

   if(ver) { 

      this.setAttribute('version', new swfObj.PlayerVersion(ver.toString().split("."))); 

   } 

   this.installedVer = swfObj.swfObjUtil.getPlayerVersion(this.getAttribute('version'), useExpressInstall); 

   this.setAttribute('useExpressInstall', useExpressInstall); 

   this.setAttribute('doExpressInstall', false); 

   var xir = (xiRedirectUrl) ? xiRedirectUrl : window.location; 

   this.setAttribute('xiRedirectUrl', xir); 

   this.setAttribute('redirectUrl', ''); 

   if(redirectUrl) { 

      this.setAttribute('redirectUrl', redirectUrl); 

   }    

} 



swfObj.ObjSwf.prototype = { 

   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; 

   }, 

   createParamTag: function(n, v){ 

      var p = document.createElement('param'); 

      p.setAttribute('name', n); 

      p.setAttribute('value', v); 

      return p; 

   }, 

   getVariablePairs: function(){ 

      var variablePairs = new Array(); 

      var key; 

      var variables = this.getVariables(); 

      for(key in variables){ 

         variablePairs.push(key +"="+ variables[key]); 

      } 

      return variablePairs; 

   }, 

   getFlashHTML: function() { 

      var flashNode = ""; 

      //NETSCAPE 

      if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) { 

         if (this.getAttribute("doExpressInstall")) this.addVariable("MMplayerType", "PlugIn"); 

         flashNode = '<embed type="application/x-shockwave-flash" src="'+ this.getAttribute('swf') +'" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') +'"'; 

         flashNode += ' id="'+ this.getAttribute('id') +'" name="'+ this.getAttribute('id') +'" '; 

         var params = this.getParams(); 

         for(var key in params){ 

            flashNode += [key] +'="'+ params[key] +'" '; 

         } 

         var pairs = this.getVariablePairs().join("&"); 

         if (pairs.length > 0){ 

            flashNode += 'flashvars="'+ pairs +'"'; 

         } 

         flashNode += '/>'; 

      } 

      //IE 

      else{ 

         if (this.getAttribute("doExpressInstall")) this.addVariable("MMplayerType", "ActiveX"); 

         flashNode = '<object id="'+ this.getAttribute('id') +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') +'">'; 

         flashNode += '<param name="movie" value="'+ this.getAttribute('swf') +'" />'; 

         var params = this.getParams(); 

         for(var key in params) { 

            flashNode += '<param name="'+ key +'" value="'+ params[key] +'" />'; 

         } 

         var pairs = this.getVariablePairs().join("&"); 

         if(pairs.length > 0) { 

            flashNode += '<param name="flashvars" value="'+ pairs +'" />'; 

         } 

         flashNode += "</object>"; 

      } 

      return flashNode; 

   }, 

   write: function(elementId){ 

      if(this.useExpressInstall) { 

         // Express Install 

         var expressInstallReqVer = new swfObj.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); 

         } 

      } 

      else { 

         this.setAttribute('doExpressInstall', false); 

      } 

      var ObjLocation = (typeof elementId == 'string') ? document.getElementById(elementId) : elementId; 

      if(this.skipDetect || this.getAttribute('doExpressInstall') || this.installedVer.versionIsValid(this.getAttribute('version'))){ 

         ObjLocation.innerHTML = this.getFlashHTML(); 

      } 

      else{ 

         if(this.getAttribute('redirectUrl') != "") { 

            document.location.replace(this.getAttribute('redirectUrl')); 

         } 

         else{ 

            var place = document.location.toString();             

            if (place.indexOf("http:\/\/localhost\/")!=-1){ 

               place = place.split("http://localhost/").join("");                

            } 

            else { 

               place = place.split("http://").join(""); 

               place = place.split("https://").join(""); 

            }    

            var j = 0; 

            if (place.indexOf("\/")!=-1){ 

               place = place.split("\/"); 

               j = place.length-2; 

            } 

            place = ""; 

            for (i=0; i<j; i++){ 

               place += "../"; 

            }             

            var txt = "<a href='http://www.macromedia.com/shockwave/download/download.cgi?P1_Pro d_Version=ShockwaveFlash'>"; 

            txt += "<img src='" + place + "ObjSwf/images/GetFlashPlayer.gif' width='99' height='40' border=0>"; 

            txt += "</a>"; 

            ObjLocation.innerHTML = txt; 

         } 

      } 

   } 

} 



/* ---- Player Version ---- */ 

swfObj.swfObjUtil.getPlayerVersion = function(reqVer, xiInstall){ 

   ver = reqVer.major + "." + reqVer.minor + "." + reqVer.rev;    

   var PlayerVersion = new swfObj.PlayerVersion(ver.toString().split(".")); 

   if(navigator.plugins && navigator.mimeTypes.length){ 

      var x = navigator.plugins["Shockwave Flash"];       

      if(x && x.description) { 

         PlayerVersion = new swfObj.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".")); 

      } 

   } 

   else{       

      try{ 

         var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); 

         for (var i=3; axo!=null; i++) { 

            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i); 

            PlayerVersion = new swfObj.PlayerVersion([i,0,0]);    

         } 

      } 

      catch(e){}       

      if (reqVer && PlayerVersion.major > reqVer.major) return PlayerVersion; // version is ok, skip minor detection 

      if (!reqVer || ((reqVer.minor != 0 || reqVer.rev != 0) && PlayerVersion.major == reqVer.major) || PlayerVersion.major != 6 || xiInstall) { 

         try{ 

            PlayerVersion = new swfObj.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(",")); 

         } 

         catch(e){} 

      } 

   }    

   return PlayerVersion; 

} 



swfObj.PlayerVersion = function(arrVersion){ 

   this.major = parseInt(arrVersion[0]) || 0; 

   this.minor = parseInt(arrVersion[1]) || 0; 

   this.rev = parseInt(arrVersion[2]) || 0;    

} 



swfObj.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; 

} 



if (Array.prototype.push == null) { 

   Array.prototype.push = function(item) { 

      this[this.length] = item; 

      return this.length; 

   } 

} 



var ObjSwf = swfObj.ObjSwf;






