Code style cleanup.

This commit is contained in:
Thaddee Tyl 2014-07-21 13:08:44 +02:00
parent f25f310856
commit 0e9436cf4c
2 changed files with 57 additions and 52 deletions

View File

@ -590,63 +590,68 @@ cache(function(data, match, sendBadge) {
}); });
})); }));
// Gem download count // Gem download count
camp.route(/^\/gem\/(dt|dtv|dv)\/(.*)\.(svg|png|gif|jpg)$/, camp.route(/^\/gem\/(dt|dtv|dv)\/(.*)\.(svg|png|gif|jpg)$/,
cache(function(data, match, sendBadge) { cache(function(data, match, sendBadge) {
var info = match[1]; var info = match[1];
var site = match[2]; var site = match[2];
var splited_url = site.split('/'); var splited_url = site.split('/');
var repo = splited_url[0]; var repo = splited_url[0];
var version = (splited_url.length > 1) ? splited_url[splited_url.length - 1] : null; var version = (splited_url.length > 1)
? splited_url[splited_url.length - 1]
: null;
version = (version === "stable") ? version : semver.valid(version); version = (version === "stable") ? version : semver.valid(version);
var format = match[3]; var format = match[3];
var badgeData = getBadgeData('downloads', data); var badgeData = getBadgeData('downloads', data);
var apiUrl = 'https://rubygems.org/api/v1/gems/' + repo + '.json';
if (info === "dv"){ if (info === "dv"){
apiUrl = 'https://rubygems.org/api/v1/versions/' + repo + '.json'; apiUrl = 'https://rubygems.org/api/v1/versions/' + repo + '.json';
} else {
var apiUrl = 'https://rubygems.org/api/v1/gems/' + repo + '.json';
} }
request(apiUrl, { headers: { 'Accept': 'application/atom+json,application/json' } }, function(err, res, buffer) { var parameters = {
headers: {
'Accept': 'application/atom+json,application/json'
}
};
request(apiUrl, parameters, function(err, res, buffer) {
if (err != null) { if (err != null) {
badgeData.text[1] = 'inaccessible'; badgeData.text[1] = 'inaccessible';
sendBadge(format, badgeData); sendBadge(format, badgeData);
} }
try { try {
var data = JSON.parse(buffer); var data = JSON.parse(buffer);
if (info === "dt") { if (info === "dt") {
var downloads = metric(data.downloads) + " total"; var downloads = metric(data.downloads) + " total";
} } else if (info === "dtv") {
else if (info === "dtv") { var downloads = metric(data.version_downloads) + " latest version";
var downloads = metric(data.version_downloads) + " latest version"; } else if (info === "dv") {
} var downloads = "invalid";
else if (info === "dv") {
var downloads = "invalid";
if (version !== null && version === "stable") { if (version !== null && version === "stable") {
var versions = data.filter(function(ver) { var versions = data.filter(function(ver) {
return ver.prerelease === false; return ver.prerelease === false;
}).map(function(ver) { }).map(function(ver) {
return ver.number; return ver.number;
}); });
var stable_version = latestVersion(versions); // found latest stable version // Found latest stable version.
var version_data = data.filter(function(ver) { var stable_version = latestVersion(versions);
return ver.number === stable_version; var version_data = data.filter(function(ver) {
})[0]; return ver.number === stable_version;
downloads = metric(version_data.downloads_count) + " stable version"; })[0];
} downloads = metric(version_data.downloads_count) + " stable version";
else if (version !== null) {
var version_data = data.filter(function(ver) { } else if (version !== null) {
return ver.number === version;
})[0]
downloads = metric(version_data.downloads_count) + " version " + version; var version_data = data.filter(function(ver) {
} return ver.number === version;
})[0];
downloads = metric(version_data.downloads_count)
+ " version " + version;
} }
else { } else { var downloads = "invalid"; }
var downloads = "invalid"; badgeData.text[1] = downloads;
}
badgeData.text[1] =downloads;
badgeData.colorscheme = downloadCountColor(downloads); badgeData.colorscheme = downloadCountColor(downloads);
sendBadge(format, badgeData); sendBadge(format, badgeData);
} catch(e) { } catch(e) {

View File

@ -167,26 +167,26 @@ I made the GitHub Badge Service.
</tbody></table> </tbody></table>
<h3> Downloads </h3> <h3> Downloads </h3>
<table><tbody> <table><tbody>
<tr><th> Gem </th>
<td><img src='/gem/dv/rails/stable.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dv/rails/stable.svg</code></td>
</tr>
<tr><th> Gem </th>
<td><img src='/gem/dv/rails/4.1.0.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dv/rails/4.1.0.svg</code></td>
</tr>
<tr><th> Gem </th>
<td><img src='/gem/dtv/rails.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dtv/rails.svg</code></td>
</tr>
<tr><th> Gem </th>
<td><img src='/gem/dt/rails.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dt/rails.svg</code></td>
</tr>
<tr><th> npm: </th> <tr><th> npm: </th>
<td><img src='/npm/dm/localeval.svg' alt=''/></td> <td><img src='/npm/dm/localeval.svg' alt=''/></td>
<td><code>http://img.shields.io/npm/dm/localeval.svg</code></td> <td><code>http://img.shields.io/npm/dm/localeval.svg</code></td>
</tr> </tr>
<tr><th> Gem: </th>
<td><img src='/gem/dv/rails/stable.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dv/rails/stable.svg</code></td>
</tr>
<tr><th> Gem: </th>
<td><img src='/gem/dv/rails/4.1.0.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dv/rails/4.1.0.svg</code></td>
</tr>
<tr><th> Gem: </th>
<td><img src='/gem/dtv/rails.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dtv/rails.svg</code></td>
</tr>
<tr><th> Gem: </th>
<td><img src='/gem/dt/rails.svg' alt=''/></td>
<td><code>http://img.shields.io/gem/dt/rails.svg</code></td>
</tr>
<tr><th> NuGet: </th> <tr><th> NuGet: </th>
<td><img src='/nuget/dt/Microsoft.AspNet.Mvc.svg' alt=''/></td> <td><img src='/nuget/dt/Microsoft.AspNet.Mvc.svg' alt=''/></td>
<td><code>http://img.shields.io/nuget/dt/Microsoft.AspNet.Mvc.svg</code></td> <td><code>http://img.shields.io/nuget/dt/Microsoft.AspNet.Mvc.svg</code></td>