/*@cc_on _d=document;eval('var document=_d')@*/
var cookie = GetCookie();
var get = GetQuery();
var gUrl = 'http://anipo.jp/';
var gReviewStr = '【評価・レビュー】\n評価・レビューを参考にしてまだ見ていない動画を発掘しよう！';
var gReviewWriteStr = '【評価・レビューの書込み】\n評価・レビューをして、他のユーザーと交流を深めたり、どの動画を見たかを記録に残すことができます！';
var gBbsStr = '【ネタバレコメント】\nネタバレを含んだ書込みです。';
var gMobileFlag=0;

function p(a){document.write(a);}

function MenuColor() {
	var font_color = '#F66';
	if( document.URL.match(/schedule.php/) ) {
		document.getElementById('menu_schedule').style.color = font_color;
	}
	else if( document.URL.match(/c_pg\/co\//) || document.URL.match(/anipo.jp\/co\//) ) {
		document.getElementById('menu_co').style.color = font_color;
	}
	else if( document.URL.match(/douga_list.php/) ) {
		document.getElementById('menu_douga_list').style.color = font_color;
	}
	else if( document.URL.match(/edit_list.php/) ) {
		document.getElementById('menu_edit_list').style.color = font_color;
	}
	else if( document.URL.match(/talk\//) ) {
		document.getElementById('menu_ad').style.color = font_color;
	}
	else if( document.URL.match(/o.anipo.jp\//) ) {
		document.getElementById('menu_otaku').style.color = font_color;
	}
	else if( document.URL.match(/anipo.jp\/ad\//) ) {
		document.getElementById('menu_ad').style.color = font_color;
	}
	else {
		document.getElementById('menu_top').style.color = font_color;
	}
}
function MenuSubColor() {
	var font_color = '#F00';
	if( document.URL.match(/friend_list.php/) ) {
		document.getElementById('sub_friend').style.color = font_color;
	}
	else if( document.URL.match(/start.php/) ) {
		document.getElementById('sub_start').style.color = font_color;
	}
	else if( document.URL.match(/bbs_list.php/) ) {
		document.getElementById('sub_bbs_list').style.color = font_color;
	}
	else if( document.URL.match(/talk\//) ) {
		document.getElementById('sub_talk').style.color = font_color;
	}
	else if( document.URL.match(/ad\/message\//) ) {
		document.getElementById('sub_message').style.color = font_color;
	}
	else {
	}
}

function AdminCheck2( url, str ) {
	if( cookie['session_id'] && cookie['id'] ) {
		location.href = url;
		return true;
	}
	else {
		if( confirm( '「ログインしていないので利用できません」\n\n' + str + '\n\n会員登録をする方は「OK」を押して下さい。' ) ) {
			location.href = "/out/regist.php";
		}
		else {
			return false;
		}
	}
}
function AdminCheckDisplay( id, str ) {
	if( cookie['id'] && cookie['session_id'] ) {
		Display( id );
	}
	else {
		if( confirm( '「ログインしていないので利用できません」\n\n' + str + '\n\n会員登録をする方は「OK」を押して下さい。' ) ) {
			location.href = "/out/regist.php";
		}
		else {
		}
	}
}


function HtmlUpdate( url, utime, exe_url ) {
	var obj = new Object();
	var obj2 = new Object();
	obj = this.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Msxml2.XMLHTTP") || new ActiveXObject("Microsoft.XMLHTTP");
	obj2 = obj;
	if( obj ) {
		obj.open( 'GET', url, true );
		obj.onreadystatechange = function(){
			if( (obj.readyState == 4) && (obj.status == 304) ) {
				//alert( "304 " + obj.responseText );
				obj2.open( 'GET', exe_url, true );
				obj2.onreadystatechange = function(){};
				obj2.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				obj2.send( null );
			}
			else if( (obj.readyState == 4) && (obj.status == 200) ) {
				//alert( "200 " + obj.responseText );
			}
		};

		//指定された時刻以降に更新されていなければ304を返す
		var d=new Date(new Date().getTime()-1000 * utime );
		var gmtString = d.toGMTString().replace(/UTC/,'GMT');
		obj.setRequestHeader("If-Modified-Since",gmtString);
		obj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		obj.send( null );
	}
}

function GetCookie() {
	var i;
	var arr = (document.cookie) ? document.cookie.split(';') : new Array();
	var arr2 = new Array();
	var obj = new Object();
	arr = document.cookie.split(";");
	for( i=0; i<arr.length; i++ ) {
		arr2 = arr[i].split("=");
		obj[arr2[0].match(/[^ ].*/)] = arr2[1];
	}
	return obj;
}
function SetCookie( name, str, utime ) {
	day0 = new Date();
	day0.setTime(day0.getTime()+utime);
	endday = day0.toGMTString();
	document.cookie = name+"="+escape(str)+";expires="+endday+";path=/;domain=.anipo.jp";
}

function GetQuery() {
	var query = window.location.search.substring(1);
	var obj = new Object();
	var parms = query.split('&');
	for( var i=0; i<parms.length; i++ ) {
		var pos = parms[i].indexOf('=');
		if( pos > 0 ) {
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			obj[key] = val;
		}
	}
	return obj;
}


function Sougolink( ary_link, ary_title, max ) {
	var str = '';
	var i;
	var n = 0;
	var r = Math.floor( Math.random() * ary_link.length );
	for( i=r; i < max + r; i++ ) {
		if( i >= ary_link.length ) {n=i-ary_link.length;}
		else {n=i}
		str += '<a href="' + ary_link[n] + '" target="_blank">' + ary_title[n] + '</a><br>';
	}
	document.write( str );
}
function Display( id ) {
	var e = document.getElementById(id);
	if( e.style.display == 'block' ) {
		e.style.display = 'none';
	}
	else {
		e.style.display = 'block';
	}
}
function Display2( ele ) {
	var node = ele.nextSibling;
	if( node.style.display == 'inline' ) {
		node.style.display = 'none';
	}
	else {
		node.style.display = 'inline';
	}
}


function ClickLink( t, ary ) {
	var r = Math.floor( Math.random() * ary.length );
	t.form.action = ary[r];
	t.form.submit();
}

function PageJump(id){
	var obj = new Object();
	obj = document.getElementById(id);
	y = obj.offsetTop;
	scrollTo(0,y);
}

// Ajax
function HttpRequest( url, resultFunc, method, query ) {
	var httpObj = new Object();
	httpObj = this.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Msxml2.XMLHTTP") || new ActiveXObject("Microsoft.XMLHTTP");
	if( httpObj ) {
		httpObj.open( method, url, true );
		httpObj.onreadystatechange = function(){resultFunc( httpObj );};
		if( method == 'GET' ) {
			httpObj.send( null );
		}
		else if( method == 'POST' ){
			httpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			httpObj.send( query );
		}
	}
}
function DougaInfo( id, str ) {
	var obj = document.getElementById(id);
	document.getElementById( id ).innerHTML = str;
}

function RequestLookmark( flag, douga_id, no ) {
	if( !cookie['id'] || !cookie['session_id'] ) {
		AdminCheck2('', '【ルックマーク】\n動画をドコまで見たかチェックしておけます！' );
	}
	else {
		if( flag ) {
			HttpRequest( '../api/lookmark.php', ResultLookmark, 'POST', 'p=add&aid=' + douga_id + '&no=' + no );
		}
		else {
			HttpRequest( '../api/lookmark.php', ResultLookmark, 'POST', 'p=del&aid=' + douga_id + '&no=' + no );
		}
	}
}

function ResultLookmark( httpObj ) {
	if( (httpObj.readyState == 4) && (httpObj.status == 200) ) {
		
		if( httpObj.responseText == 'error1' ) {
			alert('ルックマーク数が制限値超えています。これ以上増やす事が出来ません。');
			return false;
		}
		
		var ary = httpObj.responseText.split('_');
		var d = document.getElementById('lookmark' + ary[1] + '_' + ary[2] );

		if( ary[0] == '1' ) {
			d.innerHTML = '<a href="javascript:RequestLookmark(0,' + ary[1] + ',\'' + ary[2] + '\')" title="ルックマーク解除"><img src="../image/lookmark_on.gif" class="lookmark-btn"></a>';
		}
		else if( ary[0] == '0' ) {
			d.innerHTML = '<a href="javascript:RequestLookmark(1,' + ary[1] + ',\''+ ary[2] + '\')" title="ルックマーク登録"><img src="../image/lookmark_off.gif" class="lookmark-btn"></a>';
		}
		else {
			alert( httpObj.responseText );
		}
	}
}



function Mylist( douga_id ) {
	document.write('<span id="mylist'+douga_id+'"><a href="javascript:RequestMylist(1,'+douga_id+')"><img src="http://img.anipo.jp/star1.gif" title="マイリスト登録"></a></span>');
}
function LinkRequest( id ) {
	HttpRequest( '/api/link_report.php', function(obj){if( (obj.readyState == 4) && (obj.status == 200) ) {alert('ご報告ありがとう御座いました。')}}, 'POST', 'id=' + id );
}

function RequestMylist( flag, douga_id ) {
	if( !cookie['id'] || !cookie['session_id'] ) {
		AdminCheck2('', '【マイリスト】\n動画をブックマークして置ける機能です。' );
	}
	else {
		if( flag ) {
			HttpRequest( '/api/mylist.php', ResultMylist, 'POST', 'p=add&aid=' + douga_id );
		}
		else {
			HttpRequest( '/api/mylist.php', ResultMylist, 'POST', 'p=del&aid=' + douga_id );
		}
	}
}

function ResultMylist( httpObj ) {
	if( (httpObj.readyState == 4) && (httpObj.status == 200) ) {
		if( httpObj.responseText == 'error1' ) {
			alert('マイリスト数が制限値超えています。これ以上増やす事が出来ません。');
			return false;
		}
		var ary = httpObj.responseText.split('_');
		var d = document.getElementById('mylist'+ary[1]);
		if( ary[0] == '1' ) {
			d.innerHTML = '<a href="javascript:RequestMylist(0,'+ary[1]+')"><img src="http://img.anipo.jp/star0.gif" title="マイリスト解除"></a>';
		}
		else if( ary[0] == '0' ) {
			d.innerHTML = '<a href="javascript:RequestMylist(1,'+ary[1]+')"><img src="http://img.anipo.jp/star1.gif" title="マイリスト登録"></a>';
		}
		else {
			alert( httpObj.responseText );
		}
	}
}

function PrevDouga( enc_title ) {
	var prev_douga = "";
	if( "prev_douga_title" in cookie ){
		var pr = decodeURIComponent(cookie['prev_douga_title']);
		if( !(pr+"<>").match( new RegExp(enc_title + "<>", "i") ) ){
			prev_douga = enc_title + "<>" + pr.split("<>").slice(0,2).join("<>");
		}
	}
	else{
		prev_douga = enc_title;
	}
	if( prev_douga ){
		SetCookie( "prev_douga_title", prev_douga, 3600*24*1000 );
	}
}

function GetUser( Doc_aid ) {
/*
	if (navigator.userAgent.indexOf('iPhone') != -1) {}
	else if (navigator.userAgent.indexOf('iPod Touch') != -1) {}
	else if (navigator.userAgent.indexOf('Mobile') != -1) {}
	else if (navigator.userAgent.indexOf('DoCoMo') != -1) {gMobileFlag=1;}
	else if (navigator.userAgent.indexOf('KDDI') != -1) {gMobileFlag=1;}
	else if (navigator.userAgent.indexOf('UP.Browser') != -1) {gMobileFlag=1;}
	else if (navigator.userAgent.indexOf('SoftBank') != -1) {gMobileFlag=1;}
	else if (navigator.userAgent.indexOf('J-PHONE') != -1) {gMobileFlag=1;}
	else if (navigator.userAgent.indexOf('Vodafone') != -1) {gMobileFlag=1;}
	else if (navigator.userAgent.indexOf('DDIPOKET') != -1) {gMobileFlag=1;}
	if( gMobileFlag ) {
		document.getElementById('side-menu1').style.display = 'none';
		document.getElementById('side-menu2').style.display = 'none';
	}
*/

	if( Doc_aid && cookie['id'] && cookie['session_id'] ) {
		HttpRequest( '/data/user/' +cookie['id'] + '?' + cookie['update_time'], 
			function(obj){
				// aid を渡す
				var data = new Object();
				var i;
				var d;
				var m = []
				if( (obj.readyState == 4) && (obj.status == 200) ) {
					if( obj.responseText ) {
						eval( 'data = ' + obj.responseText );
						
						// mylist
						var mylist_reg = new RegExp( ","+Doc_aid+",", "g" );
						if( mylist_reg.test(data.mylist) ) {
							d = document.getElementById('mylist'+Doc_aid);
							d.innerHTML = '<a href="javascript:RequestMylist(0,'+Doc_aid+')" title="マイリスト解除"><img src="http://img.anipo.jp/star0.gif"></a>';
						}
						
						// lookmark
						var reg = new RegExp( ","+Doc_aid+"_([0-9\.]+)", "g" );
						while( m = reg.exec(data.lookmark) ) {
							m[1] = parseInt( m[1] ) + 0;
							if( document.getElementById('lookmark' + Doc_aid + '_' + m[1] ) ) {
								d = document.getElementById('lookmark' + Doc_aid + '_' + m[1] );
								d.innerHTML = '<a href="javascript:RequestLookmark(0,' + Doc_aid + ',\'' + m[1] + '\')" title="ルックマーク解除"><img src="../image/lookmark_on.gif" class="lookmark-btn"></a>';
							}
						}
					}
				}
			}, 'GET', '' );
	}
}



function UserResult( obj ) {
}
function EpDisplay( num ) {
	var loop = gLastNum / 100;
	var i;
	for( i=0; i < loop; i++ ) {
		document.getElementById('ep'+i).style.display = 'none';
	}
	document.getElementById('ep'+num).style.display = 'block';
}

function ShowPrevDouga( url ) {
	var prev_douga_list="";
	var title;
	if( 'prev_douga_title' in cookie ){
		var c = cookie['prev_douga_title'].split("%3C%3E");
		for( var i in c ){
			u = decodeURIComponent(c[i]);
			u2 = u.replace(/%2F/g, "%252F");
			u3 = decodeURIComponent(u).replace(/\+/g, " ");
			if( u3.length > 32 ) {
				title = u3.substr( 0, 11 ) + '...';
			}
			else {
				title = u3;
			}
			prev_douga_list += '<a href="'+ url + u2 + '.html" title="'+u3+'">' + title + '</a><br>';
		}
		if(prev_douga_list){
			return prev_douga_list;
		}
	}
	return '今まで開いた動画の履歴３件です。現在登録されていません';
}
