
let Entropy = {
    
    'initFooter': function()
    {
                
        jQuery('#btn-cookie-notification-decline').click(function() {
            
            location.href = 'https://www.google.com/search?q=Cookies';
            
        });
        
    },
      
    'initHome': function()
    {
        
        jQuery('#entropy-album-tilt').tilt({
            
            axis: 'x',
            maxTilt: 5
            
        });
        
        Entropy.initFooter();
        
    },
    
    'initReferences': function()
    {
        
        Entropy.initFooter();
        
    },
    
    'initContact': function()
    {
                
        var ajaxForm = $("#hamm-contact-form");
        
        if(ajaxForm.length > 0) 
        {
            
            ajaxForm.each(function () {
                
                var elem = jQuery(this);
                var button = elem.find('button#form-submit');
                var buttonText = button.html();
                
                var validation = Array.prototype.filter.call(elem, function (form) {
                    
                    form.addEventListener('submit', function (event) {
                        
                        if(form[0].checkValidity() === false) 
                        {
                            
                            event.preventDefault();
                            event.stopPropagation();
                            
                        }
                        
                        form.classList.add('was-validated');
                        
                        return false;
                        
                    }, false);
                    
                });
                
                elem.submit(function (event) {
                    
                    jQuery('#contact-form-success, #contact-form-error').css('display', 'none');
                    
                    event.preventDefault();
                    
                    var postUrl = jQuery(this).attr("action");
                    var requestMethod = jQuery(this).attr("method");
                    var formData = jQuery(this).serialize();
                    
                    if(elem[0].checkValidity() === false) 
                    {
                        
                        event.stopPropagation();
                        elem.addClass('was-validated');
                        
                    } 
                    else 
                    {
                        
                        jQuery(elem).removeClass("was-validated");
                        
                        button.html('<i class="icon-loader fa-spin"> </i> ' + jQuery('#contact-form-message-sending').val());
                        button.attr('disabled', true);
                        
                        jQuery.ajax({
                            
                            url: postUrl,
                            type: requestMethod,
                            data: formData,
                            
                            success: function (data) {
                                
                                button.attr('disabled', false);
                                button.html(buttonText);
                                
                                if(elem.find('.g-recaptcha').children('div').length > 0) 
                                {

                                    grecaptcha.reset();

                                }
                                
                                try
                                {
                                
                                    var result = JSON.parse(data);
                                    
                                    if(result['is_sent']) 
                                    {

                                        jQuery('#contact-form-success').css('display', 'block').html(result.message);

                                        jQuery(elem)[0].reset();
                                        
                                        jQuery('#hamm-contact-form').css('display', 'none');

                                    } 
                                    else if(result['is_error'])
                                    {

                                        jQuery('#contact-form-error').css('display', 'block').html(result.message);

                                    }
                                    
                                }
                                catch(e)
                                {
                                    
                                    
                                }

                            }
                            
                        });
                        
                    }
                    
                });
                
            });
            
        }
        
    },
        
    'initAboutUs': function()
    {
        
        Entropy.initFooter();
        
    }
        
};
