mod-build 3.6.49 → 3.6.50-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.6.50
4
+
5
+ - Added functionality in `templates.js` to grab the tcpa from sitegenie at build time
6
+
3
7
  ## 3.6.47
4
8
 
5
9
  - Bump up package version to publish a new version
@@ -1,3 +1,4 @@
1
+ /* globals Promise */
1
2
  var merge = require('lodash.merge');
2
3
  var request = require('request');
3
4
 
@@ -195,25 +196,53 @@ module.exports = function(gulp, gulpPlugins, siteSettings, siteData) {
195
196
  const defaultConfig = await JSON.parse(response);
196
197
 
197
198
  if (templatesData.steps) {
198
- templatesData.steps = await mergeDefaultFormFieldConfig(templatesData.steps, defaultConfig)
199
+ templatesData.steps = await mergeDefaultFormFieldConfig(templatesData.steps, defaultConfig);
199
200
  }
200
201
  if (templatesData.qsSteps) {
201
- templatesData.qsSteps = await mergeDefaultFormFieldConfig(templatesData.qsSteps, defaultConfig)
202
+ templatesData.qsSteps = await mergeDefaultFormFieldConfig(templatesData.qsSteps, defaultConfig);
202
203
  }
203
204
  if (templatesData.modSteps) {
204
- templatesData.modSteps = await mergeDefaultFormFieldConfig(templatesData.modSteps, defaultConfig)
205
+ templatesData.modSteps = await mergeDefaultFormFieldConfig(templatesData.modSteps, defaultConfig);
205
206
  }
206
207
 
207
208
  resolve();
208
- })
209
+ });
209
210
  });
210
211
  };
211
212
 
213
+ var fetchTcpaFromSitegenie = async function() {
214
+ const company = templatesData.company_name;
215
+ const website = templatesData.website_name;
216
+ const c_level = templatesData.cLevel ? templatesData.cLevel : 'default';
217
+ const affiliateKey = templatesData.affiliateKey ? templatesData.affiliateKey : 0;
218
+ const service = templatesData.service ? templatesData.service.toLowerCase().replace(' ', '_') : templatesData.primary_trade.toLowerCase().replace(' ', '_');
219
+ const apiEnv = 'https://' + (templatesData.nodeEnv === 'modernize.com' ? 'hs.leadpost.net/' : 'hsleadpost1.quinstage.com/');
220
+ const url = `${apiEnv}coreg/getTCPAConsent?website=${website}&service=${service}&affiliateKey=${affiliateKey}&c_level=${c_level}`;
221
+ console.time('Finished fetch-tcpa-from-sitegenie after');
222
+ console.log('Starting fetch-tcpa-from-sitegenie: ',url);
223
+ await new Promise(function(resolve) {
224
+ request(url, async function(err, xhr, response) {
225
+ if (xhr.statusCode !== 200) {
226
+ throw new Error(`${xhr.statusCode}: Error while fetching TCPA`);
227
+ }
228
+ const responseJson = await JSON.parse(response);
229
+ const finalTCPA = await company === 'Modernize' ? responseJson.tcpa.replace(/QuinStreet/g, 'Modernize') : responseJson.tcpa;
230
+
231
+ templatesData.tcpaText = await finalTCPA;
232
+
233
+ resolve();
234
+ });
235
+ });
236
+ console.timeEnd('Finished fetch-tcpa-from-sitegenie after');
237
+ };
238
+
212
239
  return async function() {
213
240
  if (!templatesData.doNotUseDefaultFieldConfig) {
214
241
  await getDefaultFormFieldConfig();
215
242
  }
216
243
 
244
+ await fetchTcpaFromSitegenie();
245
+
217
246
  return gulp.src([
218
247
  siteSettings.srcFolder + '/' + siteSettings.templatesSubfolder + '/**/*.html',
219
248
  '!' + siteSettings.srcFolder + '/' + siteSettings.templatesSubfolder + '/_partials/**/*.html'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mod-build",
3
- "version": "3.6.49",
3
+ "version": "3.6.50-beta.2",
4
4
  "description": "Share components for S3 sites.",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",