/* ul.js */
var Selectbox=Class.create({
   initialize:function(options) {
		 var defaultOptions={wrap:0,checkId:0,func:0,focus:0};
		 this.options=Object.extend(defaultOptions,options);
		 this.control();
		 if (this.options.checkId) {
				var str = decodeURI(this.options.checkId);
				var wrapid = this.options.wrap.id;				
				var sel = $$('#'+wrapid+' input[value='+str+']')[0];				
				sel.checked=true;
				this.options.wrap.select('dt')[0].update(sel.parentNode.getElementsByTagName('label')[0].innerHTML);
			//	var dt = this.options.wrap.select('dt')[0];		dt.setStyle({fontWeight:'bold'});
		 }
   },
   control:function(e) {
		 var wrapper=this;
		 var formName=this.options.wrap.select('input')[0].getAttribute('name');
		 var titdef = wrapper.options.wrap.select('dt')[0];
		 var listdef = wrapper.options.wrap.select('dd')[0];
		 function clickDoc(e) {
				if (Event.element(e)==wrapper.options.wrap) return;
				var parents=Event.element(e).ancestors();
				for (var i=0;i<parents.length;i++) {
					   if (parents[i]==wrapper.options.wrap) return;
				}
				listdef.setStyle({display:'none'});
				if (titdef.hasClassName('up')) titdef.removeClassName('up');
		 }
		 function clickControl(e) {
				var maintxt,maininput;
				var el=Event.element(e);
				if (el.tagName=='INPUT'||el.tagName=='LABEL') {
					   for (i=0;i<listdef.select('input').length;i++) {
							 if (listdef.select('input')[i].checked==true) listdef.select('input')[i].checked==false;
					   }
					   maintxt=el.parentNode.getElementsByTagName('label')[0].innerHTML;
					   maininput=el.parentNode.getElementsByTagName('input')[0];
					   titdef.innerHTML=maintxt;
					   titdef.addClassName('on');
					   if (titdef.hasClassName('up')) titdef.removeClassName('up');
					   maininput.checked=true;
					   listdef.setStyle({display:'none'});
					   if (wrapper.options.focus) wrapper.options.focus.focus();
					   if(!Prototype.Browser.IE) {
							 if (el.tagName=='LABEL') return;
					   }
					   if (wrapper.options.func) wrapper.options.func(formName,$F(maininput));
				}
				else if(el.tagName=='DT') {
					   if (listdef.getStyle('display')=='block') {
							 listdef.setStyle({display:'none'});
							 if (titdef.hasClassName('up')) titdef.removeClassName('up');
					   }
					   else {
							 listdef.setStyle({display:'block'});
							 titdef.addClassName('up');
					   }
				}                   
				else if (el.className == 'close') {
					   listdef.setStyle({display:'none'});
				}
				else return;
		 }
		 Event.observe(document,'click',clickDoc);
		 Event.observe($(this.options.wrap),'click',clickControl);   
   }
});

var bookmark= function(title, url){
	if (document.all)  // IE Favorite
		window.external.AddFavorite(url, title);
	else if (window.sidebar) // Mozilla Firefox Bookmark
		window.sidebar.addPanel(title, url, "")
	else if (window.sidebar&&window.sidebar.addPanel)
		window.sidebar.addPanel(title,url,"");
};
