Add a new SessionData collection and limit user fields

* Add new SessionData collection to store user session data available to
server and client
* Limit the Users fields sent to the client by `myCards`, `dueCards`,
`brokenCards`, and `globalSearch` using new `Users.safeFields`
* clean-up
This commit is contained in:
John R. Supplee 2021-01-16 19:20:31 +02:00
parent ab183acac3
commit ff626fb559
5 changed files with 113 additions and 81 deletions

View file

@ -50,12 +50,11 @@ BlazeComponent.extendComponent({
results() {
if (this.queryParams) {
const results = Cards.globalSearch(this.queryParams);
const sessionData = SessionData.findOne({ userId: Meteor.userId() });
// eslint-disable-next-line no-console
// console.log('user:', Meteor.user());
// eslint-disable-next-line no-console
// console.log('user:', Meteor.user().sessionData);
console.log('sessionData:', sessionData);
// console.log('errors:', results.errors);
this.totalHits.set(Meteor.user().sessionData.totalHits);
this.totalHits.set(sessionData.totalHits);
this.resultsCount.set(results.cards.count());
this.queryErrors.set(results.errors);
return results.cards;