Add CTAN license badge

This commit is contained in:
Raphaël Pinson 2015-02-23 23:42:18 +01:00
parent 47689adb73
commit 3229ed19a9
2 changed files with 24 additions and 7 deletions

View File

@ -2930,10 +2930,11 @@ cache(function(data, match, sendBadge, request) {
}));
// CTAN integration.
camp.route(/^\/ctan\/v\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
camp.route(/^\/ctan\/([^\/])\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var pkg = match[1]; // eg, tex
var format = match[2];
var info = match[1]; // either `v` or `l`
var pkg = match[2]; // eg, tex
var format = match[3];
var url = 'http://www.ctan.org/json/pkg/'+pkg;
var badgeData = getBadgeData('ctan', data);
request(url, function (err, res, buffer) {
@ -2943,11 +2944,23 @@ cache(function(data, match, sendBadge, request) {
}
try {
var data = JSON.parse(buffer);
if (info == 'v') {
var version = data.version.number;
var vdata = versionColor(version);
badgeData.text[1] = vdata.version;
badgeData.colorscheme = vdata.color;
sendBadge(format, badgeData);
var vdata = versionColor(version);
badgeData.text[1] = vdata.version;
badgeData.colorscheme = vdata.color;
sendBadge(format, badgeData);
} else if (info == 'l') {
var license = data.license;
if (license == '') {
badgeData.text[1] = 'Unknown';
} else {
badgeData.text[1] = license;
badgeData.colorscheme = 'blue';
}
sendBadge(format, badgeData);
}
} catch (e) {
badgeData.text[1] = 'invalid';
sendBadge(format, badgeData);

View File

@ -446,6 +446,10 @@ Pixel-perfect   Retina-ready   Fast   Consistent   Hackable
<td><img src='/cocoapods/l/AFNetworking.svg' alt='' /></td>
<td><code>https://img.shields.io/cocoapods/l/AFNetworking.svg</code></td>
</tr>
<tr><th> CTAN: </th>
<td><img src='/ctan/l/tex.svg' alt='' /></td>
<td><code>https://img.shields.io/ctan/l/tex.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>