function init_field_handler(field_name,function_name)
{
    for (var i=0;i<document.forms.length;i++)
    {
        var frm=document.forms[i];
        for (var j=0;j<frm.elements.length;j++)
        {
            if (frm.elements[j].name==field_name)
            {
                frm.elements[j].onchange=window[function_name];
            }
        }
    }
}

function insert_observer_data(str,xmlTree)
{
    try {
    //field=xmlTree.documentElement.getElementsByTagName("field")[0].firstChild.data;
    data=xmlTree.documentElement.getElementsByTagName("data")[0].firstChild ? xmlTree.documentElement.getElementsByTagName("data")[0].firstChild.data : '';
    //res=data.xml || new XMLSerializer().serializeToString(data);
    eval(data);
    obj.show();
    } catch (e) {window.status=e.message;}
}

function get_observer_data (obj,value)
{
    try {
    for (var i=0;i<obj.length;i++)
    {
        var ajax=new VPA_AJAX;
        if (obj[i].local_id)
        {
            //wnd=window.open(); 
            //wnd.document.write('?type=observer&action=search&params[0]='+obj[i].name+'&params[1]='+obj[i].method+'&params[2]='+value+'&params[3]='+obj[i].local_id+'&params[4]='+obj[i].remote_id+'&params[5]='+obj[i].show_values+'&params[6]='+obj[i].show_pattern); 
            ajax.makeRequest('/observer/search/?params[0]='+obj[i].name+'&params[1]='+obj[i].method+'&params[2]='+value+'&params[3]='+obj[i].local_id+'&params[4]='+obj[i].remote_id+'&params[5]='+obj[i].show_values+'&params[6]='+obj[i].show_pattern,'insert_observer_data');
            //window.location.href='/observer/search/?params[0]='+obj[i].name+'&params[1]='+obj[i].method+'&params[2]='+value+'&params[3]='+obj[i].local_id+'&params[4]='+obj[i].remote_id+'&params[5]='+obj[i].show_values+'&params[6]='+obj[i].show_pattern;
        }
        else
        {
            ajax.makeRequest('/observer/search/?params[0]='+obj[i].name+'&params[1]='+obj[i].method+'&params[2]='+value,'insert_observer_data');
        }
    }
    } catch (e) { window.status=e.message;}
}

function observer_select(field)
{
    var field=this.field;
    var values=this.values;
    
    // очищаем список
    for (var i=0;i<document.forms.length;i++)
    {
        var frm=document.forms[i];
        if (frm.elements[field])
        {
            chlds=frm.elements[field].childNodes;
            for (var k=chlds.length-1;k>=0;k--)
            {
                frm.elements[field].removeChild(chlds[k]);
            }
        }
    }
    
    for (var i=0;i<document.forms.length;i++)
    {
        var frm=document.forms[i];
        // вводим новые значения
        for (key in values)
        {
            if (typeof values[key] != 'function' && frm.elements[field])
            {
                opt=document.createElement('option');
                opt.value=key;
                opt.appendChild(document.createTextNode(values[key]));
                frm.elements[field].appendChild(opt);
            }
        }
        vpa_create_event(frm.elements[field],'change');
    }
    
}
