if (!window.Doghole) {
    window.Doghole = {};
}
var clickName = ('ontouchstart' in window) ? 'touchstart': 'click';
$('div.menu ul li a').on(clickName, function(e) {
    e.preventDefault();
    closeMenu();
});
function openMenu() {
    $(".blog-title").addClass("blog-title-active");
    $(".move-block")
        .stop()
        .animate({
            left: '-330px'
        }, 'fast')
        .animate({
            left: '-325px'
        }, 'fast');
    $(".sidebar-container").stop().animate({
        right: '5'
    },
    'fast').animate({
        right: '0'
    },
    'fast');
    $(".burger").finish().removeClass("burger-close");
    $(".burger").addClass("burger-open");
    $(".side-click-mask").show();

    $('div.circle').addClass('expand');
    $('div.x, div.y, div.z').addClass('collapse');
    $('.menu li').addClass('animate');
    setTimeout(function() {
        $('div.y').stop().hide();
        $('div.x').addClass('rotate30');
        $('div.z').addClass('rotate150');
    },
    70);
    setTimeout(function() {
        $('div.x').addClass('rotate45');
        $('div.z').addClass('rotate135');
    },
    120);
}
function closeMenu() {
    $(".blog-title").removeClass("blog-title-active");
    $(".move-block").stop().animate({
        left: '0px',
        marginLeft: '0px'
    },'fast');
    $(".sidebar-container")
        .stop()
        .animate({right: '-330px'}, 'fast');
    $(".burger").removeClass("burger-open").addClass("burger-close");
    $(".side-click-mask").stop().hide();

    $('div.x').removeClass('rotate45').addClass('rotate30');
    $('div.z').removeClass('rotate135').addClass('rotate150');
    $('div.circle').removeClass('expand');
    $('.menu li').removeClass('animate');
    setTimeout(function() {
        $('div.x').removeClass('rotate30');
        $('div.z').removeClass('rotate150');
    },
    50);
    setTimeout(function() {
        $('div.y').stop().show();
        $('div.x, div.y, div.z').removeClass('collapse');
    },
    70);
}
$(function() {
    $('body').on(clickName, '.burger-close',
    function() {
        openMenu();
    }).on(clickName, '.burger-open,.side-click-mask',
    function() {
        closeMenu();
    });
    
    // Recent post active sync
    if ($('.post-page').length){
        var loc = window.location.href.toLowerCase().replace(/https?:\/\//,'').replace(/\?.*/,'').replace(/#.*/,'');
        $.each($('.recent a'), function(i, a){
            a = $(a);
            attr = a.attr('href');
            if (attr){
                if(attr.indexOf('/') == 0) {
                    attr = location.host + attr;
                }
                if (attr.toLowerCase() == loc) {
                    a.addClass('active');
                    return true;
                }
            }
        });
    }
    $('#searchbox').keypress(function (e) {
        if (e.which == 13) {
            var q = $(this).val();
            if (q != '') {
                window.location.href = '/search/' + q;
            }
        }
    });
});

if (window != top) {
    top.location.href = window.location.href;
}

$(".link-back2top").hide();
$(window).on('scroll', function() {
    if ($(this).scrollTop() > 100) {
        $(".link-back2top").stop().fadeIn();
    } else {
        $(".link-back2top").stop().fadeOut();
    }
});
$(function(){
    // Macaron colors for tags
    var macaron = [
        '#f5dce7',    // PINKO
        '#f1ccb8',    // マカロンオレンジ
        '#f1f1b8',    // マカロンイエロー
        '#b8f1cc',    // マカロングリーン
        '#b8f1ed',    // マカロンオーシャンブルー
        '#b8d4ea',    // BLUE
        '#e7dac9',    // マカロン メープル?ヴァニーユ
        '#d9b8f1'     // マカロンパープル
    ];
    var renderMacaron = function(list) {
        $.each(list, function(i, a){
            var j = i % macaron.length, s = {backgroundColor:macaron[j], color: '#6e7173'};
            $(a).css(s).hover(function(){
                $(this).css({backgroundColor:'#fff', color: '#c62627'});
            }, function(){
                $(this).css(s);
            });
        });
    }
    renderMacaron($('.widget-tags a'));
    renderMacaron($('.post-meta .tag'));
    
    
    $('body').on(clickName, '.link-back2top a', function(e) {
        e.preventDefault();
        $("body,html").stop().animate({
            scrollTop: 0
        },
        800);
        setTimeout(function(){
        window.Doghole.refreshMenu();}, 1000);
        return false;
    });
    
    
    // for animation: 划入效果
    var anicon = $('body').find('.anicon');
    $.each(anicon, function (){
        var aniObjs = $(this).children('.ani');
        $.each(aniObjs, function(i, o) {
            $(o).css({
                '-webkit-animation-duration': (i + 1) * 0.15 + 's',
                'animation-duration': (i + 1) * 0.15 + 's'
            })
        });
    });
    
    // for KaTex
    $.each($('.katex'), function (i, v) {
        katex.render(v.textContent, v);
    });
});