//------------------------------------------------------------------------------
// sets list of values for given combo
//------------------------------------------------------------------------------
function fill_combo(combo_idobj,list,value)
{
  fill_combo(combo_idobj,list,value,false);
}
function fill_combo(combo_idobj,list,value,required)
{
  //alert('fill_combo:'+combo_idobj);
  var combo;
  var selIndex=0;
	if(typeof combo_idobj=='object'){
  	combo=combo_idobj;
	}
	else{
  	combo=document.getElementById(combo_idobj);
	}
	//alert('fill_combo:'+combo.id+'->'+value+' options:'+list.length);
	//alert(list);
	if(combo){
  	while(combo.length>0)
  	{
			combo.remove(0);
		}
		if(!required){
			//alert('adding empty option');
			combo.options.add(new Option('',''));
		}
		for(var i=0;i<list.length;i++)
		{
			//alert('adding option #'+i);
  		var le=list[i];
			//alert('adding option: '+le);
		  var opt=new Option();
			opt.value=le[0];
			opt.text=le[1];
			combo.options.add(opt);
			if(le[0]==value) 
				selIndex=i+(required?0:1);
		}
		if(selIndex>0) {
			//opera bug - does NOT seem to be fixed in 9.50
			//combo.selectedIndex=selIndex;
			setTimeout(function(){combo.selectedIndex=selIndex},500);
		}
		//combo.style.display=(list.length==0)?'none':'';
	}
	else{
  	alert('Cannot find combo:'+combo_idobj);
	}
}
//----------------------------------------------------------------------------
// sets value for day, month and year elements of date_input set
//----------------------------------------------------------------------------
function date_input_set(id_prefix,id_suffix,value)
{
	dh=document.getElementById('date'+id_suffix);
	d=document.getElementById(id_prefix+'День' +id_suffix);
	m=document.getElementById(id_prefix+'Месяц'+id_suffix);
	y=document.getElementById(id_prefix+'Год'  +id_suffix);
	dh.value=value;
	var a=value.split('-');
	y.value=a[0];
	m.value=a[1];
	d.value=a[2];
}
//----------------------------------------------------------------------------
// submit form asynchronously
// for now, it works woth POST method only 
//----------------------------------------------------------------------------
function async_submit(form,fun){
  var message='';  
	for(var i=0;i<form.elements.length;i++){
	  var el=form.elements[i];
	  if(el.name){
	  	switch(el.type){
			case 'hidden':
			case 'text':
			case 'password':
			case 'textarea':
			case 'select-one':
				break;
			case 'radio':
				if(!el.checked) continue;
				break;
			default:
				alert('async_submit: unknown element type "'+el.type+'"');
				continue;
			}
			message=message+(message?'&':'')+encodeURIComponent(el.name)+'='+encodeURIComponent(el.value);
		}
	}
	//alert('submitting form. method:'+form.method+' action:'+form.action+' message:'+message+' function:'+fun);
	asyncRequest(form.action,fun,form.method,new Array(new Array("Content-Type","application/x-www-form-urlencoded;charset=utf-8")),message);
}
