﻿// JavaScript Document


function onLoadFunc(){
	if(URLargument.page){
		_page = unescape(URLargument.page);
	}
	if(URLargument.searchKey){
		searchKey = unescape(URLargument.searchKey);
	}
	eval(onloadEvent)();
}

function sideBtn(size,ID){
	for(var i in itemID){
		var	_obj	= size+itemID[i];
		$(size+itemID[i]).style.display	= 'none';
	}
	$(size+ID).style.display	= 'block';
}

/*データ生成*/
var	itemObj	= new Object();
var	itemID	= new Object();
var	iconObj	= new Object();

function func_lsmt(xml){
	var	_xmlObj	= xml.responseXML.getElementsByTagName('items')[0];
	var	xmlObj	= xml.responseXML.getElementsByTagName('item');
	var	_iconxmlObj	= xml.responseXML.getElementsByTagName('icons')[0];
	var	iconxmlObj	= xml.responseXML.getElementsByTagName('icon');

	for(var i=0; iconxmlObj.length>i; i++){
		iconObj[xmlTag(_iconxmlObj,'icon',i)]=xmlTag(_iconxmlObj,'icon',i,'ID');
	}

	var	n		= 1;
	itemObj['よくあるお問合せ']		= new Object();
	itemObj['よくあるお問合せ']['']	= new Object();
	itemID['よくあるお問合せ']			= n++;

	for(var i=0; xmlObj.length>i; i++){
		itemID[xmlTag(_xmlObj,'item',i,'large')]=(itemID[xmlTag(_xmlObj,'item',i,'large')])? itemID[xmlTag(_xmlObj,'item',i,'large')]:n++;

		_large		= (xmlTag(_xmlObj,'item',i,'large'))?	xmlTag(_xmlObj,'item',i,'large')	:'';
		_inside		= (xmlTag(_xmlObj,'item',i,'inside'))?	xmlTag(_xmlObj,'item',i,'inside')	:'';
		_small		= (xmlTag(_xmlObj,'item',i,'small'))?	xmlTag(_xmlObj,'item',i,'small')	:'';
		_title		= (xmlTag(_xmlObj,'item',i,'title'))?	xmlTag(_xmlObj,'item',i,'title')	:'';
		_itemObj	= {'text':xmlTag(_xmlObj,'item',i),'URL':xmlTag(_xmlObj,'item',i,'url'),'tag':xmlTag(_xmlObj,'item',i,'tag'),"search":false,'top':xmlTag(_xmlObj,'item',i,'top')};
		if(itemObj[_large]){
			if(itemObj[_large][_inside]){
				if(	itemObj[_large][_inside][_small]){
					itemObj[_large][_inside][_small][_title]	=_itemObj;
				}else{
					itemObj[_large][_inside][_small]= new Array();
					itemObj[_large][_inside][_small][_title]	=_itemObj;
				}
			}else{
					itemObj[_large][_inside]=new Object();
					itemObj[_large][_inside][_small]= new Array();
					itemObj[_large][_inside][_small][_title]	=_itemObj;
			}
		}else{
					itemObj[_large]=new Object();
					itemObj[_large][_inside]=new Object();
					itemObj[_large][_inside][_small]= new Object();
					itemObj[_large][_inside][_small][_title]	=_itemObj;
		}
		if(xmlTag(_xmlObj,'item',i,'top')){
				if(	itemObj['よくあるお問合せ'][''][_small]){
					itemObj['よくあるお問合せ'][''][_small][_title]	=_itemObj;
				}else{
					itemObj['よくあるお問合せ'][''][_small]= new Array();
					itemObj['よくあるお問合せ'][''][_small][_title]	=_itemObj;
				}
		}
	}
	/*ドリルダウン*/
//	makeForm(itemObj,0);
	/*左ボタン*/

	createContents();
}
/*データ生成ここまで*/


/*ドリルダウン作成*/
function makeForm(_obj,level,_hash){
	var _formObj	= new Array();
	var n		= new Number();
	for (var i in _obj){
		_formObj[n++]='<option value="'+i+'">'+i+'</option>';
	}
	var hash1=new String();
	var hash2=new String();
	var hash3=new String();
	if(_hash){
		var hash=_hash.split(',');
		for (var i=0; hash.length>i; i++){
			hash1	+= '[\''+hash[i]+'\']';
			hash2	+= hash[i]+',';
			hash3	+= '['+hash[i]+']';
		}
	}
	if(n>0){
		var	formObj='<select hash="'+_hash+'" name="form'+level+'" onchange="makeForm(itemObj'+hash1+'[this.value],'+(level+1)+',\''+hash2+'\'+this.value)">\n<option value="▼選択してください">▼選択してください</option>'+_formObj.join('\n')+'\n</select>';
		if(_hash){
			var myHash=_hash.toString().split(',');
			if(myHash[myHash.length-1]=='false'){
//				makeForm(itemObj'+hash1+'[this.value],'+(level+1)+',\''+hash2+'\'+this.value);
			}
		}
	}else{
		var	formObj='';
	}
	try{
		$('form'+level).innerHTML=formObj;
		document.f1.t1.value=hash3;
		document.f1.t1.disabled=true;
		reWrite('result','')
	}catch( e ){
		try{
			var _hash	= hash2.split(',');
			var tempObj	= itemObj;
			var	HTML	=new String();
				HTML	+='<h3 style=" border-bottom:1px dotted #ccc;">'+hash[--i]+'</h3>';
				HTML	+='<p>下記URLをご確認ください</p>'
				HTML	+='<p>'+_obj.URL.link(_obj.URL)+'</p>'
				HTML	+='<p>［<a href="javascript:void(document.f1.t1.disabled=false)">解決しなかった（メールで問い合わせる）</a>］</p>'
				reWrite('result',HTML)
		}catch( e ){
		//エラー時の処理
		}
	}
	var formChk	=true;
	while($('form'+(++level))){
		reWrite('form'+level,'');
	}
}
/*ドリルダウン作成ここまで*/


/*リンク用ボタン作成*/
function makeBtn(ID,temp,_obj){
	var _obj	=(_obj)? _obj:itemObj;
	var ID = (ID)? ID:'_result';
	var HTML	= new Array();
	if(eval('document.'+temp)){
		var HTML_L	= (eval('document.'+temp).tLarge)? eval('document.'+temp).tLarge.value:'<p style=" border:1px solid #ccc; margin:2px 0;" onclick="makeContents(\'@@@@large@@@@\')">@@@@large@@@@</p>';
		var HTML_M	= (eval('document.'+temp).tInside)? eval('document.'+temp).tInside.value:'<p style=" border:1px solid #fcc; margin:2px 0 0 12px;" onclick="makeContents(\'@@@@large@@@@/@@@@inside@@@@\')">@@@@inside@@@@</p>';
		var HTML_S	= (eval('document.'+temp).tSmall)? eval('document.'+temp).tSmall.value:'<p style=" border:1px solid #ccf; margin:2px 0 0 22px;">@@@@small@@@@</p>';
	}else{
		var HTML_L	= '<p style=" border:1px solid #ccc; margin:2px 0;" onclick="makeContents(\'@@@@large@@@@\')">@@@@large@@@@</p>';
		var HTML_M	= '<p style=" border:1px solid #fcc; margin:2px 0 0 12px;" onclick="makeContents(\'@@@@large@@@@/@@@@inside@@@@\')">@@@@inside@@@@</p>';
		var HTML_S	= '<p style=" border:1px solid #ccf; margin:2px 0 0 22px;">@@@@small@@@@</p>';
	}
	var n	= new Number();
	for(var i in _obj){
		HTML[n]	= HTML_L.replace(/@@@@大項目@@@@|@@@@large@@@@/ig,i).replace(/@@@@ID@@@@/ig,itemID[i]);
		HTML[n]	+= '<div ID="M'+(n+1)+'" class="mBtnBox">';
		for(var j in _obj[i]){
			HTML[n]	+=(j)?HTML_M.replace(/@@@@大項目@@@@|@@@@large@@@@/ig,i).replace(/@@@@中項目@@@@|@@@@inside@@@@/ig,j):'';
			HTML[n]	+= '<div ID="S'+(n+1)+'" class="sBtnBox">';
			for(var k in _obj[i][j]){
				HTML[n]	+=(k!='false')?HTML_S.replace(/@@@@大項目@@@@|@@@@large@@@@/ig,i).replace(/@@@@中項目@@@@|@@@@inside@@@@/ig,j).replace(/@@@@小項目@@@@|@@@@small@@@@/ig,k):'';
			}
			HTML[n]	+='</div>';
		}
		HTML[n]	+='</div>';
		HTML[n]	= HTML[n].replace(/@@@@ICON@@@@/ig,iconObj[i])
		n++
	}
	$(ID).innerHTML=HTML.join('');
}
/*リンク用ボタン作成ここまで*/


/*ページコンテンツ作成*/
function makeContents(path,ID,temp,_obj,result){
	var	_obj	=(_obj)? _obj:itemObj;
	var	ID = (ID)? ID:'_result2';
	var	HTML	= new Array();
	try{
		var HTML_L	= eval('document.'+temp).tLarge.value;
		var HTML_M	= eval('document.'+temp).tInside.value;
		var HTML_S	= eval('document.'+temp).tSmall.value;
		var HTML_T	= eval('document.'+temp).tTitle.value;
	}catch( e ){
		var HTML_L	= '<p style=" border:1px solid #ccc; margin:2px 0;">@@@@large@@@@</p>';
		var HTML_M	= '<p style=" border:1px solid #fcc; margin:2px 0 0 12px;">@@@@inside@@@@</p>';
		var HTML_S	= '<p style=" border:1px solid #cfc; margin:2px 0 0 22px;">@@@@small@@@@</p>';
		var HTML_T	= '<p style=" border:1px solid #ccf; margin:2px 0 0 32px;"><a href="@@@@URL@@@@">@@@@title@@@@</a></p>';
	}

	var n	= new Number();

	var _path	= path.split('/');
	var _obj	= itemObj;
	var _index	= new Array();
	for(var i=0; _path.length>i; i++){
		_obj	= _obj[_path[i]];
	}
	
	HTML[n++]= HTML_L.replace(/@@@@大項目@@@@|@@@@large@@@@/ig,_path[0]).replace(/@@@@search@@@@/ig,'').replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]);
	if(_path[1]){
		HTML[n++]= HTML_M.replace(/@@@@中項目@@@@|@@@@inside@@@@/ig,_path[1]).replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]);
		for(var i in _obj){
			HTML[n++]	=(i!='false') ?HTML_S.replace(/@@@@小項目@@@@|@@@@small@@@@/ig,i).replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]):'';
			for(var j in _obj[i]){
				HTML[n++]	=(j)?HTML_T.replace(/@@@@title@@@@/ig,j).replace(/@@@@URL@@@@/ig,_obj[i][j].URL).replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]):'';
			}
		}
		_index['i'+n]=_path[1];
		HTML[n]='\n<div class="relationBox">\n<h2 class="relationHead"><a href="javascript:if(!window._relation'+n+'){void(_relation'+n+'=true,searchContents(\''+_path[1]+'\',\'G\',\'and\',\'relation'+(n)+'\',\'page\',true,\'resultX\'),$(\'close'+n+'\').style.display=\'block\')}else{void(_relation'+n+'=false,$(\'relation'+n+'\').innerHTML=\'\',$(\'close'+n+'\').style.display=\'none\')}">上記以外の「'+_path[1]+'」に関するQ&Aを見る</a></h2>\n<div class="relation">\n\n<div ID="relation'+n+'"></div>\n<p ID="close'+n+'" class="close" style="display:none;"><a href="javascript:void(_relation'+n+'=false,$(\'relation'+n+'\').innerHTML=\'\',$(\'close'+(n++)+'\').style.display=\'none\')">閉じる</a></p>\n</div></div>';
	}else{
		for(var i in _obj){
			HTML[n++]= HTML_M.replace(/@@@@inside@@@@/ig,i).replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]);
			for(var j in _obj[i]){
				HTML[n++]	=(j!='false')?HTML_S.replace(/@@@@small@@@@/ig,j).replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]):'';
				for(var k in _obj[i][j]){
					HTML[n++]	=HTML_T.replace(/@@@@title@@@@/ig,k).replace(/@@@@URL@@@@/ig,_obj[i][j][k].URL).replace(/@@@@ICON@@@@/ig,iconObj[_path[0]]);
				}
			}
			_index['i'+n]=i;
			
			HTML[n]=(i!='')? '\n<div class="relationBox">\n<h2 class="relationHead"><a href="javascript:if(!window._relation'+n+'){void(_relation'+n+'=true,searchContents(\''+i+'\',\'G\',\'and\',\'relation'+(n)+'\',\'page\',true,\'resultX\'),$(\'close'+n+'\').style.display=\'block\')}else{void(_relation'+n+'=false,$(\'relation'+n+'\').innerHTML=\'\',$(\'close'+n+'\').style.display=\'none\')}">上記以外の「'+i+'」に関するQ&Aを見る</a></h2>\n<div class="relation">\n\n<div ID="relation'+n+'" ></div>\n<p ID="close'+n+'" class="close" style="display:none;"><a href="javascript:void(_relation'+n+'=false,$(\'relation'+n+'\').innerHTML=\'\',$(\'close'+(n++)+'\').style.display=\'none\')">閉じる</a></p>\n</div></div>':'';
		}
	}
	$('searchResult').innerHTML	= '';
	$(ID).innerHTML=HTML.join('');
	for(var i in _index){
		searchContents(_index[i],'G','and','relation'+i,'page',true,'resultX');
	}
	_result	= (result)? result:'searchResult';
	try{
		$(_result).innerHTML	= ('<h3 class="pankuzu">'+path.replace(/\//ig,'＞')+'</h3>');
	}catch( e ){}
}
/*ページコンテンツ作成ここまで*/


/*検索機能作成*/
function preSearchContents(str){
	var	range	= new String();
	range	+= (document.f1.L.checked)? 'L':'';
	range	+= (document.f1.M.checked)? 'M':'';
	range	+= (document.f1.S.checked)? 'S':'';
	range	+= (document.f1.T.checked)? 'T':'';
	range	+= (document.f1.G.checked)? 'G':'';
	var logic	= (document.f1.logic[0].checked)? 'and':'or';
	searchContents(str,range,logic);
}
function searchContents(str,range,logic,ID,temp,perfect,result){
	var	_ID	=(ID)? ID:'result2';
	function tglChk(_num,_logic,_tgl){
		if(_logic=='and'){
			var ret = (_num==0||_tgl)? true:false;
			return	ret;
		}else{
			return 	true;
		}
	}

	if(str.length>0){
		var	searchText	= str.replaceAll('　',' ').split(' ');
		for(var i in itemObj){
		var	searchIndex	= new String(); //検索用INDEX
			for(var j in itemObj[i]){
				for(var k in itemObj[i][j]){
					for(var l in itemObj[i][j][k]){
						_obj	= false;
						for(var m=0; searchText.length>m; m++){
							var	_reg = new RegExp(searchText[m],'i');
							if((range.match(/L/i))&&(i.match(_reg))){
								if(perfect){
								   if(i==searchText[m]){
										_obj = tglChk(m,logic,_obj);
								   }
								}else{
									_obj = tglChk(m,logic,_obj);
								}
							}else if((range.match(/M/i))&&(j.match(_reg))){
								if(perfect){
								   if(j==searchText[m]){
										_obj = tglChk(m,logic,_obj);
								   }
								}else{
									_obj = tglChk(m,logic,_obj);
								}
							}else if((range.match(/S/i))&&(k.match(_reg))){
								if(perfect){
								   if(k==searchText[m]){
										_obj = tglChk(m,logic,_obj);
								   }
								}else{
									_obj = tglChk(m,logic,_obj);
								}
							}else if((range.match(/T/i))&&(l.match(_reg))){
								if(perfect){
								   if(l==searchText[m]){
										_obj = tglChk(m,logic,_obj);
								   }
								}else{
									_obj = tglChk(m,logic,_obj);
								}
							}else if((range.match(/G/i))&&(itemObj[i][j][k][l].tag.toString().match(_reg))){
								if(perfect){
									var _tag	=itemObj[i][j][k][l].tag.toString().split(',');
									for(var tagNum=0; _tag.length>tagNum; tagNum++){
										if(_tag[tagNum]==searchText[m]){
											_obj = tglChk(m,logic,_obj);
											break;
										}
									}
								}else{
									_obj = tglChk(m,logic,_obj);
								}
							}else{
								if(logic=='and'){
									_obj	=false;
								}else{
									_obj	=_obj;
								}
							}
							itemObj[i][j][k][l].search=_obj
						}
					}
				}
			}
		}

		
		/*検索ここまで*/
		/*検索結果生成*/

		var	ID = (ID)? ID:'_result2';
		var	HTML	= new Array();
		try{
			var HTML_L	= eval('document.'+temp).tLarge.value;
			var HTML_M	= eval('document.'+temp).tInside.value;
			var HTML_S	= eval('document.'+temp).tSmall.value;
			var HTML_T	= eval('document.'+temp).tTitle.value;
		}catch( e ){
			var HTML_L	= '<p style=" border:1px solid #ccc; margin:2px 0;">@@@@large@@@@</p>';
			var HTML_M	= '<p style=" border:1px solid #fcc; margin:2px 0 0 12px;">@@@@inside@@@@</p>';
			var HTML_S	= '<p style=" border:1px solid #cfc; margin:2px 0 0 22px;">@@@@small@@@@</p>';
			var HTML_T	= '<p style=" border:1px solid #ccf; margin:2px 0 0 32px;"><a href="@@@@URL@@@@">@@@@title@@@@</a></p>';
		}

		var n	= new Number();
		var total	= new Number();
		for(var i in itemObj){
			var	_HTML	= new Array();
			var	_n		= new Number();
			_HTML[_n]	= HTML_L.replaceAll('@@@@large@@@@',i).replaceAll('@@@@大項目@@@@',i).replace(/@@@@search@@@@/ig,'search').replace(/@@@@ICON@@@@/ig,iconObj[i]);

			for(var j in itemObj[i]){
				var	__HTML	= new Array();
				var	__n		= new Number();
				__HTML[__n]	= HTML_M.replaceAll('@@@@inside@@@@',j).replace(/@@@@ICON@@@@/ig,iconObj[i]);

				for(var k in itemObj[i][j]){
					var	___HTML	= new Array();
					var	___n		= new Number();
					___HTML[___n]	= (k!='false')? HTML_S.replaceAll('@@@@small@@@@',k).replace(/@@@@ICON@@@@/ig,iconObj[i]):'';

					for(var l in itemObj[i][j][k]){
						var	____HTML	= new Array();
						var	____n		= new Number();
						if(itemObj[i][j][k][l].search){
							____HTML[____n++]	=HTML_T.replaceAll('@@@@title@@@@',l).replace(/@@@@URL@@@@/ig,itemObj[i][j][k][l].URL).replace(/@@@@ICON@@@@/ig,iconObj[i]);
						}
						if(____n>0) ___HTML[++___n]=____HTML.join('');total +=____n;
					}
					if(___n>0) __HTML[++__n]=___HTML.join('');
				}
				if(__n>0) _HTML[++_n]=__HTML.join('');
			}
			if(_n>0){
				HTML[n++]=_HTML.join('');
			}
		}
			_result	= (result)? result:'searchResult';
			try{
				$(_result).innerHTML	= ('<h3 class="searchHead">「'+searchText.join('」「')+'」の検索結果（'+total+'件）</h3>').replaceAll('「」','');
			}catch( e ){}

			HTML	= HTML.join('\n');
			/*
			for(var i=0; searchText.length>i; i++){
				if(searchText[i]!=''){
					HTML=HTML.replaceAll('h2','Ｈ２').replaceAll('h3','Ｈ３').replaceAll(searchText[i],'<strong>'+searchText[i]+'</strong>').replaceAll('Ｈ２','H2').replaceAll('Ｈ３','H3');
				}
			}
			*/
			try{
				$(_ID).innerHTML	= (total>0)? HTML:'<p style="margin:3px 0 0 5px;" class="zero">該当無し</p>';
				_a	= $(_ID).getElementsByTagName('a');
				for(var aNum=0; _a.length>aNum; aNum++){
					_a[aNum].href=unescape(_a[aNum].href);
					_a[aNum].name=unescape(_a[aNum].name);
					for(var i=0; searchText.length>i; i++){
						var	_reg = new RegExp(searchText[i],'ig');
						var	_text	= _a[aNum].innerHTML.match(_reg);
						_a[aNum].innerHTML	= _a[aNum].innerHTML.replace((_reg),'<strong>'+_text+'</strong>');
					}
				}
			}catch(e){}
		/*結果表示*/
	}
}
/*検索機能作成作成ここまで*/
