var emailValid = function(email){
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    if(reg.test(email) == false) {
        return false;
    }
    return true;
}

var notEmpty = function(content){
    if($defined(content) && content.length !=0){
        return true;
    }
    return false;
}

var destroyThis = function(){
    this.destroy();
}

window.addEvent('domready', function() {
    var wrap;
    if($defined($('wrap'))){
        wrap = $('wrap');
    }else{
        wrap = $('container');
    }

    //do póki michał nie ostyluje formularza. 
    if(!$defined($('wrap'))){
    wrap.getElements('a[href=/kontakt]').each(function(contactLink){
        contactLink.addEvent('click',function(e){
            e.stop();
            var floaterDiv = new Element('div',{
                id:"contact_container"
            }).inject(wrap,'before');
            var shaderDiv = new Element('div',{
                id:"shader"
            }).inject(wrap,'before');
            shaderDiv.setStyles({
                'z-index':1,
                'width':'100%',
                'height':'100%',
                'position':'fixed',
                'top':'0',
                'background':'#EFEFEF none repeat scroll 0 0',
                'opacity':'0.0'
            });
            shaderDiv.tween('opacity','0.5');
                
            floaterDiv.setStyle('opacity','0');
          
            floaterDiv.set('load',{
                'method':'get',
                'onSuccess':function(responseText, responseXML){
                    floaterDiv.tween('opacity',1);
                    $('ContactEmail').select();
                    $('ContactAddForm').addEvent('submit',function(e){
                        e.stop();
                        var error = 0;
                        if(emailValid.run($('ContactEmail').get('value').trim())){
                            $('ContactEmail').tween('background-color','#EDEBD5');
                        }else{
                            $('ContactEmail').tween('background-color','#F03131');
                            error++;
                        }
                        if(notEmpty.run($('ContactDetails').get('value').trim())){
                            $('ContactDetails').tween('background-color','#EDEBD5');
                        }else{
                            $('ContactDetails').tween('background-color','#F03131');
                            error++;
                        }
                        if(error == 0){
                            $('ContactAddForm').set('send',{
                                url:'/contacts/contact/1',
                                method:'post',
                                onSuccess:function(){
                                    var successDiv = new Element('div',{
                                        text:'Dziękujemy! Wiadomośc została wysłana pomyślnie.',
                                        id:'flashText',
                                        styles:{
                                            opacity:0
                                        }
                                    }).inject(wrap,'before');
                                    floaterDiv.destroy();
                                    successDiv.tween('opacity',1);
                                    (function(){
                                        successDiv.tween('opacity',0);
                                    }).delay(2500);
                                    (function(){
                                        shaderDiv.destroy();
                                        successDiv.destroy();
                                    }).delay(3000);
                                }
                            });
                            $('ContactAddForm').send();
                        }
                            
                        
                        
                    });
                    var closeLink = new Element('a',{
                        'href':'#',
                        'id':'close_modal'
                    }).inject(floaterDiv,'bottom');
                    closeLink.addEvent('click',function(e){
                        e.stop();
                        shaderDiv.destroy();
                        floaterDiv.destroy();
                    });
                    window.addEvent( 'keydown', function( e ){
                        if( e.key == 'esc'){
                            if($defined(shaderDiv) && $defined(floaterDiv)){
                                shaderDiv.destroy();
                                floaterDiv.destroy();
                            }
                        }

                    });
                    shaderDiv.addEvent('click',function(e){
                        if($defined(shaderDiv) && $defined(floaterDiv)){
                            shaderDiv.destroy();
                            floaterDiv.destroy();
                        }
                    });
                }
            });
            floaterDiv.load('/kontakt/1');
        });
    });
    }
});
