/* Báo lỗi */
var _popupAlertTimeout = false;
function popupAlert(message = null, time = null) {
    clearTimeout(_popupAlertTimeout);
    $('.box-popupAlert').removeClass('hidden');
    $('body').addClass('disable-scroll');
    if (message !== null) {
        $('.box-popupAlert .alert').html('');
        if (typeof message === 'object') {
            $.each(message, function(idx, alert) {
                $('.box-popupAlert .alert').append('<li>' + alert + '</li>');
            });
        } else {
            $('.box-popupAlert .alert').append('<li>' + message + '</li>');
        }
    }else{
        $('.box-popupAlert .alert').append('<li>Lỗi không xác định</li>');
        $('.box-popupAlert .alert').append('<li>Gọi hotline để được hỗ trợ</li>');
    }
    if (time != null) {
        _popupAlertTimeout = setTimeout(function() {
            $('.box-popupAlert').addClass('hidden');
            $('body').removeClass('disable-scroll');
        }, time);
    }
}
$(document).on('click', '.box-popupAlert .close', function() {
    $('.box-popupAlert').addClass('hidden');
    $('body').removeClass('disable-scroll');
});

var _pathName = window.location.pathname;
var _widthWindow = $(window).width();

/*NAV*/
$(document).on('click', 'nav .category .label', function(){
    //if(_widthWindow <= 767){
    if(_pathName != '/' || _widthWindow <= 767){
        $('nav .category .list').toggleClass('hidden');
    }
});
$(document).ready(function () {
	//if(_widthWindow <= 767){
	if(_pathName != '/' || _widthWindow <= 767){
        $('nav .category .list').addClass('hidden');
    }
});



// BANNER
$('.box-banner .slider').slick({
    dots: false,
    arrows: false,
    infinite: true,
    speed: 1000,
    fade: true,
    autoplay: true,
    autoplaySpeed: 3500,
    cssEase: 'linear'
});

// PRODUCT
$('.box-productList .slider').slick({
    centerMode: true,
    centerPadding: '60px',
    slidesToShow: 5,
    responsive: [
        {
            breakpoint: 768,
            settings: {
                arrows: false,
                centerMode: true,
                centerPadding: '40px',
                slidesToShow: 3
            }
        },
        {
            breakpoint: 480,
            settings: {
                arrows: false,
                centerMode: true,
                centerPadding: '40px',
                slidesToShow: 2
            }
        }
    ]
});
$(document).on('click', '.box-productDetail .option .item', function(){
    $('.box-productDetail .option .item').removeClass('active');
    $(this).addClass('active');
    let _id = $(this).attr('data-cartID');
    
    $('.box-productDetail [data-album-id]').removeClass('mz-thumb-selected');
    $('.box-productDetail [data-album-id="'+ _id +'"]').addClass('mz-thumb-selected');
    $('.box-productDetail [data-album-id="'+ _id +'"]').trigger('click');
    let _src = $(this).attr('data-images');
    if(_src == ''){
        _src = $('figure.mz-figure img').attr('data-image');
    }    
    $('figure img').attr('src', _src);
});
$(document).on('click', '[data-quantity]', function(){
    let _number = parseInt($(this).parent().children('[data-number]').val());
    let _quantity = parseInt($(this).attr('data-quantity'));
    _quantity = _number + _quantity;
    if(_quantity > 0){
        $(this).parent().children('[data-number]').val(_quantity);
    }
});
$(document).on('blur', '[data-number]', function(){
    let _number = parseInt($(this).val());
    if(_number > 0){
        
    }else{
        $(this).val(1);
    }
});

// CART
$(document).on('click', '[data-addCart]', function(){
    let _quantity = $('[data-number]').val();
    let _id = $('.active[data-cartID]').attr('data-cartID');
    if(_id == undefined){
        _id = $(this).attr('data-cartID');
    }

    var _data = new FormData();
    _data.append('id', _id);
    _data.append('quantity', _quantity);
    $.ajax({
        url: '/dat-hang',
        data: _data,
        type: 'POST',
        contentType: false,
        processData: false,
        beforeSend: function () {
            // Trước khi gửi
            $('body').addClass('loading');
        },
        success: function (response) {
            // Gửi thành công
            if (response.code == 200) {
                let data = response.data;
                $('[data-cart-quantity]').text(data.quantity);
                $('[data-cart-price]').text(data.price);
            }
            popupAlert(response.message);
        },
        error: function () {
            popupAlert();
        },
        complete: function () {
            $('body').removeClass('loading');
        }
    });
});

$(document).on('click', '.box-cartList .option .remove', function(){
    let _id = $(this).attr('data-cartID');

    var _data = new FormData();
    _data.append('id', _id);
    $.ajax({
        url: '/dat-hang/xoa',
        data: _data,
        type: 'POST',
        contentType: false,
        processData: false,
        beforeSend: function () {
            // Trước khi gửi
            $('body').addClass('loading');
        },
        success: function (response) {
            // Gửi thành công
            if (response.code == 200) {
                let data = response.data;
                $('[data-cart-quantity]').text(data.quantity);
                $('[data-cart-price]').text(data.price);
                $('[data-tr-id="'+ _id +'"]').addClass('hidden');

                if(data.quantity == 0){
                    window.location.href = '/';
                }
            }
        },
        error: function () {
            popupAlert();
        },
        complete: function () {
            $('body').removeClass('loading');
        }
    });
});
$(document).on('blur', '[data-number]', function(){
    updateCart($(this));
});
$(document).on('click', '[data-quantity]', function(){
    updateCart($(this));
});

function updateCart(_this){
    let _id = $(_this).attr('data-cartID');
    let _quantity = $('[data-number][data-cartID='+_id+']').val();
    
    var _data = new FormData();
    _data.append('id', _id);
    _data.append('quantity', _quantity);
    $.ajax({
        url: '/dat-hang/cap-nhat',
        data: _data,
        type: 'POST',
        contentType: false,
        processData: false,
        beforeSend: function () {
            // Trước khi gửi
            $('body').addClass('loading');
        },
        success: function (response) {
            // Gửi thành công
            if (response.code == 200) {
                let data = response.data;
                $('[data-cart-quantity]').text(data.quantity);
                $('[data-cart-price]').text(data.price);
            }
        },
        error: function () {
            popupAlert();
        },
        complete: function () {
            $('body').removeClass('loading');
        }
    });
}

$('form[data-cartSend]').submit(function () {
    let _form = $(this);
    var _action = _form.attr('action');
    var _method = _form.attr('method');
    var _data = new FormData(_form[0]);

    $.ajax({
        url: _action,
        data: _data,
        type: _method,
        contentType: false,
        processData: false,
        beforeSend: function () {
            // Trước khi gửi
            $('body').addClass('loading');
        },
        success: function (response) {
            popupAlert(response.message);
        },
        error: function () {
            // Gửi lỗi
            popupAlert();
        },
        complete: function () {
            // Kết thúc
            $('body').removeClass('loading');
        }
    });
    return false;
});
