Add CocoaPods apps badges.

This commit is contained in:
Nikita Lutsenko 2016-05-11 21:57:25 -07:00
parent f8861a4c51
commit 8faa38e7f0
2 changed files with 45 additions and 0 deletions

View File

@ -2760,6 +2760,43 @@ cache(function(data, match, sendBadge, request) {
});
}));
// CocoaPods Apps Integration
camp.route(/^\/cocoapods\/(aw|at)\/(.*)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var info = match[1]; // One of these: "aw", "at"
var spec = match[2]; // eg, AFNetworking
var format = match[3];
var apiUrl = 'http://metrics.cocoapods.org/api/v1/pods/' + spec;
var badgeData = getBadgeData('pod', data);
request(apiUrl, function(err, res, buffer) {
if (err != null) {
badgeData.text[1] = 'inaccessible';
sendBadge(format, badgeData);
return;
}
try {
var data = JSON.parse(buffer);
badgeData.text[0] = getLabel('apps', data);
var apps = 0
switch (info.charAt(1)) {
case 'w':
var apps = data.stats.app_week;
badgeData.text[1] = metric(apps) + '/week';
break;
case 't':
var apps = data.stats.app_total;
badgeData.text[1] = metric(apps);
break;
}
badgeData.colorscheme = downloadCountColor(apps);
sendBadge(format, badgeData);
} catch(e) {
badgeData.text[1] = 'invalid';
sendBadge(format, badgeData);
}
});
}));
// GitHub tag integration.
camp.route(/^\/github\/tag\/([^\/]+)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {

View File

@ -857,6 +857,14 @@ Pixel-perfect   Retina-ready   Fast   Consistent   Hackable
<td><img src='/bithound/devDependencies/github/rexxars/sse-channel.svg' alt=''/></td>
<td><code>https://img.shields.io/bithound/devDependencies/github/rexxars/sse-channel.svg</code></td>
</tr>
<tr><th> CocoaPods: </th>
<td><img src='/cocoapods/at/AFNetworking.svg' alt='' /></td>
<td><code>https://img.shields.io/cocoapods/at/AFNetworking.svg</code></td>
</tr>
<tr><th> CocoaPods: </th>
<td><img src='/cocoapods/aw/AFNetworking.svg' alt='' /></td>
<td><code>https://img.shields.io/cocoapods/aw/AFNetworking.svg</code></td>
</tr>
<tr><th> CocoaPods: </th>
<td><img src='/cocoapods/p/AFNetworking.svg' alt='' /></td>
<td><code>https://img.shields.io/cocoapods/p/AFNetworking.svg</code></td>