// Incordia JavaScript
// Generated 2008-02-18
Incordia.Packages.create("CDON.media.MusicPlayer");CDON.media.MusicPlayer=Incordia.Class.extend({arguments:null,path:null,ready:false,id:null,idnumber:-1,activeIcon:null,constructor:function(arguments){this.arguments=Incordia.merge(CDON.media.MusicPlayer.defaults,arguments);this.idnumber=CDON.media.MusicPlayer.counter++},load:function(){this.id="CDONmediaMusicPlayer"+this.idnumber;$A(document.getElementsByTagName("a")).each(function(link){var setting=Incordia.getSetting(link.rel,"listen");if(setting){if((!setting.value&&this.arguments.allowEmptyProperty)||CDON.media.MusicPlayer.extensions[setting.value]){this.bind(link,setting.value)}}}.bind(this))},bind:function(link,extension){addEvent(link,"click",function(link,extension,e){if(!e)e=window.event;if(this.play(link.href,extension,link)){Incordia.dom.Event.halt(e,true);return false}}.rbind(this,link,extension))},_setIcon:function(to){var icon=this.activeIcon;if(icon==null||icon.src.indexOf("music_"+(to))>-1)return;icon.src=icon.src.replace(/music_(play|buffer|stop|error)/,"music_"+(to))},stop:function(){this._setIcon("play");if(this.flashPlayer!=null)this.flashPlayer.stop();if(this.silverlightPlayer!=null)this.silverlightPlayer.stop()},volume:function(targetVolume){if(this.flashPlayer!=null)this.flashPlayer.volume(targetVolume);if(this.silverlightPlayer!=null)this.silverlightPlayer.volume(targetVolume);this.arguments.volume=targetVolume},play:function(path,ext,link){this.stop();if(path==this.currentPath&&(!link||(link==this.currentLink))){this.currentLink=link;this.currentPath="";return true};this.currentLink=link;this.currentPath=path;if(link!=null){var imgs=link.getElementsByTagName("img");var icon=imgs.length==0?null:imgs[0];this.activeIcon=icon}if(this.flashPlayer)this.flashPlayer._onStopBuffer=null;if(this.silverlightPlayer)this.silverlightPlayer._onStopBuffer=null;if(!ext){var p=path.replace(/([\?#].*)/g,"");ext=p.substring(p.lastIndexOf(".")+1)}switch(CDON.media.MusicPlayer.extensions[ext]){case"flash":if(this.flashPlayer==null){Incordia.Packages.load("CDON.media.data-MusicPlayer.Flash")}if(this.flashPlayer==null){this.flashPlayer=new CDON.media.MusicPlayer_Flash(this.id,this.arguments)}this.activePlayer=this.flashPlayer;addEvent(this.activePlayer,"stopPlaying",function(){this._setIcon("play");this.currentPath=null}.bind(this));break;case"silverlight":if(this.silverlightPlayer==null){Incordia.Packages.load("CDON.media.data-MusicPlayer.Silverlight")}if(this.silverlightPlayer==null){this.silverlightPlayer=new CDON.media.MusicPlayer_Silverlight(this.id,this.arguments)}this.activePlayer=this.silverlightPlayer;addEvent(this.activePlayer,"stopPlaying",function(){this._setIcon("play");this.currentPath=null}.bind(this));break;default:return false};if(this.activePlayer.catastrophic)return false;if(link!=null){var _t=setTimeout(function(){this._setIcon("buffer")}.bind(this),50);this.activePlayer._onStopBuffer=function(evt){this._setIcon(evt.playing?"stop":"error")}.bind(this)}this.activePlayer.play(path);return!this.activePlayer.catastrophic},global:{counter:0,defaults:{allowEmptyProperty:true,volume:50,path:Incordia.path+"/CDON/media/data-MusicPlayer/"},extensions:{mp3:"flash",ogg:"flash",wma:"silverlight",asx:"silverlight"}}});