Left: | ||
Right: |
LEFT | RIGHT |
---|---|
1 title=Members | The Acceptable Ads Committee | 1 title=Members | The Acceptable Ads Committee |
juliandoucette
2017/06/23 12:55:21
Note: I had originally used a schema on this page
ire
2017/06/25 19:31:10
Acknowledged.
| |
2 description=A list of all Representatives and supporting Members that make up th e Acceptable Ads Committee. | 2 description=A list of all Representatives and supporting Members that make up th e Acceptable Ads Committee. |
3 parent=committee/index | 3 parent=committee/index |
4 custom=1 | 4 custom=1 |
5 | 5 |
6 {% block head %} | 6 {% block head %} |
7 <style> | 7 <style> |
juliandoucette
2017/06/23 12:55:21
Note: I would have pushed back on the custom eleme
ire
2017/06/25 19:31:10
Acknowledged.
| |
8 @media(min-width: 768px) | |
9 { | |
10 #committee-structure | |
11 { | |
12 padding-top: 25%; | |
13 margin: 0px auto; | |
14 max-width: 70%; | |
15 } | |
16 } | |
17 | |
8 .group-list h4 | 18 .group-list h4 |
9 { | 19 { |
10 margin-top: 40px; | 20 margin-top: 40px; |
11 padding: 8px 22px; | 21 padding: 8px 22px; |
12 background-color: #E1E1E1; | 22 background-color: #E1E1E1; |
13 } | 23 } |
14 | 24 |
15 .group-list dl | 25 .group-list dl |
16 { | 26 { |
17 margin: 22px; | 27 margin: 22px; |
18 } | 28 } |
19 | 29 |
20 .group-list dt | 30 .group-list dt |
21 { | 31 { |
22 margin: 32px 0; | 32 margin: 32px 0px 26px 0px; |
23 color: #424242; | 33 color: #424242; |
24 text-transform: none; | 34 text-transform: none; |
25 } | 35 } |
26 | 36 |
37 .group-list dd | |
38 { | |
39 margin: 0px; | |
40 } | |
41 | |
27 .member-list | 42 .member-list |
28 { | 43 { |
29 display: block; | 44 display: block; |
30 width: 100%; | 45 width: 100%; |
46 margin: 0px; | |
31 overflow: auto; | 47 overflow: auto; |
32 } | 48 } |
33 | 49 |
34 .member-list li | 50 .member-list li |
ire
2017/06/25 19:31:10
The list items look a bit squashed together on mob
juliandoucette
2017/06/26 14:38:36
Done.
Good catch :)
| |
35 { | 51 { |
36 display: block; | |
ire
2017/06/25 19:31:10
Since this element is floated, the `display: block
juliandoucette
2017/06/26 14:38:36
Done.
Verified; I did not know this :O
| |
37 width: 100%; | 52 width: 100%; |
38 float: left; | 53 float: left; |
39 padding-left: 0px; | 54 padding-left: 0px; |
40 } | 55 margin-bottom: 1em; |
41 | 56 } |
42 @media(min-width: 767px) | 57 |
ire
2017/06/25 19:31:10
The $tablet-breakpoint is 768px
juliandoucette
2017/06/26 14:38:37
We usually -1 when we use max-width NOT min-width
juliandoucette
2017/06/26 14:38:37
Done.
| |
58 @media(min-width: 768px) | |
43 { | 59 { |
44 .member-list li | 60 .member-list li |
45 { | 61 { |
46 min-height: 4em; | 62 min-height: 4em; |
47 width: 50%; | 63 width: 50%; |
48 } | 64 } |
49 } | 65 } |
50 | 66 |
51 @media(min-width: 992px) | 67 @media(min-width: 992px) |
52 { | 68 { |
53 .member-list li | 69 .member-list li |
54 { | 70 { |
55 width: 33.3333333%; | 71 width: 33.3333333%; |
56 } | 72 } |
57 } | 73 } |
58 | 74 |
59 .member-list li:before | 75 .member-list li:before |
60 { | 76 { |
61 display: none; | 77 display: none; |
62 content: none; | |
ire
2017/06/25 19:31:10
Setting `content: none` doesn't seem to be doing a
juliandoucette
2017/06/26 14:38:36
Done.
It was doing something - just not something
| |
63 } | 78 } |
64 </style> | 79 </style> |
65 {% endblock %} | 80 {% endblock %} |
66 | 81 |
67 {% set committee = [ | 82 {% set coalitions = { |
juliandoucette
2017/06/23 12:55:21
Note: I put this inside the template because...
1
ire
2017/06/25 19:31:10
Acknowledged.
| |
83 "for-profit": { | |
84 "title": "For-Profit Coalition", | |
85 "description": "This Coalition consists of stakeholders that can be classifi ed as organizations primarily driven by generating profits. The following groups form the For-Profit Coalition: Advertisers, Ad-Tech Agencies, Advertising Agenc ies, and Publishers and Content Creators.", | |
86 "groups": [ | |
87 "Advertisers", | |
88 "Ad Tech Agencies", | |
89 "Advertising Agencies", | |
90 "Publishers & Content Creators", | |
91 ], | |
92 }, | |
93 "expert": { | |
94 "title": "Expert Coalition", | |
95 "description": "This Coalition consists of stakeholders who primarily focus on specific issues relevant to their area of expertise. These experts bring a un ique and objective perspective to the AAC. The following groups form the Expert Coalition: Creative Agents, Researchers and Academics and User Agents.", | |
96 "groups": [ | |
97 "Creative Agents", | |
98 "Researchers & Academics", | |
99 "User Agents", | |
100 ], | |
101 }, | |
102 "user-advocate": { | |
103 "title": "User Advocate Coalition", | |
104 "description": "This Coalition consists of stakeholders that can be classifi ed as entities primarily driven by protecting the rights of online users. The fo llowing Member Groups form the User Advocate Coalition: Digital Rights Organizat ions and Individual Users.", | |
105 "groups": [ | |
106 "Digital Rights Organizations", | |
107 "Users", | |
108 ], | |
109 }, | |
110 } %} | |
111 | |
112 {% set members = [ | |
68 { | 113 { |
juliandoucette
2017/06/23 12:55:21
Note: Please double check that I didn't miss anyon
ire
2017/06/25 19:31:09
Done. Everything looks correct to me.
juliandoucette
2017/06/26 14:38:36
Acknowledged.
| |
69 "group": "Advertisers", | 114 "group": "Advertisers", |
70 "position": "Representative", | 115 "position": "Representative", |
71 "name": "Breanna Fowler", | 116 "name": "Breanna Fowler", |
72 "title": "Strategic Partnerships & Advertising", | 117 "title": "Strategic Partnerships & Advertising", |
73 "org": "Dell", | 118 "org": "Dell", |
74 }, | 119 }, |
75 { | 120 { |
76 "group": "Advertising Agencies", | 121 "group": "Advertising Agencies", |
77 "position": "Representative", | 122 "position": "Representative", |
78 "name": "Gabriel Cheng", | 123 "name": "Gabriel Cheng", |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
199 "org": "Sharethrough", | 244 "org": "Sharethrough", |
200 }, | 245 }, |
201 { | 246 { |
202 "group": "Ad Tech Agencies", | 247 "group": "Ad Tech Agencies", |
203 "position": "Member", | 248 "position": "Member", |
204 "name": "Eric Simon", | 249 "name": "Eric Simon", |
205 "title": "COO", | 250 "title": "COO", |
206 "org": "Skydeo", | 251 "org": "Skydeo", |
207 }, | 252 }, |
208 { | 253 { |
209 "group": "Creative Agent", | 254 "group": "Creative Agents", |
ire
2017/06/25 19:31:10
Sometimes the group is written in plural form, e.g
juliandoucette
2017/06/26 14:38:36
Acknowledged.
I think these names don't match the
juliandoucette
2017/06/26 14:38:37
Done.
| |
210 "position": "Representative", | 255 "position": "Representative", |
211 "name": "Jon Lefley", | 256 "name": "Jon Lefley", |
212 "title": "Creative Director", | 257 "title": "Creative Director", |
213 "org": "Saatchi & Saatchi", | 258 "org": "Saatchi & Saatchi", |
214 }, | 259 }, |
215 { | 260 { |
216 "group": "Creative Agent", | 261 "group": "Creative Agents", |
217 "position": "Member", | 262 "position": "Member", |
218 "name": "Tobias Eidem", | 263 "name": "Tobias Eidem", |
219 "title": "BrandGlobe and former chairman of Sweden’s KIA-index", | 264 "title": "BrandGlobe and former chairman of Sweden’s KIA-index", |
220 "org": "BrandGlobe", | 265 "org": "BrandGlobe", |
221 }, | 266 }, |
222 { | 267 { |
223 "group": "Digital Rights Organization", | 268 "group": "Digital Rights Organizations", |
224 "position": "Representative", | 269 "position": "Representative", |
225 "name": "Holmes Wilson", | 270 "name": "Holmes Wilson", |
226 "title": "Co-Founder/Co-director", | 271 "title": "Co-Founder/Co-director", |
227 "org": "Fight for the Future", | 272 "org": "Fight for the Future", |
228 }, | 273 }, |
229 { | 274 { |
230 "group": "Publishers & Content Creators", | 275 "group": "Publishers & Content Creators", |
231 "position": "Representative", | 276 "position": "Representative", |
232 "name": "Gavin Hall", | 277 "name": "Gavin Hall", |
233 "title": "CTO", | 278 "title": "CTO", |
(...skipping 21 matching lines...) Expand all Loading... | |
255 "org": "Leaf Group", | 300 "org": "Leaf Group", |
256 }, | 301 }, |
257 { | 302 { |
258 "group": "Publishers & Content Creators", | 303 "group": "Publishers & Content Creators", |
259 "position": "Member", | 304 "position": "Member", |
260 "name": "Loic Dussart", | 305 "name": "Loic Dussart", |
261 "title": "COO", | 306 "title": "COO", |
262 "org": "KOL", | 307 "org": "KOL", |
263 }, | 308 }, |
264 { | 309 { |
265 "group": "Researcher", | 310 "group": "Researchers & Academics", |
266 "position": "Representative", | 311 "position": "Representative", |
267 "name": "Fran Howarth", | 312 "name": "Fran Howarth", |
268 "title": "Security Analyst", | 313 "title": "Security Analyst", |
269 "org": "Bloor Analyst Group", | 314 "org": "Bloor Analyst Group", |
270 }, | 315 }, |
271 { | 316 { |
272 "group": "User Agent", | 317 "group": "User Agents", |
273 "position": "Representative", | 318 "position": "Representative", |
274 "name": "Kenny Ye (叶智聪)", | 319 "name": "Kenny Ye (叶智聪)", |
275 "title": "Director of International Business Development, Alibaba Mobile Gro up", | 320 "title": "Director of International Business Development, Alibaba Mobile Gro up", |
276 "org": "UC Web", | 321 "org": "UC Web", |
277 }, | 322 }, |
323 { | |
324 "group": "Users", | |
325 "position": "Representative", | |
326 "name": "Caroline Crandall", | |
327 "title": "Adblocking User", | |
328 "org": False, | |
329 }, | |
330 { | |
331 "group": "Users", | |
332 "position": "Member", | |
333 "name": "Zack Sinclair", | |
334 "title": "Adblocking User", | |
335 "org": False, | |
336 }, | |
337 { | |
338 "group": "Users", | |
339 "position": "Member", | |
340 "name": "Leli Schiestl", | |
341 "title": "Adblocking User", | |
342 "org": False, | |
343 }, | |
344 { | |
345 "group": "Digital Rights Organizations", | |
346 "position": "Representative", | |
347 "name": "Paul-Olivier Dehaye", | |
348 "title": "Co-Founder", | |
349 "org": "PersonalData.IO", | |
350 }, | |
351 { | |
352 "group": "Ad Tech Agencies", | |
353 "position": "Member", | |
354 "name": "Michael Blend", | |
355 "title": "Co-founder and President", | |
356 "org": "System1", | |
357 }, | |
358 { | |
359 "group": "Advertisers", | |
360 "position": "Member", | |
361 "name": "Thomas Wrobel", | |
362 "title": False, | |
363 "org": "Trivago", | |
364 }, | |
365 { | |
366 "group": "Researchers & Academics", | |
367 "position": "Member", | |
368 "name": "Zubair Shafiq", | |
369 "title": "Assistant Professor", | |
370 "org": "Department of Computer Science, The University of Iowa, USA", | |
371 }, | |
278 ] %} | 372 ] %} |
279 | 373 |
280 {% macro member_list(group, position) -%} | 374 {% macro member_list(group, position) -%} |
281 <ul class="member-list"> | 375 {% set count = [] %} |
282 {% for member in committee %} | 376 {% for member in members %} |
ire
2017/06/25 19:31:09
Should we have some fallback message for if there
juliandoucette
2017/06/26 14:38:36
Done.
| |
283 {% if member.group == group and member.position == position %} | 377 {% if member.group == group and member.position == position %} |
284 <li> | 378 {% if (count | length) == 0 %} |
285 <strong>{{ member.name }}</strong><br> | 379 <ul class="member-list"> |
286 {{ member.title }}, <em>{{ member.org }}</em> | |
287 </li> | |
288 {% endif %} | 380 {% endif %} |
289 {% endfor %} | 381 {% set _ = count.append(1) %} |
290 </ul> | 382 {% if member.title and member.org %} |
291 {% if position == "Member" %} | 383 {% set separator = "," %} |
384 {% else %} | |
385 {% set separator = "" %} | |
386 {% endif %} | |
387 <li> | |
388 <strong>{{ member.name }}</strong><br> | |
389 {% if member.title %}{{ member.title }}{% endif %}{{ separator }} | |
390 {% if member.org %}<em>{{ member.org }}</em> {% endif %} | |
391 </li> | |
392 {% endif %} | |
393 {% endfor %} | |
394 {% if (count | length) > 0 %} | |
395 </ul> | |
396 {% endif %} | |
397 {% if position == "Member" or (count | length) < 1 %} | |
292 <p><a class="btn-primary" href="committee/apply">{{ "Apply" | translate("app ly-button", "button label") }}</a></p> | 398 <p><a class="btn-primary" href="committee/apply">{{ "Apply" | translate("app ly-button", "button label") }}</a></p> |
293 {% endif %} | 399 {% endif %} |
294 {% endmacro %} | 400 {% endmacro %} |
295 | 401 |
296 {% macro group_list(group) -%} | 402 {% macro group_list(id, group) -%} |
297 <section class="group-list"> | 403 <section class="group-list"> |
298 <h4>{{ group | translate("group-name-heading", "heading") }}</h4> | 404 <h4>{{ group | translate(id + "-heading", "heading") }}</h4> |
299 <dl> | 405 <dl> |
300 <dt>{{ "Representative" | translate("representative-heading", "heading") } }</dt> | 406 <dt>{{ "Representative" | translate("representative-heading", "heading") } }</dt> |
301 <dd>{{ member_list(group, "Representative") }}</dd> | 407 <dd>{{ member_list(group, "Representative") }}</dd> |
302 </dl> | 408 </dl> |
303 <dl> | 409 <dl> |
304 <dt>{{ "Members" | translate("members-heading", "heading") }}</dt> | 410 <dt>{{ "Members" | translate("members-heading", "heading") }}</dt> |
305 <dd>{{ member_list(group, "Member") }}</dd> | 411 <dd>{{ member_list(group, "Member") }}</dd> |
306 </dl> | 412 </dl> |
307 </section> | 413 </section> |
308 {%- endmacro %} | 414 {%- endmacro %} |
309 | 415 |
416 {% macro coalition_section(id) -%} | |
417 <section class="section"> | |
418 <h3 class="h2">{{ coalitions[id].title | translate("{{ id }}-heading", "head ing") }}</h3> | |
419 <p class="col-6">{{ coalitions[id].description | translate("{{ id }}-intro") }}</p> | |
420 {% for group in coalitions[id].groups %} | |
421 {{ group_list(id, group) }} | |
422 {% endfor %} | |
423 </section> | |
424 {% endmacro %} | |
425 | |
310 <section class="container"> | 426 <section class="container"> |
311 <div class="row"> | 427 <div class="row section"> |
312 <div class="col-6"> | 428 <div class="col-6"> |
juliandoucette
2017/06/23 12:55:21
Note: I could have used a col-7, col-5 split for b
ire
2017/06/25 19:31:10
Acknowledged.
| |
313 <h1>{{ "Members" | translate("members-heading", "heading") }}</h1> | 429 <h1>{{ "Members" | translate("members-heading", "heading") }}</h1> |
314 <hr> | 430 <hr> |
315 <p>{{ "The Acceptable Ads Committee is divided into three Coalitions, with each faction consisting of several Members. Each group includes a Representativ e and multiple supporting Members." | translate("members-intro-2") }}</p> | 431 <p>{{ "The Acceptable Ads Committee is divided into three Coalitions, with each faction consisting of several Members. Each group includes a Representativ e and multiple supporting Members." | translate("members-intro-1") }}</p> |
316 <p>{{ "Below is a list of all current Representatives and supporting Membe rs, broken down by Coalition." | translate("members-intro-2") }}</p> | 432 <p>{{ "Below is a list of all current Representatives and supporting Membe rs, broken down by Coalition." | translate("members-intro-2") }}</p> |
317 </div> | 433 </div> |
318 <aside class="col-6"> | 434 <aside class="col-6"> |
319 <img class="block" alt="{{ "Acceptable Ads Committee Structure" | translat e("featured-image-alt", "Image alt text") }}" src="https://acceptableads.com/img /png/blog/acceptable-ads-committee-structure.png" /> | 435 <img id="committee-structure" class="block" alt="{{ "Acceptable Ads Commit tee Structure" | translate("featured-image-alt", "Image alt text") }}" src="/img /png/blog/acceptable-ads-committee-structure.png" /> |
juliandoucette
2017/06/23 12:55:21
NIT: I didn't need to add the protocol and domain
ire
2017/06/25 19:31:10
Was about to say :p
juliandoucette
2017/06/26 14:38:37
Done.
| |
320 </aside> | 436 </aside> |
321 </div> | 437 </div> |
322 </section> | 438 </section> |
323 | 439 |
324 <section> | 440 <section> |
325 | 441 |
326 <div class="bg-accent"> | 442 <div class="bg-accent"> |
327 <h3 class="center p-y-md m-a-md">{{ "Meet the Acceptable Ads Committee" | tr anslate("committee-heading", "heading") }}</h3> | 443 <h2 class="center h3 p-y-md m-a-md">{{ "Meet the Acceptable Ads Committee" | translate("committee-heading", "heading") }}</h2> |
juliandoucette
2017/06/23 12:55:22
NIT: I don't like the p- m- classes here - but I d
ire
2017/06/25 19:31:09
I see what you mean but I don't think they are act
ire
2017/06/25 19:31:09
It seems like this should be an <h2> and the other
juliandoucette
2017/06/26 14:38:36
Yes. Unfortunately the semantically correct header
| |
328 </div> | 444 </div> |
329 | 445 |
330 <div class="container"> | 446 <div class="container"> |
331 <section class="section"> | 447 {% for coalition in ["for-profit", "expert", "user-advocate"] %} |
332 <h2>{{ "For-Profit Coalition" | translate("for-profit-heading", "heading") }}</h2> | 448 {{ coalition_section(coalition) }} |
juliandoucette
2017/06/23 12:55:21
Note: I could also put this header, paragraph, set
ire
2017/06/25 19:31:10
Yes I think you should.
juliandoucette
2017/06/26 14:38:37
Done.
| |
333 <p class="col-6">{{ "This Coalition consists of stakeholders that can be c lassified as organizations primarily driven by generating profits. The following groups form the For-Profit Coalition: Advertisers, Ad-Tech Agencies, Advertisin g Agencies, and Publishers and Content Creators." | translate("for-profit-intro" ) }}</p> | 449 {% endfor %} |
ire
2017/06/25 19:31:09
Why does only this paragraph have a `.col-6`?
juliandoucette
2017/06/26 14:38:36
They should all be. The design specifies 1/2 width
| |
334 {{ group_list("Advertisers") }} | |
335 {{ group_list("Ad Tech Agencies") }} | |
336 {{ group_list("Advertising Agencies") }} | |
337 {{ group_list("Publishers & Content Creators") }} | |
338 </section> | |
339 <section class="section"> | |
340 <h2>{{ "Expert Coalition" | translate("expert-coalition", "heading") }}</h 2> | |
341 <p>{{ "This Coalition consists of stakeholders who primarily focus on spec ific issues relevant to their area of expertise. These experts bring a unique an d objective perspective to the AAC. The following groups form the Expert Coaliti on: Creative Agents, Researchers and Academics and User Agents." | translate("ex pert-coalition-intro") }}</p> | |
342 {{ group_list("Creative Agent") }} | |
343 {{ group_list("Researcher") }} | |
344 {{ group_list("User Agent") }} | |
345 </section> | |
346 <section class="section"> | |
347 <h2>{{ "User ADvocate Coalition" | translate("user-advocate-coalition", "h eading") }}</h2> | |
ire
2017/06/25 19:31:09
NIT: "Advocate", not "ADvocate"
juliandoucette
2017/06/26 14:38:36
Done.
juliandoucette
2017/06/26 14:38:37
Not a NIT :D - Good catch.
| |
348 <p>{{ "This Coalition consists of stakeholders that can be classified as e ntities primarily driven by protecting the rights of online users. The following Member Groups form the User Advocate Coalition: Digital Rights Organizations an d Individual Users." | translate("user-advocate-coalition-intro") }}</p> | |
349 {{ group_list("Digital Rights Organization") }} | |
350 {{ group_list("Users") }} | |
351 </section> | |
352 </div> | 450 </div> |
353 | 451 |
354 </section> | 452 </section> |
LEFT | RIGHT |