mirror of
				https://github.com/xcat2/xcat-core.git
				synced 2025-10-30 10:52:31 +00:00 
			
		
		
		
	git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@117 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // script.aculo.us sound.js v1.8.0, Tue Nov 06 15:01:40 +0300 2007
 | |
| 
 | |
| // Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
 | |
| //
 | |
| // Based on code created by Jules Gravinese (http://www.webveteran.com/)
 | |
| //
 | |
| // script.aculo.us is freely distributable under the terms of an MIT-style license.
 | |
| // For details, see the script.aculo.us web site: http://script.aculo.us/
 | |
| 
 | |
| Sound = {
 | |
|   tracks: {},
 | |
|   _enabled: true,
 | |
|   template:
 | |
|     new Template('<embed style="height:0" id="sound_#{track}_#{id}" src="#{url}" loop="false" autostart="true" hidden="true"/>'),
 | |
|   enable: function(){
 | |
|     Sound._enabled = true;
 | |
|   },
 | |
|   disable: function(){
 | |
|     Sound._enabled = false;
 | |
|   },
 | |
|   play: function(url){
 | |
|     if(!Sound._enabled) return;
 | |
|     var options = Object.extend({
 | |
|       track: 'global', url: url, replace: false
 | |
|     }, arguments[1] || {});
 | |
|     
 | |
|     if(options.replace && this.tracks[options.track]) {
 | |
|       $R(0, this.tracks[options.track].id).each(function(id){
 | |
|         var sound = $('sound_'+options.track+'_'+id);
 | |
|         sound.Stop && sound.Stop();
 | |
|         sound.remove();
 | |
|       })
 | |
|       this.tracks[options.track] = null;
 | |
|     }
 | |
|       
 | |
|     if(!this.tracks[options.track])
 | |
|       this.tracks[options.track] = { id: 0 }
 | |
|     else
 | |
|       this.tracks[options.track].id++;
 | |
|       
 | |
|     options.id = this.tracks[options.track].id;
 | |
|     $$('body')[0].insert( 
 | |
|       Prototype.Browser.IE ? new Element('bgsound',{
 | |
|         id: 'sound_'+options.track+'_'+options.id,
 | |
|         src: options.url, loop: 1, autostart: true
 | |
|       }) : Sound.template.evaluate(options));
 | |
|   }
 | |
| };
 | |
| 
 | |
| if(Prototype.Browser.Gecko && navigator.userAgent.indexOf("Win") > 0){
 | |
|   if(navigator.plugins && $A(navigator.plugins).detect(function(p){ return p.name.indexOf('QuickTime') != -1 }))
 | |
|     Sound.template = new Template('<object id="sound_#{track}_#{id}" width="0" height="0" type="audio/mpeg" data="#{url}"/>')
 | |
|   else
 | |
|     Sound.play = function(){}
 | |
| }
 |