From ca1cb86d6c56bec82edfabea319951cab244c064 Mon Sep 17 00:00:00 2001 From: Thaddee Tyl Date: Tue, 22 Dec 2015 18:59:34 +0100 Subject: [PATCH] Gratipay badge for teams Fixes #520. Related to https://github.com/gratipay/gratipay.com/commit/42d7ea17b5a2a6e506231a535e1a444426f6f062 --- server.js | 20 +++++++++++--------- try.html | 10 +++++++--- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/server.js b/server.js index 892ea80..12939f2 100644 --- a/server.js +++ b/server.js @@ -829,11 +829,14 @@ cache(function(data, match, sendBadge, request) { })); // Gratipay integration. -camp.route(/^\/(?:gittip|gratipay(?:\/user)?)\/(.*)\.(svg|png|gif|jpg|json)$/, +camp.route(/^\/(?:gittip|gratipay(\/user|\/team)?)\/(.*)\.(svg|png|gif|jpg|json)$/, cache(function(data, match, sendBadge, request) { - var user = match[1]; // eg, `dougwilson`. - var format = match[2]; - var apiUrl = 'https://www.gratipay.com/~' + user + '/public.json'; + var type = match[1]; // eg, `user`. + var user = match[2]; // eg, `dougwilson`. + var format = match[3]; + if (type === '') { type = '/user'; } + if (type === '/user') { user = '~' + user; } + var apiUrl = 'https://gratipay.com/' + user + '/public.json'; var badgeData = getBadgeData('tips', data); if (badgeData.template === 'social') { badgeData.logo = badgeData.logo || logos.gratipay; @@ -848,13 +851,12 @@ cache(function(data, match, sendBadge, request) { var data = JSON.parse(buffer); var receiving = data.receiving || data.taking; if (receiving) { - var money = parseInt(receiving); - badgeData.text[1] = '$' + metric(money) + '/week'; - if (money === 0) { + badgeData.text[1] = '$' + metric(receiving) + '/week'; + if (receiving === 0) { badgeData.colorscheme = 'red'; - } else if (money < 10) { + } else if (receiving < 10) { badgeData.colorscheme = 'yellow'; - } else if (money < 100) { + } else if (receiving < 100) { badgeData.colorscheme = 'green'; } else { badgeData.colorscheme = 'brightgreen'; diff --git a/try.html b/try.html index ea26273..d864aad 100644 --- a/try.html +++ b/try.html @@ -530,9 +530,13 @@ Pixel-perfect   Retina-ready   Fast   Consistent   Hackable

Miscellaneous

- - - + + + + + + +
Gratipay: https://img.shields.io/gratipay/JSFiddle.svg
Gratipay User: https://img.shields.io/gratipay/user/dougwilson.svg
Gratipay Team: https://img.shields.io/gratipay/team/shields.svg
Bountysource: