From b2a438b7e35921fcb737968d109ec403651d81b4 Mon Sep 17 00:00:00 2001 From: jbreck-mckye Date: Wed, 4 Nov 2015 14:28:32 +0000 Subject: [PATCH 1/2] They're not lenient. --- .../modules/commercial/article-body-adverts.js | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js b/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js index 9215349d23a8..2fd94c5c74d8 100644 --- a/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js +++ b/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js @@ -31,12 +31,11 @@ define([ }; } - function getLenientRules() { - var lenientRules = _.cloneDeep(getRules()); - // more lenient rules, closer to the top start of the article - lenientRules.minAbove = 300; - lenientRules.selectors[' > h2'].minAbove = 20; - return lenientRules; + function getInlineMerchRules() { + var newRules = _.cloneDeep(getRules()); + newRules.minAbove = 300; + newRules.selectors[' > h2'].minAbove = 20; + return newRules; } function getLongArticleRules() { @@ -85,19 +84,18 @@ define([ } }, init = function () { - var rules, lenientRules, inlineMercPromise; + var rules, inlineMercPromise; if (!commercialFeatures.articleBodyAdverts) { return false; } rules = getRules(); - lenientRules = getLenientRules(); if (config.page.hasInlineMerchandise) { adNames.unshift(['im', 'im']); - inlineMercPromise = spacefinder.getParaWithSpace(lenientRules).then(function (space) { + inlineMercPromise = spacefinder.getParaWithSpace(getInlineMerchRules()).then(function (space) { return insertAdAtP(space); }); } else { @@ -137,7 +135,7 @@ define([ init: init, // rules exposed for spacefinder debugging getRules: getRules, - getLenientRules: getLenientRules, + getLenientRules: getInlineMerchRules, reset: function () { ads = []; From f41ceb4963b0e0dafbb8c527bcae940361970836 Mon Sep 17 00:00:00 2001 From: jbreck-mckye Date: Wed, 4 Nov 2015 14:43:06 +0000 Subject: [PATCH 2/2] Only set an IM to be added if there really is space for it --- .../common/modules/commercial/article-body-adverts.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js b/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js index 2fd94c5c74d8..b5bb645eb81e 100644 --- a/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js +++ b/static/src/javascripts/projects/common/modules/commercial/article-body-adverts.js @@ -93,9 +93,10 @@ define([ rules = getRules(); if (config.page.hasInlineMerchandise) { - adNames.unshift(['im', 'im']); - inlineMercPromise = spacefinder.getParaWithSpace(getInlineMerchRules()).then(function (space) { + if (space) { + adNames.unshift(['im', 'im']); + } return insertAdAtP(space); }); } else {