/*  function loadProvinces(base_url) {
      new Ajax.Request(base_url + '/@@silf-geo?type=province', {
        method: 'get',
        onSuccess: function(request) {
          result = eval('(' + request.responseText + ')');
          select = $('silf-province');
          select_form = $('silf-province.form');
          slength = select.options.length;
          for (var i = 1; i < slength; i++) {
            select.options[1] = null;
          }
          for (var i = 0; i < result.results.length; i++) {
            obj = result.results[i];
            select.options[i+1] = new Option(obj.title, obj.value);
            if (select_form.value == obj.value) {
              select.options[i+1].selected = true;
            }
          }
          changeProvince(base_url);
       }
      });
    }

*/

 function loadRegioni(base_url) {
      new Ajax.Request(base_url + '/@@silf-geo?type=regione', {
        method: 'get',
        onSuccess: function(request) {
          result = eval('(' + request.responseText + ')');
          select = $('silf-regione');
          select_form = $('silf-regione.form');
          slength = select.options.length;
          for (var i = 1; i < slength; i++) {
            select.options[1] = null;
          }
          for (var i = 0; i < result.results.length; i++) {
            obj = result.results[i];
            select.options[i+1] = new Option(obj.title, obj.value);
            if (select_form.value == obj.value) {
              select.options[i+1].selected = true;
            }
          }
          changeRegione(base_url);
       }
      });
    }

    function changeRegione(base_url) {
      select = $('silf-province');
      select_form = $('silf-province.form');
      slength = select.options.length;
      for (var i = 1; i < slength; i++) {
         select.options[1] = null;
      }
      regione = $('silf-regione').value;
      if (regione != "") {
        new Ajax.Request(base_url + '/@@silf-geo?type=province&regione=' + regione, {
          method: 'get',
          onSuccess: function(request) {
            result = eval('(' + request.responseText + ')');
            for (var i = 0; i < result.results.length; i++) {
              obj = result.results[i];
              select.options[i+1] = new Option(obj.title, obj.value);
              if (select_form.value == obj.value) {
                select.options[i+1].selected = true;
              }
            }
            changeProvince(base_url);
         }
        });
      }
    }

/*    function changeProvince(base_url) {
      select = $('silf-zipcode');
      select_form = $('silf-zipcode.form');
      slength = select.options.length;
      for (var i = 1; i < slength; i++) {
         select.options[1] = null;
      }
      province = $('silf-province').value;
      if (province != "") {
        new Ajax.Request(base_url + '/@@silf-geo?type=zipcode&province=' + province, {
          method: 'get',
          onSuccess: function(request) {
            result = eval('(' + request.responseText + ')');
            for (var i = 0; i < result.results.length; i++) {
              obj = result.results[i];
              select.options[i+1] = new Option(obj.title, obj.value);
              if (select_form.value == obj.value) {
                select.options[i+1].selected = true;
              }
            }
            changeZipcode(base_url);
         }
        });
      }
    }*/

    function changeProvince(base_url) {
      select = $('silf-city');
      select_form = $('silf-city.form');
      slength = select.options.length;
      for (var i = 1; i < slength; i++) {
         select.options[1] = null;
      }
      province = $('silf-province').value;
      if (province != "") {
        new Ajax.Request(base_url + '/@@silf-geo?type=city&province=' + province, {
          method: 'get',
          onSuccess: function(request) {
            result = eval('(' + request.responseText + ')');
            for (var i = 0; i < result.results.length; i++) {
              obj = result.results[i];
              select.options[i+1] = new Option(obj.title, obj.value);
              if (select_form.value == obj.value) {
                select.options[i+1].selected = true;
              }
            }
         }
        });
      }
    }


    function changeZipcode(base_url) {
      select = $('silf-city');
      select_form = $('silf-city.form');
      slength = select.options.length;
      for (var i = 1; i < slength; i++) {
        select.options[1] = null;
      }
      province = $('silf-province').value;
      zipcode = $('silf-zipcode').value;
      new Ajax.Request(base_url + '/@@silf-geo?type=city&province=' + province + '&zipcode=' + zipcode, {
        method: 'get',
        onSuccess: function(request) {
          result = eval('(' + request.responseText + ')');
          for (var i = 0; i < result.results.length; i++) {
            obj = result.results[i];
            select.options[i+1] = new Option(obj.title, obj.value);
            if (select_form.value == obj.value) {
              select.options[i+1].selected = true;
            }
          }
        }
      });
    }







