diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 7d13ff3ac9bd44d1687c5d509d5eaf13778c47f4..a204483873faf2e39daea7e38437071bda63e060 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -48,7 +48,7 @@ import { import { HttpClientInMemoryWebApiModule } from 'angular-in-memory-web-api'; import { HttpClientModule } from '@angular/common/http'; import { InMemoryDataService } from './in-memory-data.service'; -import { InMemoryDataService } from './in-memory-data.service'; +import { RoomComponent } from './room/room.component'; import { RoomCreationComponent } from './room-creation/room-creation.component'; import { LoginScreenComponent } from './login-screen/login-screen.component'; import { NotificationService } from './notification.service'; @@ -63,6 +63,8 @@ import { AuthenticationGuard } from './authentication.guard'; PageNotFoundComponent, PasswordResetComponent, RegisterComponent, + RoomComponent, + RegisterComponent, RoomCreationComponent ], entryComponents: [ diff --git a/src/app/room/room.component.html b/src/app/room/room.component.html new file mode 100644 index 0000000000000000000000000000000000000000..d92b39db60812e5c70d73434250ecf52ce394b99 --- /dev/null +++ b/src/app/room/room.component.html @@ -0,0 +1,3 @@ +<p> + room works! +</p> diff --git a/src/app/room/room.component.scss b/src/app/room/room.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/app/room/room.component.spec.ts b/src/app/room/room.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..f51b2a9942f43096abe3859f1bcb30350b8d0d86 --- /dev/null +++ b/src/app/room/room.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { RoomComponent } from './room.component'; + +describe('RoomComponent', () => { + let component: RoomComponent; + let fixture: ComponentFixture<RoomComponent>; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ RoomComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(RoomComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/room/room.component.ts b/src/app/room/room.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..248b9e7e9d488941a834379073806183e55a74c7 --- /dev/null +++ b/src/app/room/room.component.ts @@ -0,0 +1,36 @@ +import { Component, OnInit } from '@angular/core'; +import { Room } from '../room'; +import { RoomService } from '../room.service'; + + +@Component({ + selector: 'app-room', + templateUrl: './room.component.html', + styleUrls: ['./room.component.scss'] +}) +export class RoomComponent implements OnInit { + + rooms: Room[]; + + constructor(private roomService: RoomService) { + } + + ngOnInit() { + this.getRooms(); + } + + getRooms(): void { + this.roomService.getRooms().subscribe(rooms => this.rooms = rooms); + } + + add(name: string): void { + name = name.trim(); + if (!name) { + return; + } + this.roomService.addRoom({name} as Room).subscribe(room => { + this.rooms.push(room); + }); + } + +}