aboutsummaryrefslogtreecommitdiff
path: root/src/App.js
diff options
context:
space:
mode:
authorDeterminant <ted.sybil@gmail.com>2019-02-02 22:15:54 -0500
committerDeterminant <ted.sybil@gmail.com>2019-02-02 22:15:54 -0500
commit580990a5eb4a79892c48e3a3fce3386fe80e6cc2 (patch)
treeedc4e19741cf6ff50a45ba7c81cb1cb2f1611c66 /src/App.js
parent848c4f0e60340e5fc6079a0bff1bf516845576e0 (diff)
finish cache design
Diffstat (limited to 'src/App.js')
-rw-r--r--src/App.js18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/App.js b/src/App.js
index efdb446..43beb53 100644
--- a/src/App.js
+++ b/src/App.js
@@ -174,22 +174,28 @@ class Dashboard extends React.Component {
let event_pms = [];
let cals = this.state.calendars;
for (let id in cals)
- event_pms.push(this.getCalEvents(id, start, end)
- .then(r => { return { id, events: r }; }));
- console.log(cals);
+ {
+ let patterns = filterPatterns(this.state.patterns, cals[id].name);
+ if (patterns.length > 0)
+ event_pms.push(this.getCalEvents(id, start, end)
+ .then(r => { return { id, events: r, patterns }; }));
+ }
Promise.all(event_pms).then(all_events => {
console.log(all_events);
let events = {};
+ let patterns = {};
let results = {}; // pattern idx => time
let cal_results = {}; // cal id => time
- all_events.forEach(e => events[e.id] = e.events);
+ all_events.forEach(e => {
+ events[e.id] = e.events;
+ patterns[e.id] = e.patterns;
+ });
for (let i = 0; i < this.state.patterns.length; i++)
results[i] = 0;
for (let id in cals) {
if (!events[id]) continue;
- let patterns = filterPatterns(this.state.patterns, cals[id].name);
events[id].forEach(event => {
- patterns.forEach(p => {
+ patterns[id].forEach(p => {
if (!p.event.regex.test(event.summary)) return;
if (!cal_results.hasOwnProperty(id)) {
cal_results[id] = 0;