window.addEvent('domready', function() {

	var prev_search = $('q').get('value');
	
	$('search-form').addEvent('submit', function(e) {
		e.stop();
		var terms = $('q').get('value').trim();
		if(terms != '' && terms != prev_search) {
			terms = escape(terms);
			terms = terms.replace(/[*+\/@]|%20/g,
				function (s) {
					switch (s) {
						case "*": s = "%2A"; break;
						case "+": s = "%2B"; break;
						case "/": s = "%2F"; break;
						case "@": s = "%40"; break;
						case "%20": s = "+"; break;
					}
					return s;
				}
			);
			window.location = $('search_uri').get('value')+terms;
		}
	});
});