/*******************************************************************************
	JUKEBOX script
*******************************************************************************/
var PATH_SKIN = "/jukebox/";

var state = 0;						// 0:stop, 1:pause, 2:play
var random = 0;						// 0:sequently, 1:random
var repeat = 1;						// 0:play once, 1:repeat
var interval = 2;					// interval betwenn music
var timer = 2;						// timer (0:total time, 1:left time, 2:playing time)

var idx_list = new Array();			// index list
var music_list = new Array();		// music list
var title_list = new Array();		// title list
var cnt_music = 0;					// count of music
var player = "";					// player ("LIST", "READ", "JUKEBOX")

function add_music(idx, url, title) {
	idx_list[cnt_music] = idx;
	music_list[cnt_music] = url;
	title_list[cnt_music] = title;

	return cnt_music++;
}

function play(file) {
	// play music
	if(state == 2) stop();

	state = 2;
	set_timer();
	jukebox.open(file);
}

function pause() {
	if(state == 2) {
		state = 1;
		jukebox.pause();
	} else if(state == 1) {
		state = 2;
		jukebox.play();
	}
}

function stop() {
	if(typeof(timeoutID) == "number") clearTimeout(timeoutID);

	state = 0;
	jukebox.stop();
}

function next_music(bResult) {
	if(bResult == 0 && jukebox.PlayCount == 1) {
		if(player == "JUKEBOX")
			timeoutID = setTimeout("jukebox_next();", interval*1000);
		else if(player == "LIST")
			timeoutID = setTimeout("l_next(cur_idx);", interval*1000);
	}
}

function set_timer() {
	if(state != 0) {
		var running_time = jukebox.Duration;
		var playing_time = jukebox.currentPosition;
		var left_time = running_time - playing_time;
		var min, sec;

		switch(timer) {
			case 0:
				min = Math.floor(running_time/60);
				sec = (running_time%60 < 10) ? "0"+Math.floor(running_time%60) : Math.floor(running_time%60);
				break;
			case 1:
				min = "- "+Math.floor(left_time/60);
				sec = (left_time%60 < 10) ? "0"+Math.floor(left_time%60) : Math.floor(left_time%60);
				break;
			case 2:
				min = Math.floor(playing_time/60);
				sec = (playing_time%60 < 10) ? "0"+Math.floor(playing_time%60) : Math.floor(playing_time%60);
				break;
			default:
		}
		
		if (timer == 2) {
			t_min = Math.floor(running_time/60);
			t_sec = (running_time%60 < 10) ? "0"+Math.floor(running_time%60) : Math.floor(running_time%60);
		}
		jukebox_timer.innerHTML = "<input type=text class=input size=16 value=\" " + min + " : " + sec + "  |  " + t_min + " : " + t_sec + " \">";
	} else {
		jukebox_timer.innerHTML = " ";
	}

	setTimeout("set_timer();", 500);
}

function change_timer() {
	if(state != 0) {
		timer = (timer == 2) ? 0 : timer + 1;
	}
}
/*******************************************************************************
	JUKEBOX PLAY script
*******************************************************************************/
var jukebox_list = new Array();		// pointer to music_list
var cnt_jukebox = 0;
var cur_jidx = 0;		// current jukebox index (point music index)
var next_jidx = 0;		// next jukebox index (point music index)

// get index list to be checked and re-index.
function make_jukebox() {
	var idx;
	cnt_jukebox = 0, cur_jidx = 0, next_jidx = 0;

	for(var i = 1; i <= ARTICLE_ROWS; i++) {
		if(!document.all["article"+i+"_idx"]) continue;

		idx = document.all["article"+i+"_idx"].value;
		if(document.all["check"+i].value == idx)
			reidx_jukebox(idx);
	}
}

// add jukebox index that matched by index.
function reidx_jukebox(idx) {
	for(var i = 0; i < cnt_music; i++) {
		if(idx == idx_list[i])
			jukebox_list[cnt_jukebox++] = i;
	}
}

function reset_button() {
	// reset jukebox button
	document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play.gif";
	document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	// reset list buttton

	for(i = 1; i <= ARTICLE_ROWS; i++) {
		if(!document.all["article"+i+"_idx"]) continue;
		article_idx = document.all["article"+i+"_idx"].value;
		document.all["lbtn_play" + article_idx].src = PATH_SKIN + "images/lbtn_play.gif";
		document.all["lbtn_pause" + article_idx].src = PATH_SKIN + "images/lbtn_pause.gif";
	}
}

function jukebox_play(mode) {
	var cur_midx, next_midx;		// music index
	var cur_idx, next_idx;			// article index

	if(mode == 0) {
		make_jukebox();
		if(cnt_jukebox == 0) return;
	}

	player = "JUKEBOX";
	if(random == 0) {
		// sequently
		next_jidx = cur_jidx + 1;
		if(next_jidx > cnt_jukebox-1) next_jidx = 0;
	} else {
		// randomly
		next_jidx = Math.ceil(Math.random()*cnt_jukebox);
	}

	// get music, article index
	cur_midx = jukebox_list[cur_jidx];
	next_midx = jukebox_list[next_jidx];
	cur_idx = idx_list[cur_midx];
	next_idx = idx_list[next_midx];

	// change jacket
	document.all.jacket.src = document.all["music"+cur_idx+"_jacket"].value;

	// change button
	reset_button();
	document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play_on.gif";
	document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_on.gif";

	// change title
	document.all["cur_title"].value = title_list[cur_midx];
	document.all["next_title"].value = title_list[next_midx];

	// set song count
	document.all["song_count"].value = "" + cur_jidx + " / " + cnt_jukebox;

	// play music
	play(music_list[cur_midx]);
	prev_idx = cur_idx;
	cur_idx = idx;
}

function jukebox_pause() {
	if(player == "LIST") return;

	// change button
	if(state == 2) {
		document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play.gif";
		document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause_on.gif";
		document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	} else if(state == 1) {
		document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play_on.gif";
		document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause.gif";
		document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	}

	// pause music
	pause();
}

function jukebox_next() {
	if(player == "LIST") return;

	cur_jidx = next_jidx;
	if(state == 2) stop();
	jukebox_play(1);
}

function jukebox_stop() {
	if(player == "LIST") return;

	// change button
	document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play.gif";
	document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";

	// pause music
	stop();
}

function jukebox_repeat() { 
	if(repeat) {
		repeat = 0;
		document.all["repeat"].src = PATH_SKIN + "images/jbtn_repeat.gif";
	} else {
		repeat = 1;
		document.all["repeat"].src = PATH_SKIN + "images/jbtn_repeat_on.gif";
	}
}

function jukebox_random() {
	if(random) {
		random = 0;
		document.all["random"].src = PATH_SKIN + "images/jbtn_random.gif";
	} else {
		random = 1;
		document.all["random"].src = PATH_SKIN + "images/jbtn_random_on.gif";
	}
}

function show_jacket() {
	if(cur_idx != 0) {
		jaket = document.all['jaketimg'+cur_idx].value;
		viewWin = window.open('','', 'width=500, height=400, scrollbars=yes, resizable=yes');
		popcontent  = "<html>\n<head>\n<meta http-equiv='Content-Type' content='text/html; charset=euc-kr'>\n";
		popcontent += "<title>TT BoardEngine</title>\n</head>\n";
		popcontent += "<script>\n";
		popcontent += "function WinReSize() {\n";
		popcontent += "  popup_Width  = document.all['shotimg'].width + 28;\n;";
		popcontent += "  popup_Height = document.all['shotimg'].height + 32;\n";
		popcontent += "  popup_left = (screen.width / 2) - (popup_Width /2);\n";
		popcontent += "  popup_top = (screen.height / 2) - (popup_Height / 2);\n";
		popcontent += "  if(screen.width < popup_Width)\n";
		popcontent += "  {\n";
		popcontent += "    popup_left=0;\n";
		popcontent += "    popup_Width = screen.width;\n";
		popcontent += "  }\n";
		popcontent += "  if(screen.height < popup_Height)\n";
		popcontent += "		{\n";
		popcontent += "        popup_top = 0;\n";
		popcontent += "	       popup_Height = screen.height-55;\n";
		popcontent += "     }\n";
		popcontent += "  window.resizeTo(popup_Width, popup_Height);\n";
		popcontent += "  moveTo(popup_left , popup_top);\n";
		popcontent += "}\n";
		popcontent += "</script>\n";
		popcontent += "<body leftmargin=0 topmargin=0 marginwidth=0 marginheight=0 name='dd'>\n";
		popcontent += "<a href='javascript:self.close();'><img src=" + jaket + " border=0 name='shotimg' onLoad='WinReSize();'></a>\n";
		popcontent += "</body>\n</html>\n";
		viewWin.document.write(popcontent);
	}
}

function Read_popup_image(idx) {
	viewWin = window.open('','', 'width=500, height=400, scrollbars=yes, resizable=yes');
	popcontent  = "<html>\n<head>\n<meta http-equiv='Content-Type' content='text/html; charset=euc-kr'>\n";
	popcontent += "<title>TT BoardEngine</title>\n</head>\n";
	popcontent += "<script>\n";
	popcontent += "function WinReSize() {\n";
	popcontent += "  popup_Width  = document.all['shotimg'].width + 28;\n;";
	popcontent += "  popup_Height = document.all['shotimg'].height + 32;\n";
	popcontent += "  popup_left = (screen.width / 2) - (popup_Width /2);\n";
	popcontent += "  popup_top = (screen.height / 2) - (popup_Height / 2);\n";
	popcontent += "  if(screen.width < popup_Width)\n";
	popcontent += "  {\n";
	popcontent += "    popup_left=0;\n";
	popcontent += "    popup_Width = screen.width;\n";
	popcontent += "  }\n";
	popcontent += "  if(screen.height < popup_Height)\n";
	popcontent += "		{\n";
	popcontent += "        popup_top = 0;\n";
	popcontent += "	       popup_Height = screen.height-55;\n";
	popcontent += "     }\n";
	popcontent += "  window.resizeTo(popup_Width, popup_Height);\n";
	popcontent += "  moveTo(popup_left , popup_top);\n";
	popcontent += "}\n";
	popcontent += "</script>\n";
	popcontent += "<body leftmargin=0 topmargin=0 marginwidth=0 marginheight=0 name='dd'>\n";
	popcontent += "<a href='javascript:self.close();'><img src=" + idx + " border=0 name='shotimg' onLoad='WinReSize();'></a>\n";
	popcontent += "</body>\n</html>\n";
	viewWin.document.write(popcontent);
}

/*******************************************************************************
	LIST PLAY script
*******************************************************************************/
var prev_idx = 0;			// previous article index
var cur_idx = 0;			// current article index
var cur_midx = 0;			// current music index
var next_midx = 0;			// next music index
var next_music = 0;			// next music

function set_music_idx(idx) {
	var begin_midx = document.all["music"+idx+"_midx"].value;		// begin index
	var cur_music = document.all["music"+idx+"_cur"].value;			// music count
	var total_music = document.all["music"+idx+"_total"].value;		// total count of music

	// check index
	if(begin_midx == "" || cur_music == "" || total_music == "") return -1;
	if(parseInt(cur_music) == 0) return -1;

	begin_midx = parseInt(begin_midx);
	cur_music = parseInt(cur_music);
	total_music = parseInt(total_music);

	// get music index
	if(cur_music > total_music) {
		cur_music = 1;
		document.all["music"+idx+"_cur"].value = cur_music;
	}

	// set song count
	document.all["song_count"].value = "" + cur_music + " / " + total_music;

	// current music index
	cur_midx = begin_midx + cur_music - 1;
	// next music index
	if(random == 0) {
		// sequently
		if(cur_music == total_music) next_music = 1;
		else next_music = cur_music + 1;
	} else {
		// randomly
		next_music = Math.ceil(Math.random()*total_music);
	}
	next_midx = begin_midx + next_music - 1;
}

function l_play(idx) {
	var article_idx;
	player = "LIST";
	set_music_idx(idx);

	// change jacket
	document.all.jacket.src = document.all["music"+idx+"_jacket"].value;

	// change play button
	reset_button();
	document.all["lbtn_play" + idx].src = PATH_SKIN + "images/lbtn_play_on.gif";
	document.all["lbtn_pause" + idx].src = PATH_SKIN + "images/lbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_on.gif";

	// change title
	document.all["cur_title"].value = title_list[cur_midx];
	document.all["next_title"].value = title_list[next_midx];

	// play music
	prev_idx = cur_idx;
	cur_idx = idx;
	play(music_list[cur_midx]);
}

function l_pause(idx) {
	if(cur_idx == 0 || cur_idx != idx) return;

	// change button
	document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play.gif";
	document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	if(state == 2) {
		document.all["lbtn_play" + idx].src = PATH_SKIN + "images/lbtn_play.gif";
		document.all["lbtn_pause" + idx].src = PATH_SKIN + "images/lbtn_pause_on.gif";
		document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	} else if(state == 1) {
		document.all["lbtn_play" + idx].src = PATH_SKIN + "images/lbtn_play_on.gif";
		document.all["lbtn_pause" + idx].src = PATH_SKIN + "images/lbtn_pause.gif";
		document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	}

	// pause music
	pause();
}

function l_next(idx) {
	if(cur_idx == 0 || cur_idx != idx) return;

	// next music
	if(state == 2) stop();
	document.all["music"+idx+"_cur"].value = next_music;
	l_play(idx);
}

function l_stop(idx) {
	if(cur_idx == 0 || cur_idx != idx) return;

	// change jacket
	document.all.jacket.src = PATH_SKIN + "images/no_image.gif";

	// change button
	document.all["jbtn_play"].src = PATH_SKIN + "images/jbtn_play.gif";
	document.all["jbtn_pause"].src = PATH_SKIN + "images/jbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";
	document.all["lbtn_play" + idx].src = PATH_SKIN + "images/lbtn_play.gif";
	document.all["lbtn_pause" + idx].src = PATH_SKIN + "images/lbtn_pause.gif";
	document.all["equalizer"].src = PATH_SKIN + "images/equal_off.gif";

	// stop music
	stop();
}

/*******************************************************************************
	READ PLAY script
*******************************************************************************/
var cur_id = "";		// current id to be played

function r_play(id) {
	try { parent.procFrame.playerControl('Pause'); } catch(e) {}
	
	player = "READ";

	// change button
	if(cur_id != "") {
		document.all[cur_id + "_play"].src = PATH_SKIN + "images/lbtn_play.gif";
		document.all[cur_id + "_pause"].src = PATH_SKIN + "images/lbtn_pause.gif";
		document.all[cur_id + "_stop"].src = PATH_SKIN + "images/lbtn_stop.gif";
	}

	document.all[id + "_play"].src = PATH_SKIN + "images/lbtn_play_on.gif";
	document.all[id + "_pause"].src = PATH_SKIN + "images/lbtn_pause.gif";
	document.all[id + "_stop"].src = PATH_SKIN + "images/lbtn_stop.gif";
	cur_id = id;

	// play music
	play(document.all[id+"_file"].value);
}

function r_pause(id) {
	if(cur_id == "" || cur_id != id) return;

	// change button
	if(state == 2) {
		document.all[cur_id + "_play"].src = PATH_SKIN + "images/lbtn_play.gif";
		document.all[cur_id + "_pause"].src = PATH_SKIN + "images/lbtn_pause_on.gif";
		document.all[cur_id + "_stop"].src = PATH_SKIN + "images/lbtn_stop.gif";
	} else if(state == 1) {
		document.all[cur_id + "_play"].src = PATH_SKIN + "images/lbtn_play_on.gif";
		document.all[cur_id + "_pause"].src = PATH_SKIN + "images/lbtn_pause.gif";
		document.all[cur_id + "_stop"].src = PATH_SKIN + "images/lbtn_stop.gif";
	}

	// pause music
	pause();
}

function r_stop(id) {
	if(cur_id == "" || cur_id != id) return;

	// change button
	if(cur_id != "") {
		document.all[cur_id + "_play"].src = PATH_SKIN + "images/lbtn_play.gif";
		document.all[cur_id + "_pause"].src = PATH_SKIN + "images/lbtn_pause.gif";
		document.all[cur_id + "_stop"].src = PATH_SKIN + "images/lbtn_stop.gif";
	}

	// stop music
	stop();
}

function bluring(){ 
if(event.srcElement.tagName=="A"||event.srcElement.tagName=="IMG") document.body.focus(); 
} 
document.onfocusin=bluring; 

function viewPic(img){
  foto1= new Image();
  foto1.src=(img);
  contImg(img);
}
function contImg(img){
  if((foto1.width!=0)&&(foto1.height!=0)){
    viewImg(img);
  }
  else{
    funzione="contImg('"+img+"')";
    intervallo=setTimeout(funzione,0);
  }
}
function viewImg(img){
  largh=foto1.width+0;
  altez=foto1.height+0;
  stringa="width="+largh+",height="+altez;
  finestra=window.open(img,"",stringa);
}

