//----  JETRO Query JavaScript [ for English to ATPF ver. ] ----//
//
//			2003.04.01 update
//			2003.09.02 [ ATPF ver. ] update
// maked by infocom


//----  initialize to document form elements  ----//
function initializeForm( form ) {

	//----  pulldown length setting  ----//
	for( var i = 0; i < form.elements.length; i++ ) {
		if ( form.elements[ i ].type.toLowerCase().indexOf( 'select' ) > -1 ) {
			if ( form.elements[ i ].name.toLowerCase().indexOf( 'field' ) > -1 ) {
				eraseSelectList( form.elements[ i ] );
			}
		}
	}

	//----  get cookie value data  ----//
	var dummy = unescape( getCookie() );

	if ( dummy != null && dummy != '' ) {
		if ( dummy.toLowerCase().indexOf( 'lang|en' ) > -1 ) {
			var buf = dummy.split( '^' );
			for( var i = 0; i < buf.length; i++ ) {
				if ( buf[ i ] ) {
					var tmp = buf[ i ].split( '|' );
					if ( tmp[0].charAt(0)!=';' ){
						if ( eval( 'form.' + tmp[0] ) ) {
							fie = eval( 'form.' + tmp[0] );
							fie.value = tmp[1];
						}
					}
				}
			}
		}
	}

	form.Phrases.value = form.dummy_Phrases.value;

	if ( form.Field16[0].value != '' ) {
		var tmp = new Array();
		if ( form.Field16[0].value == '000000' ) {
			var now = getNowDate( '-' );
			var tmp = now.split( '-' );

			if ( tmp[0].toString().length < 4 ) {
				tmp[0] = 1900 + parseInt( tmp[0] );
			}

			if ( ! checkListValue( form.from_yyyy, eval( tmp[0] ) ) ) return;
			if ( ! checkListValue( form.from_mm,   eval( tmp[1] ) ) ) return;
		} else {
			tmp[0] = form.Field16[0].value.toString().substring( 0, 4 );
			tmp[1] = form.Field16[0].value.toString().substring( 4, form.Field16[0].value.toString().length );

			if ( ! checkListValue( form.from_yyyy, eval( tmp[0] ) ) ) return;
			if ( ! checkListValue( form.from_mm,   eval( tmp[1] ) ) ) return;
		}
	}

	if ( form.Field18[1].value != '' ) {
		var tmp = new Array();
		if ( form.Field18[1] != '-' ) {
			tmp[0] = form.Field18[1].value.toString().substring( 0, 4 );
			tmp[1] = form.Field18[1].value.toString().substring( 4, form.Field18[1].value.toString().length );

			if ( ! checkListValue( form.to_yyyy, eval( tmp[0] ) ) ) return;
			if ( ! checkListValue( form.to_mm,   eval( tmp[1] ) ) ) return;
		} else {
			if ( ! checkListValue( form.to_yyyy, '' ) ) return;
			if ( ! checkListValue( form.to_mm,   '' ) ) return;
		}
	}


	if ( form.dummy_Field23.value != '' ) {
		if ( ! setInitialListData( form, '23', '25' ) ) return;
	}
	if ( form.dummy_Field29.value != '' ) {
		//----  [ ATPF ver. ]  ----//
		if ( ! setInitialListDataATPF( form, '29', '31' ) ) return;
	}


	form.Field33.value = form.dummy_Field33.value;

}


//----  erase to form select option  ----//
function eraseSelectList( elem ) {
	if ( elem.length > 0 ) {
		while( elem.options[ elem.length -1 ].text.indexOf( '___' ) > -1 ) {
			if ( elem.length == 0 ) {
				break;
			}
			elem.length--;
		}
	}
}


function rechangeSelectList( form, id_value, cng_id_value, cng_id, ary, spr ){
	var lst2 = eval( 'form.' + cng_id );
	var sltIndex = 0;
	lst2.length = 1;

	for( var i = 0; i < ary.length; i++ ) {
		var tmp = ary[ i ].split( spr );

		if ( id_value == tmp[ 0 ] ) {
			lst2.length++
			lst2.options[ lst2.length -1 ].value = tmp[ 1 ];
			lst2.options[ lst2.length -1 ].text  = tmp[ 1 ];
			if (cng_id_value == tmp[ 1 ]) {

				// alert( 'OK! : ' + lst2.length );

				sltIndex =  lst2.length-1;
			}
		}
	}

	// alert( sltIndex );

	lst2.selectedIndex = sltIndex;

}



function changeSelectList( form, id, cng_id, ary, spr ){
	var lst1 = eval( 'form.' + id );
	var lst2 = eval( 'form.' + cng_id );

	lst2.length = 1;
	for( var i = 0; i < ary.length; i++ ) {
		var tmp = ary[ i ].split( spr );

		if ( lst1.options[ lst1.selectedIndex ].value == tmp[ 0 ] ) {
			lst2.length++
			lst2.options[ lst2.length -1 ].value = tmp[ 1 ];
			lst2.options[ lst2.length -1 ].text  = tmp[ 1 ];
		}
	}

}

//----  [ ATPF ver. ]  ----//
function changeSelectListATPF( form, id, cng_id, ary, spr ){
	var lst1 = eval( 'form.sel' + id );
	var lst2 = eval( 'form.sel' + cng_id );

	fei  = eval( 'form.' + id );
	city = eval( 'form.Field33' );

	fei.value = '';
	city.value = '';

	fei.value = lst1.options[ lst1.selectedIndex ].value;

	lst2.length = 1;
	for( var i = 0; i < ary.length; i++ ) {
		var tmp = ary[ i ].split( spr );

		if ( fei.value == tmp[ 0 ] ) {
			lst2.length++
			lst2.options[ lst2.length -1 ].value = tmp[ 1 ];
			lst2.options[ lst2.length -1 ].text  = tmp[ 1 ];
		}
	}

}


function makeSelectChange( form, id, ary, cng_id, cng_ary, spr ) {
	var tag = '';

	tag += '<select name="' + id + '"';
	if ( ary != '' || cng_ary != '' ) {
		tag += ' onChange="javascript:changeSelectList( ' + form + ', \'' + id + '\', \'' + cng_id + '\', ' + cng_ary + ', \'' + spr + '\' );"';
	}
	//	tag += ' onChange="javascript:saveBufferList( ' + form + ', \'' + cng_id + '\', \'' + id + '\' );"';

	tag += '>\n';
	tag += '<option value="">ALL</option>\n';
	for( var i = 0; i < ary.length; i++ ) {
		tag += '<option value="' + ary[ i ] + '">' +  ary[ i ] + '</option>\n';
	}
	tag += '<option value="">____ Dummy to Length for Width ___</option>\n';
	tag += '<option value="">____ Dummy to Length for Width ___</option>\n';
	tag += '<option value="">____ Dummy to Length for Width ___</option>\n';
	tag += '</select>\n';

	return tag;
}

//----  [ ATPF ver. ]  ----//
function setSelectValueATPF( form, cng_id, id ) {
	var lst1 = eval( 'form.sel' + id );

	fei     = eval( 'form.' + id );
	cng_fei = eval( 'form.' + cng_id );

	fei.value = '';
	cng_fei.value = '';

	if ( lst1.selectedIndex > 0 ) {
		fei.value = lst1.options[ lst1.selectedIndex ].value;

		for( var i = 0; i < aryCountryCity.length; i++ ) {
			var temp = aryCountryCity[ i ].split( '|' );
			if ( temp[ 0 ] == '1' && fei.value == temp[ 1 ] ) {
				var buff = temp[ 2 ].split( '^' );
				cng_fei.value = buff[ 1 ];
				break;
			}
		}

		fei.value = changeCountryName( fei.value, aryCountryCity );
	}
}

//----  [ ATPF ver. ]  ----//
function makeSelectChangeATPF( form, id, ary, cng_id, cng_ary, spr ) {
	var tag = '';

	tag += '<select name="sel' + id + '"';
	if ( ary != '' || cng_ary != '' ) {
		tag += ' onChange="javascript:changeSelectListATPF( ' + form + ', \'' + id + '\', \'' + cng_id + '\', ' + cng_ary + ', \'' + spr + '\' );"';
	} else {
		tag += ' onChange="javascript:setSelectValueATPF( ' + form + ', \'' + cng_id + '\', \'' + id + '\' );"';
	}

	tag += '>\n';
	tag += '<option value="">ALL</option>\n';
	for( var i = 0; i < ary.length; i++ ) {
		tag += '<option value="' + ary[ i ] + '">' +  ary[ i ] + '</option>\n';
	}
	tag += '<option value="">____ Dummy to Length for Width ___</option>\n';
	tag += '<option value="">____ Dummy to Length for Width ___</option>\n';
	tag += '<option value="">____ Dummy to Length for Width ___</option>\n';
	tag += '</select>\n';

	return tag;
}


function doQuerySelectCity( base, form, area, coun ) {
	var alist  = eval( 'form.' + area );
	var clist  = eval( 'form.' + coun );

	if ( alist.selectedIndex < 1 ) {
		alert( 'Please select a region.' );
		return;
	}
	if ( clist.selectedIndex < 1 ) {
		alert( 'Please select a country.' );
		return;
	}

	//----  [ ATPF ver. ]  ----//
	for( var i = 0; i < aryCountryCity.length; i++ ) {
		var temp = aryCountryCity[ i ].split( '|' );
		if ( temp[ 0 ] == '1' && clist.options[ clist.selectedIndex ].value == temp[ 1 ] ) {
			return;
		}
	}

	var adat = alist.options[ alist.selectedIndex ].value;
	var cdat = clist.options[ clist.selectedIndex ].value;
	for ( var i = 0; i < AreaName.length; i++ ) {
		if ( adat == AreaName[ i ] ) {
			//----  [ ATPF ver. ]  ----//
			var html = '/en/' + AreaHTML[ i ];
			doOpenWind( base, html, 'area', 600, 600 );
		}
	}
}

function saveBufferList( form, opid, id ) {
	lst1 = eval( 'form.' + opid );
	lst2 = eval( 'form.' + id );
	sav1 = eval( 'form.buff' + opid );
	sav2 = eval( 'form.buff' + id );

	sav1.value = lst1.options[ lst1.selectedIndex ].value;
	sav2.value = lst2.options[ lst2.selectedIndex ].value;
}


//----  make to from date and to date by query form elemets  ----//
function makeFromToDate() {
	var tag = '';

	var now = getNowDate( '-' );
	var tmp = now.split( '-' );

	var year = parseInt( tmp[0] );
	if ( year.toString().length < 4 ) {
		year = 1900 + parseInt( year );
	}

	tag += '<select name="from_yyyy" size="1" id="select13">';
	tag += '<option value=""></option>';
	for( var i = 2001; i <= 2010; i++ ) {
		tag += '<option value="' + i.toString() + '"';
		tag += '>';
		tag += i.toString() + '</option>';
	}
	tag += '</select>';
	tag += ' Year ';
	tag += '<select name="from_mm" size="1" id="select14">';
	tag += '<option value=""></option>';
	for( var i = 1; i <= 12; i++ ) {
		tag += '<option value="' + setDigit( i, 2 ).toString() + '"';
		tag += '>';
		tag += setDigit( i, 2 ).toString() + '</option>';
	}
	tag += '</select>';
	tag += ' Month ';

	tag += ' to ';

	tag += '<select name="to_yyyy" size="1" id="select13">';
	tag += '<option value="" selected></option>';
	for( var i = 2001; i <= 2010; i++ ) {
		tag += '<option value="' + i.toString() + '"';
		tag += '>';
		tag += i.toString() + '</option>';
	}
	tag += '</select>';
	tag += ' Year ';
	tag += '<select name="to_mm" size="1" id="select14">';
	tag += '<option value="" selected></option>';
	for( var i = 1; i <= 12; i++ ) {
		tag += '<option value="' + setDigit( i, 2 ).toString() + '"';
		tag += '>';
		tag += setDigit( i, 2 ).toString() + '</option>';
	}
	tag += '</select>';
	tag += ' Month';

	return tag;
}


//----  set to form date type field  ----//
function setQueryDate( form, f1, f2, f3, f4, from, to, nam ) {
	var f = eval( form );

	var field1 = eval( 'f.Field' + f1 + '[0]' );
	var field2 = eval( 'f.Field' + f2 + '[0]' );
	var field3 = eval( 'f.Field' + f3 + '[1]' );
	var field4 = eval( 'f.Field' + f4 + '[1]' );

	var yy1 = eval( 'f.' + from + '_y1' );
	var mm1 = eval( 'f.' + from + '_m1' );
	var dd1 = eval( 'f.' + from + '_d1' );

	var yy2 = eval( 'f.' + to + '_y2' );
	var mm2 = eval( 'f.' + to + '_m2' );
	var dd2 = eval( 'f.' + to + '_d2' );

	if ( yy1.value != '' || mm1.value != '' || dd1.value != '' ) {
		if ( checkDate( yy1.value, mm1.value, dd1.value ) == true ) {
			if ( f1 == f2 ) {
				field1.value = yy1.value + '-' + mm1.value + '-' + dd1.value;
			} else {
				field1.value = parseInt( yy1.value ) * 100 + parseInt( mm1.value );
				field2.value = dd1.value;
			}
		} else {
			alert( 'Please enter the starting date ("date from") of the trade fair correctly.' );
			return false;
		}
	}

	if ( yy2.value != '' || mm2.value != '' || dd2.value != '' ) {
		if ( checkDate( yy2.value, mm2.value, dd2.value ) == true ) {
			if ( f3 == f4 ) {
				field3.value = yy2.value + '-' + mm2.value + '-' + dd2.value;
			} else {
				field3.value = parseInt( yy2.value ) * 100 + parseInt( mm2.value );
				field4.value = dd2.value;
			}
		} else {
			alert( 'Please enter the closing date ("date to") of the trade fair correctly.' );
			return false;
		}
	}
	return true;
}


function createDateField() {
	var nday = getNowDate( '-' );
	var tmp  = nday.split( '-' );

	for( var i = tmp[0]; i <= ( tmp[0] + 10 ); i++ ) {
		tag += '<option value="' + i + '">' + i + '</option>';
	}
	for( var i = 1; i <= 12; i++ ) {
		tag += '<option value="' + i + '"';
		if ( i == parseInt(tmp[2]) ) tag += ' selected';
		tag += '>' + i + '</option>';
	}
	return tag;
}


//-- do Goto Next Query Function  --//
function doSearch( form ) {
	var lst1 = eval( 'form.from_yyyy' );
	var lst2 = eval( 'form.from_mm' );
	var lst3 = eval( 'form.to_yyyy' );
	var lst4 = eval( 'form.to_mm' );
	var dummy = '';


	form.action = form.action.replace( '/mw_atpf_start/', '/mw_atpf/' );

	dummy = 'lang|en';

	//-- Keyword [ Full Text ] --//
	form.Phrases.value       = setKeyword( form.Phrases.value );
	form.dummy_Phrases.value = setKeyword( form.Phrases.value );

	dummy += '^' + 'dummy_Phrases' + '|' + form.dummy_Phrases.value;


	//-- DateFrom [ yyyy - mm ] --//
	form.Field16[0].value = setYearMonth( form.from_yyyy, form.from_mm, 00 );
	form.Field16[1].value = '';

	dummy += '^' + 'Field16[0]' + '|' + form.Field16[0].value;
	dummy += '^' + 'Field16[1]' + '|' + form.Field16[1].value;


	//-- DateTo [ yyyy - mm ] --//
	form.Field18[0].value = '';
	form.Field18[1].value = setYearMonth( form.to_yyyy, form.to_mm, 99 );

	dummy += '^' + 'Field18[0]' + '|' + form.Field18[0].value;
	dummy += '^' + 'Field18[1]' + '|' + form.Field18[1].value;


	//-- Area and Country [ ATPF ver. ] --//
	if ( form.selField29.selectedIndex == 0 ) {
		form.Field31.value = setCountrySelctALL( CountryName, '' );
	} else {
		if ( form.selField31.selectedIndex == 0 ) {
			form.Field31.value = setCountrySelctALL( CountryName, form.selField29.options[ form.selField29.selectedIndex ].value );
		}
	}


	//-- query data >> dummy data --//
	form.dummy_Field23.value = setBuffField( form, '23' );
	form.dummy_Field25.value = setBuffField( form, '25' );
	form.dummy_Field29.value = setBuffFieldATPF( form, '29' );
	form.dummy_Field31.value = setBuffFieldATPF( form, '31' );

	form.dummy_Field33.value = form.Field33.value;

	dummy += '^' + 'dummy_Field23' + '|' + form.dummy_Field23.value;
	dummy += '^' + 'buffField23'   + '|' + form.buffField23.value;
	dummy += '^' + 'dummy_Field25' + '|' + form.dummy_Field25.value;
	dummy += '^' + 'buffField25'   + '|' + form.buffField25.value;
	dummy += '^' + 'dummy_Field29' + '|' + form.dummy_Field29.value;
	dummy += '^' + 'buffField29'   + '|' + form.buffField29.value;
	dummy += '^' + 'dummy_Field31' + '|' + form.dummy_Field31.value;
	dummy += '^' + 'buffField31'   + '|' + form.buffField31.value;
	dummy += '^' + 'dummy_Field33'       + '|' + form.dummy_Field33.value;

	dummy += '^';

	//-- sort key setting --//
	form.SortOrder1.value = '0';
	form.SortOrder2.value = '0';
	form.SortOrder3.value = '0';
	form.SortOrder4.value = '0';
	if ( form.dummy_sort[0].checked ) {
		form.SortField1.value = '16';
		form.SortField2.value = '17';
		form.SortField3.value = '18';
		form.SortField4.value = '19';
	} else if ( form.dummy_sort[1].checked ) {
		form.SortField1.value = '49';
		form.SortOrder1.value = '1';
		form.SortField2.value = '3';
		form.SortField3.value = '4';
		form.SortField4.value = '';
	} else {
		form.SortField1.value = '';
		form.SortField2.value = '';
		form.SortField3.value = '';
		form.SortField4.value = '';
	}

	if ( setCookie( escape( dummy ) ) ) {
		form.submit();
	} else {
		form.submit();
	}
}


//----  secound version update 2003.04.01 ----//

//----  setting for Query Keywords  ----//
function setKeyword( words ) {
	var val = words;

	val = val.replace( /[@]/g, ' ' );
	val = val.replace(/[!"#$%&'\(\)=\\|,:;^\[\]\{\}`*?+><]/g , " ");
	while( val.indexOf( "  ", 0 ) != -1 ) {
		val = val.replace(/  /g, " ");
	}

	return val;
}


//----  setting for Year Month day  ----//
function setYearMonth( yyyy, mm, opt ) {
	if ( yyyy.selectedIndex > 0 ) {
		if ( mm.selectedIndex > 0 ) {
			 return parseInt( yyyy.options[ yyyy.selectedIndex ].value ) * 100 + parseInt( mm.options[ mm.selectedIndex ].value );
		} else {
			 return parseInt( yyyy.options[ yyyy.selectedIndex ].value ) * 100 + opt;
		}
	}

	return '';
}


//----  setting for buffer Field  ----//
function setBuffField( form, id ) {
	var val = '';

	fie = eval( 'form.Field' + id );
	buf = eval( 'form.buffField' + id );

	buf.value = '';
	if ( fie.length > 0 ) {
		if ( fie.selectedIndex > 0 ) {
			val = fie.options[ fie.selectedIndex ].value
		}
		buf.value = '';
		for ( var i = 0; i < fie.length; i++ ) {
			if ( fie.options[ i ].value != '' ) {
				if ( buf.value != '' ) {
					buf.value += ':';
				}
				buf.value += fie.options[ i ].value;
			}
		}
	}

	return val;
}

//----  setting for buffer Field [ ATPF ver. ]  ----//
function setBuffFieldATPF( form, id ) {
	var val = '';

	fie = eval( 'form.selField' + id );
	buf = eval( 'form.buffField' + id );

	buf.value = '';
	if ( fie.length > 0 ) {
		if ( fie.selectedIndex > 0 ) {
			val = fie.options[ fie.selectedIndex ].value;
			val = val;
		}
		buf.value = '';
		for ( var i = 0; i < fie.length; i++ ) {
			if ( fie.options[ i ].value != '' ) {
				if ( buf.value != '' ) {
					buf.value += ':';
				}
				buf.value += fie.options[ i ].value;
			}
		}
	}

	return val;
}


//----  set list value inital data ----//
function setInitialListData( form, id0, id1 ) {
	fie0 = eval( 'form.Field' + id0 );
	dmm0 = eval( 'form.dummy_Field' + id0 );
	buf0 = eval( 'form.buffField' + id0 );

	fie1 = eval( 'form.Field' + id1 );
	dmm1 = eval( 'form.dummy_Field' + id1 );
	buf1 = eval( 'form.buffField' + id1 );

	if ( dmm0.value != '' ) {
		for( var i= 0; i < fie0.length; i++ ) {
			if ( dmm0.value == fie0.options[ i ].value ) {
				fie0.selectedIndex = i;
			}
		}

		var buf = buf1.value.split( ':' );
		for( var n = 0; n < buf.length; n++ ) {
			var len = fie1.length;
			fie1.length++;
			fie1.options[ len ].text  = buf[ n ];
			fie1.options[ len ].value = buf[ n ];
			if ( dmm1.value == fie1.options[ len ].value ) {
				fie1.selectedIndex = len;
			}
		}

	}

	return true;
}

//----  set list value inital data [ ATPF ver. ]  ----//
function setInitialListDataATPF( form, id0, id1 ) {
	fie0 = eval( 'form.Field' + id0 );
	sel0 = eval( 'form.selField' + id0 );
	dmm0 = eval( 'form.dummy_Field' + id0 );
	buf0 = eval( 'form.buffField' + id0 );

	fie1 = eval( 'form.Field' + id1 );
	sel1 = eval( 'form.selField' + id1 );
	dmm1 = eval( 'form.dummy_Field' + id1 );
	buf1 = eval( 'form.buffField' + id1 );

	if ( dmm0.value != '' ) {
		for( var i= 0; i < sel0.length; i++ ) {
			if ( dmm0.value == sel0.options[ i ].value ) {
				sel0.selectedIndex = i;
				fie0.value = dmm0.value;
			}
		}

		var buf = buf1.value.split( ':' );
		for( var n = 0; n < buf.length; n++ ) {
			var len = sel1.length;
			sel1.length++;
			sel1.options[ len ].text  = buf[ n ];
			sel1.options[ len ].value = buf[ n ];
			if ( dmm1.value == sel1.options[ len ].value ) {
				sel1.selectedIndex = len;
				fie1.value = changeCountryName( dmm1.value, aryCountryCity );
			}
		}

	}

	return true;
}


//----  check ListValues  ----//
function checkListValue( list, val ) {
	list.selectedIndex = 0;
	for( var i= 0; i < list.length; i++ ) {
		if ( eval( val ) == eval( list.options[ i ].value ) ) {
			list.selectedIndex = i;
		}
	}

	return true;
}


//----  set selected by ALL Country [ ATPF ver. ]  ----//
function setCountrySelctALL( ary, chkval ) {
	var tmp = '';

	for( var i = 0; i < ary.length; i++ ) {
		var buf = ary[ i ].split( ':' );
		if ( chkval != '' ) {
			if ( buf[0] == chkval ) {
				if ( buf[1] != 'Macao' ) {
					if ( tmp != '' ) {
						tmp += ',';
					}
					tmp += changeCountryName( buf[1], aryCountryCity );
				}
			}
		} else {
			if ( buf[1] != 'Macao' ) {
				if ( tmp != '' ) {
					tmp += ',';
				}
				tmp += changeCountryName( buf[1], aryCountryCity );
			}
		}
	}

	return tmp;
}


//----  clear CityName [ ATPF ver. ]  ----//
function clearCityNameATPF( ary ) {
	sel31 = eval( 'document.QueryForm.selField31' );
	fie33 = eval( 'document.QueryForm.Field33' );

	flag = false;
	for( var i = 0; i < ary.length; i++ ) {
		var temp = ary[ i ].split( '|' );
		if ( temp[ 0 ] == '1' && sel31.options[ sel31.selectedIndex ].value == temp[ 1 ] && fie33.value == temp[ 1 ] ) {
			flag = true;
			break;
		}
	}
	if ( ! flag ) {
		fie33.value = '';
	}

	return false;
}

//----  End of File  ----//