var EAWC = function(config){
	var eawc = this;
	eawc.config = {};
	$.extend(eawc.config, config);
	
	eawc.init = function(){
		
		eawc.search.init();
		
	}
	
	eawc.search = {
		id : 'eawc-search-box',
		init : function(){
			eawc.search.$ = $('#'+eawc.search.id);
			
			eawc.search.$.find('.field.select').MomoSelectMenu();
			
			eawc.search.$.find('#default-submit').click(function(){
				eawc.search.submit();
			});
			
			eawc.search.$.find('#map-submit').click(function(){
				eawc.search.submit({DefaultPage:2});
			});
			
			SearchWidgets.initAll();
			
		},
		submit : function(args){
			if(!args){ args = {} }
			args.r = 'search';
			args.aid = '{'+eawc.config.aid+'}';
			
			var values = SearchWidgets.getAllValues();
			
			if(!values.dep){ return false; }
			
			$.each(values, function(i,v){
				args[i] = v.join(',');
			});
			
			window.location = eawc.config.base+eawc.config.page+'&'+$.param(args);
		}
	}

	
	
	$(eawc.init);
};


var SearchWidgets = {
	menus : {},
	push : function(m){
		this.menus[m.getId()] = m;
	},
	getAllValues : function(){
		var valueObj = {};

		$.each(this.menus,function(){
			if(!this.isDisable()){
				$.extend(valueObj,this.val(true));
			}
		});
		return valueObj;
	},
	initAll : function(){
	
		$.each(this.menus,function(){
			this.init();
		});

	},
	getMenu : function(id){
		m = this.menus[id];
		return m ? m : null;
	},
	closeAll : function(){
		$.each(this.menus,function(){
			this.close();
		});
	}
};

