/*
	M(usic) Player
	----------------------
	require "swfobject.js"
*/
(function(){
mPlayer = {

	// MUSIC PATH
	music : {m01:"music/disc003/track01.mp3",
			 m02:"music/disc003/track02.mp3",
			 m03:"music/disc003/track03.mp3",
			 m04:"music/disc003/track04.mp3",
			 m05:"music/disc003/track05.mp3",
			 m06:"music/disc003/track06.mp3",
			 m07:"music/disc003/track07.mp3",
			 m08:"music/disc003/track08.mp3",
			 m09:"music/disc003/track09.mp3",
			 m10:"music/disc003/track10.mp3",
			 m11:"music/disc003/track11.mp3",
			 m12:"music/disc003/track12.mp3",
			 m13:"music/disc003/track13.mp3",
			 m14:"music/disc003/track14.mp3"},

	// NOW PLAYING
	nowPlaying : {file:"",state:"",obj:undefined},
	// CREATE DIV ID
	boxID : "mPlayerBox",
	// CREATE OBJECT(FLASH) ID
	tagID : "mPlayerFla",
	// ADD BUTTON CLASS NAME
	mPlayerBtnClassName : "mPlayerBtn",
	// Fla FILE INFO
	swfInfo : {name:"js/mplayer.swf",width:50,height:20},

	// PLAY
	start : function(no,obj){
		if(this.nowPlaying.file != no || this.nowPlaying.obj != obj){
			// NOW PLAYING SET
			this.nowPlaying.obj   = obj;
			this.nowPlaying.file  = no;
			this.nowPlaying.state = "play";
			// PARENT OBJECT.
			var objBody = document.getElementsByTagName("body").item(0);
			// CREATE DIV(Player BOX)
			if(!document.getElementById(this.boxID)){
				var _obj = document.createElement("div");
					_obj.setAttribute('id',this.boxID);
					// ADD
					objBody.appendChild(_obj);
			}
			// Create Flash Tag
			this.create_Object(this.music[no]);
		}else{
			this.nowPlaying.obj   = obj;
			if(this.nowPlaying.state == "play"){
				// PLAY --> PAUSE
				this.nowPlaying.state = "pause";
				this.pause();
			}else{
				// PAUSE -> PLAY
				this.nowPlaying.state = "play";
				this.getFlashTagId(this.tagID).f_play();
			}
		}
	},
	// PAUSE
	pause : function(){
		// to FLASH
		this.getFlashTagId(this.tagID).f_pause();
	},
	// STOP
	stop : function(){
		if(document.getElementById(this.boxID)){
		var _obj = document.getElementById(this.boxID);
			_obj.removeChild(_obj.lastChild);
		}
	},

	// CREATE OBJECT TAG
	create_Object : function(path){
		var _so = new SWFObject(this.swfInfo.name, this.tagID, this.swfInfo.width, this.swfInfo.height, '8.0.0.0', '');
			_so.addVariable("filepath",path);
			_so.write(this.boxID);
	},
	// RETURN CALL FLASH PATH
	getFlashTagId : function(name){
		if(navigator.appName.indexOf("Microsoft") != -1){
			return window[name];
		}else{
			return document[name];
		}
	},

	// HTML BUTTON OPERATION
	setPlayButton : function(){
		this.allButtonReset();
		if(this.nowPlaying.state == "play"){
			var _tag = this.nowPlaying.obj.getElementsByTagName("img")[0];
			_tag.src = _tag.src.split("btn_disc003_play").join("btn_disc003_stop");
		}
	},

	// HTML BUTTON RESET
	allButtonReset : function(){
		var _img = document.getElementsByTagName("img");
		for(var tag in _img){
			if( (_img[tag].className == this.mPlayerBtnClassName) && 
				(String(_img[tag].src).indexOf("btn_disc003_stop") >= 0) ){
				_img[tag].src = _img[tag].src.split("btn_disc003_stop").join("btn_disc003_play");
			}
		}
	},

	end : ""
}
})();

function fromFlash(func){
	mPlayer.func;
}

function doOnUnLoad(){
	mPlayer.stop();
}

window.onunload = doOnUnLoad;
