﻿var debugMode = false;
var debug_maxLines = 20;


/*** BEGIN Print Function ***/

// PopUp 
function printLink () {
    printPopUp=window.open("/reddot/js/Javascript PopUpDE.asp","printPopUp","width=624,height=600,scrollbars=yes");
    printPopUp.focus;  
} 

// Get Content from Opener & Print
function buildPrintPopUp() {
    // get elements 
    if (document.getElementById("pageContent") != null) {
        if (opener.document.getElementById("mainContent") != null) {
            document.getElementById("pageContent").innerHTML = opener.document.getElementById("mainContent").innerHTML;
        }
    }
}

/**
 * Returns an GET Parameter
 *
 * @param String Name of Parameter
 * @return String Value of Paramter
 */
function GetParam(name) {
  var start=location.search.indexOf("?"+name+"=");
  if (start<0) start=location.search.indexOf("&"+name+"=");
  if (start<0) return '';
  start += name.length+2;
  var end=location.search.indexOf("&",start)-1;
  if (end<0) end=location.search.length;
  var result='';
  for(var i=start;i<=end;i++) {
    var c=location.search.charAt(i);
    result=result+(c=='+'?' ':c);
  }
  return unescape(result);
}

var worked;
worked=false;


function printer(waitFlag) {
    if (waitFlag != 1) {
        window.setTimeout("printer(1)", 7);
        return;
    }

    if (navigator.appName.toUpperCase() == 'MICROSOFT INTERNET EXPLORER') { 
        frameObj = document.external;            
    } else {
        frameObj = window.frames['external'];
    }
    if (frameObj != null) { 
        try {
            // Klappt nicht bei externen iFrames
            frameObj.focus();
            frameObj.print();
        } catch (err) {
            window.print();
        }
    } else {
        window.print();
    }
} 

/*
function printer(waitFlag) {
 
   if (navigator.appName.toUpperCase() == 'MICROSOFT INTERNET EXPLORER') { 
       frameObj = document.external;            
   } else {
       frameObj = window.frames['external'];
   } 
   if (frameObj != null) {
      if (waitFlag != 1) {
         window.setTimeout("printer(1)", 7);
      } else {
         if (worked == false) {
             worked=true;
             try { 

                frameObjSrc = document.getElementById('external').src;
                urlParts = frameObjSrc.split("\?");
                result = pathinfo(urlParts[0]);

                if (result.extension == 'asp') {
                    // iframe should print itself
                    document.getElementById("external").src = document.getElementById("external").src + "print=yes";
                } else {
                    // fallback
                    var op = window.open(frameObjSrc);
                    window.setTimeout(function() { op.print(); }, 100);
                    window.setTimeout(function() { op.close(); }, 300);   
                 }
             } catch (err) {
                window.print();
             }
         }
        }
    } else {
        window.print();
    }    
}
*/

/*
function printer(waitFlag) {
 
   //aki if (navigator.appName.toUpperCase() == 'MICROSOFT INTERNET EXPLORER') { 
       //aki frameObj = document.external;    
    if (navigator.appName.toUpperCase() == 'MICROSOFT INTERNET EXPLORER' && waitFlag == 1) {
        frameObj = document.getElementById('external').src;
        var op = window.open(frameObj);
        op.print();
        window.setTimeout(function() { op.close(); }, 100);
        return;       
   } else {
       frameObj = window.frames['external'];
   } 

   if (frameObj != null) {
      if (waitFlag != 1) {
         window.setTimeout("printer(1)", 7);
      } else {
         if (worked == false) {
             worked=true;

             try { 
                // iframe should print itself
                 frameObj.print();
                 //aki document.getElementById("external").src = document.getElementById("external").src + "print=yes";
             } catch (err) {
                window.print();
             }
         }
        }
    } else {
        window.print();
    }    
}
*/

/*** END Print Functions ***/


/*** BEGIN Common Functions ***/

// standard rollover
function changeImg (imgId, newSrc) {
 try {
  document.getElementById(imgId).src=newSrc;
 } catch (e) {
  debug(e);
 }
}

// debugging javascript console
var debug_lines = 0;
var debug_lastlog = "";
function debug(msg) {
 if (!debugMode) {
  // not in debug mode 
  return;
 }
 if (msg == debug_lastlog) {
  return;
 } else {
  debug_lastlog = msg;
 }

 //return;
 try {
  debug_lines++;
  consoleData = document.getElementById("debugConsole").innerHTML;

  if (debug_lines <= debug_maxLines) { 
   consoleData += "<br>"+msg;
  } else {
   debug_lines = 0;
   consoleData = msg;
  }
   
  document.getElementById("debugConsole").innerHTML = consoleData;
  
 } catch (e) {
  alert(e);
 }
}
/*** END Common Functions ***/


/*** BEGIN Navigation Functions ***/
/*
 
 navId:
  0: privat
  1: investor
  2: unternehmen
  99: search link

  
 positionFlag: 
  0: topNavigationItems (image button)
  1: topNavigationLayer
*/
var activeNav = 99;   
var activeNavLayer = 99;    // 99 = off
var activeNavButton = 99;    // 99 = off
var navItem = false;      // active NavItem Flag (internal)
function topNavOn(navId,position,waitState) {
 debug("on:"+navId+" - "+position+" - "+waitState+ "acN:"+activeNav);
 try {

  
  // highlight navigation item
  document.getElementById("topNav_"+navId).src=img_topNavX[navId].src;;
  // show navigation layer
  document.getElementById("navContent_"+navId).style.display="inline";
  // update active flag
  if (position == 0) {   
   // update active flag
   activeNavLayer = 99;
   activeNavButton = navId;
   activeNav = navId;
   if (activeArea != navId) {
   
    if (activeArea != -1) {  
     // hide current navigation
     document.getElementById("navContent_"+activeArea).style.display="none";
    }
   }
  } else {
   // update active flag
   activeNavButton = 99;
   activeNavLayer = navId;
   activeNav = navId;
  }
 } catch (e) {
  debug(e);
 }

}

var activeNavBeforeOffTask;  
function topNavOff(navId,position,waitState) {
 debug("off:"+navId+" - "+position+" - "+waitState+ "acN:"+activeNav);
 try {
  if (waitState == 0) {
   if (navItem) {
    /*  used to ignore mouse over events for navigation items */
    navItem = false;
    return;
    
   }
   
   activeNavBeforeOffTask = activeNav;
   
   // wait some seconds before we hide the layer
   window.setTimeout("topNavOff("+navId+","+position+",1)", 1);
  } else {
  
   if (navItem) {
    /*  used to ignore mouse over events for navigation items */
    navItem = false;
    return;
    
   }
   if  ((position == 0 && (activeNavLayer != navId)) || (position == 1 && (activeNavButton != navId))) {
    if (activeArea != navId) {
    
     // hide navigation layer
     document.getElementById("navContent_"+navId).style.display="none";
  
     if (activeArea != -1 && activeNavBeforeOffTask == activeNav) {   
      //reactivate current navigation
      document.getElementById("navContent_"+activeArea).style.display="inline";
     }
     // reset navigation button to standard 
     document.getElementById("topNav_"+navId).src=img_topNav[navId].src;
    }
    // update active flag
    if (position == 0) {
     activeNavButton=99;  
    } else {
     activeNavLayer=99;
    }
    activeNav = 99;
    
 
   }
  }
   
 } catch (e) {
 
  debug(e);
 }
}


/*** END Navigation Functions ***/




// KlappLogik
function oItem(itemId, openAll) {

    
    currentHeadClassName = document.getElementById(itemId + "_head").className;
    currentTextStypeDisplay = document.getElementById(itemId + "_text").style.display;

    // close open text blocks
    var search_text = /_text$/;
    for (i = 0; i < document.getElementsByTagName('div').length; i++) {
        if (search_text.test(document.getElementsByTagName('div')[i].id)) {
            if (!openAll) {
                document.getElementsByTagName('div')[i].style.display="none";
            }
        }
    }
    // close open head links
    var search_head = /_head$/;
    for (i = 0; i < document.getElementsByTagName('a').length; i++) {
        if (search_head.test(document.getElementsByTagName('a')[i].id)) {
            document.getElementsByTagName('a')[i].className="closed";
        }
    }
    // if an item is already open - just close it !
    if (currentHeadClassName != "open") {
        // open current item
        if (!openAll) {
            document.getElementById(itemId + "_head").className = 'open';
        }
        document.getElementById(itemId + "_text").style.display = "block";;
    }  

}


 


// Form-Tools
// (c) 2000 by MediaAktiv GmbH, Munich
// 1.01.10.04.2000, by TFM
function checkCorrectDateNumberFormat(datum1) {
   // checked ob Datumsformat=12.12.1900 und ob Monatszahl<12, Monatstage richtig, d.h. Januar=31, November=30 und Beruecksichtigung Schaltjahre (Februar 29 Tage)
   var test=-1;
   var tag=0;
   var monat=0;
   var jahr=0;
   var laenge1 = datum1.length;
           
   switch(laenge1) {
     case 6: 
            if(datum1.indexOf(".")==1&&datum1.indexOf(".",2)==3) {
    tag = parseInt(datum1.substring(0,1),10);
                monat = parseInt(datum1.substring(2,3),10);
                jahr = parseInt(datum1.substring(4),10);
   }
            test=16;
   if(tag==0||monat==0) test=-1;
   break;
        case 7: 
   if((datum1.indexOf(".")==1&&datum1.indexOf(".",2)==4)) {
    tag = parseInt(datum1.substring(0,1),10);
                monat = parseInt(datum1.substring(2,4),10);
                jahr = parseInt(datum1.substring(5),10);
   }
   else {
    if((datum1.indexOf(".")==2&&datum1.indexOf(".",3)==4)) {
     tag = parseInt(datum1.substring(0,2),10);
                    monat = parseInt(datum1.substring(3,4),10);
                    jahr = parseInt(datum1.substring(5),10);
    }
   }
   test=16;
            if(tag==0||monat==0) test=-1;
   break;
   
  case 8: 
   if(datum1.indexOf(".")==2&&datum1.indexOf(".",3)==5) {
    tag = parseInt(datum1.substring(0,2),10);
                monat = parseInt(datum1.substring(3,5),10);
                jahr = parseInt(datum1.substring(6),10);
    test=16;
    if(tag==0||monat==0) test=-1;
   }
   else {
    if(datum1.indexOf(".")==1&&datum1.indexOf(".",2)==3) {
     tag = parseInt(datum1.substring(0,1),10);
                    monat = parseInt(datum1.substring(2,3),10);
                    jahr = parseInt(datum1.substring(4),10);
     test=9;    
                }
    if(jahr<1900) test=17;
    if(tag==0||monat==0) test=-1;
   }
   break;
        
        case 9:
   if(datum1.indexOf(".")==1&&datum1.indexOf(".",2)==4) {
    tag = parseInt(datum1.substring(0,1),10);
                monat = parseInt(datum1.substring(2,4),10);
                jahr = parseInt(datum1.substring(5),10);
    if(tag<10&&monat<10) test=2;
    else {
     if(tag<10) test=1;
     else if(monat>12) test=15;
    }
   }
   else {
    if(datum1.indexOf(".")==2&&datum1.indexOf(".",3)==4) {
     tag = parseInt(datum1.substring(0,2),10);
                    monat = parseInt(datum1.substring(3,4),10);
                    jahr = parseInt(datum1.substring(5),10);
                 if(tag<10&&monat<10) test=4;
     else {
      if(monat<10) test=3;
      else if(monat>12) test=15;
     }
    }
   }
   if(monat==1||monat==3||monat==5|monat==7||monat==8||monat==10||monat==12) if(!(0<tag&&tag<32)) test=10;
            if(monat==4||monat==6||monat==9||monat==11) if(!(0<tag&&tag<31)) test=11; 
   if(monat==2) {
                        if(jahr%4==0) {
       if(jahr%100==0&&jahr%400!=0) {
        if(tag<10) test=5;
        else {
         if(tag<29) test=8;
         else test=14;
        }
       }
          else {
        if(jahr%400==0) {
         if(tag<10) test=5;
         else {
          if(tag<30)  test=8;
          else test=13;
         }
        }
        else {
         if(tag>29) test=13;
        }
       }
      }
      else if(!(0<tag&&tag<29)) test=14;     
   }
   if(jahr<1900) test=17;
   if(monat>12) test=15;
   if(tag==0||monat==0) test=-1;   
   break;
  case 10: 
   if(datum1.indexOf(".")==2&&datum1.indexOf(".",3)==5) {
    tag = parseInt(datum1.substring(0,2),10);
                monat = parseInt(datum1.substring(3,5),10);
                jahr = parseInt(datum1.substring(6),10);
                if(tag<10&&monat<10) test=5;
    else {
     if(monat<10) test=6;
     else if(tag<10) test=7;
    }
                    if(tag>=10&&monat>=10) test=8;
     if(monat==1||monat==3||monat==5|monat==7||monat==8||monat==10||monat==12) if(!(0<tag&&tag<32)) test=10;
                    if(monat==4||monat==6||monat==9||monat==11) if(!(0<tag&&tag<31)) test=11; 
        if(monat==2) {
                        if(jahr%4==0) {
       if(jahr%100==0&&jahr%400!=0) {
        if(tag<10) test=5;
        else {
         if(tag<29) test=8;
         else test=14;
        }
       }
          else {
        if(jahr%400==0) {
         if(tag<30&&tag>0) test=8;
         else test=13;
        }
        else {
         if(tag>29) test=13;
        }
       }
      }
      else if(!(0<tag&&tag<29)) test=14; 
     }
             if(jahr<1900) test=17;
    if(monat>12) test=15;
    if(tag==0||monat==0) test=-1;      
   }
   }
   return test;
}
// checkt Datum, gibt FeedBack und kann Datum tunen (wenn eine 0 fehlt oder so)
//
// params: DATUM, Bezeichnung DATUM
// returns: String DATUM
function checkDate(_datum,_name) {
 if(_datum=="") {
  alert('Bitte geben Sie '+_name+' in folgender Schreibweise ein: TT.MM.JJJJ.'); 
  return "";
 }
 var date1 = "";
 var test = checkCorrectDateNumberFormat(_datum);
 
 if(test==1||test==2) { date1= new String(); date1="0"+_datum.substring(0,9); } 
 if(test==3||test==4) { date1= new String(); date1=_datum.substring(0,3)+"0"+_datum.substring(3,9); }
 if(test==5||test==6||test==7||test==8) { date1= new String(); date1=_datum.substring(0,10); }
 if(test==9) { date1= new String(); date1="0"+_datum.substring(0,2)+"0"+_datum.substring(2,8); }
 if(test==10) { alert("Die Monate Januar, Maerz, Mai, Juli, August, Oktober und Dezember haben 31 Tage !"); return ""; }
 if(test==11) { alert("Die Monate April, Juni, September und November haben 30 Tage !"); return ""; }
 if(test==12) { alert("Um festzustellen, ob das eingegebene Jahr ein Schaltjahr ist, geben Sie bitte die ganze Jahreszahl ein!");  return ""; }
 if(test==13) { alert("Der Monat Februar in einem Schaltjahr hat nur 29 Tage");  _clicked = false; return ""; }
 if(test==14) { alert("Das eingegebene Jahr ist kein Schaltjahr. Der Monat Februar hat daher nur 28 Tage!"); return ""; }
 if(test==15) { alert("Das Jahr hat nur 12 Monate!"); return ""; }
 if(test==16) { alert("Bitte geben Sie das Jahr vierstellig ein!");  return ""; }
 if(test==17) { alert("Bitte überprüfen Sie das Jahr!");  return ""; }
 if(test==-1) { alert('Bitte geben Sie '+_name+' in folgender Schreibweise ein: TT.MM.JJJJ.'); return ""; } 
  
 return date1;
}
// checked ein Alter ab und gibt TRUE zurueck, wenn ok
//
// params: heutiges DATUM, GEBDATUM, Minium
// returns: Boolean TRUE = ok
function checkAgeMin(maschdat,_datum,_min) {
 if (parseInt(maschdat.substring(6,10),10)-parseInt(_datum.substring(6,10),10) < _min) {
  alert('Das Alter muss mind. '+_min+' Jahre betragen!'); return;
 } else {
  if (parseInt(maschdat.substring(6,10),10)-parseInt(_datum.substring(6,10),10) == _min) {
   if (parseInt(maschdat.substring(3,5),10)>parseInt(_datum.substring(3,5),10)) {
    alert('Das Alter muss mind. '+_min+' Jahre betragen!'); return;
   } else {
    if (parseInt(maschdat.substring(3,5),10)==parseInt(_datum.substring(3,5),10)) {
     if (parseInt(maschdat.substring(0,2),10)>parseInt(_datum.substring(0,2),10)) {
      return true; 
     } else {
      alert('Das ALter muss mind. '+_min+' Jahre alt sein!'); return;      
     }
    } else return true;
   }
     } else return true;
 }
}
// checked ob String korrekt 
   
function checkAlphabet(_str) {
   var laenge = _str.length;
   if(laenge<1) return false;
   var zahl = "";
   var zahl2 = 0;
   var okFlag = false;
   for (i=0; i<laenge; i++) {
      zahl=_str.charCodeAt(i);
   if (((zahl>=48 && zahl<=57) || (zahl==44))) {
         okFlag = true;
         break;
      }
      else okFlag=false;
   }
   return okFlag;
}
function checkEMail(_str) {
   var laenge = _str.length;
   if(laenge<1) return false;
   var okF1 = false;
   var okF2 = false;
   for (i=0; i<laenge; i++) {
      if(_str.charAt(i)=="@") okF1 = true;
   if(_str.charAt(i)==".") okF2 = true;
   }
   if(okF1 && okF2) return true;
   else return false;
}
// checkt einen String ab und gibt -1 zurueck, wenn nicht ok
//
// params: Telefonnummer
// returns: String Telefonnummer oder -1 wenn nicht ok
function checkTelefon(which) {
 var ziffern = new Array("(",")","/","-","+",".","1","2","3","4","5","6","7","8","9","0"," ");
 var test1 = new String(which);
 var erg = -1;
 var _flag = false;
 for(var i=0;i<test1.length;i++) {    
    _flag = true;  
       for(var j=0;j<ziffern.length;j++) {
    if(test1.charAt(i)==ziffern[j]) _flag = false;
    }
    if(_flag) {
     erg = 0;
   break;
    }
 }
 return erg;
} 
// checkt einen String auf Nur-Zahlen ab
//
// params: String
// returns: Boolean TRUE = ok
function checkZiffern(what) {
 var ref = new Array("0","1","2","3","4","5","6","7","8","9");
 if (what.length<1) return false;
 var _check = 0;
 for (i=0; i<what.length; i++){
  for (j=0; j<ref.length; j++){
   if (what.charAt(i)==ref[j]) _check++;
  }
 }
 if (_check!=what.length) return false;
 return true;
}
function compareDates(datum_1, datum_2) {
   // checked 1 >= 2
   if(datum_1==null || datum_2==null) return -1;
   var itmpa_1 = parseInt(datum_1.substring(0,2),10);
   var itmpb_1 = parseInt(datum_1.substring(3,5),10);
   var itmpc_1 = parseInt(datum_1.substring(6,10),10);
   var itmpa_2 = parseInt(datum_2.substring(0,2),10);
   var itmpb_2 = parseInt(datum_2.substring(3,5),10);
   var itmpc_2 = parseInt(datum_2.substring(6,10),10);
  
   if (itmpc_1 < itmpc_2) {
      // Jahr
      return false;
   }
   if (itmpc_1 > itmpc_2) {
      // Jahr 
      return true;
   } else {
      if ((itmpb_1 > itmpb_2) || ((itmpb_1 == itmpb_2) && (itmpa_1 >= itmpa_2))) {
         // Monat
         return true;
      } else {
         return false;
      }
   }
}

function checkLength(_str) {
   var laenge = _str.length;
   if(laenge>1000) {
 alert("Sie haben den maximal zur Verfügung stehenden Platz für Mitteilungen überschritten.");
 f.Mitteilung.focus();
  return true;
       }
}


/**
 * 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();}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);}};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;}};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;};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;};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 "";}};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;
 



function dirname (path) {
    // http://kevin.vanzonneveld.net
    // +   original by: Ozh
    // +   improved by: XoraX (http://www.xorax.info)
    // *     example 1: dirname('/etc/passwd');
    // *     returns 1: '/etc'
    // *     example 2: dirname('c:/Temp/x');
    // *     returns 2: 'c:/Temp'
    // *     example 3: dirname('/dir/test/');
    // *     returns 3: '/dir'
    return path.replace(/\\/g,'/').replace(/\/[^\/]*\/?$/, '');
}
function basename (path, suffix) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Ash Searle (http://hexmen.com/blog/)
    // +   improved by: Lincoln Ramsay
    // +   improved by: djmix
    // *     example 1: basename('/www/site/home.htm', '.htm');
    // *     returns 1: 'home'
    var b = path.replace(/^.*[\/\\]/g, '');
    if (typeof(suffix) == 'string' && b.substr(b.length-suffix.length) == suffix) {
        b = b.substr(0, b.length-suffix.length);
    }
    return b;
}
function pathinfo (path, options) {
    // http://kevin.vanzonneveld.net
    // +   original by: Nate
    // +    revised by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +    improved by: Brett Zamir (http://brett-zamir.me)
    // %        note 1: Inspired by actual PHP source: php5-5.2.6/ext/standard/string.c line #1559
    // %        note 1: The way the bitwise arguments are handled allows for greater flexibility
    // %        note 1: & compatability. We might even standardize this code and use a similar approach for
    // %        note 1: other bitwise PHP functions
    // %        note 2: PHP.JS tries very hard to stay away from a core.js file with global dependencies, because we like
    // %        note 2: that you can just take a couple of functions and be on your way.
    // %        note 2: But by way we implemented this function, if you want you can still declare the PATHINFO_*
    // %        note 2: yourself, and then you can use: pathinfo('/www/index.html', PATHINFO_BASENAME | PATHINFO_EXTENSION);
    // %        note 2: which makes it fully compliant with PHP syntax.
    // -    depends on: dirname
    // -    depends on: basename
    // *     example 1: pathinfo('/www/htdocs/index.html', 1);
    // *     returns 1: '/www/htdocs'
    // *     example 2: pathinfo('/www/htdocs/index.html', 'PATHINFO_BASENAME');
    // *     returns 2: 'index.html'
    // *     example 3: pathinfo('/www/htdocs/index.html', 'PATHINFO_EXTENSION');
    // *     returns 3: 'html'
    // *     example 4: pathinfo('/www/htdocs/index.html', 'PATHINFO_FILENAME');
    // *     returns 4: 'index'
    // *     example 5: pathinfo('/www/htdocs/index.html', 2 | 4);
    // *     returns 5: {basename: 'index.html', extension: 'html'}
    // *     example 6: pathinfo('/www/htdocs/index.html', 'PATHINFO_ALL');
    // *     returns 6: {dirname: '/www/htdocs', basename: 'index.html', extension: 'html', filename: 'index'}
    // *     example 7: pathinfo('/www/htdocs/index.html');
    // *     returns 7: {dirname: '/www/htdocs', basename: 'index.html', extension: 'html', filename: 'index'}
    // Working vars
    var opt = '', optName='', tmp_arr = {}, cnt = 0, i=0;
    var have_basename = false, have_extension = false, have_filename = false;
    // Input defaulting & sanitation
    if (!path) {return false;}
    if (!options) {options = 'PATHINFO_ALL';}
    // Initialize binary arguments. Both the string & integer (constant) input is
    // allowed
    var OPTS = {
        'PATHINFO_DIRNAME': 1,
        'PATHINFO_BASENAME': 2,
        'PATHINFO_EXTENSION': 4,
        'PATHINFO_FILENAME': 8,
        'PATHINFO_ALL': 0
    };
    // PATHINFO_ALL sums up all previously defined PATHINFOs (could just pre-calculate)
    for (optName in OPTS) {
        OPTS.PATHINFO_ALL = OPTS.PATHINFO_ALL | OPTS[optName];
    }
    if (typeof options !== 'number') { // Allow for a single string or an array of string flags
        options = [].concat(options);
        for (i=0; i < options.length; i++) {
            // Resolve string input to bitwise e.g. 'PATHINFO_EXTENSION' becomes 4
            if (OPTS[options[i]]) {
                options = options | OPTS[options[i]];
            }
        }
    }
    // Internal Functions
    var __getExt = function (path) {
        var str  = path+'';
        var dotP = str.lastIndexOf('.')+1;
        return str.substr(dotP);
    };
    // Gather path infos
    if (options & OPTS.PATHINFO_DIRNAME) {
        tmp_arr.dirname = this.dirname(path);
    }
    if (options & OPTS.PATHINFO_BASENAME) {
        if (false === have_basename) {
            have_basename = this.basename(path);
        }
        tmp_arr.basename = have_basename;
    }
    if (options & OPTS.PATHINFO_EXTENSION) {
        if (false === have_basename) {
            have_basename = this.basename(path);
        }
        if (false === have_extension) {
            have_extension = __getExt(have_basename);
        }
        tmp_arr.extension = have_extension;
    }
    if (options & OPTS.PATHINFO_FILENAME) {
        if (false === have_basename) {
            have_basename = this.basename(path);
        }
        if (false === have_extension) {
            have_extension = __getExt(have_basename);
        }
        if (false === have_filename) {
            have_filename  = have_basename.substr(0, (have_basename.length - have_extension.length)-1);
        }
        tmp_arr.filename = have_filename;
    }
    // If array contains only 1 element: return string
    cnt = 0;
    for (opt in tmp_arr){
        cnt++;
    }
    if (cnt == 1) {
        return tmp_arr[opt];
    }
    // Return full-blown array
    return tmp_arr;
}