// JavaScript Document
var treeObject;//temp
var sortOrder = "-";
var sortType=getCookie('sortType');
var thmt=getCookie('thmt');
var clst=0;
var lastRelease = null;											//最終タブネーム
var lastObject = null;											//最終タブオブジェクト
var lastRelease = null;											//最終タブネーム
var lastObject = null;											//最終タブオブジェクト

var tabstring = "04,顔出しＯＫ,16,巨乳,27,スゴ濡れ/潮吹き";	//タブ文字列
var chatroomURL = "http://www.angel-live.jp/flax/fss/49608/a_chatroom_fa.html?performerCode=";
var mailURL = "http://www.angel-live.jp/flax/fss/49608/a_memMailReplyMail_wy.html?mailNew=1&performerCode=";
var digestURL = "http://www.angel-live.jp/flax/fss/49608/a_chatroom_fa.html?tab=5&s=1&performerCode=";
var sampleURL = "http://www.angel-live.jp/flax/fss/49608/a_chatroom_fa.html?tab=4&s=1&performerCode=";
var profileURL = "http://www.angel-live.jp/flax/fss/49608/a_chatroom_fa.html?performerCode=";
var mainteURL = "http://www.angel-live.com/common/maintenance/periodic_mainte.html";
var tabNumber = null;
var statusStr = ["オフライン","待機中","チャット中","2ショット","待ち合わせ"];

function floadXml(){
  if(thmt == 1){
   document.getElementById("pict").getElementsByTagName("a")[0].className = "on";
  }
  if(sortType == '.taiki'){
	 document.getElementById("count").getElementsByTagName("a")[0].className = "on";
  }
	loadGdb();
}

function loadGdb(){
	var url = './common/cache/load.php?' + Math.random()*10000;
	var options = { onComplete: complete };
	new Ajax.Request(url, options);	
}

function complete(req) {
	tabInset();
	setLocal("local");
	var timeout = setTimeout(setLocal,10000);
	var json = req.responseText;
	if(json.search(/<!DOCTYPE/) == 0){
		location.href = mainteURL;
	}
	json = json.replace(/\r|\n|\t/g,"");
	var obj = eval("("+json+")");
	showResponse(obj);
}

function setLocal(func_switch){
	if(func_switch == "local"){
		floadXml =
			function(){
				showLocalobj();
			};
	}else{
		floadXml =
			function(){
				loadGdb();
			};
	}
}


function showLocalobj(){
	var obj = treeObject;
	var shuffleObj = shuffle(obj);
	distribution(shuffleObj);
}



function shuffle(list) {
	if(list.length){
		var i = list.length;
		while (--i) {
			var j = Math.floor(Math.random() * (i + 1));
			if (i == j) continue;
			var k = list[i];
			list[i] = list[j];
			list[j] = k;
		}
	}
	return list;
}


function returnhtml(obj){
	var statusNum = obj.status;
	if(statusNum == "1" && obj.option15.match(/98/)){
		statusNum = "4";
	}
	if(statusNum == "1" && obj.peepingmembercount >= 1){
		statusNum = "2";
	}
	var loginNum = (obj.option1 == 7) ? parseFloat(obj.login) + parseFloat(obj.option13) : obj.login;
  if(thmt==1){
	 var html = '<div class="chatbox_150 event' + obj.option8 + ' ' + obj.option9 + '">';
	 html += '<div class="status' + statusNum + '" title="' + statusStr[statusNum] + '">' + loginNum + '</div>';
	 html += '<div class="pict_150"><a href="' + chatroomURL + obj.code + '"><img src="' + obj.image150 + '" alt="' + obj.name + '" /></a></div>';
	 html += '<div><a href="' + profileURL + obj.code + '">' + obj.name + '</a></div>';
	 html += '<div><a href="'+ mailURL + + obj.code + '"><img src="http://livechat.angel-live.com/common/img/icon/ico_mail.gif" alt="メール" /></a>';
	 if(obj.option15.indexOf("05") != -1){
		html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_mike.gif" alt="マイク有り" />';
	 }
	 if(obj.option12.indexOf("02") != -1){
		html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_hi.gif" alt="高画質" />';
	 }
	 if(eval(obj.existsMovie) && obj.option15.indexOf("44") != -1){
		html += '<a href="' + sampleURL + obj.code + '"><img src="http://livechat.angel-live.com/common/img/icon/ico_movie.gif" alt="紹介ムービー" /></a>';
	 }
	 if(obj.option11.indexOf("true") != -1){
		html += '<a href="' + digestURL + obj.code + '"><img src="http://livechat.angel-live.com/common/img/icon/ico_digest.gif" alt="ダイジェストムービー" /></a>';
	 }
	 if(obj.option12.indexOf("03") != -1){
		if(obj.option9 == "color01"){
			html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_newnewg.gif" alt="初脱ぎさん" />';
		}else{
			html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_newg.gif" alt="新人" />';
		}
	 }
	 html += '</div></div>';
  }else{

	 var html = '<div class="chatbox event' + obj.option8 + ' ' + obj.option9 + '">';
	 html += '<div class="status' + statusNum + '" title="' + statusStr[statusNum] + '">' + loginNum + '</div>';
	 html += '<div class="pict"><a href="' + chatroomURL + obj.code + '"><img src="' + obj.image + '" alt="' + obj.name + '" /></a></div>';
	 html += '<div><a href="' + profileURL + obj.code + '">' + obj.name + '</a></div>';
	 html += '<div><a href="'+ mailURL + + obj.code + '"><img src="http://livechat.angel-live.com/common/img/icon/ico_mail.gif" alt="メール" /></a>';

	 if(obj.option15.indexOf("05") != -1){
		html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_mike.gif" alt="マイク有り" />';
	 }
	 if(obj.option12.indexOf("02") != -1){
		html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_hi.gif" alt="高画質" />';
	 }
	 if(eval(obj.existsMovie) && obj.option15.indexOf("44") != -1){
		html += '<a href="' + sampleURL + obj.code + '"><img src="http://livechat.angel-live.com/common/img/icon/ico_movie.gif" alt="紹介ムービー" /></a>';
	 }
	 if(obj.option11.indexOf("true") != -1){
		html += '<a href="' + digestURL + obj.code + '"><img src="http://livechat.angel-live.com/common/img/icon/ico_digest.gif" alt="ダイジェストムービー" /></a>';
	 }
	 if(obj.option12.indexOf("03") != -1){
		if(obj.option9 == "color01"){
			html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_newnewg.gif" alt="初脱ぎさん" />';
		}else{
			html += '<img src="http://livechat.angel-live.com/common/img/icon/ico_newg.gif" alt="新人" />';
		}
	 }
	 html += '</div></div>';
  }
	return html;
}


function distribution(obj){
	/*ソート処理*/
	var tmp = obj.sortBy(
		function(value, index){
			if(eval(sortOrder + "value" + sortType) == "1" && value.option15.match(/98/)){
				return 4;
			}
			if(eval(sortOrder + "value" + sortType) == "1" && value.peepingmembercount >= 1){
				return 2;
			}
			return eval(sortOrder + "value" + sortType);
		}
	);
	
	//var tmp = obj;

 //tab	
 if(tabNumber && tabNumber != "99"){
  tmp = tmp.select(function(value, index){
  var bool = (value.option12 + "," + value.option15).match(tabNumber);
  return bool;
 });
 }	

	var html1 = '';
	//var html2 = '';
	var html3 = '';
	if(tmp.length){
		for(i=0;i<tmp.length;i++){
			switch(tmp[i].option1){
				case '2':
				case '6':
				case '55':
				html1 += returnhtml(tmp[i]);
				break;
				/*
				case '3':
				html2 += returnhtml(tmp[i]);
				break;
				*/
        /*
				case '7':
				html3 += returnhtml(tmp[i]);
				break;
				*/
				default:
				break;
			}
		}
	}
	
	if(html1==''){
		html1 = '<div class="zero">現在オンライン中の女の子は居ません</div>';
	}
	//if(html2==''){html2 = '<div class="zero2">2007年12月1日よりパーティールームにて出演しておりました女の子は、<br />今後プライベートルームにて出演いたします。<br />今まで沢山のご愛好誠に有難う御座いました。</div>';}
	
	$('privateroom').innerHTML = html1;
	//$('partyroom').innerHTML = html2;
	
	var top = '<div class="title"><h2 class="special" title="スペシャルルーム">スペシャルルーム</h2><div class="count" title="表示切替"><a href="./index.php<?= $bcode; ?>" onclick=\'showNarrowing(); return false;\'>表示切替</a></div><div class="reload" title="最新の情報に更新"><a href="./index.php<?= $bcode; ?>" onclick=\'windowLoad(); return false;\'>最新の情報に更新</a></div></div><div class="room"><div class="clear"></div><div id="specialroom">';
	var bottom = '</div><div class="clear"></div></div><div class="bottom"></div>';
	
	if(html3!=''){
		$('special').innerHTML = top + html3 + bottom;
	}else{
		$('special').innerHTML = '';
	}
}


function showResponse(tree){
	var obj = tree.performers;
	var tmp = obj.compact();
	treeObject = tmp.clone();
	var shuffleObj = shuffle(tmp);
	distribution(shuffleObj);
}

function showNarrowing(){
	var obj = treeObject;
	var shuffleObj = shuffle(obj);
	if(sortType=="" || sortType==".status2"){
		sortType = ".taiki";
		document.getElementById("count").getElementsByTagName("a")[0].className = "on";
	}else{
		sortType = ".status2";
		document.getElementById("count").getElementsByTagName("a")[0].className = "";
	}
  setCookie("sortType",sortType);
	distribution(shuffleObj);
}
//clst=0;
//自動更新
function check(){
 floadXml();
 if(clst==0){
 document.getElementById("autoreload").getElementsByTagName("a")[0].className = "on";
 clst=1;
 timerID=setInterval("windowLoad()",30000);
 }else{
 document.getElementById("autoreload").getElementsByTagName("a")[0].className = "";
 clearInterval(timerID);
 clst=0;
 }
// setCookie("clst",clst);
}

//写真サイズ変更
function thumb(){
 if(thmt==0){
  document.getElementById("pict").getElementsByTagName("a")[0].className = "on";
  thmt=1;
 }else{
  document.getElementById("pict").getElementsByTagName("a")[0].className = "";
  thmt=0;
 }
 setCookie("thmt",thmt);
 windowLoad();
}

//タブ情報セット
function tabInset(){
	var tmp = tabstring.split(",");
	if(isNaN(tmp[0])){tmp[0] = "04";tmp[1] = "顔出しＯＫ";}
	if(isNaN(tmp[2])){tmp[2] = "16";tmp[3] = "巨乳";}
	if(isNaN(tmp[4])){tmp[4] = "27";tmp[5] = "スゴ濡れ/潮吹き";}
	$('tab2').innerHTML = '<a href="./maintest.php" onclick=\'tabfunc("tab2","' + tmp[0] + '"); return false;\'>' + tmp[1] + '</a>';
	$('tab3').innerHTML = '<a href="./maintest.php" onclick=\'tabfunc("tab3","' + tmp[2] + '"); return false;\'>' + tmp[3] + '</a>';
	$('tab4').innerHTML = '<a href="./maintest.php" onclick=\'tabfunc("tab4","' + tmp[4] + '"); return false;\'>' + tmp[5] + '</a>';
}

function tabfunc(index,number){
 if(!lastRelease){
	lastRelease = "tab1";
	lastObject = $('tab1');
 }
 tabNumber = number;
 var obj = treeObject;
 distribution(obj);
 if(index){
	lastObject.className = lastRelease;
	$(index).className='up'+index;
	lastRelease = index;
	lastObject = $(index);
 }
}

Event.observe(window, "load", windowLoad, false);

