jQuery(document).ready(function($){
    $('#commentlist').on('click', '.comment-btn', function(){
        var container = $(this);
        var fa = container.closest('.cm-write');
        var textarea = fa.find('.fcontrol-comment').eq(0);

        if(!$('body').hasClass('loggedin')){
            return swal('', 'Chưa đăng nhập tài khoản.', 'error');
        }

        if(textarea.val().length < 5){
            return swal('', 'Nội dung bình luận trên 5 kí tự.', 'error');
        }

        $.ajax({
            type: 'POST',
            url: '/api/',
            dataType: 'json',
            data: {
                action: 'comment',
                content: textarea.val(),
                parent: fa.data('parent'),
                story_id: $("#story_id").val(),
                comment_type: 'story',
            },
            success: function(ret) {
                if (ret.success){
                    $('.fcontrol-comment').val('');
                    $('.comment-count').text(ret.count);

                    if(ret.html != ''){
                        if(fa.data('parent') == 0){
                            $('.comment-list').prepend(ret.html);
                        }else{
                            list = fa.closest('.cm-cnt').find('.comment-children').eq(0);
                            list.html(ret.html);
                        }
                    }
                }else{
                    return swal('', ret.message, 'error');
                }
            }
        });
    });
    $('#commentlist').on('click', '.comment-btn-reply', function(){
        var container = $(this);
        var block = container.closest('.actions').closest('.cm-cnt');
        var fa = block.find('.cm-write').eq(0);

        if(!$('body').hasClass('loggedin')){
            return swal('', 'Chưa đăng nhập tài khoản.', 'error');
        }

        // remove cmt textarea
        $('.comment-list').find('.cm-write').each(function(){
            $(this).html('');
        });

        var textarea = $('.cm-heading').html();
        fa.html(textarea);
    });
    $('#commentlist').on('click', '.comment-btn-like', function(){
        var container = $(this);

        if(!$('body').hasClass('loggedin')){
            return swal('', 'Chưa đăng nhập tài khoản.', 'error');
        }

        if(!container.hasClass('hl-txt')){
            $.ajax({
                type: 'POST',
                url: '/api/',
                dataType: 'json',
                data: {
                    action: 'comment',
                    comment_id: container.data('id'),
                    level: 99,
                },
                success: function(ret) {
                    if (ret.success){
                        container.addClass('hl-txt');
                        container.find('span').html(ret.count);
                    }else{
                        return swal('', ret.message, 'error');
                    }
                }
            });
        }
    });
    $('.comment-btn-loadmore').on('click', function(){
        var container = $(this);
        var offset = $('.comment-list').children().length;

        $.ajax({
            type: 'POST',
            url: '/api/',
            dataType: 'json',
            data: {
                action: 'comment',
                offset: offset,
                type: 'list',
                comment_type: 'story',
                level: 1,
                story_id: $("#story_id").val(),
            },
            success: function(ret) {
                if (ret.success){
                    $('.comment-count').text(ret.count);
                    if(!ret.data){
                        $('.comment-btn-loadmore').hide();
                    }else{
                        for(var i = 0; i < ret.data.length; i++){
                            var item = ret.data[i];

                            if($(item.id).length == 0){
                                $('.comment-list').append(item.html);
                            }
                        }
                    }
                }else{
                    return swal('', ret.message, 'error');
                }
            }
        });
    });
    $('#commentlist').on('click','.comment-btn-childs', function(){
        var container = $(this);
        $.ajax({
            type: 'POST',
            url: '/api/',
            dataType: 'json',
            data: {
                action: 'comment',
                offset: 0,
                type: 'list',
                comment_type: 'story',
                comment_id: container.data('id'),
                level: 2,
                story_id: $("#story_id").val(),
            },
            success: function(ret) {
                if (ret.success){
                    container.hide();
                    for(var i = 0; i < ret.data.length; i++){
                        var item = ret.data[i];
                        list = container.closest('.cm-cnt').find('.comment-children').eq(0);
                        list.append(item.html);
                    }
                }else{
                    return swal('', ret.message, 'error');
                }
            }
        });
    });
    $.ajax({
        type: 'POST',
        url: '/api/',
        dataType: 'json',
        data: {
            action: 'comment',
            offset: 0,
            type: 'list',
            comment_type: 'story',
            level: 1,
            story_id: $("#story_id").val(),
        },
        success: function(ret) {
            if (ret.success){
                $('.comment-count').text(ret.count);
                if(ret.count < 5){
                    $('.comment-btn-loadmore').hide();
                }
                if(!ret.data){
                    $('.comment-btn-loadmore').hide();
                }else{
                    for(var i = 0; i < ret.data.length; i++){
                        var item = ret.data[i];

                        if($(item.id).length == 0){
                            $('.comment-list').append(item.html);
                        }
                    }
                }
            }else{
                return swal('', ret.message, 'error');
            }
        }
    });
});