(function(){
	selectMenu = {
		init : function(obj, menu, options){
			var dvul = $F(menu+'_id');
			Element.extend(obj);
			var offset = obj.cumulativeOffset();
			var size   = obj.getDimensions();
			//alert(size.width);
			var options = Object.extend({fixLeft:-1, fixTop:-1}, options || {});
			var _style   = Object.extend({left:offset[0]+options.fixLeft, top:offset[1]+options.fixTop + size.height,
			 display:'block', width:size.width+'px'}, options);
			var lis = $$('#'+menu+'_menu li');
			var len = lis.length, i = 0;
			for(i; i< len -1 ; i++){
				if(dvul == lis[i].getAttribute('value')) {
					lis[i].addClassName('selected');
				}else{
					lis[i].removeClassName('selected');
				}
				if(!lis[i].hasClassName('ts')) lis[i].observe('click', this.mapLi.bind(this, menu, lis[i]));
			}
			lis[len-1].observe('click', this.hide.bind(this, menu));
			$(menu+'_menu').setStyle(_style).observe('click', function(event){event.stop();});
			$(menu).observe('click', function(event){event.stop();});
			var th = this;
			(function(){
				$$('body')[0].observe('click', th.hide.bind(th, menu));
			}).defer();
		},
		mapLi : function(menu, obj){
			$(menu+'_id').value = obj.readAttribute('value');
			$(menu).value = $(menu+'_text').value = obj.getAttribute('title');
			this.hide(menu);
		},
		show : function(){
			
		},
		hide : function(menu){
			$(menu+'_menu').hide();
		}
	};
})();
