1/* Custom JavaScript/jQuery */ 2jQuery(document).ready($ => { 3 // Use these ajax url and nonce for custom ajax requests 4 const ajaxUrl = ajax.url; 5 const ajaxNonce = ajax.nonce; 6 7 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 8 // FIXED HEADER js start 9 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 10 $(window).scroll(function() { 11 var scroll = $(window).scrollTop(); 12 13 if (scroll >= 250) { 14 $(".ast-primary-header-bar").addClass("fixed-header"); 15 } else { 16 $(".ast-primary-header-bar").removeClass("fixed-header"); 17 } 18 }); 19 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 20 21 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 22 // WISE-SLIDER - initialization start 23 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 24 try{ 25 let wiseSliders = $(`.wise-slider`); 26 if(wiseSliders.length){ 27 wiseSliders.each((i, e) => { 28 let sliderContainer = $(e), 29 autoplay = sliderContainer.hasClass(`wise-slider--autoplay`), 30 infinite = sliderContainer.hasClass(`wise-slider--infinite`), 31 dots = sliderContainer.hasClass(`wise-slider--dots`), 32 arrows = sliderContainer.hasClass(`wise-slider--arrows`), 33 currentElementType = sliderContainer.data(`element_type`), 34 elementTypes = ['section', 'container', 'column'], 35 slider = null; 36 // ELEMENT TYPE | WRAPPER 37 // column -> .elementor-widget-wrap 38 // section -> .elementor-container 39 // container -> .e-con-inner 40 // inner section(section) -> .elementor-container 41 if(elementTypes.includes(currentElementType)){ 42 slider = sliderContainer.children().eq(0); // 1st child 43 }else{ 44 slider = sliderContainer; 45 } 46 const sliderSettings = { 47 autoplay: autoplay, 48 dots: dots, 49 arrows: arrows, 50 infinite: infinite, 51 responsive: [ 52 { 53 breakpoint: 479, 54 settings: { 55 slidesToShow: 1, 56 } 57 },{ 58 breakpoint: 767, 59 settings: { 60 slidesToShow: 2, 61 } 62 } 63 ] 64 }; 65 66 // SlidesToShow 67 let slidesToShowClass = sliderContainer.attr("class").split(/\s+/).find(c => c.startsWith("wise-slider--slidesToShow:")); 68 let slidesToShow = 1; // Set to 1 (one) by default 69 if (slidesToShowClass) { 70 let parts = slidesToShowClass.split(":"); 71 if (parts[1]) { 72 slidesToShow = parseInt(parts[1], 10); 73 } 74 } 75 if(slidesToShow){ 76 sliderSettings.slidesToShow = slidesToShow; 77 } 78 79 // SlidesToScroll 80 let slidesToScrollClass = sliderContainer.attr("class").split(/\s+/).find(c => c.startsWith("wise-slider--slidesToScroll:")); 81 let slidesToScroll = 1; // Set to 1 (one) by default 82 if (slidesToScrollClass) { 83 let parts = slidesToScrollClass.split(":"); 84 if (parts[1]) { 85 slidesToScroll = parseInt(parts[1], 10); 86 } 87 } 88 if(slidesToScroll){ 89 sliderSettings.slidesToScroll = slidesToScroll; 90 } 91 92 // Center Padding 93 let centerPaddingClass = sliderContainer.attr("class").split(/\s+/).find(c => c.startsWith("wise-slider--centerPadding:")); 94 let centerPadding = 0; 95 if (centerPaddingClass) { 96 let parts = centerPaddingClass.split(":"); 97 if (parts[1]) { 98 centerPadding = parseInt(parts[1], 10); 99 } 100 } 101 if(centerPadding){ 102 sliderSettings.centerMode = true; 103 sliderSettings.centerPadding = `${centerPadding}px`; 104 } 105 if(slider.length){ 106 slider.slick(sliderSettings); 107 } 108 }); 109 } 110 }catch(error){ 111 console.log(`Error: ${error.message}`); 112 } 113 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 114 115 // %%%%%%%%%%%%%% CPT %%%%%%%%%%%%%%%%%%%%% \\ 116 $('#wiselogix_module_cpt_name').keypress(function(e){ 117 if(e.which === 13){ 118 $('#wiselogix_module_cpt_create_btn').click(); 119 } 120 }); 121 const createCPT_btn = $('#wiselogix_module_cpt_create_btn'); 122 createCPT_btn.click(function(e){ 123 e.preventDefault(); 124 let cptName = $('#wiselogix_module_cpt_name').val(); 125 let cptNameLength = cptName.length; 126 if(cptNameLength >= 20){ 127 $('#wiselogix-message').html(`<div class="notice notice-error">Post type name should be less than 20 characters.</div>`); 128 }else{ 129 $.post( 130 ajaxUrl, 131 { 132 action: 'wiselogix_module_create_cpt', 133 cpt_name: cptName, 134 cpt_nonce: ajaxNonce, 135 }, 136 response => { 137 if(response.success){ 138 $('#wiselogix-message').html(`<div class="notice notice-success">${response.data.message}</div>`); 139 if(response.data.reload){ 140 setTimeout(() => window.location.reload(), 1000); 141 } 142 }else{ 143 $('#wiselogix-message').html(`<div class="notice notice-error">${response.data.message}</div>`); 144 } 145 } 146 ); 147 } 148 149 }); 150 151 $('.cpt_delete_btn').click(function(){ 152 if(confirm('Do you really want to delete this post type?')){ 153 let cptId = $(this).data('cpt_id'); 154 let cptSlug = $(this).data('cpt_slug'); 155 if(cptId != '' && cptSlug != ''){ 156 $.post( 157 ajaxUrl, 158 { 159 action: 'delete_cpt_callback', 160 cpt_id: cptId, 161 cpt_slug: cptSlug, 162 cpt_nonce: ajaxNonce 163 }, 164 res => { 165 if(res.success){ 166 $('.wiselogix_cpt_table_message').html(`<div class="notice notice-success">${res.data}</div>`); 167 setTimeout(() => window.location.reload(), 1000); 168 }else{ 169 $('.wiselogix_cpt_table_message').html(`<div class="notice notice-error">${res.data}</div>`); 170 } 171 } 172 ); 173 }else{ 174 $('.wiselogix_cpt_table_message').html(`<div class="notice notice-error">Error: id or slug is empty.</div>`); 175 } 176 }else{ 177 return; 178 } 179 }); 180 181 182 $(document).on('click', '#cpt_restore_btn', function(){ 183 let cptId = $(this).data('cpt_id'); 184 if(cptId != ''){ 185 $.post( 186 ajaxUrl, 187 { 188 action: 'restore_cpt_callback', 189 cpt_id: cptId, 190 cpt_nonce: ajaxNonce 191 }, 192 res => { 193 if(res.success){ 194 $('.wiselogix-message').html(`<div class="notice notice-success">${res.data}</div>`); 195 setTimeout(() => window.location.reload(), 1000); 196 }else{ 197 $('.wiselogix-message').html(`<div class="notice notice-error">${res.data}</div>`); 198 } 199 } 200 ); 201 }else{ 202 $('.wiselogix-message').html(`<div class="notice notice-error">Error: id is empty.</div>`); 203 } 204 }); 205 206 // %%%%%%%%%%%%%% CPT %%%%%%%%%%%%%%%%%%%%% \\ 207 208 209 // Initializing Filter gallery on portfolio 210 $('.layout_grid .filter-button').on('click', function() { 211 $('.filter-button').removeClass('active'); 212 $(this).addClass('active'); 213 var filterValue = $(this).attr('data-filter'); 214 if (filterValue == 'all') {
215 $('.portfolio-item').css('width', 'calc(25% - 10px)').addClass('active'); 216 } else { 217 $('.portfolio-item').css('width', '0').removeClass('active'); 218 $(filterValue).css('width', 'calc(25% - 10px)').addClass('active'); 219 } 220 }); 221 // For Masonry Mixitup 222 jQuery('.layout_masonry .portfolio-items').mixItUp({ 223 selectors: { 224 target: '.portfolio-item', 225 filter: '.filter-button', 226 sort: '.sort-btn', 227 }, 228 animation: { 229 animateResizeContainer: false, 230 effects: 'fade scale' 231 }, 232 classNames: { 233 active: 'fbm_active' 234 } 235 }); 236 // akram js 237 238 // let councilContent = document.querySelectorAll(".gorverning-council-wrapper .wpr-member-content"); 239 240 // if(councilContent){ 241 // let spanEle = document.createElement("span"); 242 // spanEle.innerHTML = "X"; 243 // spanEle.className = "close-des"; 244 // councilContent.forEach(function(v, i){ 245 // let memberBtn = v.querySelector(".wpr-member-btn"); 246 // memberBtn.removeAttribute("href"); 247 // memberBtn.addEventListener("click", function() { 248 // let desBox = this.offsetParent.querySelector(".wpr-member-description"); 249 // desBox.prepend(spanEle); 250 // let allDesBox = document.querySelectorAll(".gorverning-council-wrapper .wpr-member-description"); 251 // allDesBox.forEach(function(x){ 252 // x.classList.remove("show-description"); 253 // }); 254 // desBox.classList.add("show-description"); 255 // spanEle.addEventListener("click", function(e) { 256 // desBox.classList.remove("show-description"); 257 // }); 258 // }) 259 // }); 260 // } 261 262 let councilContent = document.querySelectorAll(".gorverning-council-wrapper .wpr-member-content"); 263 264 if(councilContent){ 265 let popUpBox = document.querySelector(".gorg-council-popUp"); 266 let closePopUpBtn = document.querySelector(".close-popUp-btn"); 267 let memberImg = document.querySelector(".member-img img"); 268 let memberName = document.querySelector(".member-name"); 269 let memberJob = document.querySelector(".member-job"); 270 let memberDes = document.querySelector(".member-des"); 271 councilContent.forEach(function(v){ 272 let memberBtn = v.querySelector(".wpr-member-btn"); 273 memberBtn.removeAttribute("href"); 274 memberBtn.addEventListener("click", function() { 275 let targetBox = this.closest(".wpr-team-member"); 276 let targetImgSrc = targetBox.querySelector("img"); 277 let targetName = targetBox.querySelector(".wpr-member-name"); 278 let targetJob = targetBox.querySelector(".wpr-member-job"); 279 let targetDes = targetBox.querySelector(".wpr-member-description"); 280 281 memberImg.src = (targetImgSrc) ? targetImgSrc.src : "There is no Image"; 282 memberImg.alt = (targetName) ? targetName.innerText : "There is no Text"; 283 memberName.innerText = (targetName) ? targetName.innerText : "There is no Text"; 284 memberJob.innerText = (targetJob) ? targetJob.innerText : "There is no Text"; 285 memberDes.innerText = (targetDes) ? targetDes.innerText : "There is no Text"; 286 287 popUpBox.style.display = "flex"; 288 289 popUpBox.addEventListener("click", function(e) { 290 (e.target.className == "gorg-council-popUp") ? popUpBox.style.display = "none" : ""; 291 }) 292 closePopUpBtn.addEventListener("click", function() { 293 popUpBox.style.display = "none"; 294 }); 295 }) 296 }); 297 } 298 299 300 let serviceBox = document.querySelectorAll(".service_box .elementor-image-box-img a"); 301 302 if(serviceBox.length){ 303 serviceBox.forEach(function(v, i){ 304 let btn = document.createElement("a"); 305 btn.className = "service-btn"; 306 btn.innerText = "Read More"; 307 v.appendChild(btn); 308 // console.log(serviceBox); 309 }); 310 } 311 312 313 // akram js 314 315}); 316 317
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.