Add /badges route that lists all defined badges.

This commit is contained in:
Vikhyat Korrapati
2014-04-16 18:42:06 +05:30
parent de23caa871
commit acfcf0b64e
12 changed files with 87 additions and 22 deletions
@@ -164,7 +164,7 @@ Discourse.Badge.reopenClass({
@returns {Promise} a promise that resolves to an array of `Discourse.Badge`
**/
findAll: function() {
return Discourse.ajax('/admin/badges').then(function(badgesJson) {
return Discourse.ajax('/badges.json').then(function(badgesJson) {
return Discourse.Badge.createFromJson(badgesJson);
});
}
@@ -94,4 +94,6 @@ Discourse.Route.buildRoutes(function() {
this.route('signup', {path: '/signup'});
this.route('login', {path: '/login'});
this.route('badges');
});
@@ -0,0 +1,13 @@
/**
Shows a list of all badges.
@class BadgesRoute
@extends Discourse.Route
@namespace Discourse
@module Discourse
**/
Discourse.BadgesRoute = Discourse.Route.extend({
model: function() {
return Discourse.Badge.findAll();
}
});
@@ -0,0 +1,13 @@
<div class='container'>
<h1>{{i18n badges.title}}</h1>
<table class='badges-listing'>
{{#each}}
<tr>
<td class='badge'>{{user-badge badge=this}}</td>
<td class='description'>{{description}}</td>
<td class='grant-count'>{{i18n badges.awarded count=grant_count}}</td>
</tr>
{{/each}}
</table>
</div>