window.googletag = window.googletag || { cmd: [] }; const defaultPostAttributes = { type: 'unknown', categories: 'unknown', tags: 'unknown', id: 'unknown', social: 'unknown', staging: 1 }; const socialNetworks = { facebook: [], twitter: ['t.co'], linkedin: [], instagram: [], pinterest: [], tiktok: [], snapchat: [], 'linkin.bio': [], }; const postAttributes = Object.assign({}, defaultPostAttributes, window.postAttributes || {}); function addBettingWidgetIfNotHidden(version = "desktop") { if (postAttributes.hide_non_gam !== 'hide') { const containerDiv = document.createElement('div'); const widgetWrapper = document.createElement('div'); const scriptElement = document.createElement('script'); // Set properties for desktop or mobile const targetElementId = version === "desktop" ? 'betting-widget-container' : 'btw-wrapper-mob'; const targetElement = document.getElementById(targetElementId); if (!targetElement) { return; // Exit early if there's no target element } widgetWrapper.className = version === "desktop" ? 'btw-wrapper' : ''; if (version === "desktop") { containerDiv.className = 'col-span-12 border-t-[0.5px] mt-7'; containerDiv.style.paddingTop = '1.75rem'; } // Set common attributes for the script element scriptElement.async = true; scriptElement.src = 'https://betting-widget.s3.eu-west-2.amazonaws.com/app.js'; scriptElement.setAttribute('version', version); widgetWrapper.appendChild(scriptElement); containerDiv.appendChild(widgetWrapper); targetElement.appendChild(containerDiv); } } function getReferringNetwork(aliases) { const ref = document.referrer; // Loop through the socialNetwork and aliases entries for (const [socialNetwork, aliasList] of Object.entries(aliases)) { if (ref.includes(socialNetwork) || aliasList.some(alias => ref.includes(alias))) { return socialNetwork; } } return 'unknown'; } function isMobileDevice() { return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); } function defineSizeMappings() { return { top: googletag.sizeMapping() .addSize([1024, 0], [[970, 250], [728, 90], [970, 90]]) .addSize([768, 0], [[728, 90]]) .addSize([0, 0], []) .build(), rhs: googletag.sizeMapping() .addSize([1024, 0], [[300, 600], [160, 600], [300, 250]]) .addSize([0, 0], []) .build(), inContent: googletag.sizeMapping() .addSize([1024, 0], [[300, 250], [1, 2]]) .addSize([0, 0], [[300, 250], [320, 50], [1, 2]]) .build(), leftSkin: googletag.sizeMapping() .addSize([760, 0], [[1, 1]]) .addSize([0, 0], []) .build(), rightSkin: googletag.sizeMapping() .addSize([760, 0], [[2, 2]]) .addSize([0, 0], []) .build(), skinTop: googletag.sizeMapping() .addSize([1480, 0], [[970, 90], [970, 250], [728, 90]]) .addSize([0, 0], []) .build(), skinTopMobile: googletag.sizeMapping() .addSize([768, 0], []) .addSize([0, 0], [[300, 250], [320, 50], [1, 2]]) .build(), mobileSticky: googletag.sizeMapping() .addSize([768, 0], []) .addSize([0, 0], [[320, 50]]) .build() }; } function defineSkinUnits() { defineSlot('/247211819/Joe.ie/Joe.ie_Left_Skin', [1, 1], 'div-gpt-ad-1681213692194-0', 'leftSkin'); defineSlot('/247211819/Joe.ie/Joe.ie_Right_Skin', [2, 2], 'div-gpt-ad-1681214169885-0', 'rightSkin'); if(postAttributes.type === 'home') { defineSlot('/247211819/Joe.ie/Joe.ie_top', [[970, 90], [970, 250], [728, 90]], 'div-gpt-ad-1681222708979-0', 'skinTop'); defineSlot('/247211819/Joe.ie/Joe.ie_in_content_1', [[300, 250], [320, 50], [1, 2]], 'div-gpt-ad-1681213026600-0', 'skinTopMobile'); } } function setLazyLoad() { googletag.pubads().enableLazyLoad({ fetchMarginPercent: 100, renderMarginPercent: 50, mobileScaling: 1.0 }); } function addTargeting(postAttributes) { googletag.pubads().setTargeting('type', postAttributes.type ?? 'unknown'); googletag.pubads().setTargeting('category', postAttributes.categories ?? 'unknown'); googletag.pubads().setTargeting('tag', postAttributes.tags ?? 'unknown'); googletag.pubads().setTargeting('id', String(postAttributes.id) ?? 'unknown'); googletag.pubads().setTargeting('social', getReferringNetwork(socialNetworks) ?? 'unknown'); googletag.pubads().setTargeting('staging', String(postAttributes.staging) ?? 'unknown'); } function defineAndDisplaySlot(adUnitPath, sizes, elementId, sizeMappingKey) { defineSlot(adUnitPath, sizes, elementId, sizeMappingKey); googletag.display(elementId); } // Only define the ad slot and add it to a list function defineSlot(adUnitPath, sizes, elementId, sizeMappingKey) { const isMobile = isMobileDevice(); const restrictedUnits = ['top', 'rhs']; if (restrictedUnits.includes(adUnitPath) && isMobile) { return; } const sizeMappings = defineSizeMappings(); const mapping = sizeMappings[sizeMappingKey]; const slot = googletag.defineSlot(adUnitPath, sizes, elementId); slot.defineSizeMapping(mapping); slot.addService(googletag.pubads()); } // Function to display a list of ad slots function displaySlots(slotIds) { slotIds.forEach(id => { googletag.display(id); }); } // Function to fire after unit render function renderCallback(event) { if (event.slot.getAdUnitPath().includes('mobile_sticky')) { if (event.isEmpty) { return; } if (document.getElementById('qc-cmp2-persistent-link')) { document.getElementById('qc-cmp2-persistent-link').style.bottom = document.getElementsByClassName('sticky-footer-container')[0].offsetHeight+'px'; } } } googletag.cmd.push(function () { try { defineSkinUnits(); googletag.pubads().enableSingleRequest(); setLazyLoad(); addTargeting(postAttributes); googletag.pubads().setCentering(true); googletag.pubads().addEventListener('slotRenderEnded', function(event) {renderCallback(event);}); googletag.enableServices(); displaySlots(['div-gpt-ad-1681213692194-0','div-gpt-ad-1681214169885-0']); if(postAttributes.type === 'home') { displaySlots(['div-gpt-ad-1681222708979-0','div-gpt-ad-1681213026600-0']); } } catch (err) { console.error("An error occurred while setting up ads:", err); } });
Search icon

Tech

09th Dec 2013

Video: The latest trailer for Destiny showcases some amazing graphics

The Spike VGX awards took place over the weekend, and there were plenty of new trailers to enjoy

JOE

The Spike VGX awards took place over the weekend, and there were plenty of new trailers to enjoy

We’ve been keeping an eye on the progress of the latest effort from the lads at Bungie, Destiny, which revolves around aliens from deep inside the moon trying to attack Earth.

That storyline is obviously brilliant, but what we’ve been admiring the most about this game is its frankly beautiful graphics, which make for some very nice viewing.

This trailer shows off some of the amazing landscapes that they’ve managed to create, and packs in the odd bit of action too. Not half bad, eh?