<!--
String.prototype.trim = new Function("return this.replace(/^\\s+|\\s+$/g,'')");
function changeRange(range) {
	frmObject = document.srchForm;
	if ( range == -1 ) {
		frmObject.toDate.value = '';
		frmObject.fromDate.value = '';
	} else if (range > 0 ) {
		var today = new Date();
		var fromday = new Date();
		fromday.setMonth(today.getMonth()-range);
		frmObject.toDate.value = today.getYear() + '-' + ((today.getMonth()+1)<10?'0':'')+ (today.getMonth()+1) + '-' + (today.getDate()<10?'0':'')+ today.getDate();
		frmObject.fromDate.value = fromday.getYear() + '-' + ((fromday.getMonth()+1)<10?'0':'')+ (fromday.getMonth()+1) + '-' + (fromday.getDate()<10?'0':'')+ fromday.getDate();
	} else if (range == 0 ) {
		frmObject.fromDate.focus();
	}
}

function validateInput () {
	frmObject = document.srchForm;
	var s = '';
	var submitter = document.submitter;
	submitter.reset();
	if ( frmObject.srchWord.value.trim() == '' &&
		frmObject.journal.value.trim() == '' &&
		frmObject.author.value.trim() == '' &&
		(typeof frmObject.range=='undefined' || frmObject.fromDate.value.trim() == '') &&
		(typeof frmObject.range=='undefined' || frmObject.toDate.value.trim() == '') &&
		(typeof frmObject.source=='undefined' || frmObject.source.selectedIndex == 0) ) 
	{
		alert('請輸入最小一項搜尋項目');
		frmObject.srchWord.focus();
		return false;
		void(0);
	} else {
//displayForm(frmObject);	
	}
	
	if ( (s=frmObject.srchWord.value.trim()) != '' ) {
		if( compoundOperator(s) ) return false;
		submitter.w.value = s;
	}
	if ( typeof frmObject.fulltext!='undefined' && frmObject.fulltext.checked ) {
		submitter.x.value = 'fulltext';
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[1].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[1].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[2].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[2].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[3].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[3].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[4].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[4].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[5].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[5].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[6].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[6].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[7].checked ) {
		submitter.cb.value = submitter.cb.value + "," + frmObject.cb1[7].value;
	}
	if ( typeof frmObject.cb1!='undefined' && frmObject.cb1[0].checked ) {
		submitter.cb.value = frmObject.cb1[0].value;
	}
	if ( typeof frmObject.author!='undefined' )
	{
		submitter.a.value = frmObject.author.value.trim();
	}

	if ( typeof frmObject.journal!='undefined' )
	{
		submitter.j.value = frmObject.journal.value.trim();
	}
	if ( typeof frmObject.source != 'undefined' ) {
		submitter.s.value = frmObject.source.options[frmObject.source.selectedIndex].value.trim();
		s = '';
	}

//
//	Search for categories is disabled for new version
//
//	for ( var i = 0 ; i < frmObject.categories.length ; i++ ) {
//		if ( frmObject.categories[i].checked ) {
//			if ( s != '' ) s += ',';
//			s += frmObject.categories[i].value.trim();
//		}
//	}
//
//	submitter.c.value = s;	

	if ( typeof frmObject.range!='undefined' && frmObject.range.selectedIndex != 0 ) {
		s = frmObject.fromDate.value.trim();
		if ( s!='' && !isValidDate(s) ) {
			alert("日期輸入方式錯誤");
			frmObject.fromDate.focus();
			return false;
		}
		submitter.d1.value = frmObject.fromDate.value.trim();

		s = frmObject.toDate.value.trim();
		if ( s!='' && !isValidDate(s) ) {
			alert("日期輸入方式錯誤");
			frmObject.toDate.focus();
			return false;
		}
		submitter.d2.value = frmObject.toDate.value.trim();
		
		if ( submitter.d1.value.trim()!='' && submitter.d2.value.trim()!='' && submitter.d1.value.trim() > submitter.d2.value.trim() ) {
			alert("日期先後次序錯誤");
			frmObject.fromDate.focus();
			return false;
		}
	} 
	if ( typeof frmObject.sortBy!='undefined' ) {
		submitter.o.value = frmObject.sortBy.options[frmObject.sortBy.selectedIndex].value.trim();
	}
//	displayForm ( submitter );
	submitter.submit();
	return false;
}

function displayForm ( frmObject ) {
	var s = '';
	for ( var i = 0 ; i < frmObject.elements.length ; i++ ) {
		s += frmObject.elements[i].name + "\t= "+ frmObject.elements[i].value.trim() + "\n";
	}
	alert ( s );
}

function compoundOperator(s) {
	if( s.indexOf("&") > -1 && s.indexOf(",") > -1 ){
		alert('Combination of operators is not allowed.');
		frmObject.srchWord.focus();
		return true;
	}
}

function tryInputDateRange ( txtField ) {
	frmObject = document.srchForm;
	if ( frmObject.range.selectedIndex != 3 ) {
		frmObject.range.selectedIndex = 3;
		txtField.focus();
	}
}

function chk_input() {
	var earlier_date=new Date(54,0,1);
	var start_date=document.DATE_FORM.sd.value.trim();
	var end_date=document.DATE_FORM.ed.value.trim();
	if (document.TITLE.GROUP_ID.value.trim()=='0') {
		alert("沒有輸入類別。請選擇最少一份類別或 '所有類別'");
		return false;
	}
	if ((start_date.length!=10)||(end_date.length!=10)) {
		alert("日期輸入方式錯誤");
		return false;
	}
	else {
	    var start_year=start_date.substring(0,4);
	    var start_month=start_date.substring(5,7)-1;
	    var start_day=start_date.substring(8,10);
	    var end_year=end_date.substring(0,4);
	    var end_month=end_date.substring(5,7)-1;
	    var end_day=end_date.substring(8,10);
	    start_date=new Date(start_year,start_month,start_day);
	    end_date=new Date(end_year,end_month,end_day);
		if ( (start_date.getMonth()!=start_month)||(end_date.getMonth()!=end_month) ) {
		  alert("日期錯誤");
		  return false;		
		}
	    	if (date_compare(end_year,end_month,end_day,start_year,start_month,start_day)) {
		  <!-- alert("日期先後次序錯誤"); -->
		  return true;
		}
		else if (date_compare(end_year,end_month,end_day,start_year,start_month,start_day)) {
		  <!-- alert("資料庫不包括一九八九年一月一日前之刊物"); -->
		  return true;
		}
		
	    return true;
	}
	
}

/**
 * Forces the user to select at least one of the categories, or select "All"
 */
function handleCategoryClicked ( category ) {
	var categories = document.srchForm.categories;
	if ( category.value.trim() != '' ) {
		checked = false;
		for ( var i = 0 ; i < categories.length ; i++ ) {
			if ( categories[i].checked ) {
				checked = true;
			}
		}
		if ( !checked ) 
			category.checked = true;
		categories[categories.length-1].checked = false;
	} else if ( !category.checked ) {
		category.checked = true;
	} else {
		for ( var i = 0 ; i < categories.length ; i++ ) {
			if ( categories[i].value.trim() != '' )
				categories[i].checked = false;
		}
	}
}

function searchAgain () {
	document.srchForm.reset();
	document.submitter.reset();
}

function isValidDate(dateStr) {
	var datePat = /^(\d{4})(\/|-)(\d{1,2})\2(\d{1,2})( (\d{1,2})(\:)(\d{1,2})(\:)(\d{1,2}))?$/;
	var matchArray = dateStr.match(datePat); // is the format ok?

	if (matchArray == null) {
		return false;
	}
	year = matchArray[1];
	month = matchArray[3]; // parse date into variables
	day = matchArray[4];
	hour = matchArray[5];
	min = matchArray[7];
	sec = matchArray[9];

	if (month < 1 || month > 12) { // check month range
		return false;
	}
	if (day < 1 || day > 31) {
		return false;
	}
	if ((month==4 || month==6 || month==9 || month==11) && day==31) {
		return false;
	}
	if (month == 2) { // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day>29 || (day==29 && !isleap)) {
			return false;
			}
	}

	if(hour!='' && min!='' && sec!=''){
		//  if the "time" part is entered
		if (hour < 0 || hour > 23){
			return false;
		}
		if (min < 0 || min > 59){
			return false;
		}
		if (sec < 0 || sec > 59){
			return false;
		}
	}
	return true;
}

//-->