diff options
-rw-r--r-- | ufund-ui/src/app/components/funding-basket/funding-basket.component.ts | 49 |
1 files changed, 36 insertions, 13 deletions
diff --git a/ufund-ui/src/app/components/funding-basket/funding-basket.component.ts b/ufund-ui/src/app/components/funding-basket/funding-basket.component.ts index c65e25f..a6ee8fc 100644 --- a/ufund-ui/src/app/components/funding-basket/funding-basket.component.ts +++ b/ufund-ui/src/app/components/funding-basket/funding-basket.component.ts @@ -1,9 +1,17 @@ import {Component, OnInit} from '@angular/core'; import {User} from '../../models/User'; +<<<<<<< HEAD +import { UsersService } from '../../services/users.service'; +import { Need } from '../../models/Need'; +import { NeedListComponent } from '../need-list/need-list.component'; +import { Router } from '@angular/router'; +import { CupboardService } from '../../services/cupboard.service'; +======= import {UsersService} from '../../services/users.service'; import {Need} from '../../models/Need'; import {NeedListComponent} from '../need-list/need-list.component'; import {Router} from '@angular/router'; +>>>>>>> 1dd36e3643f646443555554d6de024653373fc8f @Component({ selector: 'app-funding-basket', @@ -11,22 +19,37 @@ import {Router} from '@angular/router'; templateUrl: './funding-basket.component.html', styleUrl: './funding-basket.component.css' }) -export class FundingBasketComponent implements OnInit { - user: User | null | undefined; - basket: Need[] = []; - needCount = 0; - need_quantity: { [key: number]: number } = {}; +export class FundingBasketComponent implements + OnInit { + user!: User; + needs: Need[] = []; + basket: Need[] = []; + needCount = 0; + need_quantity: {[key: number]: number} = {}; - constructor( - private router: Router, - private usersService: UsersService - ) { + constructor( + private router: Router, + private cupboardService: CupboardService, private usersService: UsersService + ) {} + + ngOnInit(): void { + if (!this.usersService.getCurrentUser()) { + this.router.navigate(['/login'], {queryParams: {redir: this.router.url}}); + return; + } + this.cupboardService.getNeeds().subscribe(n => this.needs = n) + const currentUser = this.usersService.getCurrentUser(); + if (currentUser) { + this.user = currentUser; } + this.getBasketNeeds(); + } - ngOnInit(): void { - if (!this.usersService.getCurrentUser()) { - this.router.navigate(['/login'], {queryParams: {redir: this.router.url}}); - return; + getBasketNeeds(): void { + if (this.user && this.needs) { + this.needs.forEach(need => { + if (this.isInBasket(need)){ + this.basket.push(need); } this.user = this.usersService.getCurrentUser() } |