1var load_more = function() { 2 return { 3 setup: function(options) { 4 5 var last_publish_date = options.last_publish_date; 6 var slug = options.slug; 7 var publish_date_params = options.publish_date_params ? options.publish_date_params : "last_publish_date"; 8 var page = options.page ? options.page : 2; 9 var record_count = options.record_count ? options.record_count : 2; 10 var finish_button_gone = options.finish_button_gone ? options.finish_button_gone : true; 11 var load_more_btn = options.load_more_btn ? options.load_more_btn : "#load_more_btn"; 12 var load_more_div = options.load_more_div ? options.load_more_div : "ul#load_content"; 13 var loading_string = options.loading_string ? options.loading_string : "<div class='name'>Loading...</div>"; 14 var muat_lainnya_string = options.muat_lainnya_string ? options.muat_lainnya_string : "<div class='name'>Muat Lainnya</div><i class='fas fa-angle-right'></i>"; 15 var gagal_muat_string = options.gagal_muat_string ? options.gagal_muat_string : "<div class='name'>Gagal Memuat Data...</div>"; 16 var channel_name = options.channel_name ? options.channel_name : ''; 17 var subchannel_name = options.subchannel_name ? options.subchannel_name : ''; 18 var infinit_load = options.infinit_load ? options.infinit_load : true; 19 var load_lock = false; 20 var max_hit = options.max_hit ? parseInt(options.max_hit) : 1; 21 var hit = 1; 22 23 setTimeout(function() { 24 $(document).on('click', load_more_btn, function() { 25 26 if(hit > max_hit){ 27 $(load_more_btn).html("<b>Loading ...</b>"); 28 }else{ 29 $(load_more_btn).html(loading_string); 30 } 31 32 if (last_publish_date === 0) { 33 last_publish_date = window[publish_date_params]; 34 } 35 36 var params = { 37 last_publish_date: last_publish_date, 38 channel_name: options.channel_name, 39 subchannel_name: subchannel_name, 40 page: page, 41 slug: slug, 42 record_count: record_count, 43 _token: options.token 44 } 45 46 load_lock = true; 47 48 $.ajaxSetup({ 49 headers: { 50 'X-CSRF-TOKEN': options.token 51 } 52 }); 53 54 $.ajax(options.url, { 55 56 method: "POST", 57 data: params, 58 beforeSend: function() { 59 // console.log('beforeSend'); 60 }, 61 success: function(response) { 62 // console.log(response); 63 if (response.trim() === "") { 64 if (finish_button_gone) { 65 if(hit >= max_hit){ 66 $(".btn-more").hide(); 67 console.log('4'); 68 }else{ 69 $("div.now-loading").hide(); 70 console.log('4'); 71 } 72 } 73 }else{ 74 last_publish_date = 0; 75 $(load_more_div).append(response); 76 load_lock = false; 77 78 if(hit >= max_hit){ 79 $(load_more_btn).replaceWith(options.btn_replace); 80 }else{ 81 $(load_more_btn).html(muat_lainnya_string); 82 } 83 84 } 85 86 page += 1; 87 hit += 1; 88 }, 89 error: function() { 90 // console.log('error'); 91 if(hit >= max_hit){ 92 $('div.muat-lainnya').html("GAGAL MUAT DATA"); 93 }else{ 94 $('div.icon').css('display', 'none'); 95 $(load_more_btn).html(gagal_muat_string); 96 } 97 } 98 99 }); 100 101 }); 102 }, 2000); 103 // AUTO LOAD MORE
104 // if (infinit_load) { 105 // $(window).scroll(function() { 106 107 // var btn_pos = $(load_more_btn).offset().top; 108 // var browser_height = $(window).height(); 109 // var bottomPos = $(window).scrollTop() + $(window).height(); 110 111 // if ((bottomPos > btn_pos) && (load_lock == false)) { 112 // if(infinit_load){ 113 // $(load_more_btn).trigger('click'); 114 // } 115 // } 116 117 // }) 118 // } 119 return false; 120 } 121 } 122}
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.