1jQuery(window).on('load', function () { 2 renderDimensions(); 3 topMenu(); 4 liveSearch(); 5 setTimeout(function () { 6 editForm(); 7 }, 100); 8 breakpointImages(); 9 10 11 $('.scrolldown-icon').on('click', () => { 12 window.scrollTo({ 13 top: window.innerHeight * .8, 14 behavior: 'smooth' 15 }); 16 }) 17 18 setTimeout(function () { 19 if (jQuery('.brick-usps-1').length) { 20 renderAwards(); 21 } 22 }, 200); 23 24 if (jQuery('.cookie-popup').is(':visible')) { 25 jQuery('body').addClass('popup-overlay'); 26 jQuery('.toggle-cookie-btn').on('click', function () { 27 jQuery(this).parents('.cookie-popup').addClass('show-settings'); 28 }); 29 } 30 31 jQuery(".rnFormGroup .rnFileUpload").addClass('custom-upload'); 32 33 jQuery('.less').on('click', function () { 34 jQuery('.cookie-popup-bottom-left input').each(function () { 35 jQuery(this).prop('checked', true); 36 }); 37 jQuery('.save-close').click(); 38 }) 39 40 jQuery('.nav-toggle').on('click', function () { 41 if (jQuery('body').hasClass('nav-open')) { 42 jQuery('body').removeClass('nav-open'); 43 jQuery('html').css('overflow', 'auto'); 44 } else { 45 jQuery('body').addClass('nav-open'); 46 jQuery('html').css('overflow', 'hidden'); 47 } 48 }); 49 50 jQuery('.faq-select select').change(function () { 51 var value = this.value; 52 jQuery('.item-faq-1').each(function () { 53 if ($(this).is('[data-tags*="' + value + '"]')) { 54 $(this).css("opacity", "1"); 55 } else if (value == "") { 56 $(this).css("opacity", "1"); 57 } else { 58 $(this).css("opacity", "0.3"); 59 } 60 }); 61 }); 62 63 jQuery(window).scroll(function () { 64 var scroll = jQuery(window).scrollTop(); 65 if (scroll >= 100) { 66 jQuery(".header").addClass("smaller"); 67 } else { 68 jQuery(".header").removeClass("smaller"); 69 } 70 }); 71 72 jQuery(window).esAnimations({ 73 extraPercentageHeight: 0, 74 delay: 250, 75 strength: 50, 76 speed: 500, 77 easing: 'linear' 78 }); 79 80 81 if (jQuery('.brick-quote-2 .background').hasClass('bg-gray-1')) { 82 jQuery('.brick-quote-2 .quote-content .title b, .brick-quote-2 .quote-content .title strong').addClass('clr-green-1'); 83 } 84 85 if (jQuery('.brick-vacature-single-1').length) { 86 jQuery(document).on('gform_confirmation_loaded', function (event, formId) { 87 jQuery('.vacancy-signup').hide(); 88 jQuery('.thank-you').show(); 89 }); 90 } 91 92 if (jQuery('.brick-cta-1').length && jQuery('.brick-cta-1 .background .visual').hasClass('bg-blue-2')) { 93 jQuery('.brick-cta-1').addClass('blue-variant'); 94 } 95 96 jQuery('.brick-news-selected-1 .news-read-more-in').on('click', function () { 97 jQuery('.brick-news-selected-1 .item-news-archive-1:nth-child(4)').show(); 98 jQuery('.brick-news-selected-1 .item-news-archive-1:nth-child(5)').show(); 99 jQuery('.brick-news-selected-1 .item-news-archive-1:nth-child(6)').show(); 100 jQuery(this).hide(); 101 }); 102 103 104 jQuery('.brick-news-archive-1').on('click', '.new-read-more', function () { 105 var read_more = jQuery(this); 106 var url = read_more.data('next-page'); 107 108 109 showLoader(); 110 jQuery.ajax({ 111 type: 'get', 112 url: url, 113 dataType: 'HTML', 114 success: function (response) { 115 var html = jQuery(response); 116 117 118 html.find('.loop.loop-news-archive-1 .item.item-news-archive-1').insertBefore(".loop.loop-news-archive-1 .clear"); 119 120 if (html.find('.new-read-more').length) { 121 read_more.data('next-page', html.find('.new-read-more').data('next-page')); 122 } else { 123 read_more.hide(); 124 } 125 126 hideLoader(); 127 }, 128 }); 129 }) 130 131}); 132 133jQuery(window).on('resize', function () { 134 renderDimensions(); 135 topMenu(); 136 breakpointImages(); 137}); 138 139jQuery(window).on('scroll', function () { 140}); 141 142 143/** ESSENTIALS **/ 144jQuery('body,html').esJumper({ 145 offsetContainer: false, 146 breakpoints: [ 147 { 148 width: 768, 149 offsetContainer: false, 150 }, { 151 width: 480, 152 offsetContainer: false, 153 } 154 ], 155 offsetTop: 0, 156 perfectScroll: false, 157 blockSelector: '.block', 158 hasLazyload: false 159}); 160 161jQuery('.video').esVideo({ 162 initType: 'click', //load, click, popup, bg 163 resizeType: 'ratio', //ratio, container 164 mute: false, 165 controls: ['play-large', 'play', 'progress', 'current-time', 'mute', 'volume', 'captions', 'fullscreen'] 166}); 167 168jQuery('.video-background').esVideo({ 169 initType: 'bg', //load, click, popup, bg 170 resizeType: 'container', //ratio, container 171 bgContainer: ".background-in", 172 mute: false, 173 controls: ['play-large', 'play', 'progress', 'current-time', 'mute', 'volume', 'captions', 'fullscreen'] 174}); 175 176 177jQuery('.brick-featured-2 .columns').esEqual({ 178 itemSelector: ".column", 179 maxAuto: true, 180 maxAutoWidth: 768, 181 perRow: false, 182 extraAttributes: [] 183}); 184 185jQuery('.loop-steps-1').esEqual({ 186 itemSelector: ".title", 187 maxAuto: true, 188 maxAutoWidth: 480, 189 perRow: false, 190 extraAttributes: [] 191}); 192 193jQuery('.loop-vacature-selected-1').esEqual({ 194 itemSelector: ".vacature-loop-text", 195 maxAuto: true, 196 maxAutoWidth: 480, 197 perRow: false, 198 extraAttributes: [] 199}); 200 201jQuery(window).esAnimations({ 202 extraPercentageHeight: 0, 203 delay: 250, 204 strength: 50, 205 speed: 500, 206 easing: 'linear' 207}); 208 209 210jQuery('.brick-steps-1').esSlider({ 211 itemSelector: '.item-steps-1', 212 itemsVisible: 4, 213 itemsScroll: 1, 214 orientation: 'horizontal', 215 breakpoints: [ 216 { 217 width: 480, 218 itemsVisible: 1, 219 itemsScroll: 1, 220 orientation: 'horizontal', 221 }, 222 { 223 width: 768, 224 itemsVisible: 2, 225 itemsScroll: 1, 226 orientation: 'horizontal', 227 }, 228 { 229 width: 1024, 230 itemsVisible: 3, 231 itemsScroll: 1, 232 orientation: 'horizontal', 233 } 234 ], 235 arrows: true, 236 arrowLeft: '.arrow-left', 237 arrowRight: '.arrow-right',
238 auto: false, 239 autoDelay: 5000, 240 autoToggle: false, 241 autoToggleStart: '.play', 242 autoTogglePause: '.pause', 243 autoProgress: false, 244 autoProgressSelector: '.progress', 245 transition: true, 246 transitionDuration: 300, 247 transitionEasing: 'easeInOutExpo', 248 wrapper: true, 249 wrapperSelector: ".wrapper", 250 center: false, 251 loop: false, 252 dots: true, 253 dotsContainer: ".dots", 254 dotsItemGenerate: true, 255 dotsItemSelector: false, 256 scrollable: true, 257 draggable: true, 258 checkActive: false, 259 linkItemCheck: false, 260 linkItemSelector: ".link-item", 261 secondLinkItemCheck: false, 262 secondLinkItemSelector: ".link-item-second", 263 hoverStopAuto: false, 264 hoverStopAutoSelector: ".hover-stop", 265 setActiveAttribute: false, 266 setItemHeight: false, 267 onSlideChange: function (slider) { 268 }, 269}); 270 271jQuery('.brick-vacature-selected-1').esSlider({ 272 itemSelector: '.item-vacature-selected-1', 273 itemsVisible: 3, 274 itemsScroll: 1, 275 orientation: 'horizontal', 276 breakpoints: [ 277 { 278 width: 768, 279 itemsVisible: 1, 280 itemsScroll: 1, 281 } 282 ], 283 arrows: true, 284 arrowLeft: '.arrow-left', 285 arrowRight: '.arrow-right', 286 auto: false, 287 autoDelay: 5000, 288 autoToggle: false, 289 autoToggleStart: '.play', 290 autoTogglePause: '.pause', 291 autoProgress: false, 292 autoProgressSelector: '.progress', 293 transition: true, 294 transitionDuration: 300, 295 transitionEasing: 'easeInOutExpo', 296 wrapper: true, 297 wrapperSelector: ".wrapper", 298 center: false, 299 loop: false, 300 dots: true, 301 dotsContainer: ".dots", 302 dotsItemGenerate: true, 303 dotsItemSelector: false, 304 scrollable: false, 305 draggable: false, 306 checkActive: false, 307 linkItemCheck: false, 308 linkItemSelector: ".link-item", 309 secondLinkItemCheck: false, 310 secondLinkItemSelector: ".link-item-second", 311 hoverStopAuto: false, 312 hoverStopAutoSelector: ".hover-stop", 313 setActiveAttribute: false, 314 setItemHeight: false, 315 onSlideChange: function (slider) { 316 }, 317}); 318 319const $tnsCarousel = $('.brick-vacature-recruitnow-selected-1 .loop-vacature-recruitnow-selected-1'); 320$tnsCarousel.each(function () { 321 const tnsSlider = tns({ 322 container: this, 323 items: 1, 324 slideBy: 1, 325 gutter: 16, 326 edgePadding: 50, 327 loop: true, 328 autoplayButtonOutput: false, 329 controls: true, 330 nav: true, 331 controlsContainer: '.brick-vacature-recruitnow-selected-1 .job-slider-arrows', 332 preventActionWhenRunning: true, 333 mouseDrag: false, 334 responsive: { 335 768: { 336 item: 2, 337 }, 338 981: { 339 items: 3, 340 gutter: 24 341 } 342 } 343 }); 344}); 345 346 347/** EVENTS **/ 348jQuery('.item-faq-1 .faq-loop-title').on('click', function () { 349 var item = jQuery(this).parents('.item'); 350 var bottom = item.find('.faq-loop-text'); 351 352 if (item.hasClass('opened')) { 353 item.removeClass('opened'); 354 bottom.stop().slideUp(200); 355 } else { 356 item.addClass('opened'); 357 bottom.stop().slideDown(200); 358 } 359}) 360 361jQuery(".item-faq-1 .faq-loop-title").on('click', function () { 362 if (jQuery(this).hasClass('arrow-rotate')) { 363 jQuery(this).removeClass('arrow-rotate'); 364 365 } else { 366 jQuery(this).addClass('arrow-rotate'); 367 } 368}); 369 370 371/** FUNCTIONS **/ 372 373/** RENDER DIMENSIONS **/ 374function renderDimensions() { 375 var windowWidth = jQuery(window).width(); 376 var windowHeight = jQuery(window).height(); 377 378 var documentWidth = jQuery(document).width(); 379 var documentHeight = jQuery(document).height(); 380 381 jQuery('.stretch').each(function () { 382 var stretchElement = jQuery(this); 383 var baseElement = stretchElement.parents('.brick'); 384 if (jQuery(this).parents('.stretch-base').length) { 385 baseElement = stretchElement.parents('.stretch-base'); 386 } 387 var stretchPosition = stretchElement.offset(); 388 var blockPosition = baseElement.offset(); 389 390 /** STRETCH TOP TO TOP BLOCK **/ 391 if (stretchElement.hasClass('stretch-top')) { 392 stretchElement.css('top', '0px'); 393 stretchPosition = stretchElement.offset(); 394 var topDiff = blockPosition.top - stretchPosition.top; 395 if (parseInt(topDiff) < 0) { 396 stretchElement.css('top', parseInt(topDiff) + 'px'); 397 } 398 } 399 400 if (stretchElement.hasClass('stretch-top-margin')) { 401 stretchElement.css('top', '0px'); 402 stretchPosition = stretchElement.offset(); 403 var topDiff = blockPosition.top - stretchPosition.top; 404 if (parseInt(topDiff) < 0) { 405 stretchElement.css('margin-top', parseInt(topDiff) + 'px'); 406 } 407 } 408 409 /** STRETCH BOTTOM TO BOTTOM BLOCK **/ 410 if (stretchElement.hasClass('stretch-bottom')) { 411 stretchElement.css('bottom', '0px'); 412 stretchPosition = stretchElement.offset(); 413 var bottomDiff = (stretchPosition.top + stretchElement.height()) - (blockPosition.top + baseElement.height()); 414 if (parseInt(bottomDiff) < 0) { 415 stretchElement.css('bottom', parseInt(bottomDiff) + 'px'); 416 } 417 418 } 419 /** STRETCH RIGHT TO RIGHT VIEWPORT **/ 420 if (stretchElement.hasClass('stretch-right')) { 421 stretchElement.css('right', '0px'); 422 stretchPosition = stretchElement.offset(); 423 var rightDiff = (stretchPosition.left + stretchElement.width())
423- jQuery(window).width(); 424 if (parseInt(rightDiff) < 0) { 425 stretchElement.css('right', parseInt(rightDiff) + 'px'); 426 } 427 } 428 if (stretchElement.hasClass('stretch-right-margin')) { 429 stretchElement.css('right', '0px'); 430 stretchPosition = stretchElement.parent().offset(); 431 var rightDiff = Math.floor((stretchPosition.left + stretchElement.parent().width()) - jQuery(window).width()); 432 if (parseInt(rightDiff) < 0) { 433 stretchElement.css('margin-right', parseInt(rightDiff) + 'px'); 434 } 435 } 436 /** STRETCH LEFT TO LEFT VIEWPORT **/ 437 if (stretchElement.hasClass('stretch-left')) { 438 stretchElement.css('left', '0px'); 439 stretchPosition = stretchElement.offset(); 440 var leftDiff = Math.floor(-stretchPosition.left); 441 if (parseInt(leftDiff) < 0) { 442 stretchElement.css('left', parseInt(leftDiff) + 'px'); 443 } 444 } 445 }); 446 447} 448 449/** OTHER FUNCTIONS **/ 450 451function topMenu() { 452 let heightHeader = jQuery('.header').outerHeight(); 453 jQuery('.header-nav').css({ 454 'padding-top': heightHeader, 455 }); 456} 457 458function liveSearch() { 459 jQuery(".faq-search input[type=\"search\"]").on('keyup', function () { 460 jQuery(this).unhighlight(); 461 462 var filter = jQuery(this).val(); 463 var totalQuestionsFound = 0; 464 var block = jQuery(this).parents('.brick-in') 465 var faqEmpty = block.find('.faq-empty'); 466 if (filter.length != 0) { 467 468 var totalQuestions = 0; 469 var questions = block.find('.item-faq-1'); 470 questions.each(function () { 471 if (jQuery(this).text().search(new RegExp(filter, "i")) < 0) { 472 jQuery(this).removeClass('opened'); 473 jQuery(this).find('.faq-loop-text').hide(); 474 jQuery(this).hide() 475 } else { 476 totalQuestions++; 477 jQuery(this).show(); 478 jQuery(this).addClass('opened'); 479 jQuery(this).find('.faq-loop-text').show(); 480 jQuery(this).unhighlight().highlight(filter); 481 } 482 }); 483 totalQuestionsFound = totalQuestionsFound + totalQuestions; 484 } else { 485 jQuery(this).parents('.brick-in').find('.item-faq-1').each(function () { 486 jQuery(this).unhighlight(); 487 jQuery(this).show(); 488 }); 489 totalQuestionsFound = 1; 490 } 491 if (totalQuestionsFound == 0) { 492 faqEmpty.show(); 493 block.find('.faq-student, .faq-employer, .faq-zigzag').hide(); 494 } else { 495 faqEmpty.hide(); 496 block.find('.faq-student, .faq-employer, .faq-zigzag').show(); 497 } 498 }); 499} 500 501function editForm(scope) { 502 let $scope = scope ? jQuery(scope) : jQuery(document); 503 504 if ($scope.length === 0) { 505 $scope = jQuery(document); 506 } 507 508 let checkbox = $scope.find('.ginput_container input.gfield-choice-input, .rnFormWrapper .rnField.rncheckboxField input, .rnFormWrapper .rnField.rnagree-privacy input'); 509 checkbox.each(function () { 510 let $input = jQuery(this); 511 let $wrapper = $input.parent('.custom-radio'); 512 513 if ($wrapper.length === 0) { 514 $input.wrap('<label class="custom-radio"></label>'); 515 $wrapper = $input.parent('.custom-radio'); 516 } 517 518 if ($wrapper.find('> .radio-circle').length === 0) { 519 $input.after('<span class="radio-circle"></span>'); 520 } 521 }); 522 523 $scope.find('.oe_formElement .oe_fileElement span.oe_label, .rnFormWrapper .rnField label[for="cvFile"]').text('Heb je een CV? Zo ja: Upload die dan onderstaand!') 524} 525 526var scrollTop = 0; 527 528jQuery.fn.isInViewport = function () { 529 var elementTop = jQuery(this).offset().top; 530 var elementBottom = elementTop + jQuery(this).outerHeight(); 531 532 var viewportTop = jQuery(window).scrollTop(); 533 var viewportBottom = viewportTop + jQuery(window).height(); 534 535 return elementBottom > viewportTop && elementTop < viewportBottom; 536}; 537 538function renderAwards() { 539 if (jQuery('.usps-coin').isInViewport()) { 540 counter(); 541 } else { 542 jQuery(window).on('scroll', function () { 543 if (jQuery('.usps-coin').isInViewport()) { 544 counter(); 545 } 546 }) 547 } 548} 549 550function counter() { 551 jQuery('.count-up').each(function () { 552 var counter = jQuery(this); 553 setTimeout(function () { 554 jQuery({Counter: 0}).animate({Counter: counter.attr('data-count')}, { 555 duration: 1000, 556 easing: 'swing', 557 step: function (now) { 558 counter.text(Math.ceil(now)); 559 } 560 }); 561 }, 1000); 562 563 counter.removeClass('count-up'); 564 }); 565 566} 567 568function breakpointImages() { 569 let windowWidth = jQuery(window).width(); 570 let breakpointImg = jQuery('.breakpoint-images'); 571 572 breakpointImg.each(function () { 573 let imgAll = jQuery(this).find('.img-show'); 574 575 let imgNormal = jQuery(this).find('.img-show-normal'); 576 let imgDesktopBig = jQuery(this).find('.img-show-desktop-big'); 577 let imgDesktop = jQuery(this).find('.img-show-desktop'); 578 let imgLandscape = jQuery(this).find('.img-show-landscape'); 579 let imgPortrait = jQuery(this).find('.img-show-portrait'); 580 let imgMobile = jQuery(this).find('.img-show-mobile'); 581 582 if (windowWidth <= 480 && imgMobile.length) { 583 imgAll.not(imgMobile).hide(); 584 imgMobile.show(); 585 } else if (windowWidth <= 768 && imgPortrait.length) { 586 imgAll.not(imgPortrait).hide(); 587 imgPortrait.show(); 588 } else if (windowWidth <= 1024 && imgLandscape.length) { 589 imgAll.not(imgLandscape).hide(); 590 imgLandscape.show(); 591 } else if (windowWidth <= 1224 && imgDesktop.length) { 592 imgAll.not(imgDesktop).hide(); 593 imgDesktop.show(); 594 } else if (windowWidth <= 1920 && imgDesktopBig.length) { 595 imgAll.not(imgDesktopBig).hide(); 596 imgDesktopBig.show(); 597 } else { 598 imgAll.not(imgNormal).hide(); 599 imgNormal.show(); 600 } 601 }); 602} 603 604jQuery('.quickmenu select').on('change', function (e) { 605 window.location.href = e.target.value; 606}) 607 608jQuery(document).ready(function () { 609 jQuery('.filter-toggle').on('click', function () { 610 jQuery('body').toggleClass('filter-on'); 611 }); 612 613 jQuery('.filter-close').on('click', function () { 614 jQuery('body').toggleClass('filter-on'); 615 }); 616 617 jQuery('.filter-close-button').on('click', function () { 618 jQuery('body').toggleClass('filter-on'); 619 }); 620 621}); 622 623function getGravityFormScrollOffset($form) { 624 var extraOffset = jQuery(window).width() < 768 ? 150 : 200; 625 var headerHeight = (jQuery('header').first().outerHeight() || 0) + extraOffset; 626 627 if (jQuery('body').hasClass('admin-bar')) { 628 headerHeight += 32; 629 } 630 631 return Math.max($form.offset().top - headerHeight, 0); 632} 633 634function scrollGravityFormToTarget($target) { 635 if ($target.length === 0) { 636 return; 637 } 638 639 var targetTop = getGravityFormScrollOffset($target); 640 641 if (window.scrollTo) { 642 window.scrollTo({ 643 top: targetTop, 644 behavior: 'smooth' 645 }); 646 return; 647 } 648 649 jQuery('html, body').stop().animate({ 650 scrollTop: targetTop 651 }, 320); 652} 653 654function animateGravityFormStep(formId) { 655 var $wrapper = jQuery('#gform_wrapper_' + formId); 656 var $form = jQuery('#gform_' + formId); 657 658 if ($wrapper.length === 0 || $form.length === 0) { 659 return; 660 } 661 662 $wrapper.removeClass('gf-page-switching gf-page-enter-active').addClass('gf-page-enter'); 663 664 window.requestAnimationFrame(function () { 665 $wrapper.addClass('gf-page-enter-active'); 666 }); 667 668 window.setTimeout(function () { 669 $wrapper.removeClass('gf-page-enter gf-page-enter-active'); 670 }, 320); 671} 672 673jQuery(document).on('click', '.gform_next_button, .gform_previous_button', function () { 674 jQuery(this) 675 .closest('.gform_wrapper') 676 .addClass('gf-page-switching') 677 .attr('data-gf-scroll-pending', '1'); 678}); 679 680jQuery(document).on('gform_page_loaded', function (event, formId) { 681 var $form = jQuery('#gform_' + formId); 682 var $wrapper = jQuery('#gform_wrapper_' + formId); 683 684 editForm($wrapper.length ? $wrapper : $form); 685 animateGravityFormStep(formId); 686 window.setTimeout(function () { 687 scrollGravityFormToTarget($wrapper.length ? $wrapper : $form); 688 }, 20); 689 $wrapper.removeAttr('data-gf-scroll-pending'); 690}); 691 692jQuery(document).on('gform_post_render', function (event, formId) { 693 var $wrapper = jQuery('#gform_wrapper_' + formId); 694 var $form = jQuery('#gform_' + formId); 695 696 editForm($wrapper.length ? $wrapper : $form); 697 $wrapper.removeClass('gf-page-switching'); 698 699 if ($wrapper.attr('data-gf-scroll-pending') === '1') { 700 window.setTimeout(function () { 701 scrollGravityFormToTarget($wrapper.length ? $wrapper : $form); 702 $wrapper.removeAttr('data-gf-scroll-pending'); 703 }, 50); 704 } 705}); 706 707jQuery(document).on('gform_confirmation_loaded', function (event, formId) { 708 var $confirmation = jQuery('#gform_confirmation_wrapper_' + formId); 709 710 window.setTimeout(function () { 711 scrollGravityFormToTarget($confirmation); 712 }, 20); 713});
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.