initial commit

This commit is contained in:
felix
2026-09-16 17:16:19 +02:00
commit d120237521
80 changed files with 26582 additions and 0 deletions

View 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();
}
}

View 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);
});
}

View 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();
});
}