function initAuctionsList(href) {
    var element = $('.explore-trends-time');
    if (element.length) {
        let tld = $('#tld-name').val();
        let data = {
            command: "get_user_auction_list",
            tld: tld
        }
        let url = window.location.origin + window.location.pathname;
        if (href !== undefined && href !== null) {
            url = href
        }

        $.ajax({
            url: url,
            type: 'POST',
            data: data
        }).done(function (responseData) {
            let json = JSON.parse(responseData);
            if (json.code === '0') {
                element.empty();
                element.html(json.content);
            }
        })
    }
}

function clickEvent(){
    $('.listings-nav').on('click', function () {
        $('.auctions-nav').removeClass('active');
        $(this).addClass('active');
        getListingsList();
    })
    $('.auctions-nav').on('click', function () {
        $('.listings-nav').removeClass('active');
        $(this).addClass('active');
        initAuctionsList();
    })

    $(document).on('click', '.block-domain-name a:not(.link-domain-name), .listings-domain-name a:not(.link-domain-name), .pagination li a', function (e) {
        e.stopPropagation();
        e.preventDefault();
        let href = $(this).attr('href');
        if ($('.auctions-nav').hasClass('active')) {
            initAuctionsList(href);
            if ($(this).closest('.pagination').length > 0) {
                $('html, body').scrollTop($('.explore-trends-time').offset().top);
            }
        } else {
            getListingsList(href);
            if ($(this).closest('.pagination').length > 0) {
                $('html, body').scrollTop($('.explore-trends-time').offset().top);
            }
        }
    })

    
}

function getListingsList(href) {
    var element = $('.explore-trends-time');
    if (element.length) {
        let tld = $('#tld-name').val();
        let data = {
            command: "get_marketplace_list",
            tld: tld
        }

        let url = window.location.origin + window.location.pathname;
        if (href !== undefined && href !== null) {
            url = href
        }
        $.ajax({
            url: url,
            type: 'POST',
            data: data
        }).done(function (responseData) {
            let json = JSON.parse(responseData);
            if (json.code === '0') {
                element.empty();
                element.html(json.content);
            }
        })
    }
}

function addWatchList() {
    $('.explore-trends-time').off('click').on("click", ".list-content-icon-star>i", function (event) {
        var icon = $(this);
        var url = $('#watchlist-url').html();
        var cmd = icon.prev().attr('name');
        var value = icon.prev().attr('value');
        var data = {};
        data[cmd] = value;
        $.ajax({
            url: url,
            type: "GET",
            data: data,
            success: function (responseData) {
                if (responseData == 'exist') {
                    icon.removeClass("fa-star-o");
                    icon.addClass("fa-star");
                } else if (responseData == 'not exist') {
                    icon.removeClass("fa-star");
                    icon.addClass("fa-star-o");
                } else if (responseData == 'login') {
                    window.location.href = $('#login-url').val();
                }
            }
        });
    });
}

function showClick() {
    $('.tld-info-faq-section').off('click', '.faq-line-show');
    $('.tld-info-faq-section').on('click', '.faq-line-show', function () {
        $(this).next('.faq-line-hidden').slideToggle(400);
        let icon = $(this).children('i');
        if (icon.hasClass('fa-regular fa-circle-plus')) {
            icon.attr('class', 'fa-regular fa-circle-minus');
        } else {
            icon.attr('class', 'fa-regular fa-circle-plus');
        }
    })
}

function initRelatedDomains() {
    $(document).on('click', '.related-tld-info-next', function () {
        // remove first
        var displayFirst = $(".related-tld-info").first();
        displayFirst.remove();
        // get next
        var hideFirst = $(".related-tld-info-hidden").first();
        var html = hideFirst.html();
        if (html !== undefined) {
            $(".related-tld-info-next").before("<div class='related-tld-info'>" + html + "</div>");
            hideFirst.remove();
        }
        // move display first to hide last
        displayFirst.attr("class", "related-tld-info-hidden");
        $(".related-tld-info-next").before(displayFirst);
    });
    $(document).on('click', '.related-tld-info-previous', function () {
        // remove last
        var displayLast = $(".related-tld-info").last();
        displayLast.remove();
        // get next
        var hideLast = $(".related-tld-info-hidden").last();
        var html = hideLast.html();
        if (html !== undefined) {
            $(".related-tld-info-previous").after("<div class='related-tld-info'>" + html + "</div>");
            hideLast.remove();
        }
        // move display first to hide last
        displayLast.attr("class", "related-tld-info-hidden");
        $(".related-tld-info-previous").after(displayLast);
    });
}

function initCouponCodeCopy() {
    $('.tld-info-header-price').on('click', '.coupon-code-copy', function () {
        new ClipboardJS('.coupon-code-copy');
        $(this).attr('data-original-title', 'Copied!').tooltip('show');
    })
}

function init() {
    initAuctionsList();
    clickEvent();
    addWatchList();
    showClick();
    initRelatedDomains();
    initCouponCodeCopy();
    $('[data-toggle="tooltip"]').tooltip();
}

$(document).ready(function () {
    init();
});