//NICOCOON検索画面用のJavaScript

function changeAddBoxVisible(){
	var addBox=document.getElementById('addBox');
	if(addBox.style.visibility=='hidden'){
		addBox.style.visibility='visible';
		addBox.style.height='auto';
		document.getElementById('visibleAddBoxButton').value='入力欄を隠す';
	}
	else{
		addBoxHeight=addBox.style.height;
		addBox.style.visibility='hidden';
		addBox.style.height='0px';
		document.getElementById('visibleAddBoxButton').value='入力欄を表示';
	}
}

function onLink(){
	document.body.style.cursor='pointer';
}
function leftLink(){
	document.body.style.cursor='default';
}

function countup_watched(video_id){
	var url = "http://www.nicovideo.jp/watch/"+video_id;
	window.open(url,"a","width=640,height=768,scrollbars=yes,resizable=yes,status=yes");
	document.hiddenform.mode.value="countup";
	document.hiddenform.video_id.value=video_id;
	document.hiddenform.submit();
}

//検索設定欄を1行追加
var termSeq=0;
function setTermLineNum(num){
	termSeq=num;
}

function addTermLine(){
	//親Div
	var lineDiv = document.createElement('div');
	lineDiv.id = 'termLine' + termSeq;

	//論理演算子
	var logicWords = ['絞込','範囲','除外'];
	var logicParams = ['and','or','not'];
	if(getTermArea().childNodes.length==0){
		logicWords = ['範囲'];
		logicParams = ['or'];
	}
	lineDiv.appendChild(createSpanSelect('logic',logicWords,logicParams));

	//「：」
	var coronSpan = document.createElement('span');
	coronSpan.appendChild(document.createTextNode('：'));
	lineDiv.appendChild(coronSpan);

	//検索対象
	var targetWords = ['タグ','キーワード','再生数','マイリストID'];
	var targetParams = ['tag','title','view_counter','mylist'];
	lineDiv.appendChild(createSpanSelect('term_target',targetWords,targetParams));

	//「が」
	var gaSpan = document.createElement('span');
	gaSpan.appendChild(document.createTextNode('が'));
	lineDiv.appendChild(gaSpan);

	//テキスト欄
	var textSpan = document.createElement('span');
	var textEle = document.createElement('input');
	textEle.type='text';
	textEle.id='term_value'+termSeq;
	textEle.name='term_value'+termSeq;
	textSpan.appendChild(textEle);
	lineDiv.appendChild(textSpan);

	//合致条件
	var operatorWords = ['一致','部分','以上','以下'];
	var operatorParams = ['equal','like','upper','lower'];
	lineDiv.appendChild(createSpanSelect('operator',operatorWords,operatorParams));

	//削除ボタン
	var delId = 'termDel'+termSeq;
	var delSpan = document.createElement('span');
	var delButton = document.createElement('input');
	delButton.type='button';
	delButton.id=delId;
	delButton.name=delId;
	delButton.value='削除';
	delButton.style.marginLeft='10px';

	var currentSeq = termSeq;
	var listener = function(event){ removeTermLine(event,currentSeq); };

	if(window.addEventListener){
		delButton.addEventListener('click',listener,false);
	}else if(window.attachEvent){
		delButton.attachEvent('onclick',listener);
	}

	if(getTermArea().childNodes.length==0){
		delButton.disabled=true;
	}
	delSpan.appendChild(delButton);
	lineDiv.appendChild(delSpan);

	getTermArea().appendChild(lineDiv);
	termSeq++;
}

//指定された検索設定欄を削除
function removeTermLine(eve,num){
	getTermArea().removeChild(document.getElementById('termLine'+num));
}

function getTermArea(){
	return document.getElementById('termArea');
}

//SPAN+SELECTな要素生成
function createSpanSelect(idHead,words,params){
	var spanEle = document.createElement('span');
	var selectEle = createSelectElement(idHead+termSeq,words,params,params[0]);
	selectEle.style.marginRight='2px';
	selectEle.style.marginLeft='2px';
	spanEle.appendChild(selectEle);
	return selectEle;
}

//セレクトアイテム生成
function createSelectElement(id,words,params,select){
	var selectEle = document.createElement('select');
	selectEle.id = id;
	selectEle.name = id;
	for(var i=0; i<params.length; i++){
		var optionEle = document.createElement('option');
		optionEle.value=params[i];
		optionEle.appendChild(document.createTextNode(words[i]));
		if(params[i]==select){
			optionEle.selected=true;
		}
		selectEle.appendChild(optionEle);
	}
	return selectEle;
}

function showSource(){
	alert(document.getElementById('termArea').innerHTML);
}

function confirmUserDelete(){
	if(window.confirm('退会しますか？')){
		document.getElementById('hiddenform_mode').value='user_delete';
		document.getElementById('hiddenform').submit();
	}
}

function confirmUserLogout(){
	if(window.confirm('ログアウトしますか？')){
		document.getElementById('hiddenform_mode').value='logout';
		document.getElementById('hiddenform').submit();
	}
}

function confirmListDelete(searchID){
	if(window.confirm('削除しますか？')){
		document.getElementById('listform_mode_'+searchID).value='list_delete';
		document.getElementById('listform_'+searchID).submit();
	}
}

function searchAt(searchID){
	document.getElementById('listform_mode_'+searchID).value='update';
	document.getElementById('listform_'+searchID).submit();
}

function showTermForm(searchID){
	document.getElementById('listform_mode_'+searchID).value='search_edit';
//	document.getElementById('listform_'+searchID).target='termWindow';
	document.getElementById('listform_'+searchID).submit();
}
