window.addEvent('domready', function() {
    
    var woj_sel = $('properties_adr_idwojewodztwo');
    var powiat_sel = $('properties_adr_idpowiat');
    var gmina_sel = $('properties_adr_idgmina');
    var country_sel = $('properties_adr_idcountry');
    
    
    propagate_powiat = function() {
        clearCombo(powiat_sel);
        clearCombo(gmina_sel);

        if(!woj_sel.value)
            return false;
        var url = "http://"+document.location.host+"/formularz/getComboOptions/combotype,powiaty,id," + woj_sel.value;
        var jsonRequest = new Request.JSON({
            url: url, 
            onSuccess: function(values) {
                return propagateCombo(powiat_sel, values);
            }
        } ).get();
     }
     
    if(woj_sel) {
        woj_sel.onchange = function() {
            if(woj_sel.value == 'zagranica') {
                show_zagranica_box(true);
            } else {
                show_zagranica_box(false);
                propagate_powiat();
            }
        }
    }

    if(powiat_sel) {
        powiat_sel.onchange = function() {
            clearCombo(gmina_sel);
            var url = "http://"+document.location.host+"/formularz/getComboOptions/combotype,gminy,id,"+ this.value;
            var jsonRequest = new Request.JSON({
                url: url, 
                onSuccess: function(values) {
                    return propagateCombo(gmina_sel, values);
                }
            } ).get();
    }
    }

if($('adr_zagranica')) {
    zagranica = (woj_sel.value == 'zagranica');
    show_zagranica_box(zagranica);
}

});

function clearCombo(element) {
    element.empty();
}




function propagateCombo(element, values) {
    if (values) {
        for(i in values) {
            var o = new Element('option', {
                'value':i,
                'html':values[i]
            } );
            o.inject(element);
        }

    }
}

function show_zagranica_box(zagranica) {
    if(!$('adr_zagranica'))
        return;
    if(zagranica) {
        $('adr_polska').hide();
        $('adr_zagranica').show();
    } else {
        $('adr_polska').show();
        $('adr_zagranica').hide();
    }
}

var NewsBox = new Class({
   
   box:null,
   scroll:null,
   togglers:null,
   
   items:null,
   itemWidth:315,
   
   perPage:3,
   numOfPages:null,
   currentPage:1,
   
   
   initialize: function(id) {
       if(!$(id))
           return;
       
       this.box = $(id);
      
       this.items = this.box.getElements('div.in li');
       this.numOfPages = Math.ceil(this.items.length/3);
       
       this.togglers = this.box.getElements('div.togglers a');
       
       this.scroll = new Fx.Scroll(this.box.getElement('div.in'), {
           
       });
       this.scroll.set(0, 0);
       
       if(this.togglers.length) {
           this.togglers.addEvent('click', function(event) {
               var e = new Event(event);
               e.stop();
               
               var target = $(e.target);
               var index = parseInt(target.rel);
               this.scrollToIndex(index);
               
               this.togglers.removeClass('selected');
               this.togglers[index-1].addClass('selected');
           }.bind(this));
       } 
   },
   
   scrollToIndex: function(index) {
      
      if(index < this.numOfPages) {
          this.scroll.start((index-1)*this.perPage*this.itemWidth, 0);
      } else {
          this.scroll.toRight();
      }
      this.currentPage = index;
   }
});

