summaryrefslogtreecommitdiffstats
path: root/layouts/partials/scripts.html
blob: e807e36e00972069c7178c8dea066b0ed31898aa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<!-- Comment loading indicator -->
{{ if and (.IsPage) (.Site.Params.utterancesComment) }}
<script>
    $(function () {
        var loadingBar = new ProgressBar.Circle('#loading-bar', {
            color: '#8AA2D3',
            strokeWidth: 15,
            trailColor: '#E5E2E4',
            trailWidth: 15,
            fill: '#E5E2E4'
        });
        loadingBar.animate(1.0, {
            duration: 10000
        });

        var commentStatus;
        var commentLoadingTime = 0;
        var commentCheckInterval = self.setInterval(checkUtterances, 500);

        function checkUtterances() {
            commentStatus = $('#post-comment .utterances').attr('style');
            if (commentStatus === undefined) {
                commentLoadingTime += 1;
                if (commentLoadingTime > 20) {
                    clearInterval(commentCheckInterval);
                    $('#post-comment').hide();
                    $('#post-loading p').text('{{ i18n "postCommentLoadingFailed" }}');
                }
                return;
            } else {
                clearInterval(commentCheckInterval);
                loadingBar.animate(1.0, {
                    duration: 500
                }, function () {
                    $('#post-loading').hide();
                });
            }
        }
    });
</script>
{{ end }}
<!-- Scroll to top button -->
{{ if .Site.Params.scrollTop }}
<script>
    $(function () {
        var bar = new ProgressBar.Circle('#progress', {
            color: '#8AA2D3',
            strokeWidth: 12,
            trailColor: '#E5E2E4',
            trailWidth: 12,
            text: {
                value: '{{ partial "fas/fa-angle-up" . }}',
                autoStyleContainer: false,
                style: null
            },
            fill: '#E5E2E4'
        });
        var scrolled = ($(window).scrollTop() / ($(document).height() - $(window).height() - 1));
        bar.animate(scrolled);
        $(window).scroll(function () {
            scrolled = ($(window).scrollTop() / ($(document).height() - $(window).height() - 1));
            if (scrolled < 0.0005) {
                scrolled = 0;
            } else if (scrolled > 1) {
                scrolled = 1;
            }
            bar.set(scrolled);
        });
    });
    $('#container-progress').click(function () {
        $('html, body').animate({
            scrollTop: 0
        }, 'slow');
        return false;
    });
</script>
{{ end }}
<!-- Vanilla LazyLoad -->
<script>
    $(function () {
        var lazyLoadInstance = new LazyLoad({
            elements_selector: ".lazy"
        });
    });
</script>