import {Component, OnInit} from '@angular/core'; import {CommonModule} from '@angular/common'; import {RouterOutlet} from '@angular/router'; import {FormsModule} from "@angular/forms"; interface Subject { title: string, // titre du sujet à aborder duration: number, // nombre de minutes du sujet author: string // auteur du sujet qui anime la discussion } @Component({ selector: 'app-root', standalone: true, imports: [CommonModule, RouterOutlet, FormsModule], templateUrl: './app.component.html', styleUrl: './app.component.scss', }) export class AppComponent implements OnInit { title = 'odj'; subjects: any = []; currentSubjectId = 1; startTime: string = "20:30"; endTime: string = "22:00"; pasteLand: string = "* Présentation du suivi sur Nextcloud - 5min (tykayn)\n" + "* Réduction de bus factor - 5min (tykayn)\n" + "* Réunion avec Wikimedia France - 5min (tykayn)\n" + "* demande kit prise de vue Guyane https://forum.openstreetmap.fr/t/doter-osm-fr-d-appareils-de-prise-de-vues-de-photo-au-niveau-des-rues-pour-les-preter/9916/117 -> est-ce \"raisonnable\" d'en envoyer 1 ou n'est-il pas préférable d'en financer un pour la Guyane\n" + "* point sur l'organisation du SotM 2024 à Lyon - 15 min (renecha)\n" + "* Budget pris en compte par l'association pour le SOTM-EU - Présentation des factures"; hints: string = " - le pad des notes de réunion https://annuel.framapad.org/p/N_IDAQXYLHswlpU2s3oE\n" + "\t - canal spécial pour le SOTM fr sur telegram https://t.me/SOTM2023-Marseille\n" + "\t - canal général sur telegram https://t.me/osm-fr\n" + "\t - espace de canaux sur matrix https://app.element.io/#/room/#osmfr:matrix.org\n" + "\t - le forum section CA https://forum.openstreetmap.fr/c/openstreetmap-france/ca/53\n" + "\t - le github osm-france https://github.com/osm-fr/ \n" + "\t - les réunions mensuelles du CA https://osmvideo.cloud68.co/user/fre-aux-yuh \n" + "\t - le nextcloud osm https://nextcloud.openstreetmap.fr\n" + "\t - les status des services en ligne https://stats.uptimerobot.com/mQX5Vi5YW2"; resteTopicMinutes: any = 10; showDebug: boolean = false; parseTheListOfTopicsInPasteLand() { let newTopics: any = [] let topics: any = this.pasteLand.split('*') topics.forEach((elem: string) => { // console.log('topic', elem) let boom = elem.split('-') if (boom[0]) { newTopics.push({ title: boom[0], duration: 15, author: '' }) } }) this.subjects = newTopics } ngOnInit() { this.parseTheListOfTopicsInPasteLand() } nextSubject() { this.currentSubjectId++ } }