Files
kredits-web/app/routes/application.js
T
basti d4b546bfcd Load contributions from cache if present
And then fetch more from network. Also, only load 30 from network before
first render (with nothing cached), then load more after the page has
rendered.
2020-05-28 13:59:10 +02:00

34 lines
956 B
JavaScript

import { inject as service } from '@ember/service';
import Route from '@ember/routing/route';
import { schedule } from '@ember/runloop';
export default Route.extend({
kredits: service(),
beforeModel(/* transition */) {
const kredits = this.kredits;
return kredits.setup().then(() => {
kredits.get('kredits').preflightChecks().catch((error) => {
console.error('Kredits preflight check failed!');
console.error(error);
});
}).catch((error) => {
console.log('Error initializing Kredits', error);
});
},
afterModel() {
return this.kredits.loadInitialData()
.then(() => {
this.kredits.addContractEventHandlers();
})
.then(() => {
if (this.kredits.contributorsNeedFetch) {
schedule('afterRender', this.kredits, this.kredits.fetchContributors);
}
schedule('afterRender', this.kredits, this.kredits.fetchContributions);
});
}
});