/*

 Symfonip © 2009 modifications for automation from original base code on SoundManager

  Requires SoundManager 2 Javascript API.

*/

function InlinePlayer(a){var b=this;var d=this;var e=soundManager;this.excludeClass="inline-exclude";this.links=[];this.sounds=[];this.soundsByURL=[];this.indexByURL=[];this.lastSound=null;this.soundCount=0;var c=(navigator.userAgent.match(/msie/i));this.config={playNext:false,autoPlay:false};this.css={sDefault:"sm2_link",sLoading:"sm2_loading",sPlaying:"sm2_playing",sPaused:"sm2_paused"};this.addEventHandler=function(h,g,f){typeof(attachEvent)=="undefined"?h.addEventListener(g,f,false):h.attachEvent("on"+g,f)};this.removeEventHandler=function(h,g,f){typeof(attachEvent)=="undefined"?h.removeEventListener(g,f,false):h.detachEvent("on"+g,f)};this.classContains=function(g,f){return(typeof(g.className)!="undefined"?g.className.match(new RegExp("(\\s|^)"+f+"(\\s|$)")):false)};this.addClass=function(g,f){if(!g||!f||b.classContains(g,f)){return false}g.className=(g.className?g.className+" ":"")+f};this.removeClass=function(g,f){if(!g||!f||!b.classContains(g,f)){return false}g.className=g.className.replace(new RegExp("( "+f+")|("+f+")","g"),"")};this.getSoundByURL=function(f){return(typeof b.soundsByURL[f]!="undefined"?b.soundsByURL[f]:null)};this.isChildOfNode=function(g,f){if(!g||!g.parentNode){return false}f=f.toLowerCase();do{g=g.parentNode}while(g&&g.parentNode&&g.nodeName.toLowerCase()!=f);return(g.nodeName.toLowerCase()==f?g:null)};this.events={play:function(){d.removeClass(this._data.oLink,this._data.className);this._data.className=d.css.sPlaying;d.addClass(this._data.oLink,this._data.className)},stop:function(){d.removeClass(this._data.oLink,this._data.className);this._data.className=""},pause:function(){d.removeClass(this._data.oLink,this._data.className);this._data.className=d.css.sPaused;d.addClass(this._data.oLink,this._data.className)},resume:function(){d.removeClass(this._data.oLink,this._data.className);this._data.className=d.css.sPlaying;d.addClass(this._data.oLink,this._data.className)},finish:function(){d.removeClass(this._data.oLink,this._data.className);this._data.className="";if(d.config.playNext){var f=(d.indexByURL[this._data.oLink.href]+1);if(f<d.links.length){d.handleClick({target:d.links[f]})}}}};this.stopEvent=function(f){if(typeof f!="undefined"&&typeof f.preventDefault!="undefined"){f.preventDefault()}else{if(typeof event!="undefined"&&typeof event.returnValue!="undefined"){event.returnValue=false}}return false};this.getTheDamnLink=(c)?function(f){return(f&&f.target?f.target:window.event.srcElement)}:function(f){return f.target};this.handleClick=function(h){if(typeof h.button!="undefined"&&h.button>1){return true}var j=b.getTheDamnLink(h);if(j.nodeName.toLowerCase()!="a"){j=b.isChildOfNode(j,"a");if(!j){return true}}var g=j.getAttribute("href");if(!j.href||!j.href.match(/\.mp3(\\?.*)$/i)||b.classContains(j,b.excludeClass)){if(c&&j.onclick){return false}return true}e._writeDebug("handleClick()");var i=(j.href);var f=b.getSoundByURL(i);if(f){if(f==b.lastSound){f.togglePause()}else{f.togglePause();e._writeDebug("sound different than last sound: "+b.lastSound.sID);if(b.lastSound){b.stopSound(b.lastSound)}}}else{f=e.createSound({id:"inlineMP3Sound"+(b.soundCount++),url:i,onplay:b.events.play,onstop:b.events.stop,onpause:b.events.pause,onresume:b.events.resume,onfinish:b.events.finish});f._data={oLink:j,className:b.css.sPlaying};b.soundsByURL[i]=f;b.sounds.push(f);if(b.lastSound){b.stopSound(b.lastSound)}f.play()}b.lastSound=f;if(typeof h!="undefined"&&typeof h.preventDefault!="undefined"){h.preventDefault()}else{event.returnValue=false}return false};this.stopSound=function(f){soundManager.stop(f.sID);soundManager.unload(f.sID)};this.init=function(){var g=document.getElementsByTagName("a");for(f=0;f<g.length;f++){var l=g[f];var n=l.getAttribute("href");var k=n.substring(n.length-4).toLowerCase();if(k==".mp3"&&l.parentNode.getAttribute("class")!="ui360"){var m=document.createElement("div");m.className="syminline";m.appendChild(l.cloneNode(true));l.parentNode.replaceChild(m,l)}}e._writeDebug("inlinePlayer.init()");var j=document.getElementsByTagName("a");var h=0;for(var f=0;f<j.length;f++){if(j[f].href.match(/\.mp3/i)&&!b.classContains(j[f],b.excludeClass)){b.addClass(j[f],b.css.sDefault);b.links[h]=(j[f]);b.indexByURL[j[f].href]=h;h++}}if(h>0){b.addEventHandler(document,"click",b.handleClick);if(b.config.autoPlay){b.handleClick({target:b.links[0],preventDefault:function(){}})}}e._writeDebug("inlinePlayer.init(): Found "+h+" relevant items.")};this.merge=function(h,g){var f={};for(key in h){if(typeof h[key]=="object"){f[key]=merge(h[key],{})}else{f[key]=h[key]}}for(key in g){if(typeof g[key]=="object"){f[key]=merge(g[key],{})}else{f[key]=g[key]}}return f};this.config=this.merge(this.config,a);this.init()}var inlinePlayer=null;soundManager.debugMode=false;soundManager.url="assets/swf/";soundManager.onready(function(){if(soundManager.supported()){if(typeof symCfg=="undefined"){symCfg={}}inlinePlayer=new InlinePlayer(symCfg)}});
