/*CVS Add-ins*/
/* 
$Revision: 1.4 $
$RCSfile: behaviour_mm.js,v $
author: JDE
Copyright (c) A&B.face2net GmbH
*/

/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/*
    behaviour_mm.js fuer DTMB
    15.08.2007 JDE
*/
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */

/**
 * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
 *
 * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 */
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();
}

/**
 * SWFObject 
 *
 */
deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){
  if(!document.getElementById){
    return;
  }
  
  this.DETECT_KEY=_a?_a:"detectflash";
  this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);
  this.params=new Object();
  this.variables=new Object();
  this.attributes=new Array();
  
  if(_1){
    this.setAttribute("swf",_1);
  }
  
  if(id){
    this.setAttribute("id",id);
  }
  
  if(w){
	this.setAttribute("width",w);
  }
  
  if(h){
    this.setAttribute("height",h);
  }
  
  if(_5){
    this.setAttribute("version",new deconcept.PlayerVersion(_5.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=_7?_7:"high";
  
  this.addParam("quality",q);
  this.setAttribute("useExpressInstall",false);
  this.setAttribute("doExpressInstall",false);
  
  var _c=(_8)?_8:window.location;
  this.setAttribute("xiRedirectUrl",_c);
  this.setAttribute("redirectUrl","");
  
  if(_9){
    this.setAttribute("redirectUrl",_9);
  }
};

/**
 * SWFObject prototype
 *
 */
deconcept.SWFObject.prototype={

  useExpressInstall:function(_d){
    this.xiSWFPath=!_d?"expressinstall.swf":_d;
    this.setAttribute("useExpressInstall",true);
  },
  
  setAttribute:function(_e,_f){
    this.attributes[_e]=_f;
  },
  
  getAttribute:function(_10){
    return this.attributes[_10];
  },
  
  addParam:function(_11,_12){
    this.params[_11]=_12;
  },
  
  getParams:function(){
    return this.params;
  },
  
  addVariable:function(_13,_14){
    this.variables[_13]=_14;
  },
  
  getVariable:function(_15){
    return this.variables[_15];
  },
  
  getVariables:function(){
    return this.variables;
  },
  
  getVariablePairs:function(){
    var _16=new Array();
    var key;
    var _18=this.getVariables();
    
    for(key in _18){
      _16[_16.length]=key+"="+_18[key];
    }
    
    return _16;
  },
  
  getSWFHTML:function(){
    var _19="";
    if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
      if(this.getAttribute("doExpressInstall")){
        this.addVariable("MMplayerType","PlugIn");
        this.setAttribute("swf",this.xiSWFPath);
      }
      _19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";
      _19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";
    
      var _1a=this.getParams();
      for(var key in _1a){
        _19+=[key]+"=\""+_1a[key]+"\" ";
      }
    
      var _1c=this.getVariablePairs().join("&");
      if(_1c.length>0){
        _19+="flashvars=\""+_1c+"\"";
      }
      _19+="/>";
    
    }else{
      if(this.getAttribute("doExpressInstall")){
        this.addVariable("MMplayerType","ActiveX");
        this.setAttribute("swf",this.xiSWFPath);
      }
      
      _19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";
      _19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";
      
      var _1d=this.getParams();
      
      for(var key in _1d){
        _19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";
      }
      
      var _1f=this.getVariablePairs().join("&");
      
      if(_1f.length>0){
        _19+="<param name=\"flashvars\" value=\""+_1f+"\" />";
      }
      
      _19+="</object>";
    }
    return _19;
  },
  
  write:function(_20){
    if(this.getAttribute("useExpressInstall")){
      var _21=new deconcept.PlayerVersion([6,0,65]);
      
      if(this.installedVer.versionIsValid(_21)&&!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 _20=="string")?document.getElementById(_20):_20;
      n.innerHTML=this.getSWFHTML();
      
      return true;
    }else{
      if(this.getAttribute("redirectUrl")!=""){
        document.location.replace(this.getAttribute("redirectUrl"));
      }
    }
    
    return false;
  }
};

/**
 * SWFObjectUtil
 *
 */
deconcept.SWFObjectUtil.getPlayerVersion=function(){
  var _23=new deconcept.PlayerVersion([0,0,0]);
  
  if(navigator.plugins&&navigator.mimeTypes.length){
    var x=navigator.plugins["Shockwave Flash"];
    
    if(x&&x.description){
      _23=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 _26=3;
    while(axo){
      try{
        _26++;
        axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);
        _23=new deconcept.PlayerVersion([_26,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");
        _23=new deconcept.PlayerVersion([6,0,21]);
        axo.AllowScriptAccess="always";
      }catch(e){
        if(_23.major==6){
          return _23;
        }
      }
      
      try{
        axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
      }catch(e){}
      
    }if(axo!=null){
      _23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
    }
  }
}
return _23;
};

/**
 * PlayerVersion
 *
 */
deconcept.PlayerVersion=function(_29){
  this.major=_29[0]!=null?parseInt(_29[0]):0;
  this.minor=_29[1]!=null?parseInt(_29[1]):0;
  this.rev=_29[2]!=null?parseInt(_29[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;
};

/**
 * util
 */
deconcept.util={
  getRequestParameter:function(_2b){
    var q=document.location.search||document.location.hash;
    
    if(_2b==null){
      return q;
    }
    
    if(q){
      var _2d=q.substring(1).split("&");
      
      for(var i=0;i<_2d.length;i++){
        if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){
          return _2d[i].substring((_2d[i].indexOf("=")+1));
        }
      }
    }
    
    return "";
  }
};

/**
 * SWFObjectUtil.cleanupSWFs
 */
deconcept.SWFObjectUtil.cleanupSWFs=function(){
  var _2f=document.getElementsByTagName("OBJECT");
  for(var i=_2f.length-1;i>=0;i--){
    _2f[i].style.display="none";
    for(var x in _2f[i]){
      if(typeof _2f[i][x]=="function"){
        _2f[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;







if (typeof myFlashplayer == "undefined") { 
var myFlashplayer = new Object(); 
}

myFlashplayer.MM = function() {
 this.pluginVer = deconcept.SWFObjectUtil.getPlayerVersion();
}

myFlashplayer.MM.prototype = {
  hasRequiredFlashVersion: function() {
    return (this.pluginVer.major >= this.requiredVer);
  },

  getVideoplayer: function(path1, path2){
    if (!this.hasRequiredFlashVersion()) this.writeErrorMessage();
    else this.writeVideoplayer(path1, path2);
  },
  
 writeVideoplayer: function(path1, path2) {
   if(document.getElementById("flashcontent")){
   document.getElementById("flashcontent").style.border = "none";
    var swfObject = new deconcept.SWFObject(this.fUrl, this.fId, this.fVideoWidth, this.fVideoHeight, this.requiredVer, this.fbackground);//
    swfObject.addVariable("path1", path1);
    swfObject.addVariable("path2", path2);
	swfObject.addParam("salign", "BL");
	swfObject.write(this.containerID);
  }
  },
  
  getFlashplayer: function(fUrl, fWidth, fHeight){
    if (!this.hasRequiredFlashVersion()) this.writeErrorMessage();
    else{
      this.writeFlashplayer(fUrl, fWidth, fHeight);
    }
  },
  
  writeFlashplayer: function(fUrl, fWidth, fHeight) {
   if(document.getElementById("flashcontent")){
   document.getElementById("flashcontent").style.border = "none";
    var swfObject = new deconcept.SWFObject(fUrl, this.fId, fWidth, fHeight, this.requiredVer, this.fbackground);
    swfObject.addParam("quality", "high");
    swfObject.addParam("salign", "BL");
	
	 
    swfObject.write(this.containerID);
  }
  },


  writeErrorMessage: function() {
    if(document.getElementById("nonscript") && document.getElementById("basic_txt") ){
      document.getElementById("basic_txt").removeChild(document.getElementById("nonscript")); 
    }
    
    if(document.getElementById("errortxt")){
      var error = document.getElementById("errortxt");
    
      if (this.pluginVer.major != 0 || this.pluginVer.minor != 0 || this.pluginVer.rev != 0) {
        error.innerHTML = "Sie haben den Adobe® Flashplayer in der Version " + this.pluginVer.major + "." + this.pluginVer.minor + "." + this.pluginVer.rev + ". Bitte aktualisieren Sie ihn. ";
        error.innerHTML += "Die aktuelle Version";
      }else{
        error.innerHTML = "Sie haben keinen Adobe® Flashplayer installiert oder er ist deaktiviert. "
        error.innerHTML += "Die aktuelle Version";
      }  
    
    }
  
  }
}

var mm = new myFlashplayer.MM();
mm.containerID = "flashcontent";
mm.fUrl = "/fileadmin/user_upload/mm/mediaplayer.swf";
mm.fId = "player";
mm.fVideoWidth = "320";
mm.fVideoHeight = "280";
mm.requiredVer = "8";
mm.fbackground = "#fff";

var experiment = new myFlashplayer.MM();
experiment.containerID = "flashcontent";
experiment.fId = "player";
experiment.requiredVer = "6";
experiment.fbackground = "#fff";

