Compare commits

...

4 Commits

Author SHA1 Message Date
Artur Savitskiy 7b691f3f9a Merge remote-tracking branch 'origin/main' into Anmeldeformular 2024-04-26 14:39:27 +02:00
Artur Savitskiy 4a2dbb799e Pre-merge commit 2024-04-26 14:39:25 +02:00
Artur Savitskiy 65b5fb8a90 Fix visits routing date time 2024-03-29 23:50:14 +01:00
it-as 546fdc4435 Merge pull request 'Dependency Day + Basic Setup' (#11) from dependency-day-basic-setup into main
Reviewed-on: #11
2024-03-12 17:40:20 +01:00
5 changed files with 27 additions and 27 deletions

View File

@ -110,6 +110,9 @@
} }
}, },
"cli": { "cli": {
"schematicCollections": ["@angular-eslint/schematics"] "schematicCollections": [
"@angular-eslint/schematics"
],
"analytics": false
} }
} }

View File

@ -11119,7 +11119,8 @@
"node_modules/iban": { "node_modules/iban": {
"version": "0.0.14", "version": "0.0.14",
"resolved": "https://registry.npmjs.org/iban/-/iban-0.0.14.tgz", "resolved": "https://registry.npmjs.org/iban/-/iban-0.0.14.tgz",
"integrity": "sha512-+rocNKk+Ga9m8Lr9fTMWd+87JnsBrucm0ZsIx5ROOarZlaDLmd+FKdbtvb0XyoBw9GAFOYG2GuLqoNB16d+p3w==" "integrity": "sha512-+rocNKk+Ga9m8Lr9fTMWd+87JnsBrucm0ZsIx5ROOarZlaDLmd+FKdbtvb0XyoBw9GAFOYG2GuLqoNB16d+p3w==",
"peer": true
}, },
"node_modules/iconv-lite": { "node_modules/iconv-lite": {
"version": "0.4.24", "version": "0.4.24",
@ -27453,7 +27454,8 @@
"iban": { "iban": {
"version": "0.0.14", "version": "0.0.14",
"resolved": "https://registry.npmjs.org/iban/-/iban-0.0.14.tgz", "resolved": "https://registry.npmjs.org/iban/-/iban-0.0.14.tgz",
"integrity": "sha512-+rocNKk+Ga9m8Lr9fTMWd+87JnsBrucm0ZsIx5ROOarZlaDLmd+FKdbtvb0XyoBw9GAFOYG2GuLqoNB16d+p3w==" "integrity": "sha512-+rocNKk+Ga9m8Lr9fTMWd+87JnsBrucm0ZsIx5ROOarZlaDLmd+FKdbtvb0XyoBw9GAFOYG2GuLqoNB16d+p3w==",
"peer": true
}, },
"iconv-lite": { "iconv-lite": {
"version": "0.4.24", "version": "0.4.24",

View File

@ -1,5 +1,5 @@
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router'; import { RouterModule, Routes, provideRouter, withComponentInputBinding } from '@angular/router';
import { StudentListComponent } from './components/students/student-list/student-list.component'; import { StudentListComponent } from './components/students/student-list/student-list.component';
import { VisitsComponent } from './components/visits/visits.component'; import { VisitsComponent } from './components/visits/visits.component';
import { VisitsDatetimeComponent } from './components/visits/visits-datetime/visits-datetime.component'; import { VisitsDatetimeComponent } from './components/visits/visits-datetime/visits-datetime.component';
@ -17,5 +17,6 @@ const routes: Routes = [
@NgModule({ @NgModule({
imports: [RouterModule.forRoot(routes)], imports: [RouterModule.forRoot(routes)],
exports: [RouterModule], exports: [RouterModule],
providers: [provideRouter(routes, withComponentInputBinding())]
}) })
export class AppRoutingModule {} export class AppRoutingModule {}

View File

@ -6,8 +6,8 @@
<div class="grid-item"> <div class="grid-item">
<h1>{{ courseVisit?.name }}</h1> <h1>{{ courseVisit?.name }}</h1>
<h2> <h2>
{{ courseVisit?.date | date: 'dd.MM.yyyy' }}, {{ courseVisit?.begin }} - {{ courseVisit.date | date: 'dd.MM.yyyy' }}, {{ courseVisit.begin }} -
{{ courseVisit?.end }} {{ courseVisit.end }}
</h2> </h2>
<button class="button-add" (click)="add()">Hinzufügen</button> <button class="button-add" (click)="add()">Hinzufügen</button>
</div> </div>

View File

@ -1,5 +1,5 @@
import { formatDate } from '@angular/common'; import { formatDate } from '@angular/common';
import { Component, OnDestroy, OnInit } from '@angular/core'; import { Component, Input, OnDestroy, OnInit } from '@angular/core';
import { MatTableDataSource } from '@angular/material/table'; import { MatTableDataSource } from '@angular/material/table';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
@ -16,14 +16,17 @@ import { VisitsService } from 'src/app/services/visits/visits.service';
templateUrl: './visits.component.html', templateUrl: './visits.component.html',
styleUrls: ['./visits.component.scss'], styleUrls: ['./visits.component.scss'],
}) })
export class VisitsComponent implements OnInit, OnDestroy { export class VisitsComponent implements OnInit {
@Input()
public date!: string;
@Input()
public time!: string;
public loading: boolean = true; public loading: boolean = true;
public courseVisit?: CourseVisit; public courseVisit?: CourseVisit;
public dataSource = new MatTableDataSource<StudentVisit>(); public dataSource = new MatTableDataSource<StudentVisit>();
public addedStudent?: Student; public addedStudent?: Student;
private routerSubscription?: Subscription;
private courseDate: Date = new Date(); private courseDate: Date = new Date();
public constructor( public constructor(
@ -33,26 +36,17 @@ export class VisitsComponent implements OnInit, OnDestroy {
) {} ) {}
public ngOnInit() { public ngOnInit() {
this.routerSubscription = this.route.params.subscribe(params => { if (this.date?.length == 8 && this.time?.length >= 3) {
const date: string = params['date']; const fulltime = this.time.padStart(4, '0');
const time: string = params['time']; const datetime = `${this.date.substring(0, 4)}-${this.date.substring(4, 6)}-${this.date.substring(6, 8)} ${fulltime.substring(0, 2)}:${fulltime.substring(2, 4)}:00`;
if (date?.length == 8 && time?.length >= 3) { const dateobj = new Date(datetime);
const fulltime = time.padStart(4, '0'); if (dateobj) {
const datetime = `${date.substring(0, 4)}-${date.substring(4, 6)}-${date.substring(6, 8)} ${fulltime.substring(0, 2)}:${fulltime.substring(2, 4)}:00`; this.courseDate = dateobj;
const dateobj = new Date(datetime);
if (dateobj) {
this.courseDate = dateobj;
}
} }
}
this.getData(); this.getData();
});
}
public ngOnDestroy() {
this.routerSubscription?.unsubscribe();
} }
public visit(studentVisit: StudentVisit): void { public visit(studentVisit: StudentVisit): void {