//- Version 2010-05-10
var searchUtils ;

window.addEvent ('domready', function () {
	searchUtils =new SearchUtils () ;
}) ;

var SearchUtils =new Class ({

	initialize: function () {
		this.initCtrls () ;
	},
	
	collectData: function () {
		var data ={} ;
		$('search-criteria').getElements ('*[id^=search_]').each (function (elt) {
			if ( elt.get ('type') == 'checkbox' || elt.get ('type') == 'radio' )
				this [elt.id] =elt.checked ;
			else
				this [elt.id] =elt.value ;
		}.bind (data)) ;
		data ['search_operation'] =4 ;
		if ( data ['search_nuepropriete'] == true )
			data ['search_operation'] =5 ;
		else if ( data ['search_usufruit'] == true ) 
			data ['search_operation'] =6 ;
		$('criteria').value =JSON.encode (data) ;
		Cookie.write ('searchCriteria', JSON.encode (data)) ;
		return (data) ;
	},
	
	initCtrls: function () {
		//- Reset controls to the last know states
		var data =Cookie.read ('searchCriteria') ;
		if ( $chk(data) ) {
			data =JSON.decode (data) ;
			$H(data).each (function (value, index) {
				var elt =$('search-criteria').getElement ('*[id=' + index + ']') ;
				if ( !$chk(elt) )
					return ;
				if ( elt.get ('type') == 'checkbox' )
					elt.checked =value ;
				else if ( elt.get ('type') == 'select-one' && value == '' )
					elt.value =-1 ;
				else
					elt.value =value ;
			}) ;

		} else {
			//$('search_operation').value =search_operation ;
		}
		//- Bind submit control
		$('searchnow').removeEvents ().addEvent ('click', this.collectData.bind (this)) ;
	}
	
}) ;


