initial commit
This commit is contained in:
11
app/controllers/application.js
Normal file
11
app/controllers/application.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { service } from '@ember/service';
|
||||
import { action } from '@ember/object';
|
||||
|
||||
export default class ApplicationController extends Controller {
|
||||
@service session;
|
||||
|
||||
@action logout() {
|
||||
this.session.invalidate();
|
||||
}
|
||||
}
|
||||
20
app/controllers/conversations.js
Normal file
20
app/controllers/conversations.js
Normal file
@@ -0,0 +1,20 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { service } from '@ember/service';
|
||||
import { task } from 'ember-concurrency';
|
||||
|
||||
export default class ConversationsController extends Controller {
|
||||
@service store;
|
||||
@service router;
|
||||
@service currentSession;
|
||||
|
||||
create = task(async () => {
|
||||
const now = new Date();
|
||||
const conversation = this.store.createRecord('chat-conversation', {
|
||||
created: now,
|
||||
lastActivity: now,
|
||||
creator: this.currentSession.user,
|
||||
});
|
||||
await conversation.save();
|
||||
this.router.transitionTo('conversation', conversation.id);
|
||||
});
|
||||
}
|
||||
31
app/controllers/mock-login.js
Normal file
31
app/controllers/mock-login.js
Normal file
@@ -0,0 +1,31 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { service } from '@ember/service';
|
||||
import { restartableTask, task, timeout } from 'ember-concurrency';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
|
||||
export default class MockLoginController extends Controller {
|
||||
queryParams = ['gemeente', 'page'];
|
||||
@service store;
|
||||
@tracked gemeente = '';
|
||||
@tracked page = 0;
|
||||
size = 10;
|
||||
|
||||
queryStore = task(async () => {
|
||||
const filter = { provider: 'https://github.com/lblod/mock-login-service' };
|
||||
if (this.gemeente) filter.gebruiker = { achternaam: this.gemeente };
|
||||
const accounts = await this.store.query('account', {
|
||||
include: 'gebruiker,gebruiker.bestuurseenheden',
|
||||
filter: filter,
|
||||
page: { size: this.size, number: this.page },
|
||||
sort: 'gebruiker.achternaam',
|
||||
});
|
||||
return accounts;
|
||||
});
|
||||
|
||||
updateSearch = restartableTask(async (value) => {
|
||||
await timeout(500);
|
||||
this.page = 0;
|
||||
this.gemeente = value;
|
||||
this.model = await this.queryStore.perform();
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user