1var breakthroughJs = function(){ 2 function handleNewHeaderScript() { 3 var $header = jQuery(".header"); 4 var $navbar = jQuery(".header"); 5 var $toggler = jQuery(".menu"); 6 7 // Scroll event 8 jQuery(window).on("scroll load", function () { 9 if (jQuery(this).scrollTop() > 20) { 10 jQuery('.job-banner').addClass("sticky-banner"); 11 $navbar.addClass("sticky"); 12 $header.addClass("position-fixed"); 13 } else { 14 jQuery('.job-banner').removeClass("sticky-banner"); 15 $header.removeClass("position-fixed"); 16 $navbar.removeClass("sticky"); 17 } 18 }); 19 20 // Menu toggle 21 $toggler.on("click", function () { 22 $navbar.find(".right").toggleClass("active"); 23 jQuery(this).toggleClass("active"); 24 25 if (jQuery(this).hasClass("active")) { 26 jQuery(this).attr("src", "https://arsentech.github.io/source-codes/icons/close.svg"); 27 } else { 28 jQuery(this).attr("src", "https://arsentech.github.io/source-codes/icons/menu.svg"); 29 } 30 }); 31 } 32 33 function handleHeaderResponsive(){ 34 if(window.matchMedia("(max-width: 1199px)").matches){ 35 jQuery(document).on('click','.header .menu-item-has-children',function(e){ 36 e.stopPropagation(); 37 38 jQuery('.header .menu-item-has-children').not(this).find('.dropdown').slideUp(); 39 40 jQuery(this).find('.dropdown').slideToggle(); 41 }); 42 } 43 } 44 45 function onSectionVisible(entries, observer) { 46 entries.forEach(entry => { 47 if (entry.isIntersecting) { 48 myCounterFunction(); 49 observer.unobserve(entry.target); 50 } 51 }); 52 } 53 54function myCounterFunction() { 55 if (jQuery('.counter-value').length > 0) { 56 jQuery(".counter-value").each(function () { 57 var t = jQuery(this); 58 var count = t.attr("data-count") ? t.attr("data-count") : 0; 59 60 var hasDecimal = count.toString().includes('.'); // ð¥ check dot 61 62 var n = count == 0 ? 0 : parseFloat("" + count.replace(/,/g, "")); 63 64 jQuery({ countNum: 0 }).animate( 65 { countNum: n }, 66 { 67 duration: 2000, 68 easing: "swing", 69 step: function () { 70 let val; 71 72 if (hasDecimal) { 73 val = this.countNum.toFixed(1); // decimal rakho 74 } else { 75 val = Math.round(this.countNum); // round karo 76 } 77 78 t.text(val); 79 }, 80 complete: function () { 81 let val; 82 83 if (hasDecimal) { 84 val = n.toFixed(1); 85 } else { 86 val = Math.round(n); 87 } 88 89 t.text(val); 90 } 91 } 92 ); 93 }); 94 } 95} 96 97function defaultPdfView() { 98 const $activePane = jQuery('.reports-section .tab-pane.active'); 99 const $viewer = $activePane.find('.pdf-viewer'); 100 if (!$viewer.length) return; 101 102 $viewer.addClass('show-loading'); 103 $activePane.find('#pdfFrame').attr( 104 'src', 105 $activePane.find('.pdf-item:first').data('pdf') 106 ); 107 108 setTimeout(() => $viewer.removeClass('show-loading'), 2500); 109} 110function handlereportSecWork() { 111 112 if(jQuery('.pdf-viewer').length > 0){ 113 defaultPdfView(); 114 jQuery(document).on('click','.reports-section .nav-item',function(){ 115 setTimeout(() => { 116 defaultPdfView(); 117 }, 500); 118 }) 119 } 120 121 jQuery(document).on('click', '.reports-section .tab-pane.active.show .pdf-item', function() { 122 const $tab = jQuery('.reports-section .tab-pane.active.show'); 123 const pdfUrl = jQuery(this).data('pdf'); 124 if (!pdfUrl) return; 125 126 jQuery('.pdf-item').removeClass('active'); 127 jQuery(this).addClass('active'); 128 129 const $frame = $tab.find('#pdfFrame'); 130 const $viewer = $tab.find('.pdf-viewer'); 131 132 $frame.hide(); 133 $viewer.addClass('show-loading'); 134 $frame.attr('src', pdfUrl).show(); 135 136 setTimeout(() => { 137 $viewer.removeClass('show-loading') 138 }, 2500); 139 }); 140 141} 142 function handlecloningpartner(){ 143 const $grid = jQuery('.marquee__grid'); 144 const $group = $grid.find('.marquee__group'); 145 146 const $clone = $group.clone(); 147 $grid.append($clone); 148 } 149 150 function handleInfinitePartner() { 151 const $container = jQuery(".marquee-inner"); 152 const $clones = $container.clone(true); 153 $container.append($clones); 154 155 let scrollAmount = 0; 156 let isPaused = false;
157 158 function marqueeScroll() { 159 if (!isPaused) { 160 scrollAmount += 1; 161 $container.css("transform", `translateX(-${scrollAmount}px)`); 162 if (scrollAmount >= $container[0].scrollWidth / 2) { 163 scrollAmount = 0; 164 } 165 } 166 requestAnimationFrame(marqueeScroll); 167 } 168 marqueeScroll(); 169 170 jQuery(".marquee-wrapper") 171 .on("mouseenter", function () { isPaused = true; }) 172 .on("mouseleave", function () { isPaused = false; }); 173 } 174 175 function handleLoadmore(){ 176 function breakthrough_ajax_load_more(){ 177 jQuery('.breakthrough-load-more').on('click',function(){ 178 let btn = jQuery(this); 179 btn.find('svg').addClass('spinner-border').removeClass('d-none'); 180 jQuery.ajax({ 181 url: ajaxurl, 182 type: 'POST', 183 data: { 184 action: 'load_more_properties', 185 category: activeCategory, 186 post_type : post_type, 187 posts_in_categories : posts_in_categories, 188 post_order_by : post_order_by, 189 title_text_limit : title_text_limit, 190 description_text_limit : description_text_limit, 191 offset: offset 192 }, 193 beforeSend: function() { 194 jQuery(this).addClass('active'); 195 }, 196 success: function(response){ 197 btn.find('svg').removeClass('spinner-border').addClass('d-none'); 198 if((response.trim() == '')){ 199 btn.find('span').text('No More Post Left'); 200 }else{ 201 jQuery('#property-list').append(response); 202 offset += 6; 203 } 204 } 205 }); 206 }); 207 } 208 209 if(jQuery('.brakthrough-load-more').length > 0 ){ 210 breakthrough_ajax_load_more(); 211 offset = 2 212 } 213 } 214 215 function getRotationDegrees(element) { 216 const st = window.getComputedStyle(element); 217 const tr = st.getPropertyValue("transform"); 218 219 if (tr === "none") return 0; 220 const values = tr.split("(")[1].split(")")[0].split(","); 221 const a = values[0], b = values[1]; 222 let angle = Math.round(Math.atan2(b, a) * (180 / Math.PI)); 223 if (angle < 0) angle += 360; 224 return angle; 225 } 226 227 function rotate(step) { 228 if(jQuery('.slider-circle-img').length > 0){ 229 const el = document.querySelector(".slider-circle-img"); 230 const current = getRotationDegrees(el); 231 const target = current + step; 232 233 el.animate( 234 [ 235 { transform: `rotate(${current}deg)` }, 236 { transform: `rotate(${target}deg)` } 237 ], 238 { 239 duration: 800, 240 fill: "forwards", 241 easing: "linear" 242 } 243 ).onfinish = () => { 244 el.style.transform = `rotate(${target}deg)`; 245 }; 246 } 247 } 248 249 function handlePostSlider2(){ 250 if(jQuery('.postSlider2').length > 0 ){ 251 var slides = jQuery('.postSlider2').data('slidesshow'); 252 253 var swiper = new Swiper(".postSlider2", { 254 slidesPerView: 2, 255 spaceBetween: 40, 256 loop: true, 257 simulateTouch: slides == 3 ? false : true, 258 speed: 800, 259 autoplay: { 260 delay: 2500, 261 disableOnInteraction: false, 262 }, 263 navigation: { 264 nextEl: ".swiper-button-next", 265 prevEl: ".swiper-button-prev", 266 }, 267 breakpoints: { 268 280: { slidesPerView: 1, spaceBetween: 30 }, 269 600: { slidesPerView: 2, spaceBetween: 30 }, 270 1200: { slidesPerView: slides, spaceBetween: 40 } 271 } 272 }); 273 } 274 return swiper; 275 } 276 277 function handleSwiperEffect(){ 278 if( jQuery('.postSlider2').length > 0 ){ 279 const forwardBtn = jQuery(".swiper-button-next"); 280 const backBtn = jQuery(".swiper-button-prev"); 281 282 if(forwardBtn.length > 0 && backBtn.length > 0){ 283 forwardBtn.on("click", function(){ rotate(45) }); 284 backBtn.on("click", function(){ rotate(-45) }); 285 } 286 287 const swiper = handlePostSlider2(); 288 swiper.on('slideChange', function () { 289 if (this.activeIndex > this.previousIndex) { 290 rotate(45) 291 } else { 292 rotate(-45) 293 } 294 }); 295 } 296 } 297 298 function handleOurPeopleModel(){ 299 if(jQuery('.openOurPeopleModal').length > 0) { 300 jQuery('.openOurPeopleModal').on('click',function(){ 301 var title = jQuery(this).data('title'); 302 var image = jQuery(this).data('image'); 303 var designation = jQuery(this).data('designation'); 304 var description = jQuery(this).find('.content-data'); 305 306 jQuery('#people-name').text(title); 307 jQuery('#people-designation').text(designation); 308 jQuery('#people-media-img').attr('src', image); 309 jQuery('#people-description').html(description.html()); 310 }); 311 } 312 } 313 314 function handleMouseEvent(){ 315 jQuery('.icon-box.style-2.border-effect').on('mouseenter', function(e) { 316 var parentOffset = jQuery(this).offset(), 317 relX = e.pageX - parentOffset.left, 318 relY = e.pageY - parentOffset.top; 319 jQuery(this).find('.bg').css({top:relY, left:relX}) 320 }).on('mouseout', function(e) { 321 var parentOffset = jQuery(this).offset(), 322 relX = e.pageX - parentOffset.left, 323 relY = e.pageY - parentOffset.top; 324 jQuery(this).find('.bg').css({top:relY, left:relX}) 325 }); 326 } 327 328 return { 329 init: function(){ 330 handleNewHeaderScript(); 331 handlecloningpartner(); 332 handleLoadmore(); 333 handleSwiperEffect(); 334 handleHeaderResponsive(); 335 handleMouseEvent(); 336 handlereportSecWork(); 337 if(jQuery('.thumbslider-section').length > 0){ 338 handleTabsPush(); 339 } 340 341 if(jQuery('#ourPeopleModalToggle').length > 0){ 342 handleOurPeopleModel(); 343 } 344 345 if(jQuery(".marquee-inner").length > 0 ){ 346 handleInfinitePartner(); 347 } 348 349 if(jQuery('#iconcounter').length > 0 ){ 350 const section = document.getElementById("iconcounter"); 351 const observer = new IntersectionObserver(onSectionVisible, { 352 root: null, 353 rootMargin: "0px", 354 threshold: 0.5 355 }); 356 observer.observe(section); 357 } 358 } 359 } 360}(); 361 362jQuery(document).ready(function(){ 363 breakthroughJs.init(); 364 365 jQuery('#copyPost').on('click',function(){ 366 let copyText = window.location; 367 navigator.clipboard.writeText(copyText); 368 }); 369 370 jQuery('select').selectpicker(); 371}); 372 373jQuery('.collapse').on('shown.bs.collapse', function () { 374 jQuery(this) 375 .next() 376 .find('.read-more') 377 .html('READ LESS <i class="fa fa-angle-up"></i>'); 378}); 379 jQuery('.collapse').on('hidden.bs.collapse', function () { 380 381 let $card = jQuery(this).closest('.focus-area-sec'); 382 383 window.scrollTo({ 384 top: $card.offset().top - 120, 385 behavior: 'instant' 386 }); 387 388 jQuery(this) 389 .next() 390 .find('.read-more') 391 .html('READ MORE <i class="fa fa-angle-down"></i>'); 392 }); 393 394jQuery(window).on('load', function() { 395 setTimeout(() => { 396 jQuery('.loader').slideUp(1000); 397 }, 1000); 398});
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.