/*
This script is copyright (c) 2006 Elliot Swan under the
Creative Commons Attribution-ShareAlike 2.5 license:
http://creativecommons.org/licenses/by-sa/2.5/

More information on this script can be found at:
http://www.elliotswan.com/2006/07/05/better-than-live/
*/

Event.observe(window, 'load', init, false);

function init() {
	Event.observe('search', 'submit', search, false);
	Event.observe('query', 'click', live.Clear, false);
	 $('search').onsubmit = function() {return false;};
	 
	Event.observe('closeresults', 'click', live.Close, false);
	 $('closeresults').onclick = function() {return false;};
}

function search() {
live.Search();
}

var live = {

Browser	:	function() {
// Safari can't handle the fading on the form submit, so we have to check for it in order to send it some different styles
			if (navigator.userAgent.toLowerCase() == 'safari') {return true;}
},

Clear	:	function() {
			 if($F('query') == "search...") {$('query').value = ''; }
			 $('query').onblur = function() { if($F('query') == "") {$('query').value = "search..."; }}
},

Close	:	function() {
			 Effect.SwitchOff('searchresults', {queue: {position: 'end', scope: 'close'}});
			 Effect.Fade('closeresults', {duration: .5, queue: {position: 'front', scope: 'close'}});
},

Active	:	function() {
/*			 if(this.Browser == true) {
			 var indicator = document.createElement('img');
				indicator.src = 'indicator.gif';
				indicator.id = 'indicator-safari';
				indicator.style.display = 'none';
			 $('search').appendChild(indicator);
			 Effect.Appear('indicator', {duration: .5, queue: {position: 'end', scope: 'active'}});
			}
			
			else { */
				var indicator = document.createElement('img');
				indicator.src = 'http://imediatech.biz/indicator.gif';
				indicator.id = 'indicator';
				indicator.style.display = 'none';
			 $('search').appendChild(indicator);
			 Effect.Fade('search_submit', {duration: .5, queue: {position:'front', scope: 'active'}});
			 Effect.Appear('indicator', {duration: .5, queue: {position: 'end', scope: 'active'}});
		/*	}			 */
},

Complete:	function() {
			 Effect.Fade('indicator', {duration: .5, queue: {position:'end', scope: 'active'}});
 			 Effect.BlindDown('searchresults', {queue: {position: 'end', scope: 'active'}});
			 Effect.Appear('search_submit', {duration: .5, queue: {position: 'end', scope: 'active'}});
			 Effect.Appear('closeresults', {duration: .5, queue: {position: 'end', scope: 'active'}});
},

Search	:	function() {
			 this.Active();
			 var url = 'http://imediatech.biz/index.php';
			 var pars = 's='+$F('query');
			 var target = 'searchresults';
			 var myAjax = new Ajax.Updater(target, url, {method: 'post', parameters: pars, onComplete: this.Complete, evalScripts: true});
			}
}
