﻿var preload_ar = new Array();
var b64tags_ar = new Array();
var b64title_ar = new Array();
var vid_ar = new Array();
var down_ar = new Array();
var hd_ar = new Array();
var play_counter = 0;

document.onmousemove = mmv;
var thumbnail_view_flag;
var selected_vid_image_url;


function open_hot_win(){
	var fs;
	fs = window.open("/dl/hot.php?color=ccffcc&ad=1", "_hot_win", "width=600,height=195,scrollbars=yes,resizable=yes,toolbar=yes,location=yes,menubar=yes");
	fs.focus();
}

function onMenuClick(query_string){
	var search = document.search_form.search_text.value;
	if (search != ''){
		query_string = query_string + '&search=' + encodeURIComponent(search);
	}
	document.location.href = query_string;

}

function onLinkClick(){
	playerDiv.innerHTML = '<img src="/images/YouTube315.gif" />';
}


function open_play_win(url){
	onLinkClick();
	//window.open(url, "_play_win", "width=515,height=470,scrollbars=yes,resizable=yes,toolbar=yes,location=yes,menubar=yes");
	window.open(url, "_play_win", "width=670,height=630,scrollbars=yes,resizable=yes,toolbar=yes,location=yes,menubar=yes");
}

<!--クッキー操作はhttp://www.altum.jp/js/66.txtを利用させて頂きました-->
function getCookie(name, defval){
  ck = document.cookie.split("; "); // cookieの中身を "; " で区切る
  for (i in ck){
   data = ck[i].split("="); // 区切ったものをさらに名前と値に分割
   if (data[0] == name){
    val = unescape(data[1]);
    return val;
   }
  }
  return defval;
}


<!--期限は数値で、日単位。期限を１年間にしたければ term=365-->
function setCookie(name, val, term){
  val = escape(val); // 内容をエスケープ
  expire = new Date();
  term += expire.getDate();
  expire.setDate(term % 365);
  expire.setFullYear(expire.getFullYear() + parseInt(term / 365));
  expire = expire.toGMTString();
  document.cookie = name + "=" + val + ";expires=" + expire + ";";
}


function func_preview_check(){
	var value = setting_form.preview_check.checked;
	if (value){
		setCookie("preview", "1", 1);//クッキーに記録（1日有効）
	}else{
		setCookie("preview", "0", 1);//クッキーに記録
	}
	setting_form.submit();
}

function func_tag_search(tag){
	if(tag==""){
		setCookie("tags", "", 0);//クッキーを消す
		search_form.search_text.value="";
		document.location.href = document.location.pathname; // + "?t=" + Math.floor( Math.random() * 99999 );//?以降を切り捨てる
	}else{
		search_form.search_text.value=tag;
		search_form.submit();
	}
}
	
function func_tags_link(tags){
	var ret_str = "<a href=javascript:func_tag_search(\"\"); ><big><b>Clear</b></big></a> &nbsp; ";
	tags = tags.replace(new RegExp("[-_/()”’！＝｜～＿／。、＜＞（）「」【】『』　]","g") , " ");//記号および全角スペースを半角スペースに置き換える
	tmp_tag_ar = tags.split(" ");

	var tag_ar = new Array();
	var tags_cookie = getCookie("tags","");//クッキーから読み込み
	tag_ar = tags_cookie.split(" ");
	
	var i;
	var k;
	for(i = 0; i < tmp_tag_ar.length; i++){
		var bFound = 0;
		for(k = 0; k < tag_ar.length; k++){
			if (tmp_tag_ar[i].toLowerCase() == tag_ar[k].toLowerCase()){
				bFound = 1;
			}
		}
		if (bFound == 0 && tmp_tag_ar[i].length >= 2 ){//1文字だけのキーワードは追加しない
			tag_ar.push(tmp_tag_ar[i]);
		}
	}
	tag_ar = tag_ar.slice(Math.max(0, tag_ar.length - 21));//最新タグワード 21個まで表示
	tags_cookie = tag_ar.toString();
	tags_cookie = tags_cookie.replace(new RegExp(",","g") , " ");//全てのカンマをスペースに置き換える
	setCookie("tags", tags_cookie, 1);//クッキーに保存（1日有効）
	
	for(i = 0; i < tag_ar.length; i++){
		ret_str += "<a href=javascript:func_tag_search(\"" + tag_ar[i] +"\"); >" + tag_ar [i] + "</a> ";
	}

	return ret_str;
}

function play(i, hd){
	if (getCookie("play_win_flag",0) == 0){//play_winが閉じていれば（play_winでセットされたクッキーによって判定）
		if(hd == 0){//H264再生
			playerDiv.innerHTML = "<embed src=http://www.youtube.com/v/"+ vid_ar[i] +"&fs=1&autoplay=1&ap=%2526fmt%3D18 type=application/x-shockwave-flash wmode=transparent width=382 height=315 allowfullscreen=true></embed>" ;
		}else{//HD再生
			playerDiv.innerHTML = "<embed src=http://www.youtube.com/v/"+ vid_ar[i] +"&fs=1&autoplay=1&ap=%2526fmt%3D22 type=application/x-shockwave-flash wmode=transparent width=382 height=315 allowfullscreen=true></embed>" ;
		}
	}else{//play_winが開いていれば
		if(down_ar[i] == ""){
			open_play_win("/youtube/player.php?url="+vid_ar[i]+"&ad=0&color=ccffcc");
		}else{
			open_play_win("/youtube/player.php?download="+down_ar[i]+"&ad=0&color=ccffcc");
		}
		playerDiv.innerHTML = "<embed src=http://www.youtube.com/v/"+ vid_ar[i] +" type=application/x-shockwave-flash wmode=transparent width=382 height=315></embed>" ;
	}
	
	if(down_ar[i] == ""){
		//linkDiv.innerHTML = "<a href=javascript:open_play_win(\"http://www.youtube.com/watch?v="+vid_ar[i] +"\"); >YouTubeで再生</a> &nbsp;&nbsp; <a href=javascript:open_play_win(\"/youtube/player.php?url="+vid_ar[i]+"&ad=0&color=ccffcc\") >H264品質で再生</a>" ;
		linkDiv.innerHTML = "<a href=javascript:open_play_win(\"http://www.youtube.com/watch?v="+vid_ar[i] +"\"); >YouTubeで再生</a> &nbsp;&nbsp; " ;
	}else{
		//linkDiv.innerHTML = "<a href=javascript:open_play_win(\"http://www.youtube.com/watch?v="+vid_ar[i] +"\"); >YouTubeで再生</a> &nbsp;&nbsp; <a href=javascript:open_play_win(\"/youtube/player.php?download="+down_ar[i]+"&ad=0&color=ccffcc\") >H264品質で再生</a>" ;
		linkDiv.innerHTML = "<a href=javascript:open_play_win(\"http://www.youtube.com/watch?v="+vid_ar[i] +"\"); >YouTubeで再生</a> &nbsp;&nbsp; " ;
	}

	idDiv.innerHTML = vid_ar[i];
	idDiv.style.display = "none";

	var title = base64.decode( b64title_ar[i] , 1 );
	
	titleDiv.innerHTML = "<small><b>" + title + "</b><br/>" + vid_ar[i] + "</small>";
	document.title = title;
	
	play_counter += 1;

	if(play_counter % 4 == 0){
		amazonDiv.innerHTML = amazonDiv.innerHTML;
		googleDiv.innerHTML = googleDiv.innerHTML;
		livelinkDiv.innerHTML = livelinkDiv.innerHTML;
	}

	var tags = base64.decode(b64tags_ar[i], 1);

	tagsDiv.innerHTML = "<center><small>" + func_tags_link(tags + " " + title) + "</small></center>";
	
	playedDiv.innerHTML = "<iframe src=\"/youtube/played.php?vid=" +  escape(vid_ar[i]) +"&title=" + escape(base64.decode( b64title_ar[i] , 0 )) + "\" ></iframe>";
	playedDiv.style.display = "none";
	
	///////
	
	idRetweet.innerHTML = "<b><small><img src=/images/new.gif /><a href=http://twitter.com/home?status=RT%20%40tubedouga%20" + escape(base64.decode( b64title_ar[i] , 0 )) + "%20" + escape("http://www.youtube.com/watch?v=" + vid_ar[i]) + " target=_blank>この動画をTwitterで紹介する</a></small></b>";
		
}

<!--サムネール表示方法はyoutubech.comを参考にさせて頂きました-->
function thumb(val, i){
	var el = document.getElementById("thumbnail");
	thumbnail_view_flag = val;
	selected_vid_image_url= preload_ar[i];

	if(val == 1 && el.innerHTML == ""){
		el.innerHTML = "<img class=thumb src=" + selected_vid_image_url + "/1.jpg>" +
			"<img class=thumb src=" + selected_vid_image_url + "/2.jpg>" +
			"<img class=thumb src=" + selected_vid_image_url + "/3.jpg>" + 
		    "<br/><small>" + base64.decode(b64tags_ar[i], 1)+ "</small>";
	} else if(val == 2 && el.innerHTML == ""){
		el.innerHTML = "<small>" + base64.decode(b64tags_ar[i], 1) + "</small>";
	} else if(val == 0){
		el.innerHTML = "";
	}

	el.style.display = (val ? "block" : "none");
	
}

function mmv(e){
	var el = document.getElementById("thumbnail");
	if(thumbnail_view_flag){
		el.style.top	= getMouseY(e) + 20;
		el.style.left = getMouseX(e) + 20;
		//window.status = selected_vid_image_url;
	}
}

function getMouseX(e){
	if(window.opera)	 
					return e.clientX
	else if(document.all) 	
					return document.body.scrollLeft+event.clientX
	else if(document.layers||document.getElementById)
					return e.pageX
}

function getMouseY(e){
	if(window.opera)	 
					return e.clientY
	else if(document.all) 	
					return document.body.scrollTop+event.clientY
	else if(document.layers||document.getElementById)
					return e.pageY
}


<!--任意のYouTube動画をページ内で再生する-->
function tubeplay(vid){
	playerDiv.innerHTML = "<embed src=http://www.youtube.com/v/"+ vid +"&autoplay=1&ap=%2526fmt%3D18 		type=application/x-shockwave-flash wmode=transparent width=382 height=315></embed>";
	playedDiv.innerHTML = "<iframe src=\"/youtube/played.php?vid=" +  escape(vid) +"&title=" + escape("**********") + "\" ></iframe>";
	playedDiv.style.display = "none";
	
}
