var submitted = false;
var t = false;

function submit_kernel_form()
{
	if (submitted) return;
	submitted = true;
	var $form = document.getElementById($form_name);
	if (typeof $form.onsubmit == "function") $form.onsubmit();
	$form.submit();
	$form.target = '';
	set_hidden_field('t', t);
	window.setTimeout(function() {submitted = false}, 500);
}

function set_hidden_field($field_id, $value)
{
	var $kf = document.getElementById($form_name);
	var $field = $kf.elements[$field_id];
	
	if ($value === null) {
		if ($field) {
			$kf.removeChild($field);
		}
		return true;
	}
	
	if ($field) {
		$field.value = $value;
		return true;
	}

	$field = document.createElement('INPUT');
	$field.type = 'hidden';
	$field.name = $field_id;
	$field.id = $field_id;
	$field.value = $value;

	$kf.appendChild($field);
	return false;
}

function submit_event(prefix_special, event, t, form_action, $ajax)
{
	if ($ajax) {
		return $Catalog.submit_event(prefix_special, event, t);
	}

	if (event) {
		set_hidden_field('events[' + prefix_special + ']', event);
	}
	if (t) set_hidden_field('t', t);

	if (form_action) {
		var old_env = '';
		if (!form_action.match(/\?/)) {
			document.getElementById($form_name).action.match(/.*(\?.*)/);
			old_env = RegExp.$1;
		}
		document.getElementById($form_name).action = form_action + old_env;
	}
	submit_kernel_form();
}

function catchHotKeysSearch(e)
{
	if (!e) return;
 	if (e.keyCode == 13) dosearch();
}

function dosearch()
{
	if (document.search_form.search_keyword.value == '')
	{
		return;
	}
	$form_name = 'search_form';
	submit_event('custom-sections', 'OnKeywordSearch');
}

