/*#############################################################
Name: Select to CSS
Version: 0.2
Author: Utom
URL: http://utombox.com/
#############################################################*/
var selects = document.getElementsByTagName('select');

var isIE = (document.all && window.ActiveXObject && !window.opera) ? true : false;

function $(id) {
	return document.getElementById(id);
}

function stopBubbling (ev) {	
	ev.stopPropagation();
}

function rSelects() {
	for (i=0;i<selects.length;i++){
		//by kui 
		if(selects[i].name.indexOf("search_")!=-1){
			continue;
		}
		
		selects[i].style.display = 'none';
		select_tag = document.createElement('div');
			select_tag.id = 'select_' + selects[i].name;
			select_tag.className = 'select_box';
		selects[i].parentNode.insertBefore(select_tag,selects[i]);

		select_info = document.createElement('div');	
			select_info.id = 'select_info_' + selects[i].name;
			select_info.className='tag_select';
			select_info.style.cursor='pointer';
			
		select_tag.appendChild(select_info);

		select_ul = document.createElement('ul');	
			select_ul.id = 'options_' + selects[i].name;
			select_ul.className = 'tag_options';
			select_ul.style.position='absolute';
			select_ul.style.display='none';
			select_ul.style.zIndex='999';

			
		select_tag.appendChild(select_ul);

		rOptions(i,selects[i].name);
		
		mouseSelects(selects[i].name);


		if (isIE){
			selects[i].onclick = new Function("clickLabels3('"+selects[i].name+"');window.event.cancelBubble = true;");
		}
		else if(!isIE){
			selects[i].onclick = new Function("clickLabels3('"+selects[i].name+"')");
			selects[i].addEventListener("click", stopBubbling, false);
		}		
	}
}

//by kui 用于刷新select
function setOptiongs(name){
	for (i=0;i<selects.length;i++){
		if(selects[i].name == name){
			var options = selects[i].getElementsByTagName('option');
			var options_ul = 'options_' + name;
			var obj =document.getElementById(options_ul);
			
			obj.innerHTML="";
			for (n=0;n<selects[i].options.length;n++){	
				option_li = document.createElement('li');
					option_li.style.cursor='pointer';
					option_li.className='open';
				$(options_ul).appendChild(option_li);
		
				option_text = document.createTextNode(selects[i].options[n].text);
				
				option_li.appendChild(option_text);
		
				option_selected = selects[i].options[n].selected;
		
		//		if(option_selected){	注释此行 by kui 用于select重写不默认选中
				if(false){	
					option_li.className='open_selected';
					option_li.id='selected_' + name;
					$('select_info_' + name).appendChild(document.createTextNode(option_li.innerHTML));
				}
				
				option_li.onmouseover = function(){	this.className='open_hover';}
				option_li.onmouseout = function(){
					if(this.id=='selected_' + name){
						this.className='open_selected';
					}
					else {
						this.className='open';
					}
				} 
				option_li.onclick = new Function("clickOptions("+i+","+n+",'"+selects[i].name+"')");
			}
			break;
		}
	}


}

function rOptions(i, name) {
	var options = selects[i].getElementsByTagName('option');
	var options_ul = 'options_' + name;
	for (n=0;n<selects[i].options.length;n++){	
		
		
		
		
		option_li = document.createElement('li');
		option_li.style.cursor='pointer';
		option_li.className='open';
		
		option_title=selects[i].options[n].title;
		option_li.title=option_title;
		
		$(options_ul).appendChild(option_li);
	
		
		option_text =document.createTextNode(selects[i].options[n].text);
		option_li.appendChild(option_text);
		
		option_selected = selects[i].options[n].selected;

		if(option_selected){
			option_li.className='open_selected';
			option_li.id='selected_' + name;
			$('select_info_' + name).appendChild(document.createTextNode(option_li.innerHTML));
			
		}
		
		option_li.onmouseover = function(){	this.className='open_hover';}
		option_li.onmouseout = function(){
			if(this.id=='selected_' + name){
				this.className='open_selected';
			}
			else {
				this.className='open';
			}
		} 
	
		option_li.onclick = new Function("clickOptions("+i+","+n+",'"+selects[i].name+"')");
	}
}

function mouseSelects(name){
	var sincn = 'select_info_' + name;

	$(sincn).onmouseover = function(){ if(this.className=='tag_select') this.className='tag_select_hover'; }
	$(sincn).onmouseout = function(){ if(this.className=='tag_select_hover') this.className='tag_select'; }

	if (isIE){
		$(sincn).onclick = new Function("clickSelects('"+name+"');window.event.cancelBubble = true;");
	}
	else if(!isIE){
		$(sincn).onclick = new Function("clickSelects('"+name+"');");
		$('select_info_' +name).addEventListener("click", stopBubbling, false);
	}

}

function clickSelects(name){
	var sincn = 'select_info_' + name;
	var sinul = 'options_' + name;	

	for (i=0;i<selects.length;i++){	
		if(selects[i].name.indexOf("search_")!=-1){
				continue;
		}
		if(selects[i].name == name){				
			if( $(sincn).className =='tag_select_hover'){
				$(sincn).className ='tag_select_open';
				$(sinul).style.display = '';
			}
			else if( $(sincn).className =='tag_select_open'){
				$(sincn).className = 'tag_select_hover';
				$(sinul).style.display = 'none';
			}
		}
		else{
			
			$('select_info_' + selects[i].name).className = 'tag_select';
			$('options_' + selects[i].name).style.display = 'none';
		}
	}

}

function clickOptions(i, n, name){	
	var li = $('options_' + name).getElementsByTagName('li');
	//by kui 
	if($('selected_' + name)){
		$('selected_' + name).className='open';
		$('selected_' + name).id='';
	}
	li[n].id='selected_' + name;
	li[n].className='open_hover';
	$('select_' + name).removeChild($('select_info_' + name));

	select_info = document.createElement('div');
		select_info.id = 'select_info_' + name;
		select_info.className='tag_select';
		select_info.style.cursor='pointer';
	$('options_' + name).parentNode.insertBefore(select_info,$('options_' + name));

	mouseSelects(name);

	$('select_info_' + name).appendChild(document.createTextNode(li[n].innerHTML));
	$( 'options_' + name ).style.display = 'none' ;
	$( 'select_info_' + name ).className = 'tag_select';
	selects[i].options[n].selected = 'selected';
	//by kui onchange for select

	if(name=='language_tm1008'){
		top.location.href=selects[i].options[n].value;
	}else if(name =='language_tm2009'){
		top.location.href=selects[i].options[n].value;
	}
	else if(name =='type'){
		select_type(selects[i].options[n].value);
	}else if(name =='index_doc_company'){
		select_company(selects[i].options[n].value);
	}else if(name =='index_doc_begin'){
		select_begin(selects[i].options[n].value);
	}

}

window.onload = function(e) {
	

	bodyclick = document.getElementsByTagName('body').item(0);
	rSelects();
	
	bodyclick.onclick = function(){
		for (i=0;i<selects.length;i++){	
			//by kui 
			
			if(selects[i].name.indexOf("search_")!=-1){
				continue;
			}
			
			$('select_info_' + selects[i].name).className = 'tag_select';
			$('options_' + selects[i].name).style.display = 'none';
			
		}
	}
}