Add a simpler way to remove flair from a user.

This commit is contained in:
Logan Hanks
2011-09-21 15:57:37 -07:00
parent 49770e34d3
commit f881c48fea
2 changed files with 18 additions and 0 deletions

View File

@@ -1938,6 +1938,23 @@ class ApiController(RedditController):
jquery('input[name="css_class"]').data('saved', css_class)
form.set_html('.status', _('saved'))
@validatedForm(VFlairManager(),
VModhash(),
user = VExistingUname("name", allow_deleted=True))
def POST_deleteflair(self, form, jquery, user):
# Check validation.
if form.has_errors('name', errors.USER_DOESNT_EXIST, errors.NO_USER):
return
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()
jquery('#flairrow_%s' % user._id36).remove()
unflair = WrappedUser(
user, include_flair_selector=True).render(style='html')
jquery('.tagline .id-%s' % user._fullname).parent().html(unflair)
@validate(VFlairManager(),
VModhash(),
flair_csv = nop('flair_csv'))

View File

@@ -42,6 +42,7 @@ from r2.lib.pages import WrappedUser
<span class="status"></span>
${utils.error_field(('BAD_CSS_NAME', 'flair_css_class'), 'name')}
${utils.error_field(('TOO_MUCH_FLAIR_CSS', 'flair_css_class'), 'name')}
<a class="flairdeletebtn" href="javascript://">X</a>
</form>
<span class="tagline flaircell">
<form>