aboutsummaryrefslogtreecommitdiff
path: root/ufund-ui/src/app/components/cupboard/cupboard.component.ts
blob: 213296d32f57e0dd4bb486e92556d7ef4e75a453 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
import { Component, OnInit, ViewChild } from '@angular/core';
import { CupboardService } from '../../services/cupboard.service';
import { Need, GoalType } from '../../models/Need';

@Component({
  selector: 'app-cupboard',
  standalone: false,
  templateUrl: './cupboard.component.html',
  styleUrl: './cupboard.component.css'
})

export class CupboardComponent implements OnInit {
    constructor(private cupboardService: CupboardService) { }
    
    ngOnInit(): void {
      this.close();
      this.openmenu();
    }

    private hideElement(element: any) {
      if (element){
        element.style.visibility = 'hidden';
        element.style.position = 'absolute';
      }
    }

    private showElement(element: any) {
      if (element){
        element.style.visibility = 'visible';
        element.style.position = 'relative';
      }
    }

    openmenu() {
      const menuElement = document.getElementById('menu');
      this.showElement(menuElement);
    }
    
    opencreate() {
      this.close();
      this.showElement(document.getElementById('create-form'));
    }

    opendestroy() {
      this.close();
      this.showElement(document.getElementById('destroy-form'));
    }

    destroy() {

    }

    back() {
      this.close();
      this.openmenu();
    }
    
    close() {
      this.hideElement(document.getElementById('create-form'));
      this.hideElement(document.getElementById('destroy-form'));
      this.hideElement(document.getElementById('menu'));
    }

    

    submit(form: any) {
      const need: Need = {
        name: form.name,
        id: form.id,
        maxGoal: form.maxGoal,
        type: GoalType[form.type as keyof typeof GoalType],
        filterAttributes: [],
        current: 0
      };
      console.log("form submitted. creating need: ", need);
      this.cupboardService.createNeed(need).subscribe(
        (result) => {
          if (result) {
            console.log("need created successfully");
            location.reload();
          } else {
            console.log("need creation failed");
          }
        }

      );
    }
  }