/**
 * Created by liangliang on 2016/11/20.
 */

/**
 * 评论回复评论回复功能：将评论表单移动到目标评论下方，用于回复特定评论
 * @param {string/number} parentid - 被回复评论的ID（父评论ID）
 */
function do_reply(parentid) {
    console.log(parentid);
    // 将隐藏字段（存储父评论ID）的值设为当前被回复的评论ID
    $("#id_parent_comment_id").val(parentid)
    // 将评论表单移动到被回复评论的容器中（视觉上关联起来）
    $("#commentform").appendTo($("#div-comment-" + parentid));
    // 隐藏“回复”标题（因为表单已移动到具体评论下方）
    $("#reply-title").hide();
    // 显示“取消回复”按钮（允许用户取消当前回复状态）
    $("#cancel_comment").show();
}
/**
 * 取消评论回复：将评论表单恢复到原始位置，清除父评论ID
 */
function cancel_reply() {
    // 显示“回复”标题（恢复默认状态）
    $("#reply-title").show();
    // 隐藏“取消回复”按钮
    $("#cancel_comment").hide();
    // 清空父评论ID的隐藏字段（表示不再回复特定评论）
    $("#id_parent_comment_id").val('')
    // 将评论表单移回原始容器（通常是页面底部的回复区）
    $("#commentform").appendTo($("#respond"));
}
/** 页面加载进度条（使用NProgress库） */
NProgress.start();
NProgress.set(0.4);
//Increment
// 每隔1秒增加一点进度（模拟加载过程）
var interval = setInterval(function () {
    NProgress.inc();
}, 1000);
// 页面DOM加载完成后，结束进度条
$(document).ready(function () {
    NProgress.done();
    clearInterval(interval);
});


/** 侧边栏回到顶部 */
var rocket = $('#rocket');
// 监听页面滚动事件，使用防抖函数优化性能（滚动停止300ms后执行）
$(window).on('scroll', debounce(slideTopSet, 300));
/**
 * 防抖函数：避免频繁触发事件处理函数（如滚动时）
 * @param {Function} func - 要执行的函数
 * @param {number} wait - 等待时间（毫秒）
 * @return {Function} 包装后的防抖函数
 */
/**
 * 防抖函数：避免频繁触发事件处理函数（如滚动时）
 * @param {Function} func - 要执行的函数
 * @param {number} wait - 等待时间（毫秒）
 * @return {Function} 包装后的防抖函数
 */
function debounce(func, wait) {
    var timeout;
    return function () {
        clearTimeout(timeout);
        timeout = setTimeout(func, wait);
    };
}
/**
 * 根据滚动位置显示/隐藏回到顶部按钮
 */
function slideTopSet() {
    var top = $(document).scrollTop();

    if (top > 200) {
        rocket.addClass('show');
    } else {
        rocket.removeClass('show');
    }
}
// 点击回到顶部按钮时，平滑滚动到页面顶部
$(document).on('click', '#rocket', function (event) {
    rocket.addClass('move');
    $('body, html').animate({
        scrollTop: 0
    }, 800);
});
// 监听动画结束事件（兼容不同浏览器前缀）
// 动画结束后移除“move”类，重置按钮状态
$(document).on('animationEnd', function () {
    setTimeout(function () {
        rocket.removeClass('move');
    }, 400);

});
$(document).on('webkitAnimationEnd', function () {
    setTimeout(function () {
        rocket.removeClass('move');
    }, 400);
});

/** 页面加载完成后初始化评论回复链接 */
window.onload = function () {
  var replyLinks = document.querySelectorAll(".comment-reply-link");
  for (var i = 0; i < replyLinks.length; i++) {
    replyLinks[i].onclick = function () {
      var pk = this.getAttribute("data-pk");
      do_reply(pk);
    };
  }
};

// $(document).ready(function () {
//     var form = $('#i18n-form');
//     var selector = $('.i18n-select');
//     selector.on('change', function () {
//         form.submit();
//     });
// });