var FancySelect = new Class({
    initialize: function(original, showIn, options){
        
        options.getElements('li').each(function(li,ind){
            li.addEvent('click', function(){
                showIn.innerHTML= li.innerHTML
                options.setStyle('display','none')
                original.selectedIndex =ind;
               
            })
        })
        showIn.addEvent('blur', function(){
            (function(){
                options.setStyle('display','none')
            }).delay(100)
        })
        
        showIn.addEvent('click', function(){
            if(options.getStyle('display')=='block'){
                options.setStyle('display','none')  
            }else{
                options.setStyle('display','block')
            }
            
            
        })
    }
    
   
})

var Zapytanie = new Class({
    initialize: function(){

        this.bodyMask;
        this.bodyMask = new Mask($('body'));
        
        var form_reveal =  new Fx.Reveal($('zapytanie_form_box'), {
            duration: 500, 
            mode: 'vertical',
            onShow :function(){
                $('zapytanie_strzalka').src = "/images/zapyt-ofert_strzalka_gora.png"
            },
            onHide :function(){
                $('zapytanie_strzalka').src = "/images/zapyt-ofert_strzalka_dol.png"
            }
        });
        
        $('zapytanie_ofertowe_button').addEvent('click', function(){
            form_reveal.toggle();
        })
        
        $('wyslij_form').addEvent('click', (function(){
            
            this.walidacjaFormularza(1);
        }).bind(this))
        
        $('zapytanie_podziekowanie_okno_close').addEvent('click', (function(){
            this.hideWindow('zapytanie_podziekowanie_okno');
        }).bind(this))
        
        $('zapytanie_bledy_okno_close').addEvent('click', (function(){
            this.hideWindow('zapytanie_bledy_okno');
        }).bind(this))

        var select= new FancySelect($('rodzaj_zapytania'), $('rodzaj_zapytania_select'), $('rodzaj_zapytania_select_options'))
        
        this.walidacjaFormularza(0);
    },
    
    showWindow:function(okno){
        $(okno).inject($('main_table_td'), 'top')
        //
       
        this.bodyMask.show();
        window_h =window.getScroll().y+window.getSize().y;
        document.getElement('.mask').setStyle('height',window_h+'px')
        
              
        scrollTop = window.getScroll().y;
        windowWidth = window.getSize().x;
        windowHeight = window.getSize().y;
        $(okno).setStyle('opacity','0');
        $(okno).setStyle('display','block');
        thisWinWidth = $(okno).offsetWidth;
        thisWinHeight = $(okno).offsetHeight;
        $(okno).setStyle('opacity','1');
        $(okno).setStyle('margin-top',scrollTop+ (windowHeight-thisWinHeight)/2);
        $(okno).setStyle('left',(windowWidth-thisWinWidth)/2);

    },
    
    hideWindow:function(okno){
        $(okno).setStyle('display','none');
        
        this.bodyMask.hide();
        
    },
    
    walidacjaFormularza:function(wyslij){
        
        var form = $('zapytanie_form');
        
        var email = form.getElement('[name=email]');
        var imie = form.getElement('[name=imie_nazwisko]');
         
        var validujEmail = function(element){
            var EmailReg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
            if(EmailReg.test(element.value)==false){ 
                element.addClass('valid_error')
                return 0;
            }else{
                element.removeClass('valid_error')
                return 1;
            }
        }

        var validujImie = function(element){
            if(element.value){
                element.removeClass('valid_error')
                return 1;
            }else{
                element.addClass('valid_error')
                return 0;
            }
        }

        email.addEvents({
            'change':function(){
                validujEmail(email);
                
            },
            'keyup':function(){
               
                validujEmail(email);
            }
        })

        imie.addEvents({
            'change':function(){
                validujImie(imie);
            },
            'keyup':function(){
                validujImie(imie);
            }
        })
       
        if(wyslij==1){
            
            var imie_test = 0;
            var email_test = 0;
               
            if(validujImie(imie)){
                imie_test = 1
            }
            if(validujEmail(email)){
                email_test=1;
            }
                

            if(imie_test && email_test){
                this.wyslijForm();
                
            }else{
                this.poprawForm();
            }
        }

    },
    
    wyslijForm:function(){

         
        var form = $('zapytanie_form');
        
        
        //ajax wysylanie
        var sendEmailViaAjax = new Request({
            url: '/ajax/zapytanie',
            method: 'get',
            onSuccess: function(responseText, responseXML){
                if(responseText=="ok"){
                    
                    this.showWindow('zapytanie_podziekowanie_okno')
                    var form = $('zapytanie_form');
                    var inputy =  form.getElements('input, textarea');
                    (function(){
                        inputy.each(function(e){
                            e.value=''
                        })
                    }).delay(1000)
                }
            }.bind(this)
        });
        
        var parametry='imie='+form.getElement('[name=imie_nazwisko]').value+'&email='+form.getElement('[name=email]').value+'&telefon='+form.getElement('[name=telefon]').value+'&tresc='+form.getElement('[name=tresc]').value+'&rodzaj='+form.getElement('[name=rodzaj_pytania]').value;
        //console.log("PARAMETRY: "+parametry)
        //ajax wysylanie
        sendEmailViaAjax.send(parametry);
       
    },
    poprawForm:function(){
        //console.log('bledy w formie..');
         
        this.showWindow('zapytanie_bledy_okno')
    }
   
})
