mirror of
https://github.com/twbs/bootstrap.git
synced 2025-08-24 14:13:06 +02:00
4.7 KiB
4.7 KiB
layout, title, description, group, toc
layout | title | description | group | toc |
---|---|---|---|---|
docs | Support Bootstrap | Show your support through donations and sponsorships to help maintaining Bootstrap | about | true |
Through donations and sponsorships we are able to maintain & improve Bootstrap. Feel free to show your support on our Open Collective page.
Sponsors
{{< sponsors.inline >}}
{{< /sponsors.inline >}}Backers
{{< backers.inline >}}
{{< /backers.inline >}}Services
{{< services.inline >}}
{{- range (index $.Site.Data "services") }}
<script>
(function () {
'use strict'
var backerDisplayed = 10
function displaySponsors(sponsorList) {
var sponsorListEl = document.getElementById('sponsorList')
var output = []
sponsorList.forEach(function (sponsor) {
var sponsorAccount = sponsor.fromAccount
output.push(
'
{{ if .website -}}
{{ end -}}
{{ if .website -}}
{{ end -}}
{{ end -}}
',
' ',
'
'
)
})
sponsorListEl.innerHTML = output.join('')
}
function displayBackers(backerList) {
var backerListEl = document.getElementById('backerList')
var output = []
backerList.forEach(function (backer) {
var backerAccount = backer.fromAccount
output.push(
'', ) if (sponsorAccount.website) { output.push(`${sponsorAccount.name}`) } else { output.push(sponsorAccount.name) } output.push( '
', '',
'
',
)
})
backerListEl.innerHTML = output.join('')
}
function requestOC(cb) {
var ocURL = 'https://rest.opencollective.com/v2/bootstrap/orders/incoming/active'
var xhr = new XMLHttpRequest()
xhr.open('GET', ocURL, true)
xhr.addEventListener('load', function () {
if (xhr.readyState !== 4) {
return
}
if (xhr.status === 200) {
cb(JSON.parse(xhr.responseText), null)
} else {
cb(null, xhr.statusText)
}
})
xhr.send()
}
(function () {
requestOC(function (data) {
var allBackerList = data.nodes
var backerList = allBackerList.filter(function (backer) {
return backer.tier && backer.tier.slug === 'backer'
})
var sponsorList = allBackerList.filter(function (backer) {
return backer.tier && backer.tier.slug === 'sponsor'
})
// Sort by total amount donated
sponsorList.sort(function (sponsor1, sponsor2) {
return sponsor2.totalDonations.value - sponsor1.totalDonations.value
})
sponsorList = sponsorList.slice(0, backerDisplayed)
displaySponsors(sponsorList)
// Sort by total amount donated
backerList.sort(function (backer1, backer2) {
return backer2.totalDonations.value - backer1.totalDonations.value
})
backerList = backerList.slice(0, backerDisplayed)
displayBackers(backerList)
})
})()
})()
</script>
'
)
if (backerAccount.website) {
output.push(
``
)
}
output.push(`
`)
if (backerAccount.website) {
output.push('')
}
output.push(
'
',
'{{< /services.inline >}}