supports.js 1.1 KB

1234567891011121314151617181920212223242526272829
  1. $(function () {
  2. function createSupportItem (item) {
  3. if (!item.image) {
  4. item.image = 'https://images.opencollective.com/' + item.profile.split('/').pop() + '/avatar.png'
  5. }
  6. return [
  7. '<a class="support-item" href="' + item.website + '" target="_blank" title="$' + item.totalAmountDonated + ' by ' + item.name + '">',
  8. '<img class="support-silver-avatar" src="' + item.image + '" alt="' + item.name + '">',
  9. '</a>'
  10. ].join('')
  11. }
  12. $.getJSON('https://examples.wenzhixin.net.cn/opencollective/all.json', res => {
  13. res.sort(function (a, b) {
  14. return b.totalAmountDonated - a.totalAmountDonated
  15. })
  16. var organizations = res.filter(function (item) {
  17. return item.role === 'BACKER' && item.type === 'ORGANIZATION' && item.isActive
  18. })
  19. var backers = res.filter(function (item) {
  20. return item.role === 'BACKER' && item.type === 'USER' && item.isActive
  21. })
  22. $('.support-sponsors').html(organizations.map(createSupportItem).join(''))
  23. $('.support-backers').html(backers.map(createSupportItem).join(''))
  24. })
  25. })