function validate(form) {
	//Used by the top page of the various satellite sites.
	//In the case of the results page, we use the javascript validate
	//in the results function.  The reason for this is because
	//we need to perform the check based on which variables are present in the form.
	var Alert 		= "";

	if(document.form.keyword_number.value != '' && (document.form.keyword_or.value != '' || document.form.keyword_and.value != '' ||  document.form.keyword_exact.value != '' || document.form.keyword_not.value != '' || document.form.keyword_photographer.value != '') ) {
		CssAlert("<div class=\"popup_contents\">画像番号と他のキーワードボックスに <br />" +
				"同時入力されていると検索できません。<br />" +
				"どちらかを消した上でご検索ください。</div>");
		return false;
	}

	//First we try to see if the search has any of the forbidden words.  If it does, we return
	//an error.

	var forbidden_words = new Object();
	forbidden_words['CG'] = 'CGイメージ';
	forbidden_words['IT'] = 'ITイメージ';
	forbidden_words['KKK'] = 'クラン';
	forbidden_words['OA'] = 'OA機器';
	forbidden_words['UAE'] = 'アラブ首長国';
	forbidden_words['LED'] = '発光ダイオード';
	forbidden_words['LPG'] = '液化石油ガス';
	forbidden_words['LNG'] = '液化天然ガス';
	forbidden_words['ILLUST'] = 'イラスト';
	forbidden_words['SARS'] = 'サーズ';
	forbidden_words['IC'] = 'ICイメージ';
	forbidden_words['大航海時代'] = '大航海時代15世紀　または　大航海時代16世紀　または　大航海時代17世紀';
	forbidden_words['世界遺産'] = ' ';
	forbidden_words['9.11'] = ' ';

	//We split up each of the search fields on spaces.
	var keyword_and = document.form.keyword_and.value;
	var keyword_or = document.form.keyword_or.value;
	var keyword_not = document.form.keyword_not.value;
	var keyword_exact = document.form.keyword_exact.value;

	//First we replace 2 bit spaces with 1 bit, and then make sure each word is separated by only a single space, and then split on spaces.
	keyword_and = keyword_and.replace(/　/g, ' ');
	//keyword_and = keyword_and.replace(/ */, ' ');
	keyword_or = keyword_or.replace(/　/g, ' ');
	//keyword_or = keyword_and.replace(/ */, ' ');
	keyword_not = keyword_not.replace(/　/g, ' ');
	//keyword_not = keyword_and.replace(/ */, ' ');
	keyword_exact = keyword_exact.replace(/　/g, ' ');
	//keyword_exact = keyword_and.replace(/ */, ' ');

	var keyword_string = (keyword_and + ' ' + keyword_or + ' ' + keyword_not + ' ' + keyword_exact);
	keyword_string = keyword_string.toUpperCase();
	var keyword_array = keyword_string.split(/ /);
	for(var i in keyword_array) {
		if(forbidden_words[keyword_array[i]]) {
			if(keyword_array[i] == '世界遺産') {
					Alert += '【世界遺産】では検索出来ません。<br />' +
					'個々のサイト名を入力して検索するか、<br />' + 
					'世界遺産専門サイトで検索してください。<br />' +
					'<a href="/cgi-bin/search.cgi?rm=top&amp;site=Worldheritage">【世界遺産専用サイトを開く】</a><br />';
			}

			else if(keyword_array[i] == '9.11') {
				Alert += '【9月11日】と入力して下さい。';
			}

			else {
				Alert += '【' + keyword_array[i] + '】ではなく【' + forbidden_words[keyword_array[i]] + '】でご検索下さい。<br />';
			}
		}
	}

	if (checkIsKaku(document.form.keyword_and.value) ||
			checkIsKaku(document.form.keyword_or.value) ||
			checkIsKaku(document.form.keyword_not.value) ||
			checkIsKaku(document.form.keyword_exact.value) ||
			checkIsKaku(document.form.keyword_number.value) ||
			checkIsKaku(document.form.keyword_photographer.value)
	   ) {
		CssAlert("<div class=\"popup_contents\">入力されたキーワードに全角の英数文字あるいは<br />半角の日本文字があります。<br />英数文字は半角、日本文字は全角でご入力下さい。</div>");
		return false;
	}
	if(keyword_string.match(/World Heritage/i)) {
		Alert += '<div class=\"popup_contents\">【World Heritage】では検索出来ません。<br />' +
		'個々のサイト名を入力して検索するか、<br />' + 
		'世界遺産専門サイトで検索してください。<br />' +
		'<a href="/cgi-bin/search.cgi?rm=top&amp;site=Worldheritage">【世界遺産専用サイトを開く】</a><br /></div>';
	}

	if(Alert) {
		CssAlert("<div class=\"popup_contents\">" + Alert + '</div>');
		return false;
	}


	if(document.form.keyword_and.value != '' && document.form.keyword_or.value != '') {
		CssAlert("<div class=\"popup_contents\">ANDとORボックスに同時に入力すると検索できません。<br />" +
				"片方だけにすべてのキーワードを入力してください。<br />" +
				"通常は【AND】ボックスをご使用ください。</div>");
		return false;
	}

	if(document.form.keyword_and.value != '' && document.form.keyword_exact.value != '') {
		CssAlert("<div class=\"popup_contents\">ANDと連語ボックスに同時に入力すると検索できません。<br />" +
				"片方だけにすべてのキーワードを入力してください。<br />" +
				"通常は【AND】ボックスをご使用ください。</div>");
		return false;
	}

	if(document.form.keyword_or.value != '' && document.form.keyword_exact.value != '') {
		CssAlert("<div class=\"popup_contents\">ORと連語ボックスに同時に入力すると検索できません。<br />" +
				"片方だけにすべてのキーワードを入力してください。<br />" +
				"通常は【OR】ボックスをご使用ください。</div>");
		return false;
	}

	if(document.form.keyword_photographer.value.match(/0|1|2|3|4|5|6|7|8|9/g)) {
		CssAlert("<div class=\"popup_contents\">写真家名は数字では検索出来ません。<br />" +
				"画像番号で検索する場合は【画像番号】のボックスに入力して下さい。</div>");
		return false;
	}

	if(document.form.site.value == 'Akg') {
		return true;
	}

	if (!document.form.keyword_or.value && 
			!document.form.keyword_and.value && 
			!document.form.keyword_exact.value && 
			!document.form.keyword_not.value && 
			!document.form.keyword_number.value && 
			!document.form.keyword_photographer.value)
	{ Alert += "<br /><br />キーワード"; }


	if (!Alert) { return true; }
	else { 
		CssAlert ("<div class=\"popup_contents\">下記の項目をご記入してください。" + Alert + "</div>");
		return false;
	}


}


function ResetForm() {
	if(document.form.keyword_and) {
		document.form.keyword_and.value = '';
	}

	if(document.form.keyword_exact) {
		document.form.keyword_exact.value = '';
	}

	if(document.form.keyword_not) {
		document.form.keyword_not.value = '';
	}

	if(document.form.keyword_number) {
		document.form.keyword_number.value = '';
	}

	if(document.form.keyword_photographer) {
		document.form.keyword_photographer.value = '';
	}
	if(document.form.keyword_or) {
		document.form.keyword_or.value = '';
	}
}



