JSFiddle - React, Tailwind, and code Playground

by Eric L

JavaScript

var sites = 
[{
    "site": "3806",
    "shift": "1"
  },
  {
    "site": "3039",
    "shift": "1"
  },
  {
    "site": "3039",
    "shift": "2"
  },
  {
    "site": "3039",
    "shift": "3"
  },
  {
    "site": "3339",
    "shift": "1"
  }
]
var filtered = [];

for(var i=0;i<sites.length; i++) {  
  var testfilter = filtered.filter(function(blah){
  	return blah.site == sites[i].site;
  });
  if(testfilter.length == 0){
    var test = {};
    test.site = sites[i].site;
    test.shifts = [];
    test.shifts.push(sites[i].shift);
    test.allShiftsSetup = false;
    filtered.push(test);
  } else {    
    testfilter[0].shifts.push(sites[i].shift);
    if(testfilter[0].shifts.indexOf('1') > -1 && testfilter[0].shifts.indexOf('2') > -1){
      testfilter[0].allShiftsSetup = true;
    }
  }  
}
console.log(filtered);
var shiftFilter = filtered.filter(function(site){
 	return site.site == 3039;
});
console.log(shiftFilter);
alert(shiftFilter[0].shifts.length);