PageSourceSearch

https://www.rfs.ru/js/widgets/news/feed.js?v=1747837362

js rfs.ru collected 2026-10-02 03:57:27 UTC 4,850 bytes, 135 lines download raw bytes

1$(document).ready(function() {
2    rfs.feed.init();
3});
4
5rfs.feed = {
6    init: function() {
7        rfs.feed.context = $('.context');
8        $(document).on('click', '.js-news-load-more', function() {
9            console.log(rfs.feed.context)
10            rfs.locker.lock(rfs.feed.context);
11            rfs.feed.ajaxCall(function(data) {
12                if (data.success) {
13                    $('.news-list').append(data.body);
14                    if ($(rfs.feed.context).data('type') == 'text') {
15                        $(rfs.feed.context).data('offset', $(rfs.feed.context).data('offset') + 1);
16                    }
17                }
18                rfs.locker.unlock(rfs.feed.context);
19                $('.js-news-load-more').trigger('loadSuccess');
20
21                var loadSuccess = new Event('loadSuccess');
22                document.querySelector('.js-news-load-more').dispatchEvent(loadSuccess);
23            });
24        });
25        $('ul.js-days li').on('click', function() {
26            console.log(rfs.feed.context)
27            rfs.feed.context.data('offset', 0);
28            rfs.feed.context.data('last-datetime', '');
29            rfs.feed.context.data('day', $(this).val());
30            rfs.feed.ajaxCall(function(data) {
31                if (data.success) {
32                    rfs.feed.context.data('offset', 1);
33                    $('.news-list').html(data.body);
34                }
35            });
36        });
37        $('ul.js-months li').on('click', function() {
38            rfs.feed.context.data('offset', 0);
39            rfs.feed.context.data('last-datetime', '');
40            rfs.feed.context.data('month', $(this).val());
41            rfs.feed.ajaxCall(function(data) {
42                if (data.success) {
43                    rfs.feed.context.data('offset', 1);
44                    $('.news-list').html(data.body);
45                }
46            });
47        });
48        $('ul.js-years li').on('click', function() {
49            rfs.feed.context.data('offset', 0);
50            rfs.feed.context.data('last-datetime', '');
51            rfs.feed.context.data('year', $(this).val());
52            rfs.feed.ajaxCall(function(data) {
53                if (data.success) {
54                    rfs.feed.context.data('offset', 1);
55                    $('.news-list').html(data.body);
56                }
57            });
58        });
59        $('.for-all-time').on('click', function() {
60            rfs.feed.context.data('offset', 0);
61            rfs.feed.context.data('last-datetime', '');
62            if ($(this).hasClass('active')) {
63                rfs.feed.context.data('day', $('ul.js-days li.active').val());
64                rfs.feed.context.data('month', $('ul.js-months li.active').val());
65                rfs.feed.context.data('year', $('ul.js-years li.active').val());
66            } else {
67                rfs.feed.context.data('day', 0);
68                rfs.feed.context.data('month', 0);
69                rfs.feed.context.data('year', 0);
70            }
71            $(this).toggleClass('active');
72            $('ul.js-years, ul.js-months, ul.js-days').parent().toggleClass('disabled');
73
74            rfs.feed.ajaxCall(function(data) {
75                rfs.feed.context.data('offset', 1);
76                $('.news-list').html(data.body);
77            });
78        });
79    },
80    generateParams: function() {
81        var data = rfs.feed.context.data(),
82            params = {
83                limit: data['limit'],
84                lastDatetime: data['lastDatetime']
85            };
86
87        if (data['type']) {
88            params.type = data['type'];
89        }
90        if (data['id']) {
91            params.id = data['id'];
92        }
93        if (data['section']) {
94            params.section = data['section'];
95        }
96        if (data['categoryId']) {
97            params.categoryId = data['categoryId'];
98        }
99        if (data['tags']) {
100            params.tags = data['tags'];
101        }
102        if (data['day']) {
103            params.day = data['day'];
104        }
105        if (data['year']) {
106            params.year = data['year'];
107        }
108        if (data['month']) {
109            params.month = data['month'];
110        }
111        if (data['offset']) {
112            params.offset = data['offset'];
113        }
114        if (data['tagId']) {
115            params.tagId = data['tagId'];
116        }
117
118        return params;
119    },
120    ajaxCall: function(callback) {
121        var params = rfs.feed.generateParams();
122        $.ajax({
123            url: rfs.feed.context.data('url'),
124            data: params
125        }).done(function(data) {
126            callback(data);
127            rfs.feed.context.data('last-datetime', data.lastDateTime);
128            if (data.count < rfs.feed.context.data('limit')) {
129                rfs.feed.context.parent().hide();
130            } else {
131                rfs.feed.context.parent().show();
132            }
133        });
134    }
135};

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.