/*
 * Read from SVN revision 42292 on Fri Mar 05, 2010 at 05:04 AM by r.clein.
 */
/* Create a new form with supplied fields and post it. */
function formPost(path, hash) {
	f = new Element('form', { method: 'post', action: path });
	for(o in hash) {
		i = new Element('input', { type: 'hidden', name: o, value: hash[o] });
		f.insert({ bottom: i });
	}
	$$('body')[0].insert({ bottom: f });
	f.submit();
}

/* Add fields to an existing form and post it. */
function postFormWith(form, hash) {
	f = $(form);
	for(o in hash) {
		i = new Element('input', { type: 'hidden', name: o, value: hash[o] });
		f.insert({ bottom: i });
	}
	f.submit();
}

function safeEnter(e) {
	var elm = e.element();
	switch(e.keyCode) {
		case Event.KEY_RETURN:
			e.stop();
			if(elm.getAttribute('safeEnter_InAutoComplete') && elm.getAttribute('safeEnter_InAutoComplete') == 'true') {
				elm.setAttribute('safeEnter_InAutoComplete', 'false');
			} else if(elm.up('form')) {
				elm.up('form').submit();
			}
			break;

		case Event.KEY_UP:
		case Event.KEY_DOWN:
		case Event.KEY_PAGEUP:
		case Event.KEY_PAGEDOWN:
			elm.setAttribute('safeEnter_InAutoComplete', 'true');
			break;

		case Event.KEY_ESC:
			elm.setAttribute('safeEnter_InAutoComplete', 'false');
			break;
	}
}

Event.observe(window, 'load', function() {
	$$('form.jt_common_form input').each(function(e) {
		Event.observe(e, 'keypress', safeEnter);
	});
});

