
var g_plyr = '';
var g_plyr_button = '';
var g_plyr_progress = '';

var g_timer_id = 0;

// y2lab用
function play3(file, seq)
{
	if (g_plyr == '') {
		// オブジェクトをグローバル変数にセットする
		g_plyr            = document.getElementById("plyr_ui_"    + seq);
		g_plyr_button     = document.getElementById("plyr_button_" + seq);
		g_plyr_progress   = document.getElementById("plyr_progress_"  + seq);

		// 表示を変える
		g_plyr_button.innerHTML = 'Stop';
		g_plyr_button.className = 'Stop';

		// 再生をスタートする
		callExt_PlaySong(file, "title")

		// タイマーを回す(Flashへ再生指示を出した後にタイマーを回すこと)
		// 最初のインターバルは 300msec にする
		g_timer_id = setTimeout(updatePlayer, 300);
	}
	else {
		// クリックされたのが現在アクティブなオブジェクトかどうかで処理を分ける
		plyr = document.getElementById("plyr_ui_"    + seq);
		if (plyr == g_plyr) {
			// 現在アクティブなオブジェクトがクリックされたとき
			endPlayer();

			// 演奏を停止する
			stop();
		}
		else {
			// 現在アクティブなオブジェクトではないものがクリックされたとき

			// 現在再生してる曲を停止する
			endPlayer();
			stop();

			// 新しい曲を再生スタート
			play3(file, seq)
		}
	}
}

// detailページで使われる
function playItem2(obj, track_id, seq)
{
	mvtitleId = "mvtitle" + seq;
	title = document.getElementById(mvtitleId).innerHTML;

	clickPlayer(track_id, seq, title, 1);

	// 以下は最後に呼ぶこと
	// span -> td -> tr : 2つ上の親
	//clickItem(obj.parentElement.parentElement, track_id, seq); //これでOK
	//clickItem(obj.parentNode.parentElement, track_id); // こちらでも動作する
	// エレメントの階層が変わったので変更
	clickItem(obj.parentElement.parentElement.parentElement, track_id, seq); //3つ上の親
}

// search, composerページで使われる
function play2(id, flag, seq)
{
  // Flash で再生する
  if (flag == 1) { // 単曲再生
	titleId = "title" + seq;
	title = document.getElementById(titleId).innerHTML;

    clickPlayer(id, seq, title, flag);
  }
  else if (flag == 2) { // 連続再生
    clickPlayer(id, seq, "", flag);
  }
}

// flag : 1 = 単曲再生, 2 = 連続再生
function clickPlayer(id, seq, title, flag)
{
	if (g_plyr == '') {
		// オブジェクトをグローバル変数にセットする
		g_plyr            = document.getElementById("plyr_ui_"    + seq);
		g_plyr_button     = document.getElementById("plyr_button_" + seq);
		g_plyr_progress   = document.getElementById("plyr_progress_"  + seq);

		// 表示を変える
		g_plyr_button.innerHTML = 'Stop';
		g_plyr_button.className = 'Stop';

		// 再生をスタートする
		if (flag == 1) { // 単曲再生
		    url = base_url + "/mrlmp3.php?id=" + id;
		    loadList(url);
		}
		else if (flag == 2) { // 連続再生
		    url = base_url + "/mrlmp3.php?title_id=" + id;
		    loadList(url);
		}

		// タイマーを回す(Flashへ再生指示を出した後にタイマーを回すこと)
		// 最初のインターバルは 300msec にする
		g_timer_id = setTimeout(updatePlayer, 300);
	}
	else {
		// クリックされたのが現在アクティブなオブジェクトかどうかで処理を分ける
		plyr = document.getElementById("plyr_ui_"    + seq);
		if (plyr == g_plyr) {
			// 現在アクティブなオブジェクトがクリックされたとき
			endPlayer();

			// 演奏を停止する
			stop();
		}
		else {
			// 現在アクティブなオブジェクトではないものがクリックされたとき

			// 現在再生してる曲を停止する
			endPlayer();
			stop();

			// 新しい曲を再生スタート
			clickPlayer(id, seq, title, flag)
		}
	}
}

function endPlayer()
{
	// 表示を初期化する
	g_plyr_progress.style.width = '0%';

	g_plyr_button.innerHTML = 'Play';
	g_plyr_button.className = 'Play';


	// グローバル変数をクリアする
	g_plyr          = '';
	g_plyr_button   = '';
	g_plyr_progress = '';
	
	// タイマーを止める
	clearTimeout(g_timer_id);
	g_timer_id = 0;
}

function updatePlayer()
{
	// 再生状態をチェック
	if (isStopped()) {
		// 終了処理
		endPlayer();

		return;
	}

	// 再生位置を取得
	//pos = getPosition();
	perc = getPercent();

	g_plyr_progress.style.width = "" + perc + "%";

	g_timer_id = setTimeout(updatePlayer, 100);
}

var g_show_player = 0; // 0: 非表示、1: 表示

function showPlayer()
{
	obj1 = document.getElementById("mrplayer");
	obj2 = document.getElementById("mrplayer_emb");
	
	if (g_show_player == 0) {
		g_show_player = 1;
		
		obj1.style.width  = "325px";
		obj1.style.height = "32px";
		obj2.style.width  = "325px";
		obj2.style.height = "32px";
	}
	else {
		g_show_player = 0;
		
		obj1.style.width  = "0";
		obj1.style.height = "0";
		obj2.style.width  = "0";
		obj2.style.height = "0";
	}
}

// Volumeをクッキーから読み込む
// g_volume は volslider.js の中で宣言されている
function loadVolume()
{
	vol = 70;
	cName = "volume="; // クッキー名
	cCookie = document.cookie + ";";
	str = cCookie.indexOf(cName);
	if (str != -1) {
		end = cCookie.indexOf(";",str);
		vol = eval(unescape(cCookie.substring(str + cName.length, end)));
	}
	g_volume = vol;

	setVolume(g_volume);
}

// Volumeをクッキーへ書き込む
function saveVolume(vol)
{
	cName = "volume="; // クッキー名

	cDays = 365; // データの保存日数
	setPre = new Date();
	setPre.setTime(setPre.getTime() + (cDays*1000*24*3600));
	prd = setPre.toGMTString();

	// パス
	
	path = "/y2lab/";
	//path = "/pianorg/";

	document.cookie = cName + vol + ";expires=" + prd + ";path=" + path;
}
