/** * Custom Javascript - Specifically one-off and non-global functions */ var isTouchDevice = ('ontouchstart' in window || 'onmsgesturechange' in window); $(document).ready(function() { if( $('.slider-tabs').length ){ initTabSlider(); } if( $('.modal-target').length ){ initImageModal(); } if( $('.tabbed-content-ui').length ){ initTabbedContentUI(true) } if( $('section#timeline').length ){ initAnniversaryTimeline(); } if( $('#new-ad-portfolio').length ){ initNewAdPortfolio(); } if( $('.headshot-tiles').length ){ initHeadshotTiles(); } if( $('.faq-wrapper').length ){ initFAQAccordion(); } if( $('body.page-template-page-creative-showcase-cross-platform').length ){ initCrossPlatformCreativeShowcase(); } else if( $('#creative-showcase').length ){ initCreativeShowcase(); } else if( $('#filterable-grid').length ){ initCreativeShowcase(); } if( $('body').hasClass('page-template-page-single-page-event-template') ){ initSinglePageEventTemplate(); } if( $('#recertification').length ){ //initRecertification(); $('.event-month-wrapper').each(function(){ var numActive = $(this).find('.article-list__row.certificate-active').length; if(numActive<1){ $(this).hide(); } }); } if( $('body').hasClass('category-learning') ){ $('.has-sublinks .arrow-wrapper').click(function(){ var li = $(this).parent(); li.toggleClass('closed').toggleClass('open'); $('.' + li.attr('id')).slideToggle(); }); } if( $('body').hasClass('category-certification') || $('body').hasClass('iab-digital-media-sales-certification-overview') || $('body').hasClass('iab-ad-ops-certification-overview') || $('body').hasClass('iab-data-solutions-certification-overview') ){ //initModalAlert( 'Temporary Registration Issues', 'We are currently having an issue with our registration system. If you are having a problem resetting your password reach out to certification@iab.com.
We apologize for any inconvenience.' ); } if( $('body').hasClass('category-learning') || $('body').hasClass('about-iab-digital-leadership-program') || $('body').hasClass('advprogrammatic') ){ //initModalAlert( 'Temporary Registration Issues', 'We are currently having an issue with our registration system. To register for a class please email us at learning@iab.com.
We apologize for any inconvenience' ); } }); function trace(msg){ if(console){ console.log(msg); } } function addZero(i) { if (i < 10) { i = "0" + i; } return i; } function formatAMPM(hours) { return hours >= 12 ? 'PM' : 'AM'; } // // initTabSlider - configures a tab-like user interface with a sliding indicator; the html must match a specific template // function initTabSlider(){ $(".slider-tabs>ul li a").click(function(event) { event.preventDefault(); $(this).parent().addClass("current"); $(this).parent().siblings().removeClass("current"); var tab = $(this).attr("href"); var tabNumber = tab.replace("#", "").replace("tab-", ""); $(".slider-tabs>div>div").not(tab).css("display", "none"); $(tab).fadeIn(); $('.slider-arrow').animate({ width: $(this).parent().width(), left: $(this).parent().position().left }, 1000, function() { // Animation complete. }); history.replaceState(undefined, undefined, '#' + tabNumber); //$('.slider-arrow').css('width', $(this).parent().width()).css('left', $(this).parent().position().left); }); function selectTab( id ){ var newID = id.replace('#','').replace('tab-',''); var link = $('a[href="#tab-' + newID + '"]'); $(link).click(); } $('.slider-select').change(function(){ selectTab( $(this).val() ); }); if(document.location.hash){ var hashNumber = document.location.hash.replace('#',''); selectTab( '#tab-' + hashNumber ); setTimeout(function(){ window.scrollTo(0,0); }, 1); } else { $(".slider-tabs>ul li:first-child a").click(); } } // // initImageModal - add a click event on any image with modal-target class, when clicked the image shows full screen over a shaded layer // function initImageModal(){ // I was just using this when the cache on the site was enabled during testing - these css rules are already in custom_styles.css //var style = $(''); //$('html > head').append(style); $('body').append(''); var i = 1; var i = 1; $('.modal-target').each(function(){ $(this).addClass('modal-small-' + i).data('count', i); var src = $(this).attr('src'); $('body').append(''); $(this).click(function(){ var count = $(this).data('count'); //trace( 'clicked target - showing [' + count + ']' ); $('#modal-bg').fadeIn(); $('.modal-big-' + count).fadeIn(); }); i++; }); $('#modal-bg,.modal-big').click(function(){ $('.modal-big').fadeOut(); $('#modal-bg').fadeOut(); }); } // // // function initModalAlert( title, content ){ $('body').append(''); $('body').append(''); $('#modal-bg,#close-alert').click(function(){ $('#modal-alert').fadeOut(); $('#modal-bg').fadeOut(); }); $('#modal-bg,#modal-alert').fadeIn(); } // // // function initTabbedContentUI( slider ){ var listItems = $('.tabbed-content-ui>ul>li'); var contentDivs = $('.tabbed-content-ui>.content>div'); listItems.each(function(){ function activateEvent( target ){ var number = $( ".tabbed-content-ui>ul>li" ).index( target ); if( $(window).width() < 761 ){ window.location = contentDivs.eq( number).find('a').attr('href'); } else { if( !contentDivs.eq( number).is(':visible') ){ selectTab( number ); } } } $(this).mouseover(function(){ activateEvent( this ); }); $(this).click(function(){ //activateEvent( this ); var number = $( ".tabbed-content-ui>ul>li" ).index( this ); window.location = contentDivs.eq( number).find('a').attr('href'); }); }); // properly init (since its already showing, can't just selectTab() var first = listItems.eq(0); $('.slider').animate({ left: (first.position().left + first.width()/2 - 30) }, 200, function(){}); function selectTab( number ) { contentDivs.fadeOut(500); contentDivs.eq(number).fadeIn(500); var li = listItems.eq(number); $('.slider').animate({ left: (li.position().left + li.width() / 2 - 30) }, 500, function () { }); var id = li.find('img').attr('id'); $('.content').removeClass().addClass('content').addClass(id); $('.slider').removeClass().addClass('slider').addClass(id); } } jQuery(document).ready(function($){ /*filter certificate events*/ // $(".filtercertificate #true").on("click", function(e){ $(document).on('click', '.filtercertificate #true', function(e){ if(this.checked) { $(this).attr('checked','checked'); $('.certificate-disable').fadeOut(); /*$('.event-month-wrapper').each(function(){ var numActive = $(this).find('.article-list__row.certificate-active').length; if(numActive<1){ $(this).fadeOut(); } });*/ //alert("Checkbox is checked."); } else { $(this).removeAttr('checked'); $('.certificate-disable').fadeIn(); /*$('.event-month-wrapper').fadeIn();*/ // alert("Checkbox is unchecked."); } }); var getUrlParameter = function getUrlParameter(sParam) { var sPageURL = decodeURIComponent(window.location.search.substring(1)), sURLVariables = sPageURL.split('&'), sParameterName, i; for (i = 0; i < sURLVariables.length; i++) { sParameterName = sURLVariables[i].split('='); if (sParameterName[0] === sParam) { return sParameterName[1] === undefined ? true : sParameterName[1]; } } }; var tech = getUrlParameter('pryear'); //trace(tech); if(tech !=null) { // year is in url with get $( ".blocktext a" ).each(function() { var $aval = $( this ).html(); if($aval == tech){ // if is parrameter $(this).addClass('active'); } }); }else{ // is not in url with get var href = location.href.split('/'); var $year_string = href[href.length - 2 ].match(/\d+/); //console.log("not in url" + $year_string); $( ".blocktext a" ).each(function() { var $aval = $( this ).html(); if($aval == $year_string){ // if is parrameter $(this).addClass('active'); } }); } }); // // initAnniversaryTimeline - anniversary timeline // function initAnniversaryTimeline(){ $('.flik-timeline').flikScrollEffect(); $('section#timeline,section#timeline div#flik-timeline-overscroll').addClass('loaded'); // set variable for use in a couple places below var firstItemLeftEdgeStartingPosition = parseFloat($('.flik-timeline-item:first').offset().left); //trace('firstItemLeftEdgeStartingPosition is [' + firstItemLeftEdgeStartingPosition + ']' ); // set up click events var leftArrow = $('.left-arrow-wrapper'); leftArrow.click(function(){ //trace( 'click left' ); slide('left'); }); leftArrow.mouseenter(function(){ //trace( 'mouseover left' ); slide('left'); if(!isMobile()){ leftTimer = setInterval(function(){ slide('left'); }, 400); } }); leftArrow.mouseleave(function(){ //trace( 'mouseout left' ); clearInterval(leftTimer); //slide('left','easeOutCubic', 400); }); var rightArrow = $('.right-arrow-wrapper'); rightArrow.click(function(){ //trace( 'click right' ); slide('right'); }); rightArrow.mouseenter(function(){ //trace( 'mouseover right' ); slide('right'); if(!isMobile()){ rightTimer = setInterval(function(){ slide('right'); }, 400); } }); rightArrow.mouseleave(function(){ //trace( 'mouseout right' ); clearInterval(rightTimer); //slide('right','easeOutCubic', 400); }); //run some functions when the div scrolls - make sure we haven't reached the edge and update the year nav $('div#flik-timeline-overscroll').scroll(function() { hasEdgeBeenReached( 'left' ); hasEdgeBeenReached( 'right' ); updateYear(); }); //jump to year $('.year-row span').each(function(){ $(this).click(function(){ $('.selected').removeClass('selected'); $(this).addClass('selected'); jumpToYear($(this).data('year')); }); }); function isMobile(){ return ($(window).width() < 500); } function hasEdgeBeenReached( edge, increment ){ var firstItemLeftEdge = parseFloat($('.flik-timeline-item:first').offset().left); var lastItemRightEdge = parseFloat($('.flik-timeline-item:last').offset().left) + parseFloat($('.flik-timeline-item:last').width()); var rightEdgeOfWindow = ( $('#flik-timeline-overscroll').width() + $('#flik-timeline-overscroll').offset().left ) //trace( 'in hasEdgeBeenReached: firstItemLeftEdge = [' + firstItemLeftEdge + '] and lastItemRightEdge = ['+lastItemRightEdge+'] and firstItemLeftEdgeStartingPosition =['+firstItemLeftEdgeStartingPosition+'] and rightEdgeOfWindow = ['+rightEdgeOfWindow+']' ); if( edge == 'left' ){ if( firstItemLeftEdge > firstItemLeftEdgeStartingPosition ){ //trace('left edge has been reached, stop scrolling: firstItemLeftEdge = [' + firstItemLeftEdge + ']'); navigationArrows('left',true); return true; } else { //trace('left edge not reached, keep scrolling = [' + firstItemLeftEdge + '] and lastItemRightEdge = [' + lastItemRightEdge + ']'); navigationArrows('left',false); return false; } } else { if( lastItemRightEdge < rightEdgeOfWindow ){ //trace('right edge has been reached, stop scrolling'); navigationArrows('right',true); return true; } else { //trace('right edge not reached, keep scrolling'); navigationArrows('right',false); return false; } } } function navigationArrows(direction,endReached){ if(direction == 'left'){ if(endReached){ if($('.left-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.left-arrow-wrapper.arrow-wrapper').fadeOut( null, function() { $(this).removeClass('visible'); }); } if(!$('.right-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.right-arrow-wrapper.arrow-wrapper').fadeIn( null, function() { $(this).addClass('visible'); }); } } else { if(!$('.left-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.left-arrow-wrapper.arrow-wrapper').fadeIn( null, function() { $(this).addClass('visible'); }); } if(!$('.right-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.right-arrow-wrapper.arrow-wrapper').fadeIn( null, function() { $(this).addClass('visible'); }); } } } else { if(endReached){ if(!$('.left-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.left-arrow-wrapper.arrow-wrapper').fadeIn( null, function() { $(this).addClass('visible'); }); } if($('.right-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.right-arrow-wrapper.arrow-wrapper').fadeOut(null, function() { $(this).removeClass('visible'); }); } } else { if(!$('.left-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.left-arrow-wrapper.arrow-wrapper').fadeIn( null, function() { $(this).addClass('visible'); }); } if(!$('.right-arrow-wrapper.arrow-wrapper').hasClass('visible')){ $('.right-arrow-wrapper.arrow-wrapper').fadeIn( null, function() { $(this).addClass('visible'); }); } } } } function jumpToYear(year){ //trace('jump to year: [' + year + ']'); var found = false; var isFirst = false; var isLast = false; $('.flik-timeline-item').each(function(){ //trace('loop') if( $(this).data('date').indexOf(year) > -1 ){ //trace('found'); //$(this).addClass('found'); var leftPosition = parseFloat($(this).position().left); if($(this).is(':first-child')){ isFirst = true; } else if($(this).is(':last-child')) { isLast = true; } if(!isFirst){ leftPosition = leftPosition-90; } //trace('leftPosition is [' + leftPosition + ']'); $('ul.flik-timeline.flik-timeline-7').animate({ left:(-1 * leftPosition) },{ easing: 'linear', duration: 400, speed: 'fast', complete:function(){ //trace('done animating'); hasEdgeBeenReached('left'); } }); found = true; return false; } }); if(!found){ $('.flik-timeline-item').each(function(){ //trace('loop2') if( $(this).data('date').indexOf(year+1) > -1 ){ //trace('found'); $(this).addClass('found'); var leftPosition = parseFloat($(this).position().left); //trace('leftPosition is [' + leftPosition + ']'); if($(this).is(':first-child')){ isFirst = true; } else if($(this).is(':last-child')) { isLast = true; } if(!isFirst){ leftPosition = leftPosition-90; } $('ul.flik-timeline.flik-timeline-7').animate({ left:(-1 * leftPosition) },{ easing: 'linear', duration: 400, speed: 'fast', complete:function(){ //trace('done animating'); hasEdgeBeenReached('left'); } }); found = true; return false; } }); } if(!found){ $('.flik-timeline-item').each(function(){ //trace('loop3') if( $(this).data('date').indexOf(year+2) > -1 ){ //trace('found'); $(this).addClass('found'); var leftPosition = parseFloat($(this).position().left); //trace('leftPosition is [' + leftPosition + ']'); if($(this).is(':first-child')){ isFirst = true; } else if($(this).is(':last-child')) { isLast = true; } if(!isFirst){ leftPosition = leftPosition-90; } $('ul.flik-timeline.flik-timeline-7').animate({ left:(-1 * leftPosition) },{ easing: 'linear', duration: 400, speed: 'fast', complete:function(){ //trace('done animating'); hasEdgeBeenReached('left'); } }); found = true; return false; } }); } if(isFirst){ //trace('is first'); navigationArrows('left',true); } else if(isLast) { //trace('is last'); navigationArrows('right',true); } } function slide(direction, ease, duration, increment){ if(!ease){ ease = 'linear'; } if(!duration){ duration = 400; } if(!increment){ increment = 150; } //trace( 'Slide - direction: [' + direction + '] - ease: [' + ease + '] - duration: [' + duration + '] - increment: [' + increment + ']' ); if( !hasEdgeBeenReached(direction, increment)){ var firstItemLeftEdge = parseFloat($('.flik-timeline-item:first').offset().left); var lastItemLeftEdge = parseFloat($('.flik-timeline-item:last').offset().left); var lastItemRightEdge = lastItemLeftEdge + parseFloat($('.flik-timeline-item:last').width()); var rightEdgeOfWindow = ($('#flik-timeline-overscroll').width() + $('#flik-timeline-overscroll').offset().left); var leftEdgeOfWindow = $('#flik-timeline-overscroll').offset().left; if(!firstItemLeftEdge){ firstItemLeftEdge = 0; } //trace('firstItemLeftEdge is [' + firstItemLeftEdge + '] and lastItemLeftEdge = ['+lastItemLeftEdge+'] and lastItemRightEdge = ['+lastItemRightEdge+']'); $('ul.flik-timeline.flik-timeline-7').stop( true, true ); if(direction == 'right'){ if( (lastItemRightEdge - increment) < rightEdgeOfWindow ){ //trace('this will go too far right!'); increment = lastItemRightEdge - rightEdgeOfWindow; clearInterval(rightTimer); } //trace('firstItemLeftEdge is [' + firstItemLeftEdge + '] and increment is [' + increment + ']'); $('ul.flik-timeline.flik-timeline-7').animate({left:'-='+increment},{ easing: ease,duration: duration, speed: 'slow'}); } else { if( firstItemLeftEdge + increment > leftEdgeOfWindow ){ increment = leftEdgeOfWindow - firstItemLeftEdge; //trace('this will go too far left! new increment is [' + increment + ']'); $('ul.flik-timeline.flik-timeline-7').animate({left:0},{ easing: ease,duration: duration, speed: 'slow'}); clearInterval(leftTimer); } else { $('ul.flik-timeline.flik-timeline-7').animate({left:'+='+increment},{ easing: ease,duration: duration, speed: 'slow'}); } //trace('firstItemLeftEdge is [' + firstItemLeftEdge + '] and increment is [' + increment + ']'); } updateYear(); } } function updateYear(){ var timelineLeftEdge = $('#flik-timeline-overscroll').offset().left; var timelineWidth = $('ul.flik-timeline').innerWidth(); var timelineCenter = timelineLeftEdge + (timelineWidth/2); //trace( 'timelineCenter is [' + timelineCenter + ']' ); $('.flik-timeline-item').each(function(){ // var itemLeft = $(this).offset().left; var itemWidth = $(this).width(); var itemRight = itemLeft + itemWidth; if( ( timelineCenter > itemLeft ) && ( timelineCenter < itemRight ) ){ //trace( 'found the center item! left is [' + itemLeft + '] and right is [' + itemRight + ']' ); //$(this).css('border-top','5px solid yellow'); var date = $(this).data('date'); var year = date.replace(/\D/g,'');; //trace('year is [' + year + ']'); $('.selected').removeClass('selected'); $('.year-row span[data-year="' + year + '"]').addClass('selected'); } }); } } // // initRecertification - recertification // function initRecertification(){ } function showCityClasses( target ){ //trace('now in showCityClasses, target is [' + target + ']') $('.class-location').hide(); $('.class-location.' + target ).show(); } // // initNewAdPortfolioLEAN - initializing the New Ad Portfolio LEAN page, // function initNewAdPortfolioLEAN(){ var thumbs = $('#gallery').slippry({ slippryWrapper: '
', transition: 'horizontal', pager: false, auto: false, captions: false, onSlideBefore: function (el, index_old, index_new) { $('.thumbs a img').removeClass('active'); $('img', jQuery('.thumbs a')[index_new]).addClass('active'); } }); $('.thumbs a').unbind('click').click(function () { thumbs.goToSlide($(this).data('slide')); return false; }); } // // initNewAdPortfolio - initializing the New Ad Portfolio page, including a custom slider and other functionality // var center_slide = 1; var counter = 1; var slider_wrapper_width = $('.slider-wrapper').width(); var autoPlay; function initNewAdPortfolio() { $('.subnav-close').click(function(){ $('section#new-ad-portfolio-subnav').toggleClass('mobile-nav-open') }); /* Device Slider */ //var center_slide = 1; //var counter = 1; //var slider_wrapper_width = $('.slider-wrapper').width(); //var autoPlay; $(window).resize(function(){ slider_wrapper_width = $('.slider-wrapper').width(); positionAd(); if($(window).width() > 736 ){ initSlider(); } }); function slide( direction ){ var increment; if($(window).width() < 550 ){ increment = slider_wrapper_width; } else { increment = slider_wrapper_width/2; } center_slide += 1; /*if(direction == 'previous'){ var next_slide_img_position = $('.devices div[data-device="' + (center_slide - 1) + '"] img').position(); var next_slide_img_width = $('.devices div[data-device="' + (center_slide - 1) + '"] img').width(); $( ".devices" ).animate({ left: "+=" + increment }, 400, function() { positionAd(); }); center_slide -= 1; $('.ad.current').removeClass('current').fadeOut(); $('.ad[data-device="' + (center_slide) + '"]').addClass('current').fadeIn(); ads.animate({ left: next_slide_img_position.left, top: next_slide_img_position.top, width: next_slide_img_width }, 800, function() {}); //} else if( direction == 'next' && (center_slide != $('.devices div.device').length)) { } else {*/ var next_slide = $('.devices div[data-device="' + center_slide + '"] img'); var next_slide_img_position = next_slide.position(); var next_slide_img_width = next_slide.width(); $( ".devices" ).animate({ left: "-=" + increment }, 400, function() { positionAd(); //trace('counter is [' + counter + ']'); if(counter > 1){ $('.devices .device:last').after($('.devices .device').eq(center_slide-2).clone()); $('.devices .device:last').attr('data-device', counter+3); $('.ads .ad:last').after($('.ads .ad').eq(center_slide-2).clone()); $('.ads .ad:last').attr('data-device', counter+3); } }); counter++; $('.ad.current').removeClass('current').animate({ opacity: 0 }, 300, function() {}); $('.ad[data-device="' + (center_slide) + '"]').addClass('current').animate({ opacity: 1 }, 300, function() {}); var ads = $('.ads'); ads.animate({ left: next_slide_img_position.left, top: next_slide_img_position.top, width: next_slide_img_width }, 800, function() {}); //trace('center_slide is [' + center_slide + ']'); //trace('ad.current.index is [' + $('.ad.current').index() + ']'); /*} else { center_slide = 1; var next_slide_img_position = $('.devices div[data-device="' + (center_slide) + '"] img').position(); var next_slide_img_width = $('.devices div[data-device="' + (center_slide) + '"] img').width(); $( ".devices" ).animate({ left: 0 }, 400, function() { positionAd(); }); $('.ad.current').removeClass('current').fadeOut(); $('.ad[data-device="' + (center_slide) + '"]').addClass('current').fadeIn(); ads.animate({ left: next_slide_img_position.left, top: next_slide_img_position.top, width: next_slide_img_width }, 800, function() {}); }*/ $('.devices .center').removeClass('center'); $('.devices div[data-device="' + (center_slide) + '"]').addClass('center'); } function positionAd(){ var img_position = $('.devices div.center img').position(); var img_width = $('.devices div.center img').width(); $( ".ads" ).stop(true,false).animate({ width: img_width, left: img_position.left, top: img_position.top }, 200, function() {}); } function updateSlideInfo(){ $('.devices').removeClass('center'); $('.devices div[data-device="' + (center_slide) + '"]').addClass('center'); } function initSlider(){ if($(window).width() < 550 ){ $('.devices>div').width( slider_wrapper_width ); } else { $('.devices>div').width( slider_wrapper_width/2 ); } var img_position = $('.devices div.center img').position(); var img_width = $('.devices div.center img').width(); if (img_position) { $('.ads').stop().css({ "width": img_width, "left": img_position.left, "top": img_position.top }); } clearInterval(autoPlay); autoPlay = setInterval(function(){ slide('next') }, 2400); } function stopAutoPlay() { clearInterval(autoPlay); } if($(window).width() > 736 ) { initSlider(); } /* Galleries */ function initRatioGallery( startNum ){ console.log('in initRatioGallery - startNum is [' + startNum + ']'); if(!startNum){ startNum = 1; } $('.ratio-gallery-wrapper,.backdrop').fadeIn(); var ratio_thumbs = $('#ratio-gallery').slippry({ slippryWrapper: '
', transition: 'horizontal', pager: false, auto: false, captions: false, start: startNum, onSlideBefore: function (el, index_old, index_new) { $('.ratio-gallery-wrapper .thumbs a img').removeClass('active'); $('img', $('.ratio-gallery-wrapper .thumbs a')[index_new]).addClass('active'); } }); $('.ratio-gallery-wrapper .thumbs a').unbind('click').click(function () { ratio_thumbs.goToSlide($(this).data('slide')); return false; }); } function initLEANGallery( startNum ){ if(!startNum){ startNum = 1; } $('.lean-gallery-wrapper,.backdrop').fadeIn(); var lean_thumbs = $('#lean-gallery').slippry({ slippryWrapper: '
', transition: 'horizontal', pager: false, auto: false, captions: false, start: startNum, onSlideBefore: function (el, index_old, index_new) { $('.lean-gallery-wrapper .thumbs li a').removeClass('active'); $('.lean-gallery-wrapper .thumbs li').eq(index_new).find('a').addClass('active'); } }); $('.lean-gallery-wrapper .thumbs a').unbind('click').click(function () { lean_thumbs.goToSlide($(this).data('slide')); return false; }); } function initNewMediaGallery( startNum ){ if(!startNum){ startNum = 1; } $('.newmedia-gallery-wrapper,.backdrop').fadeIn(); var newmedia_thumbs = $('#newmedia-gallery').slippry({ slippryWrapper: '
', transition: 'horizontal', pager: false, auto: false, captions: false, start: startNum, onSlideBefore: function (el, index_old, index_new) { $('.newmedia-gallery-wrapper .thumbs a img').removeClass('active'); $('img', $('.newmedia-gallery-wrapper .thumbs a')[index_new]).addClass('active'); } }); $('.newmedia-gallery-wrapper .thumbs a').unbind('click').click(function () { newmedia_thumbs.goToSlide($(this).data('slide')); return false; }); } //set click event for initializing galleries $('.ratio-gallery-links span,.ratio-gallery-link').click(function(){ initRatioGallery( $(this).data('slide') ); }); $('.lean-gallery-link').click(function(){ console.log('test'); initLEANGallery(); }); $('.newmedia-gallery-link').click(function(){ initNewMediaGallery(); }); if( document.URL.indexOf('show=newmediagallery') > -1 ){ initNewMediaGallery(); } else if( document.URL.indexOf('show=leangallery') > -1 ){ initLEANGallery(); } else if( document.URL.indexOf('show=ratiogallery') > -1 ){ initRatioGallery(); } //When to close overlays $('.backdrop,.overlay-close').click(function(){ $('.overlay-wrapper,.backdrop').fadeOut(); }); } // // initHeadshotTiles - initializing the user interface for Data Rockstars and Native Predictions (News) item // var currentHeadshot = null; function initHeadshotTiles(){ var maxNumberHeadshots = $('.tile.headshot').length; $('.tiles-wrapper .tile.headshot, .tiles-wrapper .tile.link.open_headshot').click(function(){ $wrapper = $(this).closest('.tiles-wrapper'); var id = $(this).data('id'); currentHeadshot = id; $('.backdrop').fadeIn(); $wrapper.find('.tile-dialog.dialog-' + id).fadeIn(); }); $('.backdrop,.dialog-close').click(function(){ $('.tile-dialog').fadeOut(); $('.backdrop').fadeOut(); currentHeadshot = null; }); if( document.URL.indexOf('winner=') > -1 ){ var winnerName = getUrlParameter('winner'); $('.tiles-wrapper .tile[data-shortname="' + winnerName + '"]').click(); } else if( document.URL.indexOf('show=') > -1 ){ var showTarget = getUrlParameter('show'); $('.tiles-wrapper .tile[data-shortname="' + showTarget + '"]').click(); } $('.dialog-prev').click(function(){ $wrapper = $('.tile-dialog:visible').closest('.tiles-wrapper'); var maxNumberHeadshots = $wrapper.find('.tile.headshot').length; if(currentHeadshot == 1){ currentHeadshot = maxNumberHeadshots; } else { currentHeadshot--; } $('.tile-dialog').fadeOut(); $wrapper.find('.tile[data-id="' + currentHeadshot + '"]').click(); }); $('.dialog-next').click(function(){ $wrapper = $('.tile-dialog:visible').closest('.tiles-wrapper'); var maxNumberHeadshots = $wrapper.find('.tile.headshot').length; if( currentHeadshot == maxNumberHeadshots ){ currentHeadshot = 1; } else { currentHeadshot++; } $('.tile-dialog').fadeOut(); $wrapper.find('.tile[data-id="' + currentHeadshot + '"]').click(); }); } // // getUrlParameter - a subroutine to get a parameter's value from the URL // var getUrlParameter = function getUrlParameter(sParam) { var sPageURL = decodeURIComponent(window.location.search.substring(1)), sURLVariables = sPageURL.split('&'), sParameterName, i; for (i = 0; i < sURLVariables.length; i++) { sParameterName = sURLVariables[i].split('='); if (sParameterName[0] === sParam) { return sParameterName[1] === undefined ? true : sParameterName[1]; } } }; // // initFAQAccordion - Initializing the Q&A accordion // function initFAQAccordion(){ $('.faq-question').click(function(){ if( !$(this).hasClass('open') ){ $('.faq-answer.open').slideUp(); $('.open').removeClass('open'); $(this).addClass('open').next('.faq-answer').slideDown().addClass('open'); } else { $('.faq-answer.open').slideUp(); $('.open').removeClass('open'); } }); } // // initCreativeShowcase - initializing the Creative Lab page // function initCreativeShowcase(){ $('.campaign-tile').click(function(){ var count = $(this).data('count'); if( $(this).data('clickevent') == 'overlay' || !$(this).data('clickevent')){ $('.campaign-dialog[data-count="' + count + '"]').addClass('current').fadeIn(); $('.backdrop').fadeIn(); setCampaignSlideshowHeight(); } else if( $(this).data('clickevent') == 'int_link' ){ window.open($(this).data('url')); } else if( $(this).data('clickevent') == 'ext_link' ){ window.open($(this).data('url'), '_blank'); } if( typeof ga !== 'undefined' ) { if( $(this).find('.campaign-tile-title').length || $(this).data('url').length ){ var title; if( $(this).find('.campaign-tile-title').length ){ title = $(this).find('.campaign-tile-title').text(); } else { title = $(this).data('url'); } ga('send', 'event', document.title, 'click', title); } } }); $('.backdrop,.close-dialog').click(function(){ $('.campaign-dialog').removeClass('current').fadeOut(); $('.backdrop').fadeOut(); }); $('.campaign-dialog-prev').click(function(){ var curid = $('.campaign-dialog.current').data('count'); var maxnum = $('.campaign-dialog').length; var nextid; if(curid == 1){ nextid = maxnum; } else { nextid = curid-1; } $('.campaign-dialog.current').removeClass('current').fadeOut(); $('.campaign-dialog[data-count="' + nextid + '"]').addClass('current').fadeIn(); }); $('.campaign-dialog-next').click(function(){ var curid = $('.campaign-dialog.current').data('count'); var maxnum = $('.campaign-dialog').length; var nextid; if(curid == maxnum){ nextid = 1; } else { nextid = curid+1; } $('.campaign-dialog.current').removeClass('current').fadeOut(); $('.campaign-dialog[data-count="' + nextid + '"]').addClass('current').fadeIn(); }); if( $('body').hasClass('page-template-page-inside-influence') ){ $('.campaign-dialog .prev.campaign-dialog-prev,.campaign-dialog .next.campaign-dialog-next').css('top',$(window).height()*.3); } if( !isTouchDevice ){ $('.filter-row .filter').hover( function() { $( this ).addClass( "open" ); trace( 'desktop hover: add "open" now' ); }, function() { $( this ).removeClass( "open" ); trace( 'desktop hover: remove "open" now' ); } ); } else { $('.filter-row .filter').on('click', function(e) { if (e.target !== this){ trace('mobile click hit child element, not toggling'); return; } $(this).toggleClass('open'); trace( 'mobile click: toggle "open" now' ); }); } if( $.urlParam('show') ){ $( '.filter-row .filter ul li.' + $.urlParam('show') + ' ' ).not( '.category-title' ).addClass('selected'); filterCampaigns( $.urlParam('show') ); } $('.filter-row .filter ul li').click(function(){ if( $(this).hasClass('selected') ){ $(this).removeClass('selected'); } else { $(this).siblings('li.selected').removeClass('selected'); $(this).toggleClass('selected'); } filterCampaigns( $(this).data('type') ); trace( 'remove "open" now' ); $('.filter-row .filter.open').removeClass('open'); }); $('.viewall').click(function(){ filterCampaigns( 'clear' ); }); $('.slideshow-wrapper').each(function(){ var el = $(this); var count = el.find('.slideshow').attr('id').replace('slideshow',''); el.find('.slideshow-nav .button').click(function(){ if( !$(this).hasClass('current') ){ el.find('.button.current').removeClass('current'); $(this).addClass('current'); campaignSlideshow( $(this).index(), count); } }); }); if( $.urlParam('v') ){ $('.campaign-tile[data-count="' + $.urlParam('v') + '"]').click(); } if( $.urlParam('c') ){ $('.filter.categories ul li[data-value="' + $.urlParam('c') + '"]').click(); } var div, n, v = document.getElementsByClassName("youtube-player"); for (n = 0; n < v.length; n++) { div = document.createElement("div"); div.setAttribute("data-id", v[n].dataset.id); div.innerHTML = youtubeEmbedThumb(v[n].dataset.id); div.onclick = youtubeEmbedIframe; v[n].appendChild(div); } function youtubeEmbedThumb(id) { var thumb = '', play = '
'; return thumb.replace("ID", id) + play; } function youtubeEmbedIframe() { var iframe = document.createElement("iframe"); var embed = "https://www.youtube.com/embed/ID?autoplay=0"; iframe.setAttribute("src", embed.replace("ID", this.dataset.id)); iframe.setAttribute("frameborder", "0"); iframe.setAttribute("allowfullscreen", "1"); this.parentNode.replaceChild(iframe, this); } function filterCampaigns( type ){ var urlparam = ''; if( type == 'clear' || $('.filter-row .filter ul li.selected').length < 1 ){ $('.selected').removeClass('selected'); $('.campaign-tile').each(function(){ $(this).fadeIn(); }); } else { $('.campaign-tile').each(function(){ $(this).fadeIn(); }); $('.filter-row .filter').each(function(){ var thisType = $(this).data('type'); var numberSelected = $(this).find('.selected').length; if( numberSelected < 1 ){ return true; } var type = $(this).data('type'); var valuesArray = []; $('li[data-type="' + type + '"].selected').each(function(){ valuesArray.push( $(this).data('value').toString() ); }); $('.campaign-tile').each(function(){ var curValuesArray = $(this).attr('data-' + type).replace(' ','').split(','); var pass = false; for (var i = 0; i < curValuesArray.length; ++i) { if( ($.inArray( curValuesArray[i], valuesArray) !== -1) || ( curValuesArray[i] == valuesArray ) ){ pass = true; } else { //trace('fail..'); } } if( pass ){ //$(this).fadeIn(); } else { $(this).fadeOut(); } }); }); if( $('.campaign-tile:visible').length < 1 ){ $('.no-results').fadeIn(); } else { $('.no-results').fadeOut(); } } } function campaignSlideshow( change, count ){ var $wrapper = $('#slideshow' + count); var currentSlideNum = $wrapper.find('.current').index(); var targetSlideNum = null; var totalSlideCount = $wrapper.find('li').length - 1; if( change == 'prev' ){ if( currentSlideNum == 0 ){ targetSlideNum = totalSlideCount; } else { targetSlideNum = currentSlideNum - 1; } } else if ( change == 'next' ){ if( currentSlideNum == totalSlideCount ){ targetSlideNum = 0; } else { targetSlideNum = currentSlideNum + 1; } } else { targetSlideNum = change; } $wrapper.find('li').eq(targetSlideNum).addClass('nextUp'); $wrapper.find('li.current').fadeOut().removeClass('current'); $wrapper.find('li.nextUp').fadeIn(null,function(){ setCampaignSlideshowHeight(); setTimeout(function(){ setCampaignSlideshowHeight(); }, 2000); }).addClass('current').removeClass('nextUp'); } function setCampaignSlideshowHeight(){ $('.slideshow:visible').each(function(){ var count = $(this).attr('id').replace('slideshow',''); var slideHeight = null; var $currentSlide = $('#slideshow' + count + ' li.current'); if( $currentSlide.find('div.youtube-player').length ) { slideHeight = $currentSlide.find('div.youtube-player').outerHeight(); } else if( $currentSlide.find('img').length ){ slideHeight = $currentSlide.find('img').height(); } else if( $currentSlide.find('iframe').length ) { slideHeight = $currentSlide.find('iframe').height(); } if( slideHeight > 0 ){ $('#slideshow' + count).height( slideHeight ).css('min-height',0); } else { $('#slideshow' + count).css('min-height','315px'); } }); } } // // initCrossPlatformCreativeShowcase - initializing the Creative Lab Cross Platform page // function initCrossPlatformCreativeShowcase(){ //init jquery ui tabs in each campaign dialog $('.campaign-tab-wrapper').each(function(){ var curId = $(this).attr('id'); $('#' + curId).tabs(); }); //init click event on campaign thumb $('.campaign-tile').click(function(){ var count = $(this).data('count'); $('.campaign-dialog[data-count="' + count + '"]').addClass('current').fadeIn(null,function(){ $(this).height( $(this).height( $(window).outerHeight()*.8 ) ); $('html').addClass('fixed-scroll'); }); $('.backdrop').fadeIn(); setCampaignSlideshowHeight(); }); //init click event to close dialog $('.backdrop,.close-dialog').click(function(){ $('.campaign-dialog').fadeOut(); $('.backdrop').fadeOut(); $('html').removeClass('fixed-scroll'); }); //init slideshow and slideshow nav $('.slideshow-wrapper').each(function(){ var el = $(this); var id = el.find('.slideshow').attr('id'); el.find('.slideshow-nav .button').click(function(){ if( !$(this).hasClass('current') ){ el.find('.button.current').removeClass('current'); $(this).addClass('current'); campaignSlideshow( $(this).index(), id); } }); }); // set up youtube video player var div, n, v = document.getElementsByClassName("youtube-player"); for (n = 0; n < v.length; n++) { div = document.createElement("div"); div.setAttribute("data-id", v[n].dataset.id); div.innerHTML = youtubeEmbedThumb(v[n].dataset.id); div.onclick = youtubeEmbedIframe; v[n].appendChild(div); } function youtubeEmbedThumb(id) { var thumb = '', play = '
'; return thumb.replace("ID", id) + play; } function youtubeEmbedIframe() { var iframe = document.createElement("iframe"); var embed = "https://www.youtube.com/embed/ID?autoplay=0"; iframe.setAttribute("src", embed.replace("ID", this.dataset.id)); iframe.setAttribute("frameborder", "0"); iframe.setAttribute("allowfullscreen", "1"); this.parentNode.replaceChild(iframe, this); } function campaignSlideshow( change, id ){ var $wrapper = $('#' + id); var currentSlideNum = $wrapper.find('.current').index(); var targetSlideNum = null; var totalSlideCount = $wrapper.find('.slide').length - 1; if( change == 'prev' ){ if( currentSlideNum == 0 ){ targetSlideNum = totalSlideCount; } else { targetSlideNum = currentSlideNum - 1; } } else if ( change == 'next' ){ if( currentSlideNum == totalSlideCount ){ targetSlideNum = 0; } else { targetSlideNum = currentSlideNum + 1; } } else { targetSlideNum = change; } $wrapper.find('.slide').eq(targetSlideNum).addClass('nextUp'); $wrapper.find('.slide.current').fadeOut().removeClass('current'); $wrapper.find('.slide.nextUp').fadeIn(null,function(){ setCampaignSlideshowHeight(); setTimeout(function(){ setCampaignSlideshowHeight(); }, 2000); }).addClass('current').removeClass('nextUp'); } function setCampaignSlideshowHeight(){ $('.slideshow:visible').each(function(){ var id = $(this).attr('id'); var slideHeight = null; var $currentSlide = $('#' + id + ' .slide.current'); if( $currentSlide.find('div.youtube-player').length ) { slideHeight = $currentSlide.find('div.youtube-player').outerHeight(); } else if( $currentSlide.find('img').length ){ slideHeight = $currentSlide.find('img').height(); } else if( $currentSlide.find('iframe').length ) { slideHeight = $currentSlide.find('iframe').height(); } if( slideHeight > 0 ){ $('#' + id).height( slideHeight ).css('min-height',0); } else { $('#' + id).css('min-height','315px'); } }); } } /** * Get a URL parameter * $.urlParam('member') */ $.urlParam = function(name){ var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href); if (results==null){ return null; } else{ return results[1] || 0; } }; // // initSinglePageEventTemplate - initializing code for the single page event template // function initSinglePageEventTemplate(){ var nav = $('.page-nav'); var offset = $('.page-nav').offset().top; $(window).scroll(function() { if( $(this).scrollTop() > offset ) { nav.addClass('page-nav-stuck'); } else { nav.removeClass('page-nav-stuck'); } }); $("a.nav-link").on('click', function(event) { if (this.hash !== "") { event.preventDefault(); var hash = this.hash; if( hash.length ){ $('html, body').animate({ scrollTop: $(hash).offset().top-200 }, 800, function(){ window.location.hash = hash; }); } } }); $('.mobile-menu-btn').click(function(){ $('.page-nav-wrapper').css('top', $('.page-nav').height() + $('.page-nav').position().top ); $('.page-nav-wrapper').toggleClass('visible'); $('.mobile-menu-btn').toggleClass('open'); }); $('.page-nav-wrapper a.nav-link').click(function(){ $('.page-nav-wrapper').removeClass('visible'); }); $('.speaker').click(function(){ var count = $(this).data('count'); var $wrapper = $(this).closest('section'); $wrapper.find('.speaker-' + count).fadeIn(null, function(){ var $target = $('.speaker-' + count); var pageNavHeight = $('.page-nav').height() + $('.page-nav').position().top; $target.css({ 'top': pageNavHeight + 25, 'height': $(window).height() - pageNavHeight - 30 }); }); }); $('.close-speaker-dialog').click(function(){ $('.speaker-dialog').fadeOut(); }); $('.logo-dialog-link.has-dialog').click(function(){ var count = $(this).data('count'); $('.logo-' + count).fadeIn(); }); $('.close-logo-dialog').click(function(){ $('.logo-dialog').fadeOut(); }); var wrapper = $('#slider'); setHeight(wrapper); var slider = wrapper.unslider({ autoplay: true, delay: 5000, nav: true, arrows: false, animation: 'fade', animateHeight: true }); wrapper.height('initial'); setTimeout(function(){ setHeight(wrapper); }, 3000); $('#slider ul li').show(); function setHeight(target){ var height = 150; target.find('li').each(function(){ if( $(this).height() > height ){ height = $(this).height(); } }); target.height( height ); } /** * Ensure the first tab of an agenda always loads. */ $('#agenda #tab__1').on('click touchend', function() { if (typeof $('#agenda #tab__1__content') != 'undefined') { $('#agenda #tab__1__content').addClass('active'); } }); } jQuery( document ).ready(function() { jQuery("#module-hero-module__footer-container-mobile-id").on("shown", function() { jQuery('.module-hero-module__footer-header-action-mobile i') .removeClass() .addClass('bold iabicon-arrow-in-circle-up'); }); jQuery("#module-hero-module__footer-container-mobile-id").on("hidden", function() { jQuery('.module-hero-module__footer-header-action-mobile i') .removeClass() .addClass('bold iabicon-arrow-in-circle-down'); }); });