1/** 2 * ÐодгÑÑзка «ÐоказаÑÑ ÐµÑÑ» â без завиÑÐ°Ð½Ð¸Ñ ÑпиннеÑа. 3 * РабоÑÐ°ÐµÑ Ð¿Ð¾ ÐºÐ»Ð¸ÐºÑ Ð½Ð° .more-load-action внÑÑÑи .form-more-load. 4 */ 5$(function () { 6 function getContainer($form) { 7 var sel = $form.data('container'); 8 var $c = sel ? $(sel) : $(); 9 if ($c.length) return $c; 10 $c = $form.closest('.block.meeting').find('.row.slides, .row').first(); 11 if ($c.length) return $c; 12 return $('.article-container .row').first(); 13 } 14 15 function getPager($form) { 16 var $p = $form.find('#pager'); 17 if ($p.length) return $p; 18 return $form.find('input[name="PAGEN_1"]'); 19 } 20 21 function finishLoading($form, hideForm) { 22 $form.removeClass('loading'); 23 if (hideForm) { 24 $form.addClass('stop'); 25 $form.find('.more-load-action').prop('disabled', true); 26 } 27 } 28 29 $(document).on('click', '.more-load-action', function (e) { 30 e.preventDefault(); 31 var $form = $(this).closest('.form-more-load'); 32 if (!$form.length || $form.hasClass('stop') || $form.hasClass('loading')) return; 33 34 var $container = getContainer($form); 35 if (!$container.length) { 36 finishLoading($form, true); 37 return; 38 } 39 40 var $pager = getPager($form); 41 var countPage = parseInt($form.data('countpage'), 10) || 1; 42 var page = parseInt($pager.val(), 10) || 2; 43 44 if (countPage < page) { 45 finishLoading($form, true); 46 return; 47 } 48 49 $form.addClass('loading'); 50 51 var url = $form.attr('action') || ''; 52 var data = $form.serialize(); 53 54 $.ajax({ 55 type: 'GET', 56 url: url, 57 data: data, 58 dataType: 'text', 59 timeout: 30000, 60 success: function (raw) { 61 var html = (raw || '').trim(); 62 if (!html || html === 'stop') { 63 finishLoading($form, true); 64 return; 65 } 66 // ÐÑли пÑиÑла ÑÐµÐ»Ð°Ñ ÑÑÑаниÑа вмеÑÑо ÑÑагменÑа â не вÑÑавлÑем 67 if (html.indexOf('<!DOCTYPE') !== -1 || html.indexOf('<html') !== -1) { 68 finishLoading($form, true); 69 return; 70 } 71 $container.append(html); 72 page++; 73 $pager.val(page); 74 if (page > countPage) { 75 finishLoading($form, true); 76 } else { 77 finishLoading($form, false); 78 } 79 }, 80 error: function () { 81 finishLoading($form, false); 82 }, 83 complete: function () { 84 // Ðа вÑÑкий ÑлÑÑай â ÑÐ¿Ð¸Ð½Ð½ÐµÑ Ð½Ðµ должен оÑÑаваÑÑÑÑ Ð½Ð°Ð²Ñегда 85 $form.removeClass('loading'); 86 } 87 }); 88 }); 89});
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.