summaryrefslogtreecommitdiff
path: root/recipeBuddy/src/app/add-recipe/add-recipe.component.html
blob: 76095f98bc6593b19bf13dac27d15814d72171e0 (plain)
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<form [formGroup]="recipeForm" class="form" (ngSubmit)="onSubmit()">
<h2>Add Recipe</h2>
	<mat-form-field class="full-width">
		<input matInput placeholder="Name" type="text"
			formControlName="recipeName" required>
		<mat-hint>
			Name is required
		</mat-hint>
		<mat-error>
			Name is required
		</mat-error>
	</mat-form-field>
	<mat-form-field class="full-width">
		<textarea matInput placeholder="Description"
		formControlName="desc"> TEST </textarea>
	</mat-form-field>
	<mat-form-field class="full-width">
		<input matInput placeholder="Servings" type=text
		formControlName="servingSize" pattern="^[0-9]*(\.[0-9]*)?$">
		<mat-error>
			Servings must be a number.
		</mat-error>
	</mat-form-field>
	<mat-form-field class="full-width">
		
		<input matInput placeholder="Cooking Time" type="text" formControlName="cookTime"
		pattern="^[0-9]*$">
		<span matSuffix>Minutes</span>
		<mat-error>
			Must be in the form hh:mm
		</mat-error>
	</mat-form-field>
	<mat-form-field class="full-width" floatLabel="options.value.floatLabel">
		<mat-label>Keywords/Tags</mat-label>
		<input matInput placeholder="Separate with a comma" type="text" formControlName="tags">
	</mat-form-field>
	<mat-form-field class="full-width" floatLabel="options.value.floatLabel">
		<mat-label>Photos (URLS)</mat-label>
		<input matInput placeholder="Separate with a comma" type="text" formControlName="photos">
	</mat-form-field>

	<div formArrayName="ingredients">
		<h3>Ingredients</h3>
		<div *ngFor="let ingr of ingredients.controls; let i=index">
			<div [formGroupName]="i">
				<h4>Ingredient {{ i + 1 }}</h4>
				<div class="full-width">
				<mat-form-field class="quarter-width">
					<input matInput placeholder="Name" type="text"
					formControlName="ingrName">
				</mat-form-field>
				<mat-form-field class="quarter-width">
					<input matInput placeholder="Amount"
					type="text"
					formControlName="amount" pattern="^[0-9]*(\.[0-9]*)?$">
					<mat-error>
						Amount must be a number.
					</mat-error>
				</mat-form-field>
				<mat-form-field class="quarter-width">
					<input matInput placeholder="Units" type="text"
					formControlName="units">
				</mat-form-field>
				<button matSuffix mat-mini-fab (click)="rmIngredient(i)"
					type="button" style="margin-left: 10px">
					<mat-icon>remove</mat-icon>
				</button>
				</div>
			</div>
		</div>
		<div style="text-align: center">
		<button mat-mini-fab (click)="addIngredient()"
		type="button">
			<mat-icon>add</mat-icon>
		</button>
		</div>
	</div>

	<div formArrayName="steps">
		<h3>Steps</h3>
		<div *ngFor="let address of steps.controls; let i=index">
			<div [formGroupName]="i">
				<h4>Step {{ i + 1 }}</h4>
				<div class="ful-width">
				<mat-form-field class="half-width">
					<textarea matInput placeholder="Instructions" type="text" formControlName="instruct">
					</textarea>
				</mat-form-field>
				<mat-form-field class="quarter-width">
					<input matInput placeholder="Timer" type="text"
					formControlName="timer" pattern="^[0-9]*$">
					<span matSuffix>Minutes</span>
				</mat-form-field>
				<button matSuffix mat-mini-fab (click)="rmStep(i)"
					type="button" style="margin-left: 10px">
					<mat-icon>remove</mat-icon>
				</button>
				</div>
			</div>
		</div>
		<div style="text-align: center">
			<button mat-mini-fab (click)="addStep()" matSuffix type="button">
				<mat-icon>add</mat-icon>
			</button>
		</div>
	</div>
	<button mat-flat-button color="primary" type="submit"
	[disabled]="!recipeForm.valid">Submit</button>
</form>