Skip to content

Commit bfb21f9

Browse files
committed
Randomize the order of people on the funding page
1 parent e69c337 commit bfb21f9

File tree

2 files changed

+31
-2
lines changed

2 files changed

+31
-2
lines changed

templates/components/layout.html.hbs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,5 +69,6 @@
6969
</main>
7070
{{> components/footer}}
7171
<script src="{{baseurl_assets}}/static/scripts/languages.js"></script>
72+
{{#> script }}{{/script}}
7273
</body>
7374
</html>

templates/funding.html.hbs

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{{#*inline "member"}}
2-
<div class="w-100 w-25-l mb3 flex flex-row items-center">
2+
<div class="person w-100 w-25-l mb3 flex flex-row items-center">
33
<a class="mr4 w4 h4 flex-shrink-0" href="{{baseurl}}/governance/people/{{member.github}}">
44
<img class="w-100 h-100 bg-white br2"
55
src="https://avatars.githubusercontent.com/{{member.github}}"
@@ -20,12 +20,40 @@
2020
</section>
2121

2222
<section class="green" style="padding-bottom: 15px;">
23-
<div class="w-100 mw-none mw-8-m mw9-l flex flex-column flex-row-l flex-wrap-l center ph3">
23+
<div id="people" class="w-100 mw-none mw-8-m mw9-l flex flex-column flex-row-l flex-wrap-l center ph3">
2424
{{#each data.people as |member|}}
2525
{{> member member=member baseurl=../baseurl }}
2626
{{/each}}
2727
</div>
2828
</section>
2929

3030
{{/inline}}
31+
32+
{{#*inline "script"}}
33+
<script type="text/javascript">
34+
// From https://stackoverflow.com/a/2450976/1107768
35+
function shuffle(array) {
36+
let currentIndex = array.length;
37+
38+
// While there remain elements to shuffle...
39+
while (currentIndex !== 0) {
40+
// Pick a remaining element...
41+
let randomIndex = Math.floor(Math.random() * currentIndex);
42+
currentIndex--;
43+
44+
// And swap it with the current element.
45+
[array[currentIndex], array[randomIndex]] = [
46+
array[randomIndex], array[currentIndex]];
47+
}
48+
}
49+
50+
document.addEventListener("DOMContentLoaded", () => {
51+
// Shuffle people to reduce ordering bias
52+
const wrapper = document.querySelector("#people");
53+
const children = Array(...wrapper.children);
54+
shuffle(children);
55+
wrapper.replaceChildren(...children);
56+
});
57+
</script>
58+
{{/inline}}
3159
{{~> (lookup this "parent")~}}

0 commit comments

Comments
 (0)