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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
|
<!doctype html>
<html>
<head>
<meta charset="UTF-8" />
<style type="text/css">
/* Shared styles */
body {
font-family: Helvetica, sans-serif;
font-size: 16px;
color: #34302e;
margin: 0.25in;
}
.name {
font-size: 18px;
font-family: Helvetica, sans-serif;
font-weight: normal;
margin: 0 0 10px 0;
}
.categories {
color: #605d5d;
font-size: 14px;
font-family: Helvetica, sans-serif;
font-style: italic;
}
.rating {
color: #d10505;
font-size: 14px;
}
.metadata {
font-size: 14px;
}
.infobox p {
margin: 0;
line-height: 150%;
}
.subhead {
color: #d10505;
font-weight: bold;
font-size: 14px;
text-transform: uppercase;
margin: 10px 0;
}
.ingredients p {
margin: 4px 0;
}
/* To prevent nutrition/directions from getting too close
to ingredients */
.ingredients {
padding-bottom: 10px;
}
.clear {
clear: both;
}
a {
color: #4990e2;
text-decoration: none;
}
/* Full page specific styles */
.text {
line-height: 130%;
}
.photobox {
float: left;
margin-right: 14px;
}
.photo {
max-width: 140px;
max-height: 140px;
width: auto;
height: auto;
}
.inline-image {
max-width: 25%;
max-height: 25%;
width: auto;
height: auto;
}
.photoswipe {
border: 1px #dddddd solid;
cursor: pointer;
}
.pswp__caption__center {
text-align: center !important;
}
.recipe {
page-break-after: always;
}
.recipe:first-child {
border-top: 0 none;
margin-top: 0;
padding-top: 0;
}
</style>
</head>
<body>
<!-- Recipe -->
<div class="recipe" itemscope itemtype="http://schema.org/Recipe">
<div class="infobox">
<!-- Image -->
<div class="photobox">
<a href="#">
<img
src="Images/DCF8248A-8219-4D2D-83D9-F370DCE00AD5/81EB7245-4EB4-447F-B92D-7C4B66688C2F.jpg"
itemprop="image"
class="photo photoswipe"
/>
</a>
</div>
<!-- Name -->
<h1 itemprop="name" class="name">
Herby polenta with asparagus and a poached egg
</h1>
<!-- Info -->
<!-- Rating, categories -->
<p itemprop="aggregateRating" class="rating" value="0"></p>
<p class="metadata">
<!-- Cook time, prep time, servings, difficulty -->
<b>Prep Time: </b><span itemprop="prepTime">10 min</span>
<b>Cook Time: </b><span itemprop="cookTime">15 min</span>
<b>Total Time: </b><span itemprop="totalTime">0 min</span>
<b>Servings: </b><span itemprop="recipeYield">4</span>
<!-- Source -->
<b>Source: </b>
<a
itemprop="url"
href="https://www.theguardian.com/food/2019/apr/26/anna-jones-30-minute-recipes"
>
<span itemprop="author">The Guardian</span>
</a>
</p>
<div class="clear"></div>
</div>
<div class="left-column">
<!-- Ingredients -->
<div class="ingredientsbox">
<h3 class="subhead">Ingredients</h3>
<div class="ingredients text">
<p class="line" itemprop="recipeIngredient">
<strong>125</strong>g slightly salted butter, plus 50g for frying
the sage
</p>
<p class="line" itemprop="recipeIngredient">
<strong>8</strong> sage leaves
</p>
<p class="line" itemprop="recipeIngredient">
<strong>200</strong>g instant polenta
</p>
<p class="line" itemprop="recipeIngredient">
<strong>75</strong>g freshly grated parmesan or pecorino
</p>
<p class="line" itemprop="recipeIngredient">
<strong>2</strong> sprigs oregano, leaves picked and roughly
chopped
</p>
<p class="line" itemprop="recipeIngredient">
<strong>1</strong> small bunch parsley, leaves picked and finely
chopped
</p>
<p class="line" itemprop="recipeIngredient">
<strong>1</strong> small bunch basil, picked and shredded
</p>
<p class="line" itemprop="recipeIngredient">
<strong>200</strong>g asparagus, woody ends snapped off
</p>
<p class="line" itemprop="recipeIngredient">
Olive oil, to drizzle
</p>
<p class="line" itemprop="recipeIngredient">
<strong>4</strong> eggs
</p>
</div>
</div>
<!-- Nutrition (in two-column mode it goes below the ingredients) -->
</div>
<div class="right-column">
<!-- Description -->
<div class="descriptionbox">
<h3 class="subhead">Description</h3>
<div itemprop="description" class="description text">
<p>
You can mix up the herbs you use here; thyme or rosemary would
work instead of oregano, but you’ll need a little less – and be
sure to chop it finely. Polenta packet instructions vary, so check
the cooking time on yours and adjust accordingly.
</p>
</div>
</div>
<!-- Directions -->
<div class="directionsbox">
<h3 class="subhead">Directions</h3>
<div itemprop="recipeInstructions" class="directions text">
<p class="line">
Bring two litres of water to a boil in a large pan. Heat a small
frying pan over a medium heat and, once hot, add 50g butter, then
fry the sage leaves until crisp. Tip the leaves and butter into a
bowl.
</p>
<p class="line">
Remove the large pan from the heat and slowly pour in the polenta,
whisking all the time, so that no lumps form. Return to the heat
and cook gently, stirring, for eight minutes (see note above on
timing).
</p>
<p class="line">
Add the parmesan (for added flavour, cut off the rind and add
this, too), the rest of the butter, plenty of seasoning and more
just-boiled water if you think it needs loosening (remember it
will thicken a little as it sits). Stir gently until combined,
then add the oregano, parsley and basil, stir again, and keep warm
over a low heat.
</p>
<p class="line">
Meanwhile, bring a medium saucepan of salted water to a boil, add
the asparagus and cook for one minute. Remove with tongs, put in a
bowl, season with salt and drizzle with olive oil.
</p>
<p class="line">
Reduce the heat, crack an egg into a glass, tip the egg in and
slowly lower it into the water to cover. Repeat with the rest of
the eggs. Cook for three and a half minutes, or until the white is
firm but the yolk still soft.
</p>
<p class="line">
While the eggs are cooking, spoon the cooked polenta (avoiding the
rind) on to warm plates and top with the asparagus. When the eggs
are cooked, scoop them out, drain well, then place carefully on
top of the polenta. Spoon over the crisp sage and butter, and
serve.
</p>
</div>
</div>
<!-- Notes -->
<!-- Nutrition (in regular mode it goes below the notes) -->
<!-- Used in two different places depending on the recipe layout -->
</div>
<div class="clear"></div>
</div>
<!-- Photo gallery is only included when exporting. -->
<!-- PhotoSwipe gallery -->
<link rel="stylesheet" href="Resources/PhotoSwipe/photoswipe.css" />
<link
rel="stylesheet"
href="Resources/PhotoSwipe/default-skin/default-skin.css"
/>
<script src="Resources/PhotoSwipe/photoswipe.min.js"></script>
<script src="Resources/PhotoSwipe/photoswipe-ui-default.min.js"></script>
<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
<div class="pswp__bg"></div>
<div class="pswp__scroll-wrap">
<div class="pswp__container">
<div class="pswp__item"></div>
<div class="pswp__item"></div>
<div class="pswp__item"></div>
</div>
<div class="pswp__ui pswp__ui--hidden">
<div class="pswp__top-bar">
<div class="pswp__counter"></div>
<button
class="pswp__button pswp__button--close"
title="Close"
></button>
</div>
<button
class="pswp__button pswp__button--arrow--left"
title="Previous"
></button>
<button
class="pswp__button pswp__button--arrow--right"
title="Next"
></button>
<div class="pswp__caption">
<div class="pswp__caption__center"></div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
var openPhotoSwipe = function (event) {
var pswp = document.querySelector(".pswp");
var element = event.target;
var src = element.getAttribute("src");
// build items array
var items = [
{
msrc: "Images/DCF8248A-8219-4D2D-83D9-F370DCE00AD5/A0646C22-3771-4192-9681-99FD3F562DA5.jpg",
src: "Images/DCF8248A-8219-4D2D-83D9-F370DCE00AD5/A0646C22-3771-4192-9681-99FD3F562DA5.jpg",
w: 1240.0,
h: 1240.0,
title: "1",
},
];
var index = 0;
for (var i = 0; i < items.length; i++) {
var item = items[i];
if (item.src == src) {
index = i;
}
}
var options = {
index: index,
history: false,
focus: true,
captionEl: true,
fullscreenEl: false,
zoomEl: false,
shareEl: false,
preloaderEl: false,
bgOpacity: 0.9,
showHideOpacity: true,
};
var gallery = new PhotoSwipe(
pswp,
PhotoSwipeUI_Default,
items,
options,
);
gallery.init();
};
var elements = document.querySelectorAll(".photoswipe");
for (var i = 0; i < elements.length; i++) {
var element = elements[i];
element.addEventListener("click", openPhotoSwipe);
}
</script>
</body>
</html>
|