summaryrefslogtreecommitdiffstats
path: root/askbot/models
diff options
context:
space:
mode:
authorEvgeny Fadeev <evgeny.fadeev@gmail.com>2013-04-18 04:47:12 -0400
committerEvgeny Fadeev <evgeny.fadeev@gmail.com>2013-04-18 04:47:12 -0400
commit69a9a36c69c4f5dea2852588717f3e3db648b548 (patch)
treee5ad36dbe258a57408f371f87b4eaf47761eef80 /askbot/models
parent84d8999fedae759887d4dae3cb0e13c2b16ff4f7 (diff)
downloadaskbot-69a9a36c69c4f5dea2852588717f3e3db648b548.tar.gz
askbot-69a9a36c69c4f5dea2852588717f3e3db648b548.tar.bz2
askbot-69a9a36c69c4f5dea2852588717f3e3db648b548.zip
some work on improving responsive layout
Diffstat (limited to 'askbot/models')
-rw-r--r--askbot/models/__init__.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py
index b31d9b5d..614e3c76 100644
--- a/askbot/models/__init__.py
+++ b/askbot/models/__init__.py
@@ -2374,12 +2374,15 @@ def delete_messages(self):
self.message_set.all().delete()
#todo: find where this is used and replace with get_absolute_url
-def user_get_profile_url(self):
+def user_get_profile_url(self, profile_section=None):
"""Returns the URL for this User's profile."""
- return reverse(
- 'user_profile',
- kwargs={'id':self.id, 'slug':slugify(self.username)}
- )
+ url = reverse(
+ 'user_profile',
+ kwargs={'id':self.id, 'slug':slugify(self.username)}
+ )
+ if profile_section:
+ url += "?sort=" + profile_section
+ return url
def user_get_absolute_url(self):
return self.get_profile_url()
@@ -2467,6 +2470,9 @@ def user_get_badge_summary(self):
"""returns human readable sentence about
number of badges of different levels earned
by the user. It is assumed that user has some badges"""
+ if self.gold + self.silver + self.bronze == 0:
+ return ''
+
badge_bits = list()
if self.gold:
bit = ungettext(
@@ -2497,8 +2503,6 @@ def user_get_badge_summary(self):
badge_str = ', '.join(badge_bits)
badge_str = _('%(item1)s and %(item2)s') % \
{'item1': badge_str, 'item2': last_bit}
- else:
- raise ValueError('user must have badges to call this function')
return _("%(user)s has %(badges)s") % {'user': self.username, 'badges':badge_str}
#series of methods for user vote-type commands
@@ -2986,6 +2990,7 @@ User.add_to_class('can_moderate_user', user_can_moderate_user)
User.add_to_class('has_affinity_to_question', user_has_affinity_to_question)
User.add_to_class('moderate_user_reputation', user_moderate_user_reputation)
User.add_to_class('set_status', user_set_status)
+User.add_to_class('get_badge_summary', user_get_badge_summary)
User.add_to_class('get_status_display', user_get_status_display)
User.add_to_class('get_old_vote_for_post', user_get_old_vote_for_post)
User.add_to_class('get_unused_votes_today', user_get_unused_votes_today)