l Deck, watch and rock the halls with Google Play Store deals on music, movies, and more
itMYti.com < New IT WebNews
Category: news    |    Added: 2016-12-23 09:55:07    |    View: 103

Half-off movies, 99-cent rentals and free music available for all.

google play deals
Credit: Greenbot
"; adDivString = "
" + adString + "
"; IDG.GPT.defineGoogleTagSlot(slotName ,[[320,50],[300,250],[300,50]]); } placementDiff = applyInsert($(this), adDivString); if (DEBUG) { console.log("Just placed an ad and the placementDiff is: " + placementDiff); } placementTarget = cumulativeHeight + placementDiff + INTERMODULE_HEIGHT + AD_HEIGHT_BUFFER; } else if (moduleCounter < articleDRRModuleList.length){ var elementId = "drr-mod-"+moduleCounter; var moduleDivString = "
"; modules.push(elementId); placementDiff = applyInsert($(this), moduleDivString); if (DEBUG) { console.log("Just placed a module and the placementDiff is: " + placementDiff); } placementTarget = cumulativeHeight + placementDiff + INTERMODULE_HEIGHT + MODULE_HEIGHT_BUFFER; moduleCounter++; } loopCounter++; } // Avoid placing elements too soon due to non-large figures inflating the cumulative height if ($(this).is("figure") && !$(this).is("figure.large")) { cumulativeHeight += GRAF_HEIGHT; } else { cumulativeHeight += $(this).height() + GRAF_HEIGHT; } } }); // end $("#drr-container").children().each() // clone Related Stories module to come in after eighth para in article body for mobile breakpoint display var $relatedStories = $('.related-promo-wrapper'); if ($relatedStories.length) { var $relatedStoriesClone = $relatedStories.clone(); $relatedStoriesClone.insertAfter( "#drr-container > p:eq(7)"); } // For mobile only, place ad after second paragraph. if (firstMobileAdHtml) { $(firstMobileAdHtml).insertAfter("#drr-container > p:eq(1)"); } var $insiderPromo = $('.insider-promo-wrapper'); if ($insiderPromo.length) { var $insiderPromoClone = $insiderPromo.clone(); $insiderPromoClone.insertAfter( "#drr-container > p:eq(1)"); } IDG.GPT.trackOmniture(); // Add Right rail module content var placeModule = function( data ) { var placementId = $(data).attr("data-placement-id"); $( "#"+placementId ).html( data ); }; for (i=0; i" + adString + "
"; } /** * @param jqo Original jquery object target * @param divString The div to be inserted. * @return Difference in height between original placement target and final target. * Checks first 6 elements for an allowable placement (600 pixel window). * If none, place element in first location that does not follow a reject element. */ function applyInsert(jqo, divString) { if (DEBUG) { console.log("applyInsert at top and jqo index is: " + jqo.index()); } for (var i=0; i<=6; i++) { $thisElement = jqo.nextAll().andSelf().slice(i, i+1); if (DEBUG) { console.log("Checking first six and i is: " + i + " and this element index is " + $thisElement.index() ); } if ($thisElement.index() < 0) { break; } if (allowPlacement($thisElement)) { return addElement(jqo, $thisElement, divString); } } if (DEBUG) { console.log("No nearby allows so just place in first spot that is not after reject."); } var numElements = jqo.nextAll().length; var startIndex = jqo.index(); for (var i=startIndex; i<=numElements; i++) { var $element = $("#drr-container").children().eq(i); // This element is eligible when not null, not in placement index, and previous element is not reject if ($element != null && (placementIndex == null || placementIndex.indexOf(i) == -1) && !isReject($element.prev())) { return addElement(jqo, $element, divString); } } if (DEBUG) { console.log("Not going to place element: return 0."); } return 0; } /** * @param jqo Original jquery object * @param allowElement Element that is good placement for module/ad * @param divString The div to be inserted before the good element * @return placementHeightDiff Diff in height between original placement target and current target. * * If element is not too close to the end the insert the div before allowable element. * Add element index to placementIndex to keep track of which elements already have placements */ function addElement(jqo, allowElement, divString) { var offset = allowElement.index() - jqo.index(); if (DEBUG) { console.log("addElement: jqo index is " + jqo.index() + " allowElement index is " + allowElement.index()); } if (elementNotNearEnd(allowElement, RIGHT_PIXEL_WINDOW)) { allowElement.before(divString); if (DEBUG) { console.log("addElement: Adding " + allowElement.index() + " to placementIndex."); } placementIndex.push(allowElement.index()); if (offset == 0) { return 0; } else { return getHeightDifference(jqo,allowElement); } } else { if (DEBUG) { console.log("addElement: Near the end so do NOT add."); } return 0; } } function getHeightDifference(jqo,allowElement) { var offset = allowElement.index() - jqo.index(), height = 0, children = null; if (offset > 0) { children = $("#drr-container").children().slice(jqo.index(), allowElement.index()); } else { children = $("#drr-container").children().slice(allowElement.index(), jqo.index()); } if (children != null) { children.each(function(i) { if (DEBUG) { console.log("About to add this element's height to heigh diff offset"); console.log($(this)); } height += $(this).height() + GRAF_HEIGHT; }); } if (offset < 0) { height *= -1; } if (DEBUG) { console.log("getHeightDifference: offset was " + offset + " and height diff is : " + height); } return height; } function allowPlacement(jqo) { if (jqo.prev() != null && isReject(jqo.prev())) { return false; } return true; } function isReject(jqo) { if (jqo != null) { if (jqo.is('h2') || jqo.is('h3') || jqo.is('h4') || jqo.is('h5')) { if (DEBUG) { console.log("isReject: found header"); } return true; } } return false; } // Returns true if height of all elements after this one is more than 500; false otherwise function elementNotNearEnd(element, pixelWindow) { if (pixelWindow === null) { pixelWindow = 500; } if (element === null) { return false; } var remainingHeight = 0, children = $("#drr-container").children().slice(element.index()); if (children === null) { return false; } children.each(function(i){ remainingHeight += $(this).height(); }); if ( remainingHeight > pixelWindow) { return true; } else { if (DEBUG) { console.log("Element too close to end. Remaining height is: " + remainingHeight + " and window is " + pixelWindow); } return false; } } } // end function executeDRRMobile() function executeDRRDesktop() { var heroImgHeight = $('figure.hero-img').outerHeight(true); if (heroImgHeight === null) { heroImgHeight = 0; } var galleryItemHeight = $('figure.thm-gallery').outerHeight(true); if (galleryItemHeight === null) { galleryItemHeight = 0; } var atAglanceTop = $('.at-a-glance.top').height(); if (atAglanceTop === null) { atAglanceTop = 0; } var drrContainerHeight = $('div#drr-container').outerHeight(true); var topIMUheight = $('#topimu').height(); if (topIMUheight === 0) { topIMUheight = 600; } var relatedPromoHeight = $('div.related-promo-wrapper').outerHeight(true); if (relatedPromoHeight === null) { relatedPromoHeight = 0; } var videoHowtoHeight = $('div#video-howto-wrapper').outerHeight(true); if (videoHowtoHeight === null) { videoHowtoHeight = 0; } var teadsInreadHeight = $('div.teads-inread').height(); if (teadsInreadHeight === null) { teadsInreadHeight = 0; } var unrulyAdHeight = $('.unruly_in_article_placement').height(); if (unrulyAdHeight === null) { unrulyAdHeight = 0; } //just in case the in article ads are picked up... var collapsibleAdHeight = unrulyAdHeight + teadsInreadHeight; var workingRRheight = ( (heroImgHeight + galleryItemHeight + atAglanceTop + drrContainerHeight) - (topIMUheight + relatedPromoHeight + videoHowtoHeight) ); workingRRheight = workingRRheight - collapsibleAdHeight; var DEBUG = false; if (DEBUG) { console.log('-----working RR height = ' + workingRRheight); } var articleDRRModuleList = ["dealposts","products.latest-reviews"], moduleUrls = [], modules = [], moduleCounter = 0, loopCounter = 0; var adPositions = new Array(0,1,3); // IMU, IMU, module, IMU, module if (false) { var dealpostsIdx = articleDRRModuleList.indexOf("dealposts"); if (dealpostsIdx > -1) { articleDRRModuleList.splice(dealpostsIdx, 1); adPositions = [0, 1, 2]; } } for (var i=0; i 650) { numItems = 1; } if (workingRRheight > 1350) { numItems = 2; } if (workingRRheight > 2300) { numItems = 3; } if (workingRRheight > 2950) { numItems = 4; } if (workingRRheight > 3650) { numItems = 5; } for (var currIndex=0;currIndex
"; adDivString = "
" + adString + "
"; IDG.GPT.defineGoogleTagSlot(slotName ,[[320,50],[300,250],[300,50]]); } //$('#drr-container > p').first().before(adDivString); //$('#drr-top-ad').append(adDivString); $(adDivString).appendTo('#drr-top-ad'); if (DEBUG) { console.log("-----Just placed an AD currIndex = " + currIndex); } } else if (moduleCounter < articleDRRModuleList.length){ var elementId = "drr-mod-"+moduleCounter; var moduleDivString = "
"; modules.push(elementId); //$('#drr-container > p').first().before(moduleDivString); $('#drr-top-ad').append(moduleDivString); if (DEBUG) { console.log("-----Just placed a MODULE and currIndex = " + currIndex); } moduleCounter++; } } //end for loop IDG.GPT.trackOmniture(); // Add Right rail module content var placeModule = function( data ) { var placementId = $(data).attr("data-placement-id"); $( "#"+placementId ).html( data ); }; for (i=0; i" + adString + "
"; } } // end function executeDRRDesktop()

Let’s face it, the holiday nights are anything but silent. The kids are off from school, relatives are visiting from near and far, and there’s nowhere to escape for a little me time. But during this hectic season of spending and sharing, Google has a few goodies to help you unwind.

If you want to curl up with a good movie—or just occupy the kids for a couple hours—you can rent anything for just 99 cents. You can either follow this link or copy promo code AB3Z3ENNBL22QVGRSA00HJ8 to watch any movie for a buck. The usual terms apply: You have 30 days to start the movie from the time you rent it, and once it’s started, you can watch it as many times as you’d like within the next 48 hours. The offer is good until Jan. 23.

star wars digital Greenbot

They may be George Lucas’ special editions, but $40 for the Srtar Wars saga is still a great deal.

You can also expand your library with a half-off promo code good on any movie in the store. Either click this link or use the code G7BYVK2UC2S1UJENMUYE4XQ to take 50 percent off the cost of any movie in the store, including sale items and bundles. That means you can score the six-movie Star Wars Collection (everything up to The Force Awakens) for just $40, or $6.67 per movie. Of course, you’ll have to deal with Han shooting first, but it’s still a great deal. The offer also expires on Jan. 23.

For literature lovers, Google is offering $5 off any book costing more than five bucks. Just type 0TAAPJ2DSH9PJ3J14B64EEP into the promo code box at checkout before Jan. 7 to get the savings. And if music’s your thing, you can get 50 percent off the cost of an album until Jan. 28 by following this link or using promo code SLLCBNRRZSGVKA6DA3JXTEF. And finally for streamers, Google is offering four months of its Play Music service for free to new subscribers.

This story, "Deck, watch and rock the halls with Google Play Store deals on music, movies, and more" was originally published by Greenbot.

To comment on this article and other PCWorld content, visit our Facebook page or our Twitter feed.
Related:
Shop Tech Products at Amazon
Notice to our Readers
We're now using social media to take your comments and feedback. Learn more about this here.
source: Pcworld
Category: review    |    5 hours ago    |    View: 99

What's the best VPN for your Mac? Here are the top recommendations based on our testing.

Category: news    |    5 hours ago    |    View: 0

Google has always prided itself on its free services. Gmail, Google Docs, and YouTube are all technically free to the public. However, that's about to change ever so slightly for European Android device makers.

Category: news    |    5 hours ago    |    View: 0

Netflix shares shot up more than 12 percent in after-hours trading on Tuesday following the release of its favorable third-quarter earnings report.

Category: news    |    6 hours ago    |    View: 8

They were led to the impromptu grave site by a GPS system they had found in stepfather Wesley Hadsell’s van. Also found in the vehicle were a dirty shovel, gloves, and duct tape. The evidence was circumstantial but was enough&hellip;

Category: news    |    7 hours ago    |    View: 4

Winamp, the standalone music player synonymous with late 90s computing, is making a comeback.

Category: news    |    8 hours ago    |    View: 55

Amazon on Tuesday introduced a reimagined version of its popular Kindle Paperwhite e-reader featuring a waterproof design and twice the storage of its predecessor.

Category: news    |    8 hours ago    |    View: 0

If you kept up on tech news during 2017, you probably remember that many outlets -- us included -- covered the "death" of net neutrality in December, when the Federal Communications Commission (FCC) led by Chairman Ajit Pai controversially voted&hellip;

Category: news    |    9 hours ago    |    View: 145

Last Saturday VG24/7 reported that a malicious PlayStation 4 messaging bug had been discovered and was “bricking consoles.” It urged users to change their privacy settings to either Friends or No One for messages until Sony could fix the problem.

Category: news    |    10 hours ago    |    View: 78

Facebook is developing a camera-equipped device under the codename Ripley that’s part webcam, part set-top box.

Category: news    |    10 hours ago    |    View: 0

We've known Discord has been gunning for Steam for several months now. The creators of the popular gaming-focused communications app announced their own in-app game storefront back in August.




Download Latest PC Softwares

Category: converters    |    Added: 18 hours ago    |    View: 15
Acme CAD Converter 2019 Free Download - downloadwise.com

Acme CAD Converter 2019 Free Download Latest Version for Windows. It is full offline installer standalone setup of Acme CAD Converter 2019.

 

Category: complex-processing    |    Added: 18 hours ago    |    View: 1
MAXQDA Analytics Pro 2018 Free Download - downloadwise.com

MAXQDA Analytics Pro 2018 Free Download Latest Version. It is full offline installer standalone setup of MAXQDA Analytics Pro 2018.

 

Category: bentley-openroads-designer-connect-edition-2018-free-download    |    Added: 18 hours ago    |    View: 1
Bentley OpenRoads Designer CONNECT Edition 2018 Free Download - downloadwise.com

Bentley OpenRoads Designer CONNECT Edition 2018 Free Download. It is full offline installer standalone setup of Bentley OpenRoads Designer.

Bentley OpenRoads Designer CONNECT Edition 2018 Free Download
OpenRoads Designer , the name of the software engineering and specialized in the field of road construction. The software is known to you as one of the most powerful software in the field. Using this software, users will be able to design advanced design concepts. The benefit of this software comes from countless capabilities, along with a plethora of tools that help you to no longer use other software and will actually need you out of any other tool.

Category: sweet-home-3d-6-free-download    |    Added: 18 hours ago    |    View: 1
Sweet Home 3D 6 Free Download - downloadwise.com

Sweet Home 3D 6 Free Download Latest Version for Windows. It is full offline installer standalone setup of Sweet Home 3D 6.

 

Category: scrivener-1-9-9-0-free-download    |    Added: 18 hours ago    |    View: 1
Scrivener 1.9.9.0 Free Download - downloadwise.com

Scrivener 1.9.9.0 Free Download Latest Version for Windows. It is full offline installer standalone setup of Scrivener 1.9.9.0.

 

Category: autoform-plus-r7-free-download    |    Added: 18 hours ago    |    View: 0
AutoForm Plus R7 Free Download - downloadwise.com

AutoForm Plus R7 Free Download Latest Version for Windows. It is full offline installer standalone setup of AutoForm Plus R7.

AutoForm Plus R7 Free Download

Category: trimble-tilos-v10-1-free-download    |    Added: 21 hours ago    |    View: 3
Trimble TILOS v10.1 Free Download - downloadwise.com

Trimble TILOS v10.1 Free Download Latest Version for Windows. It is full offline installer standalone setup of Trimble TILOS v10.1.