// Script for NiftyPlayer 1.7, by tvst from varal.org// Released under the MIT License: http://www.opensource.org/licenses/mit-license.phpvar FlashHelper ={movieIsLoaded : function (theMovie){if (typeof(theMovie) != "undefined") return theMovie.PercentLoaded() == 100;else returnfalse;  },getMovie : function (movieName){  	if (navigator.appName.indexOf ("Microsoft") !=-1) return window[movieName];  else return document[movieName];}};function niftyplayer(name){this.obj = FlashHelper.getMovie(name);if (!FlashHelper.movieIsLoaded(this.obj)) return;this.play = function () {this.obj.TCallLabel('/','play');};this.stop = function () {this.obj.TCallLabel('/','stop');};this.pause = function () {this.obj.TCallLabel('/','pause');};this.playToggle = function () {this.obj.TCallLabel('/','playToggle');};this.reset = function () {this.obj.TCallLabel('/','reset');};this.load = function (url) {this.obj.SetVariable('currentSong', url);this.obj.TCallLabel('/','load');};this.loadAndPlay = function (url) {this.load(url);this.play();};this.getState = function () {var ps = this.obj.GetVariable('playingState');var ls = this.obj.GetVariable('loadingState');// returns//   'empty' if no file is loaded//   'loading' if file is loading//   'playing' if user has pressed play AND file has loaded//   'stopped' if not empty and file is stopped//   'paused' if file is paused//   'finished' if file has finished playing//   'error' if an error occurredif (ps == 'playing')if (ls == 'loaded') return ps;else return ls;if (ps == 'stopped')if (ls == 'empty') return ls;if (ls == 'error') return ls;else return ps;return ps;};this.getPlayingState = function () {// returns 'playing', 'paused', 'stopped' or 'finished'return this.obj.GetVariable('playingState');};this.getLoadingState = function () {// returns 'empty', 'loading', 'loaded' or 'error'return this.obj.GetVariable('loadingState');};this.registerEvent = function (eventName, action) {// eventName is a string with one of the following values: onPlay, onStop, onPause, onError, onSongOver, onBufferingComplete, onBufferingStarted// action is a string with the javascript code to run.//// example: niftyplayer('niftyPlayer1').registerEvent('onPlay', 'alert("playing!")');this.obj.SetVariable(eventName, action);};return this;}
