Remove flair relation when cleared.

This commit is contained in:
Logan Hanks
2011-07-20 15:35:51 -07:00
parent 19d09b37d6
commit 22d9fba90f

View File

@@ -1941,8 +1941,13 @@ class ApiController(RedditController):
form.set_html(".status:first", _('invalid css class'))
return
# Make sure the flair relation is up-to-date, for listings.
if not c.site.is_flair(user):
if not text and not css_class:
# empty text and css is equivalent to unflairing
text = css_class = None
c.site.remove_flair(user)
jquery('#flairrow_%s' % user._id36).hide()
new = False
elif not c.site.is_flair(user):
c.site.add_flair(user)
new = True
else:
@@ -2032,17 +2037,6 @@ class ApiController(RedditController):
c.user._commit()
jquery.refresh()
@noresponse(VFlairManager(),
VModhash(),
nuser = VExistingUname("name"),
iuser = VByName("id"))
def POST_unflair(self, nuser, iuser):
user = iuser or nuser
c.site.remove_flair(user)
setattr(user, 'flair_%s_text' % c.site._id, None)
setattr(user, 'flair_%s_css_class' % c.site._id, None)
user._commit()
@validatedForm(VFlairManager(),
VModhash(),
flair_enabled = VBoolean("flair_enabled"),