blob: 7c5e48bf97b590abbb3937846431ba9ebf8a9f00 [file] [log] [blame]
Philipp Schrader02db74b2023-02-17 20:36:58 -08001<div class="header">
2 <h2>Notes</h2>
3</div>
Alex Perrybb901052022-03-23 19:46:15 -07004
5<ng-container [ngSwitch]="section">
6 <div *ngSwitchCase="'TeamSelection'">
Emily Markovacf893f42024-03-13 19:03:10 -07007 <div class="row">
8 <label id="team_number_label" class="label" for="team_number_notes">
9 Team Number
10 </label>
11 <input [(ngModel)]="teamNumber" type="text" id="team_number_notes" />
12 </div>
13 <div class="row">
14 <label for="match_number_notes">Match Number</label>
15 <input
16 [(ngModel)]="matchNumber"
17 type="number"
18 id="match_number_notes"
19 min="1"
20 max="999"
21 />
22 </div>
23 <div class="row">
24 <label for="set_number_notes">Set Number</label>
25 <input
26 [(ngModel)]="setNumber"
27 type="number"
28 id="set_number_notes"
29 min="1"
30 max="10"
31 />
32 </div>
33 <div class="row">
34 <label for="comp_level_notes">Comp Level</label>
35 <select [(ngModel)]="compLevel" type="number" id="comp_level_notes">
36 <option *ngFor="let level of COMP_LEVELS" [ngValue]="level">
37 {{COMP_LEVEL_LABELS[level]}}
38 </option>
39 </select>
40 </div>
41 <button class="btn btn-primary" (click)="setTeamData()">Select</button>
Alex Perrybb901052022-03-23 19:46:15 -070042 </div>
43
44 <div *ngSwitchCase="'Data'">
Filip Kujawaf947cb42022-11-21 10:00:30 -080045 <div class="container-main" *ngFor="let team of newData; let i = index">
46 <div class="pt-2 pb-2">
47 <div class="d-flex flex-row">
48 <div>
49 <button
50 class="btn bg-transparent ml-10 md-5"
51 (click)="removeTeam(i)"
52 >
53 &#10006;
54 <!--X Symbol-->
55 </button>
56 </div>
Filip Kujawa1861fa52022-12-01 10:37:06 -080057 <div><h3 id="team-key-{{i+1}}">{{team.teamNumber}}</h3></div>
Filip Kujawaf947cb42022-11-21 10:00:30 -080058 </div>
59 <div class="">
Filip Kujawa7dd49952022-12-02 12:09:13 -080060 <!--
61 Note Input Text Areas.
62 ID property is used for keyboard shorcuts to focus
63 on the corresponding text area.
64 The data-toggle and title properties are
65 used for bootstrap tooltips.
66 -->
Filip Kujawaf947cb42022-11-21 10:00:30 -080067 <textarea
68 class="text-input"
Filip Kujawa7dd49952022-12-02 12:09:13 -080069 id="text-input-{{i+1}}"
Filip Kujawaf947cb42022-11-21 10:00:30 -080070 [(ngModel)]="newData[i].notesData"
Filip Kujawa7dd49952022-12-02 12:09:13 -080071 data-toggle="tooltip"
72 title="Ctrl + {{i+1}}"
Filip Kujawaf947cb42022-11-21 10:00:30 -080073 ></textarea>
74 </div>
75 <!--Key Word Checkboxes-->
76 <!--Row 1 (Prevent Overflow on mobile by splitting checkboxes into 2 rows)-->
77 <!--Slice KEYWORD_CHECKBOX_LABELS using https://angular.io/api/common/SlicePipe-->
78 <div class="d-flex flex-row justify-content-around">
79 <div
80 *ngFor="let key of Object.keys(KEYWORD_CHECKBOX_LABELS) | slice:0:((Object.keys(KEYWORD_CHECKBOX_LABELS).length)/2); let k = index"
81 >
82 <div class="form-check">
83 <input
84 class="form-check-input"
85 [(ngModel)]="newData[i]['keywordsData'][key]"
86 type="checkbox"
Philipp Schrader02db74b2023-02-17 20:36:58 -080087 id="{{labelToId(KEYWORD_CHECKBOX_LABELS[key])}}_{{i}}"
Filip Kujawaf947cb42022-11-21 10:00:30 -080088 name="{{KEYWORD_CHECKBOX_LABELS[key]}}"
89 />
90 <label
91 class="form-check-label"
92 for="{{KEYWORD_CHECKBOX_LABELS[key]}}_{{i}}"
93 >
94 {{KEYWORD_CHECKBOX_LABELS[key]}}
95 </label>
96 <br />
97 </div>
98 </div>
99 </div>
100 <!--Row 2 (Prevent Overflow on mobile by splitting checkboxes into 2 rows)-->
101 <div class="d-flex flex-row justify-content-around">
102 <div
Emily Markovacf893f42024-03-13 19:03:10 -0700103 *ngFor="let key of Object.keys(KEYWORD_CHECKBOX_LABELS) | slice:4:(Object.keys(KEYWORD_CHECKBOX_LABELS).length); let k = index"
Filip Kujawaf947cb42022-11-21 10:00:30 -0800104 >
105 <div class="form-check">
106 <input
107 class="form-check-input"
108 [(ngModel)]="newData[i]['keywordsData'][key]"
109 type="checkbox"
Philipp Schrader02db74b2023-02-17 20:36:58 -0800110 id="{{labelToId(KEYWORD_CHECKBOX_LABELS[key])}}"
Filip Kujawaf947cb42022-11-21 10:00:30 -0800111 name="{{KEYWORD_CHECKBOX_LABELS[key]}}"
112 />
113 <label
114 class="form-check-label"
115 for="{{KEYWORD_CHECKBOX_LABELS[key]}}"
116 >
117 {{KEYWORD_CHECKBOX_LABELS[key]}}
118 </label>
119 <br />
120 </div>
121 </div>
122 </div>
123 </div>
124 </div>
125 <div class="d-flex flex-row justify-content-center pt-2">
126 <div>
Filip Kujawa1861fa52022-12-01 10:37:06 -0800127 <button
128 id="add-team-button"
129 class="btn btn-secondary"
130 (click)="addTeam()"
131 >
132 Add team
133 </button>
Filip Kujawaf947cb42022-11-21 10:00:30 -0800134 </div>
135 <div>
Filip Kujawa1861fa52022-12-01 10:37:06 -0800136 <button
137 id="submit-button"
138 class="btn btn-success"
139 (click)="submitData()"
140 >
141 Submit
142 </button>
Filip Kujawaf947cb42022-11-21 10:00:30 -0800143 </div>
Alex Perrybb901052022-03-23 19:46:15 -0700144 </div>
145 </div>
Filip Kujawaf947cb42022-11-21 10:00:30 -0800146
Philipp Schrader817cce32022-03-26 15:00:00 -0700147 <div class="error">{{errorMessage}}</div>
Alex Perrybb901052022-03-23 19:46:15 -0700148</ng-container>