<!--
//グローバル変数の定義
var item_list = new Array();  // 商品名を格納する配列

var recMax=0;
var kwIndex=-1;
var kwMouseIndex = -1;

var lastFocus;

var COLOR_BLACK = "#000000";
var COLOR_WHITE = "#ffffff";
var COLOR_ACTIVE = "#e0ffff";
var FOCUS_BG_CLOLR = "#191970";


function getByte(text)
{
	count = 0;
	for (i=0; i<text.length; i++)
	{
		n = escape(text.charAt(i));
		if (n.length < 4) count++; else count+=2;
	}
	return count;
}


function checkAssist(confirm) {

	
	if(!$.cookie('assist')){
		$('#gAnchor').html("<IMG hspace=3 src='/cont/top/images/fuki_on.gif' hspace='3' vspace='6' border='0' align='absmiddle'>入力補助ON");
	}else{
		if($.cookie('assist')!='1'){
				$('#gAnchor').html("<IMG hspace=3 src='/cont/top/images/fuki_on.gif' hspace='3' vspace='6' border='0' align='absmiddle'>入力補助ON");
		}else{
			 $('#gAnchor').html("<IMG hspace=3 src='/cont/top/images/fuki_off.gif' hspace='3' vspace='6' border='0' align='absmiddle'>入力補助OFF");
		}
	}


	
	if(confirm == 'true'){
		if($.cookie('assist')!='1'){
				confirmOFF();
		 }else{
			 	confirmON();
		}
	}
}

function setAllBgActive(){

		// BG_COLORをACTIVE色に変更
		if($('#gkeyword')){		$('#gkeyword').css('backgroundImage',"url('/cont/top/images/bg_assist_on.gif')").css('background-repeat',"no-repeat").css('background-position','center');}
		if($('#skeyword')){		$('#skeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#pkeyword')){		$('#pkeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#ekeyword')){		$('#ekeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#rkeyword')){		$('#rkeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#lkeyword')){		$('#lkeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#nkeyword')){		$('#nkeyword').css('backgroundColor',COLOR_ACTIVE);}

		if($('#ttlkeyword')){		$('#ttlkeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#hnmkeyword')){		$('#hnmkeyword').css('backgroundColor',COLOR_ACTIVE);}
		if($('#hnbkeyword')){		$('#hnbkeyword').css('backgroundColor',COLOR_ACTIVE);}

}

function setAllBgNonActive(){

		// BG_COLORをACTIVE色に変更
		if($('#gkeyword')){		$('#gkeyword').css('backgroundImage',"url('/cont/top/images/bg_assist_off.gif')").css('background-repeat',"no-repeat").css('background-position','center');}
		if($('#skeyword')){		$('#skeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#pkeyword')){		$('#pkeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#ekeyword')){		$('#ekeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#rkeyword')){		$('#rkeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#lkeyword')){		$('#lkeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#nkeyword')){		$('#nkeyword').css('backgroundColor',COLOR_WHITE);	}

		if($('#ttlkeyword')){		$('#ttlkeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#hnmkeyword')){		$('#hnmkeyword').css('backgroundColor',COLOR_WHITE);	}
		if($('#hnbkeyword')){		$('#hnbkeyword').css('backgroundColor',COLOR_WHITE);	}


}



function confirmON() {
	
	eliminateDropdownList();
	if(confirm('キーワード入力補助をONにします')){
    // YES選択
		$.cookie('assist','0', {path:'/',expires:90});
		$('#gAnchor').html("<IMG hspace=3 src='/cont/top/images/fuki_on.gif' hspace='3' vspace='6' border='0' align='absmiddle'>入力補助ON");
		var gobj = document.getElementById('gkeyword');
		var sobj = document.getElementById('skeyword');
		var pobj = document.getElementById('pkeyword');
		var eobj = document.getElementById('ekeyword');
		var robj = document.getElementById('rkeyword');
		var lobj = document.getElementById('lkeyword');

  }
}

function confirmOFF() {

	eliminateDropdownList();
	if(confirm('キーワード入力補助をOFFにします')){
			// YES選択
			$('#gAnchor').html("<IMG hspace=3 src='/cont/top/images/fuki_off.gif' hspace='3' vspace='6' border='0' align='absmiddle'>入力補助OFF");
			$.cookie('assist','1',{path:'/',expires:90});
			var gobj = document.getElementById('gkeyword');
			var sobj = document.getElementById('skeyword');
			var pobj = document.getElementById('pkeyword');
			var eobj = document.getElementById('ekeyword');
			var robj = document.getElementById('rkeyword');
			var lobj = document.getElementById('lkeyword');

  }
}


function openViaConfig(){
	var serverId= getAutoParameterServerId();
	checkAssist('true');
}


// ドロップダウンリストを削除
function eliminateDropdownList() {

		if( $('#' + 'dropframe') ) {
        $('#' + 'dropframe').remove();
    }
   	kwIndex = -1;
}


function highlightMenu(event) {

    // 対象要素の参照を取得
    var target_node = getTargetNode(event);
    var target_node_id = target_node.id.replace("c","");

		var turnoff = $('#c' + kwIndex);
		turnoff.css('backgroundColor',COLOR_WHITE);
		turnoff.css('color',COLOR_BLACK);
    
    // ハイライト表示
		var turnon = $('#c' + target_node_id);
		turnon.css('backgroundColor',FOCUS_BG_CLOLR);
		turnon.css('color',COLOR_WHITE);
		
		kwMouseIndex = target_node_id;
		kwIndex = kwMouseIndex;


}

function lowlightMenu(event) {

    // 対象要素の参照を取得
    var target_node = getTargetNode(event);
    var target_node_id = target_node.id.replace("c","");

    // ダウンライト表示
		var turnoff = $('#c' + target_node_id);
		turnoff.css('backgroundColor',COLOR_WHITE);
		turnoff.css('color',COLOR_BLACK);

    var turnoff2 = $('#c' + kwIndex);
		turnoff2.css('backgroundColor',COLOR_WHITE);
		turnoff2.css('color',COLOR_BLACK);
    
    kwMouseIndex = target_node_id;
    kwIndex = kwMouseIndex;

}


function callKwMenug(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
		$('#' + 'gkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenuttl(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
		$('#' + 'ttlkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenuhnm(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
		$('#' + 'hnmkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenuhnb(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
		$('#' + 'hnbkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}


function callKwMenun(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
		$('#' + 'nkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenus(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
		$('#' + 'skeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenup(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
			$('#' + 'pkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenue(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
			$('#' + 'ekeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}

function callKwMenur(event) {
	var target_node = getTargetNode(event);
	var target_node_id = target_node.id;
	if(item_list[target_node_id]){
			$('#' + 'rkeyword').val(item_list[target_node_id]);
	}
	eliminateDropdownList();
}


function callKwMenul(event) {

	// 対象要素の参照を取得
	var target_node = getTargetNode(event);
	// 対象要素のid属性値を取得
	var target_node_id = target_node.id;
	// 値をテキストボックスにセット
	if(item_list[target_node_id]){
			$('#' + 'lkeyword').val(item_list[target_node_id]);
	}
	// ドロップダウンリストを削除
	eliminateDropdownList();
}


function callEnterMenu(event) {
	// 対象要素のid属性値を取得
	var target_node_id = 'c'+ kwIndex;
	if($('#' + lastFocus + 'keyword') && item_list[target_node_id]){
			$('#' + lastFocus + 'keyword').val(item_list[target_node_id]);
		// ドロップダウンリストを削除
		eliminateDropdownList();
	}
}


function getTargetNode(event) {
	// 対象要素の参照を取得
	var target_node;

	if(event.target) {
	  target_node = event.target;
	} else {
	  target_node = event.srcElement;
	}
	// Safari対策
	if (target_node.nodeType == 3) {
	    target_node = target_node.parentNode;
	}
	return target_node;
}



// テキストの内容をドロップダウンリストとして表示
function printItemListg(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('g');
    }
}
function printItemListttl(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('ttl');
    }
}
function printItemListhnm(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('hnm');
    }
}
function printItemListhnb(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('hnb');
    }
}
function printItemListn(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('n');
    }
}
function printItemLists(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('s');
    }

}
function printItemListp(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('p');
	  }

}
function printItemListe(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('e');
	  }
}
function printItemListr(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('r');
    }
}
function printItemListl(event) {
		var in_keycode = event.keyCode;
		if(in_keycode!='27' && in_keycode!='38' && in_keycode!='40'){
	    asyncRequest('l');
    }
}




// 引数に与えられたURLにHTTPリクエストを行ない、指定された関数を実行
function asyncRequest(arg) {

			var in_keyword = new String();
			in_keyword = $('#' + arg + 'keyword').val();
			
			var url;
			// バイト長 文字長
			var maxlen;
			var serverId= getAutoParameterServerId();
			maxlen = 0;

			// 機能有効クッキー取得
			var assistValue = $.cookie('assist');

			// 最終フォーカス箇所
			lastFocus = arg;
			if(arg == 'r'){
				var ptype = $(":radio:checked").val(); 
				if(ptype=='ttl'){
					// 番組検索
					url = "/Async?tid=3699&serverId=" + serverId;
				}else if(ptype=='hnm'){
					// 番組オンエア商品検索
					url = "/Async?tid=4175&serverId=" + serverId;
				}else{
					// 番組オンエア品番検索
					url = "/Async?tid=4176&serverId=" + serverId;
				}
			} else if(arg == 'p' || arg=='ttl') {
				// 番組検索
				url = "/Async?tid=3699&serverId=" + serverId;
			} else if(arg == 'n'){
				// 商品番号
				url = "/Async?tid=4174&serverId=" + serverId;
			} else if(arg == 'hnb'){
				// 番組オンエア品番検索
				url = "/Async?tid=4176&serverId=" + serverId;
			} else if(arg == 'hnm'){
				// 番組オンエア商品検索
				url = "/Async?tid=4175&serverId=" + serverId;	
			}else{
				// 商品検索
				url = "/Async?tid=3351&serverId=" + serverId;
			}
			
			var disp = 0;

			// ドロップダウンリストを削除
			eliminateDropdownList();

		// 非同期に表示
			if(in_keyword != "" && assistValue != '1'){
	
					var dropframe =document.createElement('div');
					dropframe.id='dropframe';
					
					in_keyword = encodeURI(in_keyword);
					$.ajax({
						async:true,
						dataType:"json",
						type:"get",
						url: url,
						timeout : 5000,
						data:{"sug_key":in_keyword},
						success: function(res){
							 $.each(res, function(i, item){
									
									disp = 1;

									// id属性値
									var id_value = 'c' + i;
									recMax = i;
									// 配列にデータを蓄積
									item_list[id_value] = item.word;

									// divタグを生成
									var child_div = document.createElement('div');
									
									// divタグにid属性を追加
									child_div.id = id_value;

									// divタグのテキストノードを新規に生成する
									var caption = document.createTextNode(item.word);

									child_div.style.padding = '1px 3px';
	
									// 生成したテキストノードをdivタグノードの子ノードとして結合する
									child_div.appendChild(caption);
									
									if(maxlen < getByte(item.word)){
										// 最長文字数を記憶
										maxlen = getByte(item.word);
									}
									
									// divタグを追加する。
									dropframe.appendChild(child_div);
									
									// divタグにイベントリスナーをセット
									addListener(child_div, 'mouseover', highlightMenu, false);
									addListener(child_div, 'mouseout', lowlightMenu, false);
									
									if(arg=='g'){
										addListener(child_div, 'mouseup', callKwMenug, false);
									}
									if(arg=='s'){
										addListener(child_div, 'mouseup', callKwMenus, false);
									}
									if(arg=='p'){
										addListener(child_div, 'mouseup', callKwMenup, false);
									}
									if(arg=='e'){
										addListener(child_div, 'mouseup', callKwMenue, false);
									}
									if(arg=='r'){
										addListener(child_div, 'mouseup', callKwMenur, false);
									}																		
									if(arg=='l'){
										addListener(child_div, 'mouseup', callKwMenul, false);
									}
									if(arg=='n'){
										addListener(child_div, 'mouseup', callKwMenun, false);
									}
									if(arg=='ttl'){
										addListener(child_div, 'mouseup', callKwMenuttl, false);
									}
									if(arg=='hnm'){
										addListener(child_div, 'mouseup', callKwMenuhnm, false);
									}
									if(arg=='hnb'){
										addListener(child_div, 'mouseup', callKwMenuhnb, false);
									}
									
							    
							});
							
							

							if(disp == "1"){
								kwIndex= -1;
							}

						},
						complete: function (XHRoj, textStatus) {
							var enlargeFlg = 0;
							if( maxlen <= 32 ){ 
								enlargeFlg = 1;
							}else{
								enlargeFlg = 0;
							}
							if (disp == "1"){
								showConfigMenu(arg,enlargeFlg,dropframe);
							}
							
						}
					});
					
		 }

}

// 要素の位置を取得し、オブジェクトとして返す
function getElemPos(elem) {
    var obj = new Object();
    obj.x = elem.offsetLeft;
    obj.y = elem.offsetTop;
    
    while(elem.offsetParent) {
       elem = elem.offsetParent;
       obj.x += elem.offsetLeft;
       obj.y += elem.offsetTop;
    }
    return obj;
}


function showConfigMenu(arg,enlargeFlg,dropframe){

		var config;
		var left;
		var top;
		
		var keyword_elem = document.getElementById(arg +'keyword');
		var pos_obj = getElemPos(keyword_elem);
		

		left = pos_obj.x;
		top = pos_obj.y;
		
		if (enlargeFlg == '1'){ 
			dropframe.style.width = '220px';
		}
		
		if(arg == 'z'){
				dropframe.style.left = left + 235 + 'px';
		}else{
			dropframe.style.left = left + 'px';
		}

		var ua = $.browser;

	  if(ua.msie || ua.opera){
	  	dropframe.style.top = top + 19 + 'px';
		}else{
			dropframe.style.top = top + 23 + 'px';
		}	

				
		if( !document.getElementById('dropframe') ) {
			document.body.appendChild(dropframe);
		}
	

}

function getCharCode(event){

	var in_keycode = event.keyCode;

	if(in_keycode=='27' || in_keycode=='13' || in_keycode=='38' || 	in_keycode=='40'){
		

		if(in_keycode=='27'){
			// ESC キー
			eliminateDropdownList();
		}
		if(in_keycode=='13'){
			//  Enterキー
			callEnterMenu(event);	
		}
		if(in_keycode=='38'){
			//		上矢印キー
				if(kwIndex > 0){
					$('#c'+kwIndex).css('backgroundColor',COLOR_WHITE);
					$('#c'+kwIndex).css('color',COLOR_BLACK);
					kwIndex--;
					$('#c'+kwIndex).css('backgroundColor',FOCUS_BG_CLOLR);
					$('#c'+kwIndex).css('color',COLOR_WHITE);
				}

			if(kwMouseIndex != kwIndex){
				kwMouseIndex = kwIndex;
			}
		}
		if(in_keycode=='40'){
			//			下矢印キー
				if((recMax)> kwIndex){
					$('#c'+kwIndex).css('backgroundColor',COLOR_WHITE);
					$('#c'+kwIndex).css('color',COLOR_BLACK);
					kwIndex++;
					$('#c'+kwIndex).css('backgroundColor',FOCUS_BG_CLOLR);
					$('#c'+kwIndex).css('color',COLOR_WHITE);
				}

			if(kwMouseIndex != kwIndex){
				kwMouseIndex = kwIndex;
			}
		}
		
	}
	
}


function getDocClick(e){
		eliminateDropdownList();
}

function getCharCodeDoc(e){
	// 不要なキー入力を捨てる
	var in_keycode = e.keyCode;
	 
	if(in_keycode=='27'){
		// ESC キー
		eliminateDropdownList();
	}
}

// イベントリスナーをセットする
function setListeners(event) {

		var in_keycode = event.keyCode;

		// window自体にリスナーを仕掛け、不要なイベントを処理する		
		addListener(document,'keydown',getCharCodeDoc,false);
		addListener(document,'mouseup',getDocClick,false);

		
		var gkeyword = $('#gkeyword');
  	if(gkeyword){
				gkeyword.keyup(function(event){printItemListg(event);});
				gkeyword.keydown(function(event){getCharCode(event);});
    }
    
    var skeyword = $('#skeyword');
  	if(skeyword){  
				skeyword.keyup(function(event){printItemLists(event);});
				skeyword.keydown(function(event){getCharCode(event);});
    }

    var pkeyword = $('#pkeyword');
    if(pkeyword){
				pkeyword.keyup(function(event){printItemListp(event);});
				pkeyword.keydown(function(event){getCharCode(event);});
    }

    var ekeyword = $('#ekeyword');
    if(ekeyword){
				ekeyword.keyup(function(event){printItemListe(event);});
				ekeyword.keydown(function(event){getCharCode(event);});
    }

    var rkeyword = $('#rkeyword');
    if(rkeyword){
				rkeyword.keyup(function(event){printItemListr(event);});
				rkeyword.keydown(function(event){getCharCode(event);});
    }
    
    var lkeyword = $('#lkeyword');
    if(lkeyword){
				lkeyword.keyup(function(event){printItemListl(event);});
				lkeyword.keydown(function(event){getCharCode(event);});
    }
    var nkeyword = $('#nkeyword');
    if(nkeyword){
				nkeyword.keyup(function(event){printItemListn(event);});
				nkeyword.keydown(function(event){getCharCode(event);});
    }

    var ttlkeyword = $('#ttlkeyword');
    if(ttlkeyword){
				ttlkeyword.keyup(function(event){printItemListttl(event);});
				ttlkeyword.keydown(function(event){getCharCode(event);});
    }
    var hnmkeyword = $('#hnmkeyword');
    if(hnmkeyword){
				hnmkeyword.keyup(function(event){printItemListhnm(event);});
				hnmkeyword.keydown(function(event){getCharCode(event);});
    }
    var hnbkeyword = $('#hnbkeyword');
    if(hnbkeyword){
				hnbkeyword.keyup(function(event){printItemListhnb(event);});
				hnbkeyword.keydown(function(event){getCharCode(event);});
    }
    
}

// イベントリスナー登録
function addListener(elem, eventType, func, cap) {

//		var strUA = $.browser;

		if(elem.addEventListener) {
			elem.addEventListener(eventType, func, cap);
		} else if(elem.attachEvent) {
			elem.attachEvent('on' + eventType, func);
		} else {
			alert('ご利用のブラウザーはサポートされていません。');
			return false;
		}
}


// イベントリスナー削除
function removeListener(elem, eventType, func, cap) {

    if(elem.removeEventListener) {
        elem.removeEventListener(eventType, func, cap);
    } else if(elem.detachEvent) {
        elem.detachEvent('on' + eventType, func);
    } else {
        alert('ご利用のブラウザーはサポートされていません。');
        return false;
    }
}


 // windowがloadされた際に実行したいコードを記述します。

$(window).load(function (event) {

  // Opearでマルチバイト文字のkeydownイベントが発生しないのでサポート対象外
	  var ua = $.browser;
		

  	var appVer  = navigator.appVersion;
  	if(appVer.indexOf("Safari") != -1 && appVer.indexOf("Chrome") == -1){
  			if(navigator.userAgent.indexOf("Mac") != -1){
					var ver = navigator.userAgent.split("/")[3];
					var n = eval(ver); 
					if(n <= 0){
						$('#search_ura').css('background-image', "url('/cont/top/images/searchura_mod.gif')");
					}else{
				    // autoComplete機能の初期設定(確認せず)
					  checkAssist('false');
					  setListeners(event);
					}
  			}else{
			    // autoComplete機能の初期設定(確認せず)
				  checkAssist('false');
				  setListeners(event);
  			}
  	}else if(navigator.userAgent.indexOf("Mac") != -1 && appVer.indexOf("IE") != -1){
  	  	$('#search_ura').css('background-image', "url('/cont/top/images/searchura_mod.gif')");
  	}else{
	    // autoComplete機能の初期設定(確認せず)
		  checkAssist('false');
		  setListeners(event);
		}
		
  
});

//-->
