PageSourceSearch

https://hautacam.com/bundles/redpillcms/js/blocks.js?v=20261001111055_v3.833.2

js hautacam.com collected 2026-10-02 16:17:31 UTC 3,969 bytes, 114 lines download raw bytes

1if ($('#scrollwrapper').length > 0) {
2    var scrollwrapper_active = false;
3    var scrollwrapper_wrap_height = parseInt($('#scrollwrapper').css('height').replace('px', ''));
4    var scrollwrapper_initial_offset = $('#scrollcontainer').offset().top;
5    var scrollwrapper_wrap_index = 0;
6}
7
8$(function(){
9    $('[data-arrow]:not(.blocked)').on('click', function(){
10        $(this).find('.content').toggleClass('open');
11    });
12
13    $('.faqblock .answer').on('show.bs.collapse', function(){
14        $('.faqblock .answer[data-parent="' + $(this).data('parent') + '"]').not($(this)).collapse('hide');
15    });
16
17    $('.hdr2btn .gobottom').on('click', function(){
18        $('#rp_left_area').animate({ scrollTop: $(this).parent().parent().next().offset().top}, 'slow');
19    });
20
21    $('#idr .gobottom').on('click', function(){
22        $('#rp_left_area').animate({ scrollTop: $(this).parent().next().offset().top}, 'slow');
23    });
24
25    $(".webcam_bloc_panorama").panorama_viewer({
26        repeat: true
27    });
28
29    $('[data-scroll] .scrollside [data-goframe]').on('click', function(){
30        scrollwrapper_active_frame($(this).data('goframe'));
31    });
32
33  /**
34   * Used in review blocs
35   */
36  $('[data-toggle="review"]').on('click', function(){
37        $(this).next().removeClass('hidden');
38        $(this).hide();
39    });
40
41    /**
42     * Scroll Monitor for scroll wrapper
43     */
44    if ($('#scrollwrapper').length > 0) {
45        initScrollWatcher();
46    }
47});
48
49function initScrollWatcher(){
50    var containerElement = document.getElementById("rp_left_area");
51    var containerMonitor = scrollMonitor.createContainer(containerElement);
52    var childElement = document.getElementById("scrollcontainer");
53    var elementWatcher = containerMonitor.create(childElement, scrollwrapper_wrap_height * -0.75 );
54    elementWatcher.enterViewport(function() {
55        $.smoothScroll({scrollElement: $('#rp_left_area'), scrollTarget: '#scrollcontainer' });
56        scrollwrapper_active = true;
57        elementWatcher.destroy();
58    });
59    elementWatcher.exitViewport(function() {
60        scrollwrapper_active = false;
61    });
62}
63
64/**
65 * Scroll Wrapper
66 */
67var scrollWrapper = document.getElementById('scrollwrapper');
68if (null !== scrollWrapper) {
69    scrollWrapper.addEventListener('DOMMouseScroll', function(e){
70
71        if (false == scrollwrapper_active) {return false;}
72
73        scrollwrapper_wrap_height = parseInt($('#scrollwrapper').css('height').replace('px', ''));
74
75        var step = -100;
76        if (e.detail > 0) { step *= -1; }
77
78        if ( e.detail > 0 && $('#rp_left_area').scrollTop() !== scrollwrapper_initial_offset){
79            $.smoothScroll({scrollElement: $('#rp_left_area'), scrollTarget: '#scrollcontainer' });
80        }
81
82        var maxScroll = ($('#scrollwrapper .left').length - 1) * scrollwrapper_wrap_height;
83
84        scrollwrapper_wrap_index += step;
85
86        if (scrollwrapper_wrap_index <= maxScroll && scrollwrapper_wrap_index >= 0) {
87            $('#scrollwrapper').scrollTop(scrollwrapper_wrap_index);
88
89            var myindex = Math.round(scrollwrapper_wrap_index / scrollwrapper_wrap_height);
90            scrollwrapper_active_frame(myindex, false);
91
92            e.preventDefault();
93        } else if(scrollwrapper_wrap_index < 0) {
94            scrollwrapper_wrap_index = 0;
95        } else if(scrollwrapper_wrap_index > maxScroll) {
96            scrollwrapper_wrap_index = maxScroll;
97            scrollwrapper_active = false;
98        }
99    });
100}
101
102function scrollwrapper_active_frame(number, scroll) {
103    if ('undefined' !== typeof scroll) {
104        number = parseInt(number + 1);
105    }
106    $('[data-frame],[data-goframe]').removeClass('active');
107    $('[data-frame="' + number + '"], [data-goframe="' + number + '"]').addClass('active');
108    if ('undefined' == typeof scroll) {
109        var newIndex = (number - 1) * scrollwrapper_wrap_height;
110        scrollwrapper_wrap_index = newIndex;
111       $('#scrollwrapper').scrollTop(newIndex);
112    }
113}
114

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.