PageSourceSearch

https://opora.dp.ua/js/api.js

js opora.dp.ua collected 2026-10-03 18:15:25 UTC 13,616 bytes, 435 lines download raw bytes

1var Global = {
2    sector_id:  $.cookie('sector'),
3    scope_id:  $.cookie('scope'),
4    group_reagents_id:  $.cookie('grr'),
5    reagent_id: 0
6};
7
8var Sector = {
9    get_files: function (id) {
10        $.get(lang+'/api/sector-files', {
11            id: id
12        }).done(function (data) {
13            if (data.error) {
14                console.log(data.error);
15            } else {
16                Common.clear_file_wrap();
17                renderFiles(data);
18                //for (var i = 0; i < data.length; i++) {
19                //    renderFiles(data[i]);
20                //}
21            }
22        })
23    }
24};
25
26var Scope = {
27    get_files: function (id) {
28        $.get(lang+'/api/scope-files', {
29            id: id
30        }).done(function (data) {
31            if (data.error) {
32                console.log(data.error);
33            } else {
34                Common.clear_file_wrap();
35                renderFiles(data);
36                //for (var i = 0; i < data.length; i++) {
37                //}
38            }
39        })
40    }
41};
42
43var GroupReagents = {
44    get_files: function (id) {
45        $.get(lang+'/api/group-files', {
46            id: id
47        }).done(function (data) {
48            if (data.error) {
49                console.log(data.error);
50            } else {
51                Common.clear_file_wrap();
52                renderFiles(data);
53                //for (var i = 0; i < data.length; i++) {
54                //}
55            }
56        })
57    }
58};
59
60var Common = {
61
62    clear_file_wrap: function () {
63        $('.m-catalog-documents').html('');
64    }
65
66};
67
68function ready() {
69    if (this.getElementById('first_sector')) {
70        Global.sector_id = this.getElementById('first_sector').textContent;
71        Global.scope_id = this.getElementById('first_scope').textContent;
72        Global.group_reagents_id = this.getElementById('first_group_reagent').textContent;
73    }
74
75    $('#sector_list li a').on('click', function () {
76        //Sector.get_files($(this).data('id'))
77    });
78    $('#scope_list li a').on('click', function () {
79        Scope.get_files($(this).data('id'))
80    });
81    $('#groups_reagents_list li a').on('click', function () {
82        GroupReagents.get_files($(this).data('id'))
83    });
84
85    if ($('.m-catalog-documents').length) {
86        files_wrapper = $('.m-catalog-documents');
87    }
88}
89document.addEventListener("DOMContentLoaded", ready); // êîãäà çàãðóçèòüñÿ ÄÎÌ
90
91
92function getScopes(id) {
93    $.get(lang+'/api/scope', {
94        sector_id: id
95    }).
96        done(function (data) {
97            console.log(data);
98            getGrpReagents(data[0]['id']);
99        });
100}
101function getGrpReagents(id) {
102    $.get(lang+'/api/groups-reagents', {
103        scope_id: id
104    }).
105        done(function (data) {
106            console.log(data);
107            getReagents(data[0]['id'])
108        });
109}
110function getReagents(id) {
111    $.get(lang+'/api/reagents', {
112        scope_id: id
113    }).
114        done(function (data) {
115            console.log(data);
116        });
117}
118
119function getFiles(type, id) {
120    $('.m-catalog-documents').html('');
121    $.get(lang+'/api/files', {
122        type: type,
123        id: id
124    }).
125        done(function (data) {
126            if (data.error) {
127                console.log(data.error);
128            } else {
129                renderFiles(data);
130                //for (var i = 0; i < data.length; i++) {
131                //}
132            }
133        });
134}
135
136function find_sector(el) {
137    var sector_name = $(el).val();
138    if (sector_name != '') {
139        $.get(lang+'/api/sector-by-name', {
140            sector_name: sector_name
141        }).
142            done(function (data) {
143                var scope_list = $('#sector_list' +
144                    '');
145                var list = '';
146                scope_list.html('');
147                for (var prop  in data) {
148                    list += '<li><a href="#" onclick="find_scope_by_sector(' + data[prop]['id'] + '); return false">' + data[prop]['name'] + '</a></li>';
149                }
150                scope_list.html(list);
151                setJscroll();
152            });
153    }
154}
155function find_scope_by_sector(sector_id, el) {
156
157    clearGrR();
158    Global.sector_id = sector_id;
159    sector_files(sector_id);
160    setActiveList(el);
161    if (sector_id) {
162        setTimeout(function () {
163            $.cookie('sector', sector_id, {path: '/', expires: 365});
164            Global.sector_id = sector_id;
165        },100);
166
167        //document.cookie = "sector=" + sector_id;
168        preloader($('.m-catalog-search'), false);
169
170        $('#groups_reagents_list').html('');
171        $('#reagents').html('');
172        $('#scope_list').html('');
173
174        $.get(lang+'/api/scope', {
175            sector_id: sector_id,
176            files: true
177        }).
178            done(function (data) {
179
180                var scope_list = $('#scope_list');
181                var list = '';
182                scope_list.html('');
183
184
185                if (data.error) {
186                    list += '<li><a href="#" onclick="return false">' + data.error + '</a></li>';
187                }
188                if (data.scope) {
189                    for (var i = 0; i < data.scope.length; i++) {
190                        list += '<li><a href="#" data-id="' + data.scope[i].id + '" onclick="find_grr_by_scope(' + data.scope[i].id + ', this); return false">' + data.scope[i].name + '</a></li>';
191                    }
192                }
193                //if (data.files) {
194                //    files_wrapper.html('');
195                //    for (var i = 0; i < data.files.length; i++) {
196                //        renderFiles(data.files[i]);
197                //    }
198                //}
199
200                scope_list.html(list, preloader($('.m-catalog-search'), true));
201
202                setTimeout(function () {
203                    var h = $('#scope_list').outerHeight();
204                    var efg = scope_list.closest($('.scrp-wrap'));
205                    $(efg).css({
206                        'height': h
207                    });
208
209                }, 100);
210                setTimeout(function () {
211                    jQuery('.scroll-payne').jScrollPane();
212
213                }, 150);
214
215                //setJscroll();
216            });
217    }
218}
219
220function find_scope(el) {
221    var scope_name = $(el).val();
222    $.get(lang+'/api/scope', {
223        name: scope_name,
224        sector_id: Global.sector_id
225    }).
226        done(function (data) {
227            console.log(data);
228            var scope_list = $('#scope_list');
229            var list = '';
230            scope_list.html('');
231            for (var prop  in data) {
232                list += '<li><a href="#" data-id="' + data[prop]['id'] + '"  onclick="find_grr_by_scope(' + data[prop]['id'] + ', this); return false">' + data[prop]['name'] + '</a></li>';
233            }
234            scope_list.html(list);
235        });
236}
237function clearGrR(){
238    $('#grr_title_js').html('');
239    $('#grr_descr_js').html('');
240}
241
242function find_grr_by_scope(scope_id, el) {
243    setActiveList(el);
244    clearGrR();
245    if (scope_id) {
246        $.cookie('scope', scope_id, {path:'/'});
247        Global.scope_id = scope_id;
248
249        //document.cookie = "scope=" + scope_id;
250        preloader($('.m-catalog-search'), false);
251        $.get(lang+'/api/groups-reagents', {
252            scope_id: scope_id
253        }).
254            done(function (data) {
255                var scope_list = $('#groups_reagents_list');
256                if (data != '') {
257                    var list = '';
258                    scope_list.html('');
259                    for (var prop  in data) {
260                        list += '<li><a href="#" data-id="' + data[prop]['id'] + '" onclick="find_reagent_by_grr(' + data[prop]['id'] + ', this); return false">' + data[prop]['name'] + '</a></li>';
261                    }
262                    scope_list.html(list);
263
264                    setTimeout(function () {
265                        var h = scope_list.outerHeight();
266                        var efg = scope_list.closest($('.scrp-wrap'));
267                        $(efg).css({
268                            'height': h
269                        });
270
271                    }, 100);
272                    setTimeout(function () {
273                        jQuery('.scroll-payne').jScrollPane();
274
275                    }, 150);
276                } else {
277                    scope_list.html('');
278                }
279            });
280
281        $.get(lang+'/api/files', {
282            type: 'scope',
283            id: scope_id
284        })
285            .done(function (data) {
286                if (data) {
287                    for (var i = 0; i < data.length; i++) {
288                        renderFiles(data[i]);
289                    }
290                }
291            });
292        preloader($('.m-catalog-search'), true);
293    }
294}
295
296
297function find_reagent_by_grr(grr_id, el) {
298    clearGrR();
299    setActiveList(el);
300    if (grr_id) {
301        $.cookie('grr', grr_id, {path:'/'});
302        Global.group_reagents_id = grr_id;
303        var url = '?sector_id=' + Global.sector_id + '&scope_id=' + Global.scope_id + '&group_reagents_id=' + Global.group_reagents_id;
304        //document.cookie = "grr=" + grr_id;
305        preloader($('.m-catalog-search'), false);
306        $.get(lang+'/api/reagents', {
307            grr_id: grr_id
308        }).
309            done(function (data) {
310                var reagents_list = $('#reagents');
311                var descr = $('.cat-desc-block');
312
313                if (data['reagents']) {
314                    var list = '';
315                    reagents_list.html('');
316                    for (var i = 0; i < data['reagents'].length; i++) {
317                        list += '<li><a href="'+lang+'/reagent/' + data['reagents'][i]['link'] + url + '">' + data['reagents'][i]['title'] + '</a></li>';
318                    }
319                    reagents_list.html(list);
320                    setTimeout(function () {
321                        var h = reagents_list.outerHeight();
322                        var efg = reagents_list.closest($('.scrp-wrap'));
323                        $(efg).css({
324                            'height': h
325                        });
326
327                    }, 100);
328                    setTimeout(function () {
329                        jQuery('.scroll-payne').jScrollPane();
330
331                    }, 150);
332                }
333                if (data.description) {
334                    $('#grr_descr_js').html(data.description);
335					$('.cat-desc-block > p').map(function(){
336						if($(this).attr("id") != 'grr_descr_js') $(this).html('');
337					
338					})
339                }
340
341                if (data.name) {
342                    $('#grr_title_js').html(data.name);
343                }
344
345            });
346        getFiles('groups-reagents', grr_id);
347        preloader($('.m-catalog-search'), true);
348    }
349}
350
351function sector_files(id) {
352    $.get(lang+'/api/sector', {
353        files: true,
354        id: id
355    }).
356        done(function (data) {
357            var files_wrapper = $('.m-catalog-documents');
358            files_wrapper.html('');
359            for (var element in data) {
360                renderFiles(data[element]);
361            }
362        });
363}
364
365function renderFiles(files) {
366    //var file = '<div class="mc-doc-item">' +
367    //    '<div class="mc-doc-img"><img src="/files/images/default/file_defolt.png" alt="" /></div>' +
368    //    '<div class="mc-doc-desc-block">' +
369    //    '<div class="mc-doc-title dotdot">' + files['name'] + '</div>' +
370    //    '<a class="mc-doc-dwn-link" href="' + files['file_path'] + '"></a>' +
371    //    '</div>' +
372    //    '</div>';
373    files_wrapper.html(files);
374}
375
376function setActiveList(el) {
377    var ul = $(el).parent($('li')).parent($('.js-active-list'));
378    var a_list = ul.find($('li > a'));
379    $(a_list).each(function (index, el) {
380        $(el).removeClass("active");
381    });
382    $(el).addClass("active");
383}
384
385function find_grr(el) {
386    var grr = $(el).val();
387    $('#groups_reagents_list').val('');
388    $.get(lang+'/api/groups-reagents', {
389        name: grr,
390        scope_id: Global.scope_id
391    }).
392        done(function (data) {
393            console.log(data);
394            var scope_list = $('#groups_reagents_list');
395            var list = '';
396            scope_list.html('');
397            for (var prop  in data) {
398                list += '<li><a href="#" onclick="find_reagent_by_grr(' + data[prop]['id'] + ', this); return false">' + data[prop]['name'] + '</a></li>';
399            }
400            scope_list.html(list);
401        });
402}
403
404/*
405 $('.js-active-list > li> a').on('click',function () {
406 var ul = $(this).parent($('li')).parent($('.js-active-list'));
407 var a_list = ul.find($('li > a'));
408 $(a_list).each(function(index, el) {
409 $( el ).removeClass( "active" );
410 });
411 $(this).addClass( "active" );
412 });
413 */
414
415function preloader(el, r) {
416    if (!r) {
417        el.css({
418            'position': 'relative'
419        });
420        el.append('<div class="preloader_wrap"><div class="preloader"></div></div>');
421        el.find('.preloader_wrap,.preloader').fadeIn(200);
422    }
423    else {
424        el.find('.preloader_wrap').fadeOut(100, function () {
425            $(this).remove();
426        });
427    }
428}
429function setJscroll() {
430    console.log(1);
431    $('.mcs-search-list .scrp-wrap').css({
432        'height': 'auto',
433        'max-height': '280px'
434    });
435}

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.