Facebook
From Walloping Pheasant, 5 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 215
  1. async function checkForNewDrop () {
  2.     var newItemCheckCounter = 0;
  3.     var isUpdated = false;
  4.     var itemToSearch=[];
  5.  
  6.     for(var i=0; i<clothesObj.length; i++){
  7.         itemToSearch[i] = {
  8.             name: clothesObj[i].name,
  9.             category: clothesObj[i].category,
  10.             nameRegexString: makeRegex(clothesObj[i].name),
  11.             nameRegexObj: new RegExp(this.nameRegexString)
  12.         };
  13.     }
  14.     var i=0;
  15.     while(!isUpdated) {
  16.         console.log("while loop, counter: " + newItemCheckCounter);
  17.         newItemCheckCounter++;
  18.         isUpdated = await getNewDropItem(itemToSearch[i]); // Error
  19.         i++;
  20.         i=i%clothesObj.length;
  21.     }
  22.    
  23.     isNewDrop = true;
  24.     newDropRef.set(isNewDrop);
  25. }
  26.  
  27. function getNewDropItem(itemToSearch) {
  28.     console.log("function getNewDropItem()");
  29.     console.log("Name of item we're looking for: "+itemToSearch.name);
  30.     console.log("nameRegexString: "+itemToSearch.nameRegexString);
  31.  
  32.     return new Promise(function(resolve, reject) {
  33.         console.log("promise");
  34.         const url = 'http://www.supremenewyork.com/shop/all/'+itemToSearch.category;
  35.         console.log("Name of category page: "+ url);
  36.         request(url, {timeout: 2000}, function (error, response, html) {
  37.             console.log("request");
  38.             console.log(error);
  39.             if (error){
  40.                 console.log('is timeout error: ', error.code === 'ETIMEDOUT');
  41.                 console.log('is timeout connection error: ', error.connect === 'true');
  42.             }
  43.             if (!error && response.statusCode == 200) {
  44.                 console.log("OK");
  45.                 const $ = cheerio.load(html);
  46.                 var isItemFound = itemToSearch.nameRegexObj.test($);
  47.                 console.log("isItemFound: "+isItemFound);
  48.                 resolve(isItemFound);
  49.             }
  50.             resolve(false);
  51.         });
  52.     });
  53.  
  54. }