function get_Data(ajax_url, ajax_result, params, ajax_loading) {
    if (!params || params == null) { params = ''; }
    if (!ajax_loading || ajax_loading == null) { ajax_loading = ''; }
    if (ajax_url.toLowerCase().indexOf('get') == -1 && ajax_url.toLowerCase().indexOf('set') == -1 && ajax_url.toLowerCase().indexOf('remove') == -1 && ajax_url.toLowerCase().indexOf('log') == -1) window.name = ajax_url;
    if (ajax_url.toLowerCase().indexOf('get') != -1) window.name = ajax_url.replace('get_','').replace('Get_','');
    ajax(ajax_url, params, ajax_result, ajax_loading);
    return false;
}

function ajax(ajax_url, params, ajax_result, ajax_loading) {
    var http = createRequestObject();
    http.open('post', ajax_url, true);

    http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http.setRequestHeader("Content-length", params.length);
    http.setRequestHeader("Connection", "close");
    http.onreadystatechange = function() {handleInfo(ajax_url,ajax_result,ajax_loading,http);};
    http.send(params);
}

function handleInfo(ajax_url, ajax_result, ajax_loading,http) {
    if (http.readyState == 1) {
        if (ajax_loading != null) if (ajax_loading != 'no') document.getElementById(ajax_result).innerHTML = "<img src='images/small/loading.gif' alt=''  />";
    }
    if (http.readyState == 4) {
        var response = http.responseText;
        if (document.getElementById(ajax_result) != null) {if (response.indexOf('Server Error') == -1) {document.getElementById(ajax_result).innerHTML = response; AfterAjax(ajax_url);} else document.getElementById(ajax_result).innerHTML = '';}
    }
}

function createRequestObject() {
    var request_;
    var browser = navigator.appName;

    if (browser == "Microsoft Internet Explorer") {
        request_ = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else {
        request_ = new XMLHttpRequest();
    }

    return request_;
}


function get_innerHTML(fields_parent_object) {
    inputArray = document.getElementById(fields_parent_object).getElementsByTagName("input");
    for (var index = 0; index < inputArray.length; index++) {
        if (inputArray[index].type == 'checkbox' || inputArray[index].type == 'radio') {
           if (inputArray[index].checked) inputArray[index].setAttribute('checked', 'checked');
           else inputArray[index].removeAttribute('checked');
        }
        if (inputArray[index].type == 'text' || inputArray[index].type == 'password' || inputArray[index].type == 'button') {
           inputArray[index].setAttribute('value',inputArray[index].value);
        }
    }
    textareaArray = document.getElementById(fields_parent_object).getElementsByTagName("textarea");
    for (var index = 0; index < textareaArray.length; index++) {
           textareaArray[index].innerHTML=textareaArray[index].value;
    }
    optionArray = document.getElementById(fields_parent_object).getElementsByTagName("option");
    for (var index = 0; index < optionArray.length; index++) {
          if (optionArray[index].selected) optionArray[index].setAttribute('selected', 'selected');
          else optionArray[index].removeAttribute('selected');
    }
    return document.getElementById(fields_parent_object).innerHTML;
}
 
function AfterAjax(ajax_url) {
    if (document.getElementById('search')!=null && document.getElementById('result')!=null) if (document.getElementById('result').innerHTML=='') if (document.getElementById('search').value=='%' || document.getElementById('search').value=='') document.getElementById('search').onkeyup();
}



function post_Data(url, ajax_result_object, fields_parent_object, loading) {
    if (!loading || loading == null) { loading = ''; }
    req = '';
    inputArray = document.getElementById(fields_parent_object).getElementsByTagName("input");
    for (var index = 0; index < inputArray.length; index++) {
        if ((inputArray[index].type == 'text' || inputArray[index].type == 'password')) req += inputArray[index].id + '=' + inputArray[index].value + ',,,';
    }
    radioArray = document.getElementById(fields_parent_object).getElementsByTagName("input");
    checkedradio = new Array();
    for (var index = 0; index < radioArray.length; index++) {
        if (radioArray[index].type == 'radio') {
            if (contains_in_item(radioArray[index].name, checkedradio) == false) {
                selected = ' ';
                for (m = 0; m < radioArray.length; m++) {
                    if (radioArray[index].name == radioArray[m].name) if (radioArray[m].checked) { selected = radioArray[m].id; }
                }
                req += radioArray[index].name + '=' + selected + ',,,';
                checkedradio[index] = radioArray[index].name;
            }
        }
    }

    checkboxArray = document.getElementById(fields_parent_object).getElementsByTagName("input");
    for (var index = 0; index < checkboxArray.length; index++) {
        if (checkboxArray[index].type == 'checkbox') {
            req += checkboxArray[index].id + '=' + checkboxArray[index].checked + ',,,';
        }
    }
    selectArray = document.getElementById(fields_parent_object).getElementsByTagName("select");
    for (var index = 0; index < selectArray.length; index++) {
        req += selectArray[index].id + '=' + getSelectedIndexes(selectArray[index]) + ',,,';
    }
    textareaArray = document.getElementById(fields_parent_object).getElementsByTagName("textarea");
    for (var index = 0; index < textareaArray.length; index++) {
        req += textareaArray[index].id + '=' + textareaArray[index].value + ',,,';
    }
    req = req.substring(0, req.length - 3);
    get_Data(url, ajax_result_object, 'req=' + escape(req), loading);
}

function getSelectedIndexes(selObj) {
    var indexes = '';
    for (var i = 0; i < selObj.options.length; i++) if (selObj.options[i].selected) indexes += selObj.options[i].value + ',';
    indexes = indexes.substring(0, indexes.length - 1);
    return indexes;
}


function has_no_empty(obj,except)
{
   result = true;
   inputArray = document.getElementById(obj).getElementsByTagName("input");
   for (var index = 0; index < inputArray.length; index++) {
     if (contains_in_item(inputArray[index].id,except)!=true) if (inputArray[index].type == 'text') if (inputArray[index].value == '') result=false;
   }
   selectArray = document.getElementById(obj).getElementsByTagName("select");
   for (var index = 0; index < selectArray.length; index++) {
      if (contains_in_item(selectArray[index].id,except)!=true) if (selectArray[index].value == '') result=false;
   }
   return result;
}

function contains_in_item(item,array)
{
bool = false;
 for (k=0;k<=array.length-1;k++)
 {
    if (item.indexOf(array[k])!=-1) bool=true; 
 }
return bool;
}

