FIX: Minor badge page issues

This commit is contained in:
Robin Ward 2016-03-25 12:04:26 -04:00
parent d7b568f98e
commit ba10327cc8
2 changed files with 21 additions and 25 deletions

View File

@ -1,5 +1,5 @@
import UserBadge from 'discourse/models/user-badge'; import UserBadge from 'discourse/models/user-badge';
import computed from 'ember-addons/ember-computed-decorators'; import { default as computed, observes } from 'ember-addons/ember-computed-decorators';
export default Ember.Controller.extend({ export default Ember.Controller.extend({
queryParams: ['username'], queryParams: ['username'],
@ -7,19 +7,17 @@ export default Ember.Controller.extend({
userBadges: null, userBadges: null,
needs: ["application"], needs: ["application"],
user: function() { @computed('username')
if (this.get("username")) { user(username) {
if (username) {
return this.get('userBadges')[0].get('user'); return this.get('userBadges')[0].get('user');
} }
}.property("username"), },
grantCount: function() { @computed('username', 'model.grant_count', 'userBadges.grant_count')
if (this.get("username")) { grantCount(username, modelCount, userCount) {
return this.get('userBadges.grant_count'); return username ? userCount : modelCount;
} else { },
return this.get('model.grant_count');
}
}.property('username', 'model', 'userBadges'),
actions: { actions: {
loadMore() { loadMore() {
@ -37,22 +35,20 @@ export default Ember.Controller.extend({
} }
}, },
@computed('noMoreBadges', 'model.grant_count', 'userBadges.length') @computed('noMoreBadges', 'grantCount', 'userBadges.length')
canLoadMore(noMoreBadges, grantCount, userBadgeLength) { canLoadMore(noMoreBadges, grantCount, userBadgeLength) {
if (noMoreBadges) { return false; } if (noMoreBadges) { return false; }
return grantCount > (userBadgeLength || 0); return grantCount > (userBadgeLength || 0);
}, },
_showFooter: function() { @observes('canLoadMore')
_showFooter() {
this.set("controllers.application.showFooter", !this.get("canLoadMore")); this.set("controllers.application.showFooter", !this.get("canLoadMore"));
}.observes("canLoadMore"), },
longDescription: function(){ @computed('model.long_description')
return Discourse.Emoji.unescape(this.get('model.long_description')); longDescription(modelLongDesc) {
}.property('model.long_description'), return Discourse.Emoji.unescape(modelLongDesc);
}
showLongDescription: function(){
return this.get('model.long_description');
}.property('userBadges')
}); });

View File

@ -5,10 +5,10 @@
{{model.displayName}} {{model.displayName}}
</h1> </h1>
{{#if showLongDescription}} {{#if longDescription}}
<div class='long-description banner'> <div class='long-description banner'>
{{{longDescription}}} {{{longDescription}}}
</div> </div>
{{/if}} {{/if}}
<div class='badges-listing'> <div class='badges-listing'>