// initialize jwplayer var playerInstance = jwplayer('player'); // player dom elements var playerContainerEl = document.querySelector('.player-container'); // returns video player position from top of document function getElementOffsetTop(el) { var boundingClientRect = el.getBoundingClientRect(); var bodyEl = document.body; var docEl = document.documentElement; var scrollTop = window.pageYOffset || docEl.scrollTop || bodyEl.scrollTop; var clientTop = docEl.clientTop || bodyEl.clientTop || 0; return Math.round(boundingClientRect.top + scrollTop - clientTop); } // returns the current y scroll position function getScrollTop() { var docEl = document.documentElement; return (window.pageYOffset || docEl.scrollTop) - (docEl.clientTop || 0); } // configure jwplayer instance playerInstance.setup({ autostart: true, playlist: 'https://cdn.jwplayer.com/v2/playlists/mYdavspX', primary: 'html5', setFullscreen: true, width: '100%' }); // when jwplayer instance is ready playerInstance.on('ready', function() { var config = playerInstance.getConfig(); var utils = playerInstance.utils; // get height of player element var playerHeight = config.containerHeight; // flag determining whether close has been clicked var closed = true; // CHANGED // flag determing whether player is playing var playing = false; // ADDED // eventhandler for when close button is being pressed document.getElementsByClassName('icon-close')[0].addEventListener('click', () => { closed = true; onScrollViewHandler(); }); playerInstance.on('play', function() { closed = false; playing = true; // ADDED }).on('pause', function () { playing = false; // ADDED }).on('adPlay', function() { closed = false; // ADDED playing = true; // ADDED }).on('adPause', function() { playing = false; // ADDED }); // get player element position from top of document var playerOffsetTop = getElementOffsetTop(playerContainerEl); // set player container to match height of actual video element playerContainerEl.style.height = playerHeight + 'px'; // below we handle window scroll event without killing performance function onScrollViewHandler() { var minimized = getScrollTop() >= playerOffsetTop; if (closed && minimized) { minimized = false; jwplayer().pause(); playing = false; // ADDED } else if (!minimized && !playing) { closed = true; // ADDED } utils.toggleClass(playerContainerEl, 'player-minimize', minimized); // update the player's size so the controls are adjusted playerInstance.resize(); } // namespace for whether or not we are waiting for setTimeout() to finish var isScrollTimeout = false; // window onscroll event handler window.onscroll = function() { // skip if we're waiting on a scroll update timeout to finish if (isScrollTimeout) return; // flag that a new timeout will begin isScrollTimeout = true; // otherwise, call scroll event view handler onScrollViewHandler(); // set new timeout setTimeout(function() { // reset timeout flag to false (no longer waiting) isScrollTimeout = false; }, 80); }; });

Days of Summer is here! Activision is kicking off the newest seasonal event for Call of Duty starting June 27 for Infinite Warfare and Modern Warfare Remastered, with the event kicking off July 11 for Black Ops 3.

INFINITE WARFARE: 

For Infinite Warfare, lasting the duration of the event, players should log in every Monday for a free Supply Drop, and every Wednesday and Friday for a free item from the Days of Summer collection.

Alongside the new content, there will be a Days of Summer Hack available in Call of Duty: Infinite Warfare weekly. Check back to the Quartermaster for the latest new deals and more. Infinity Ward is also allowing players to earn new characters to use in MP, including Infinite Warfare campaign characters and characters from Modern Warfare.

And lastly, Infinity Ward is also making Turista map from Call of Duty: Infinite Warfare DLC 2 free for all players to play during the Summer event.


MODERN WARFARE REMASTERED:

As part of the Days of Summer event, Raven Software is bringing a twist to Bog…Beach Bog!

Alongside Beach Bog, a brand new Operation CopperHead content drop for the Depot is coming to Modern Warfare Remastered. For the Days of Summer event, players can earn a free Days of Summer Supply Drop each week by just logging into the game.

And lastly, a new variation of Prop Hunt is returning for the Days of the Summer event.


BLACK OPS III:

For Call of Duty: Black Ops 3, the Days of Summer event begins July 11 at 10AM PT! For Black Ops 3, there will be a new limited Pack-a-Punch camo, and will also be able to play all four of the maps from the Awakening DLC for free for the duration of the event.

Alongside this, there will be new summer themed loot items. As a special bonus, Treyarch will also activate Double XP for those who own Call of Duty: Black Ops III DLC 1 – Awakening — for three full weeks — starting July 11 at 10AM PT and ending on August 1 at 10AM PT.


TRAILER:

SOURCE: Activision

comments below