 Issue 29471608:
  Issue 5043 - Update member page layout  (Closed) 
  Base URL: https://hg.adblockplus.org/web.acceptableads.com
    
  
    Issue 29471608:
  Issue 5043 - Update member page layout  (Closed) 
  Base URL: https://hg.adblockplus.org/web.acceptableads.com| Left: | ||
| Right: | 
| OLD | NEW | 
|---|---|
| 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=Meet the Acceptable Ads Committee. | 2 description=A list of all Representatives and supporting Members that make up th e Acceptable Ads Committee. | 
| 3 breadcrumb=Members | |
| 4 parent=committee/index | 3 parent=committee/index | 
| 5 custom=1 | 4 custom=1 | 
| 6 | 5 | 
| 7 <style type="text/css"> | 6 {% block head %} | 
| 8 .card | 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.
 | |
| 9 { | 8 .group-list h4 | 
| 10 border-bottom: 0px; | 9 { | 
| 11 } | 10 margin-top: 40px; | 
| 12 | 11 padding: 8px 22px; | 
| 13 .card .summary | 12 background-color: #E1E1E1; | 
| 14 { | 13 } | 
| 15 height: 140px; | 14 | 
| 16 } | 15 .group-list dl | 
| 17 | 16 { | 
| 18 .card h3 | 17 margin: 22px; | 
| 19 { | 18 } | 
| 20 height: auto; | 19 | 
| 21 } | 20 .group-list dt | 
| 22 | 21 { | 
| 23 html[dir="ltr"] .card | 22 margin: 32px 0; | 
| 24 { | 23 color: #424242; | 
| 25 border-left: 0px; | 24 text-transform: none; | 
| 26 } | 25 } | 
| 27 | 26 | 
| 28 html[dir="rtl"] .card | 27 .member-list | 
| 29 { | 28 { | 
| 30 border-right: 0px; | 29 display: block; | 
| 31 } | 30 width: 100%; | 
| 32 </style> | 31 overflow: auto; | 
| 33 | 32 } | 
| 34 <div class="container" markdown="1"> | 33 | 
| 35 # {{members-heading[Members Heading] Members}} | 34 .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 :)
 | |
| 36 | 35 { | 
| 37 --- | 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
 | |
| 38 </div> | 37 width: 100%; | 
| 39 | 38 float: left; | 
| 40 <? include members/all-members ?> | 39 padding-left: 0px; | 
| 40 } | |
| 41 | |
| 42 @media(min-width: 767px) | |
| 
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.
 | |
| 43 { | |
| 44 .member-list li | |
| 45 { | |
| 46 min-height: 4em; | |
| 47 width: 50%; | |
| 48 } | |
| 49 } | |
| 50 | |
| 51 @media(min-width: 992px) | |
| 52 { | |
| 53 .member-list li | |
| 54 { | |
| 55 width: 33.3333333%; | |
| 56 } | |
| 57 } | |
| 58 | |
| 59 .member-list li:before | |
| 60 { | |
| 61 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 } | |
| 64 </style> | |
| 65 {% endblock %} | |
| 66 | |
| 67 {% set committee = [ | |
| 
juliandoucette
2017/06/23 12:55:21
Note: I put this inside the template because...
1
 
ire
2017/06/25 19:31:10
Acknowledged.
 | |
| 68 { | |
| 
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", | |
| 70 "position": "Representative", | |
| 71 "name": "Breanna Fowler", | |
| 72 "title": "Strategic Partnerships & Advertising", | |
| 73 "org": "Dell", | |
| 74 }, | |
| 75 { | |
| 76 "group": "Advertising Agencies", | |
| 77 "position": "Representative", | |
| 78 "name": "Gabriel Cheng", | |
| 79 "title": "VP Strategy Growth & Partnerships", | |
| 80 "org": "M&C Saatchi Mobile", | |
| 81 }, | |
| 82 { | |
| 83 "group": "Advertising Agencies", | |
| 84 "position": "Member", | |
| 85 "name": "Kevin Vanvalkenburgh", | |
| 86 "title": "Vice President of Connections Planning", | |
| 87 "org": "The Tombras Group", | |
| 88 }, | |
| 89 { | |
| 90 "group": "Advertising Agencies", | |
| 91 "position": "Member", | |
| 92 "name": "Tom Rathbone", | |
| 93 "title": "Head of Technology", | |
| 94 "org": "Schaaf-PartnerCentric", | |
| 95 }, | |
| 96 { | |
| 97 "group": "Advertising Agencies", | |
| 98 "position": "Member", | |
| 99 "name": "Christoph Bornschein", | |
| 100 "title": "CEO/Founder", | |
| 101 "org": "TLGG", | |
| 102 }, | |
| 103 { | |
| 104 "group": "Advertising Agencies", | |
| 105 "position": "Member", | |
| 106 "name": "Will Perkins", | |
| 107 "title": "VP Media", | |
| 108 "org": "Look Listen", | |
| 109 }, | |
| 110 { | |
| 111 "group": "Ad Tech Agencies", | |
| 112 "position": "Representative", | |
| 113 "name": "Ari Levenfeld", | |
| 114 "title": "Senior Director of Privacy and Inventory Quality", | |
| 115 "org": "Rocket Fuel Inc.", | |
| 116 }, | |
| 117 { | |
| 118 "group": "Ad Tech Agencies", | |
| 119 "position": "Member", | |
| 120 "name": "Todd Garland", | |
| 121 "title": "Founder", | |
| 122 "org": "BuySellAds", | |
| 123 }, | |
| 124 { | |
| 125 "group": "Ad Tech Agencies", | |
| 126 "position": "Member", | |
| 127 "name": "Sebastien Bock", | |
| 128 "title": "GVP Tech & Product Programmatic & Data", | |
| 129 "org": "Rakuten Marketing", | |
| 130 }, | |
| 131 { | |
| 132 "group": "Ad Tech Agencies", | |
| 133 "position": "Member", | |
| 134 "name": "Jon Malach", | |
| 135 "title": "CEO", | |
| 136 "org": "Native Ads, Inc.", | |
| 137 }, | |
| 138 { | |
| 139 "group": "Ad Tech Agencies", | |
| 140 "position": "Member", | |
| 141 "name": "Francine Hardaway", | |
| 142 "title": "Director of Marketing", | |
| 143 "org": "ZEDO", | |
| 144 }, | |
| 145 { | |
| 146 "group": "Ad Tech Agencies", | |
| 147 "position": "Member", | |
| 148 "name": "Henry Lau", | |
| 149 "title": "Head of Partnerships", | |
| 150 "org": "Instinctive", | |
| 151 }, | |
| 152 { | |
| 153 "group": "Ad Tech Agencies", | |
| 154 "position": "Member", | |
| 155 "name": "Alex Calic", | |
| 156 "title": "Chief Revenue Officer", | |
| 157 "org": "The Media Trust", | |
| 158 }, | |
| 159 { | |
| 160 "group": "Ad Tech Agencies", | |
| 161 "position": "Member", | |
| 162 "name": "Henrik Lohk", | |
| 163 "title": "Co-founder", | |
| 164 "org": "Adtoma AB", | |
| 165 }, | |
| 166 { | |
| 167 "group": "Ad Tech Agencies", | |
| 168 "position": "Member", | |
| 169 "name": "James Sciolto", | |
| 170 "title": "Co-Founder & Chief Marketing Officer", | |
| 171 "org": "Bidio", | |
| 172 }, | |
| 173 { | |
| 174 "group": "Ad Tech Agencies", | |
| 175 "position": "Member", | |
| 176 "name": "Nicole Pruess", | |
| 177 "title": "Global Managing Director, Publisher Marketplace", | |
| 178 "org": "Criteo", | |
| 179 }, | |
| 180 { | |
| 181 "group": "Ad Tech Agencies", | |
| 182 "position": "Member", | |
| 183 "name": "Mat Bennett", | |
| 184 "title": "Managing Director", | |
| 185 "org": "OKO Digital", | |
| 186 }, | |
| 187 { | |
| 188 "group": "Ad Tech Agencies", | |
| 189 "position": "Member", | |
| 190 "name": "Tom Gabriele", | |
| 191 "title": "Co-Founder", | |
| 192 "org": "WowYow Inc.", | |
| 193 }, | |
| 194 { | |
| 195 "group": "Ad Tech Agencies", | |
| 196 "position": "Member", | |
| 197 "name": "Dan Greenberg", | |
| 198 "title": "Founder & CEO", | |
| 199 "org": "Sharethrough", | |
| 200 }, | |
| 201 { | |
| 202 "group": "Ad Tech Agencies", | |
| 203 "position": "Member", | |
| 204 "name": "Eric Simon", | |
| 205 "title": "COO", | |
| 206 "org": "Skydeo", | |
| 207 }, | |
| 208 { | |
| 209 "group": "Creative Agent", | |
| 
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", | |
| 211 "name": "Jon Lefley", | |
| 212 "title": "Creative Director", | |
| 213 "org": "Saatchi & Saatchi", | |
| 214 }, | |
| 215 { | |
| 216 "group": "Creative Agent", | |
| 217 "position": "Member", | |
| 218 "name": "Tobias Eidem", | |
| 219 "title": "BrandGlobe and former chairman of Sweden’s KIA-index", | |
| 220 "org": "BrandGlobe", | |
| 221 }, | |
| 222 { | |
| 223 "group": "Digital Rights Organization", | |
| 224 "position": "Representative", | |
| 225 "name": "Holmes Wilson", | |
| 226 "title": "Co-Founder/Co-director", | |
| 227 "org": "Fight for the Future", | |
| 228 }, | |
| 229 { | |
| 230 "group": "Publishers & Content Creators", | |
| 231 "position": "Representative", | |
| 232 "name": "Gavin Hall", | |
| 233 "title": "CTO", | |
| 234 "org": "TED", | |
| 235 }, | |
| 236 { | |
| 237 "group": "Publishers & Content Creators", | |
| 238 "position": "Member", | |
| 239 "name": "Paul Lomax", | |
| 240 "title": "CTO", | |
| 241 "org": "Dennis Media", | |
| 242 }, | |
| 243 { | |
| 244 "group": "Publishers & Content Creators", | |
| 245 "position": "Member", | |
| 246 "name": "Christian Hendricks", | |
| 247 "title": "Founder", | |
| 248 "org": "Local Media Consortium", | |
| 249 }, | |
| 250 { | |
| 251 "group": "Publishers & Content Creators", | |
| 252 "position": "Member", | |
| 253 "name": "Scott Messer", | |
| 254 "title": "VP Content Channels", | |
| 255 "org": "Leaf Group", | |
| 256 }, | |
| 257 { | |
| 258 "group": "Publishers & Content Creators", | |
| 259 "position": "Member", | |
| 260 "name": "Loic Dussart", | |
| 261 "title": "COO", | |
| 262 "org": "KOL", | |
| 263 }, | |
| 264 { | |
| 265 "group": "Researcher", | |
| 266 "position": "Representative", | |
| 267 "name": "Fran Howarth", | |
| 268 "title": "Security Analyst", | |
| 269 "org": "Bloor Analyst Group", | |
| 270 }, | |
| 271 { | |
| 272 "group": "User Agent", | |
| 273 "position": "Representative", | |
| 274 "name": "Kenny Ye (叶智聪)", | |
| 275 "title": "Director of International Business Development, Alibaba Mobile Gro up", | |
| 276 "org": "UC Web", | |
| 277 }, | |
| 278 ] %} | |
| 279 | |
| 280 {% macro member_list(group, position) -%} | |
| 281 <ul class="member-list"> | |
| 282 {% for member in committee %} | |
| 
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 %} | |
| 284 <li> | |
| 285 <strong>{{ member.name }}</strong><br> | |
| 286 {{ member.title }}, <em>{{ member.org }}</em> | |
| 287 </li> | |
| 288 {% endif %} | |
| 289 {% endfor %} | |
| 290 </ul> | |
| 291 {% if position == "Member" %} | |
| 292 <p><a class="btn-primary" href="committee/apply">{{ "Apply" | translate("app ly-button", "button label") }}</a></p> | |
| 293 {% endif %} | |
| 294 {% endmacro %} | |
| 295 | |
| 296 {% macro group_list(group) -%} | |
| 297 <section class="group-list"> | |
| 298 <h4>{{ group | translate("group-name-heading", "heading") }}</h4> | |
| 299 <dl> | |
| 300 <dt>{{ "Representative" | translate("representative-heading", "heading") } }</dt> | |
| 301 <dd>{{ member_list(group, "Representative") }}</dd> | |
| 302 </dl> | |
| 303 <dl> | |
| 304 <dt>{{ "Members" | translate("members-heading", "heading") }}</dt> | |
| 305 <dd>{{ member_list(group, "Member") }}</dd> | |
| 306 </dl> | |
| 307 </section> | |
| 308 {%- endmacro %} | |
| 309 | |
| 310 <section class="container"> | |
| 311 <div class="row"> | |
| 312 <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> | |
| 314 <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> | |
| 316 <p>{{ "Below is a list of all current Representatives and supporting Membe rs, broken down by Coalition." | translate("members-intro-2") }}</p> | |
| 317 </div> | |
| 318 <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" /> | |
| 
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> | |
| 321 </div> | |
| 322 </section> | |
| 323 | |
| 324 <section> | |
| 325 | |
| 326 <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> | |
| 
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> | |
| 329 | |
| 330 <div class="container"> | |
| 331 <section class="section"> | |
| 332 <h2>{{ "For-Profit Coalition" | translate("for-profit-heading", "heading") }}</h2> | |
| 
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> | |
| 
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> | |
| 353 | |
| 354 </section> | |
| OLD | NEW |