acl.py 899 B

1234567891011121314151617181920212223242526
  1. from django.utils.translation import ugettext_lazy as _
  2. from django import forms
  3. from misago.acl.builder import BaseACL
  4. from misago.forms import YesNoSwitch
  5. def make_form(request, role, form):
  6. form.base_fields['can_use_signature'] = forms.BooleanField(widget=YesNoSwitch,initial=False,required=False)
  7. form.layout.append((
  8. _("Signature"),
  9. (('can_use_signature', {'label': _("Can have signature")}),),
  10. ))
  11. class UserCPACL(BaseACL):
  12. def can_use_signature(self):
  13. return self.acl['signature']
  14. def build(acl, roles):
  15. acl.usercp = UserCPACL()
  16. acl.usercp.acl['signature'] = False
  17. for role in roles:
  18. if 'can_use_signature' in role and role['can_use_signature'] > acl.usercp.acl['signature']:
  19. acl.usercp.acl['signature'] = role['can_use_signature']