 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| Index: pages/committee/members.tmpl | 
| =================================================================== | 
| rename from pages/committee/members/index.md | 
| rename to pages/committee/members.tmpl | 
| --- a/pages/committee/members/index.md | 
| +++ b/pages/committee/members.tmpl | 
| @@ -1,40 +1,354 @@ | 
| 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.
 | 
| -description=Meet the Acceptable Ads Committee. | 
| -breadcrumb=Members | 
| +description=A list of all Representatives and supporting Members that make up the Acceptable Ads Committee. | 
| parent=committee/index | 
| custom=1 | 
| -<style type="text/css"> | 
| - .card | 
| - { | 
| - border-bottom: 0px; | 
| - } | 
| +{% block head %} | 
| + <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.
 | 
| + .group-list h4 | 
| + { | 
| + margin-top: 40px; | 
| + padding: 8px 22px; | 
| + background-color: #E1E1E1; | 
| + } | 
| + | 
| + .group-list dl | 
| + { | 
| + margin: 22px; | 
| + } | 
| + | 
| + .group-list dt | 
| + { | 
| + margin: 32px 0; | 
| + color: #424242; | 
| + text-transform: none; | 
| + } | 
| + | 
| + .member-list | 
| + { | 
| + display: block; | 
| + width: 100%; | 
| + overflow: auto; | 
| + } | 
| - .card .summary | 
| - { | 
| - height: 140px; | 
| - } | 
| + .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 :)
 | 
| + { | 
| + 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
 | 
| + width: 100%; | 
| + float: left; | 
| + padding-left: 0px; | 
| + } | 
| - .card h3 | 
| - { | 
| - height: auto; | 
| - } | 
| + @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.
 | 
| + { | 
| + .member-list li | 
| + { | 
| + min-height: 4em; | 
| + width: 50%; | 
| + } | 
| + } | 
| + | 
| + @media(min-width: 992px) | 
| + { | 
| + .member-list li | 
| + { | 
| + width: 33.3333333%; | 
| + } | 
| + } | 
| + | 
| + .member-list li:before | 
| + { | 
| + display: none; | 
| + 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
 | 
| + } | 
| + </style> | 
| +{% endblock %} | 
| - html[dir="ltr"] .card | 
| +{% 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.
 | 
| + { | 
| 
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.
 | 
| + "group": "Advertisers", | 
| + "position": "Representative", | 
| + "name": "Breanna Fowler", | 
| + "title": "Strategic Partnerships & Advertising", | 
| + "org": "Dell", | 
| + }, | 
| + { | 
| + "group": "Advertising Agencies", | 
| + "position": "Representative", | 
| + "name": "Gabriel Cheng", | 
| + "title": "VP Strategy Growth & Partnerships", | 
| + "org": "M&C Saatchi Mobile", | 
| + }, | 
| + { | 
| + "group": "Advertising Agencies", | 
| + "position": "Member", | 
| + "name": "Kevin Vanvalkenburgh", | 
| + "title": "Vice President of Connections Planning", | 
| + "org": "The Tombras Group", | 
| + }, | 
| + { | 
| + "group": "Advertising Agencies", | 
| + "position": "Member", | 
| + "name": "Tom Rathbone", | 
| + "title": "Head of Technology", | 
| + "org": "Schaaf-PartnerCentric", | 
| + }, | 
| + { | 
| + "group": "Advertising Agencies", | 
| + "position": "Member", | 
| + "name": "Christoph Bornschein", | 
| + "title": "CEO/Founder", | 
| + "org": "TLGG", | 
| + }, | 
| + { | 
| + "group": "Advertising Agencies", | 
| + "position": "Member", | 
| + "name": "Will Perkins", | 
| + "title": "VP Media", | 
| + "org": "Look Listen", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Representative", | 
| + "name": "Ari Levenfeld", | 
| + "title": "Senior Director of Privacy and Inventory Quality", | 
| + "org": "Rocket Fuel Inc.", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Todd Garland", | 
| + "title": "Founder", | 
| + "org": "BuySellAds", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Sebastien Bock", | 
| + "title": "GVP Tech & Product Programmatic & Data", | 
| + "org": "Rakuten Marketing", | 
| + }, | 
| { | 
| - border-left: 0px; | 
| - } | 
| - | 
| - html[dir="rtl"] .card | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Jon Malach", | 
| + "title": "CEO", | 
| + "org": "Native Ads, Inc.", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Francine Hardaway", | 
| + "title": "Director of Marketing", | 
| + "org": "ZEDO", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Henry Lau", | 
| + "title": "Head of Partnerships", | 
| + "org": "Instinctive", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Alex Calic", | 
| + "title": "Chief Revenue Officer", | 
| + "org": "The Media Trust", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Henrik Lohk", | 
| + "title": "Co-founder", | 
| + "org": "Adtoma AB", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "James Sciolto", | 
| + "title": "Co-Founder & Chief Marketing Officer", | 
| + "org": "Bidio", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Nicole Pruess", | 
| + "title": "Global Managing Director, Publisher Marketplace", | 
| + "org": "Criteo", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Mat Bennett", | 
| + "title": "Managing Director", | 
| + "org": "OKO Digital", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Tom Gabriele", | 
| + "title": "Co-Founder", | 
| + "org": "WowYow Inc.", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Dan Greenberg", | 
| + "title": "Founder & CEO", | 
| + "org": "Sharethrough", | 
| + }, | 
| + { | 
| + "group": "Ad Tech Agencies", | 
| + "position": "Member", | 
| + "name": "Eric Simon", | 
| + "title": "COO", | 
| + "org": "Skydeo", | 
| + }, | 
| { | 
| - border-right: 0px; | 
| - } | 
| -</style> | 
| + "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.
 | 
| + "position": "Representative", | 
| + "name": "Jon Lefley", | 
| + "title": "Creative Director", | 
| + "org": "Saatchi & Saatchi", | 
| + }, | 
| + { | 
| + "group": "Creative Agent", | 
| + "position": "Member", | 
| + "name": "Tobias Eidem", | 
| + "title": "BrandGlobe and former chairman of Sweden’s KIA-index", | 
| + "org": "BrandGlobe", | 
| + }, | 
| + { | 
| + "group": "Digital Rights Organization", | 
| + "position": "Representative", | 
| + "name": "Holmes Wilson", | 
| + "title": "Co-Founder/Co-director", | 
| + "org": "Fight for the Future", | 
| + }, | 
| + { | 
| + "group": "Publishers & Content Creators", | 
| + "position": "Representative", | 
| + "name": "Gavin Hall", | 
| + "title": "CTO", | 
| + "org": "TED", | 
| + }, | 
| + { | 
| + "group": "Publishers & Content Creators", | 
| + "position": "Member", | 
| + "name": "Paul Lomax", | 
| + "title": "CTO", | 
| + "org": "Dennis Media", | 
| + }, | 
| + { | 
| + "group": "Publishers & Content Creators", | 
| + "position": "Member", | 
| + "name": "Christian Hendricks", | 
| + "title": "Founder", | 
| + "org": "Local Media Consortium", | 
| + }, | 
| + { | 
| + "group": "Publishers & Content Creators", | 
| + "position": "Member", | 
| + "name": "Scott Messer", | 
| + "title": "VP Content Channels", | 
| + "org": "Leaf Group", | 
| + }, | 
| + { | 
| + "group": "Publishers & Content Creators", | 
| + "position": "Member", | 
| + "name": "Loic Dussart", | 
| + "title": "COO", | 
| + "org": "KOL", | 
| + }, | 
| + { | 
| + "group": "Researcher", | 
| + "position": "Representative", | 
| + "name": "Fran Howarth", | 
| + "title": "Security Analyst", | 
| + "org": "Bloor Analyst Group", | 
| + }, | 
| + { | 
| + "group": "User Agent", | 
| + "position": "Representative", | 
| + "name": "Kenny Ye (叶智聪)", | 
| + "title": "Director of International Business Development, Alibaba Mobile Group", | 
| + "org": "UC Web", | 
| + }, | 
| +] %} | 
| -<div class="container" markdown="1"> | 
| -# {{members-heading[Members Heading] Members}} | 
| +{% macro member_list(group, position) -%} | 
| + <ul class="member-list"> | 
| + {% 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.
 | 
| + {% if member.group == group and member.position == position %} | 
| + <li> | 
| + <strong>{{ member.name }}</strong><br> | 
| + {{ member.title }}, <em>{{ member.org }}</em> | 
| + </li> | 
| + {% endif %} | 
| + {% endfor %} | 
| + </ul> | 
| + {% if position == "Member" %} | 
| + <p><a class="btn-primary" href="committee/apply">{{ "Apply" | translate("apply-button", "button label") }}</a></p> | 
| + {% endif %} | 
| +{% endmacro %} | 
| + | 
| +{% macro group_list(group) -%} | 
| + <section class="group-list"> | 
| + <h4>{{ group | translate("group-name-heading", "heading") }}</h4> | 
| + <dl> | 
| + <dt>{{ "Representative" | translate("representative-heading", "heading") }}</dt> | 
| + <dd>{{ member_list(group, "Representative") }}</dd> | 
| + </dl> | 
| + <dl> | 
| + <dt>{{ "Members" | translate("members-heading", "heading") }}</dt> | 
| + <dd>{{ member_list(group, "Member") }}</dd> | 
| + </dl> | 
| + </section> | 
| +{%- endmacro %} | 
| ---- | 
| -</div> | 
| +<section class="container"> | 
| + <div class="row"> | 
| + <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.
 | 
| + <h1>{{ "Members" | translate("members-heading", "heading") }}</h1> | 
| + <hr> | 
| + <p>{{ "The Acceptable Ads Committee is divided into three Coalitions, with each faction consisting of several Members. Each group includes a Representative and multiple supporting Members." | translate("members-intro-2") }}</p> | 
| + <p>{{ "Below is a list of all current Representatives and supporting Members, broken down by Coalition." | translate("members-intro-2") }}</p> | 
| + </div> | 
| + <aside class="col-6"> | 
| + <img class="block" alt="{{ "Acceptable Ads Committee Structure" | translate("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.
 | 
| + </aside> | 
| + </div> | 
| +</section> | 
| + | 
| +<section> | 
| + | 
| + <div class="bg-accent"> | 
| + <h3 class="center p-y-md m-a-md">{{ "Meet the Acceptable Ads Committee" | translate("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
 | 
| + </div> | 
| -<? include members/all-members ?> | 
| + <div class="container"> | 
| + <section class="section"> | 
| + <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.
 | 
| + <p class="col-6">{{ "This Coalition consists of stakeholders that can be classified as organizations primarily driven by generating profits. The following groups form the For-Profit Coalition: Advertisers, Ad-Tech Agencies, Advertising 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
 | 
| + {{ group_list("Advertisers") }} | 
| + {{ group_list("Ad Tech Agencies") }} | 
| + {{ group_list("Advertising Agencies") }} | 
| + {{ group_list("Publishers & Content Creators") }} | 
| + </section> | 
| + <section class="section"> | 
| + <h2>{{ "Expert Coalition" | translate("expert-coalition", "heading") }}</h2> | 
| + <p>{{ "This Coalition consists of stakeholders who primarily focus on specific issues relevant to their area of expertise. These experts bring a unique and objective perspective to the AAC. The following groups form the Expert Coalition: Creative Agents, Researchers and Academics and User Agents." | translate("expert-coalition-intro") }}</p> | 
| + {{ group_list("Creative Agent") }} | 
| + {{ group_list("Researcher") }} | 
| + {{ group_list("User Agent") }} | 
| + </section> | 
| + <section class="section"> | 
| + <h2>{{ "User ADvocate Coalition" | translate("user-advocate-coalition", "heading") }}</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.
 | 
| + <p>{{ "This Coalition consists of stakeholders that can be classified as entities primarily driven by protecting the rights of online users. The following Member Groups form the User Advocate Coalition: Digital Rights Organizations and Individual Users." | translate("user-advocate-coalition-intro") }}</p> | 
| + {{ group_list("Digital Rights Organization") }} | 
| + {{ group_list("Users") }} | 
| + </section> | 
| + </div> | 
| + | 
| +</section> |