def signature(request): # Intercept all requests if we can't use signature if not request.acl.usercp.can_use_signature(): return error403(request) if request.user.signature_ban: return request.theme.render_to_response('usercp/signature_banned.html', context_instance=RequestContext(request, { 'tab': 'signature', })); siggy_text = '' message = request.messages.get_message('usercp_signature') if request.method == 'POST': form = SignatureForm(request.POST, request=request, initial={'signature': request.user.signature}) if form.is_valid(): request.user.signature = form.cleaned_data['signature'] if request.user.signature: request.user.signature_preparsed = signature_markdown(request.acl, request.user.signature) else: request.user.signature_preparsed = None request.user.save(force_update=True) request.messages.set_flash(Message(_("Your signature has been changed.")), 'success', 'usercp_signature') return redirect(reverse('usercp_signature')) else: message = Message(form.non_field_errors()[0], 'error') else: form = SignatureForm(request=request, initial={'signature': request.user.signature}) return request.theme.render_to_response('usercp/signature.html', context_instance=RequestContext(request, { 'message': message, 'tab': 'signature', 'form': FormLayout(form), }));
def signature(request): # Intercept all requests if we can't use signature if not request.acl.usercp.can_use_signature(): return error403(request) if request.user.signature_ban: return render_to_response('usercp/signature_banned.html', context_instance=RequestContext(request, { 'tab': 'signature'})); siggy_text = '' message = request.messages.get_message('usercp_signature') if request.method == 'POST': form = SignatureForm(request.POST, request=request, initial={'signature': request.user.signature}) if form.is_valid(): request.user.signature = form.cleaned_data['signature'] if request.user.signature: request.user.signature_preparsed = signature_markdown(request.acl, request.user.signature) else: request.user.signature_preparsed = None request.user.save(force_update=True) messages.success(request, _("Your signature has been changed."), 'usercp_signature') return redirect(reverse('usercp_signature')) else: message = Message(form.non_field_errors()[0], messages.ERROR) else: form = SignatureForm(request=request, initial={'signature': request.user.signature}) return render_to_response('usercp/signature.html', context_instance=RequestContext(request, { 'message': message, 'tab': 'signature', 'form': form}));
def submit_form(self, form, target): target.title = form.cleaned_data['title'] target.rank = form.cleaned_data['rank'] target.avatar_ban_reason_user = form.cleaned_data['avatar_ban_reason_user'] target.avatar_ban_reason_admin = form.cleaned_data['avatar_ban_reason_admin'] target.signature_ban = form.cleaned_data['signature_ban'] target.signature_ban_reason_user = form.cleaned_data['signature_ban_reason_user'] target.signature_ban_reason_admin = form.cleaned_data['signature_ban_reason_admin'] # Sync username? if target.username != self.original_name: target.sync_username() # Change email? if form.cleaned_data.get('email'): target.set_email(form.cleaned_data.get('email')) # Change password? if form.cleaned_data.get('new_password'): target.set_password(form.cleaned_data.get('new_password')) # Do signature mumbo-jumbo if form.cleaned_data['signature']: target.signature = form.cleaned_data['signature'] target.signature_preparsed = signature_markdown(target.acl(), form.cleaned_data['signature']) else: target.signature = None target.signature_preparsed = None # Do avatar ban mumbo-jumbo if target.avatar_ban != form.cleaned_data['avatar_ban']: if form.cleaned_data['avatar_ban']: target.lock_avatar() else: target.default_avatar() target.avatar_ban = form.cleaned_data['avatar_ban'] # Set custom avatar if form.cleaned_data['avatar_custom']: target.delete_avatar() target.avatar_image = form.cleaned_data['avatar_custom'] target.avatar_type = 'gallery' # Update user roles if self.request.user.is_god(): target.roles.clear() else: target.roles.remove(*target.roles.filter(protected=False)) for role in form.cleaned_data['roles']: target.roles.add(role) target.make_acl_key(True) target.save(force_update=True) return target, Message(_('Changes in user\'s "%(name)s" account have been saved.') % {'name': self.original_name}, messages.SUCCESS)
def submit_form(self, form, target): target.title = form.cleaned_data['title'] target.rank = form.cleaned_data['rank'] target.avatar_ban_reason_user = form.cleaned_data[ 'avatar_ban_reason_user'] target.avatar_ban_reason_admin = form.cleaned_data[ 'avatar_ban_reason_admin'] target.signature_ban = form.cleaned_data['signature_ban'] target.signature_ban_reason_user = form.cleaned_data[ 'signature_ban_reason_user'] target.signature_ban_reason_admin = form.cleaned_data[ 'signature_ban_reason_admin'] # Sync username? if target.username != self.original_name: target.sync_username() # Do signature mumbo-jumbo if form.cleaned_data['signature']: target.signature = form.cleaned_data['signature'] target.signature_preparsed = signature_markdown( target.acl(self.request), form.cleaned_data['signature']) else: target.signature = None target.signature_preparsed = None # Do avatar ban mumbo-jumbo if target.avatar_ban != form.cleaned_data['avatar_ban']: if form.cleaned_data['avatar_ban']: target.lock_avatar() else: target.default_avatar(self.request.settings) target.avatar_ban = form.cleaned_data['avatar_ban'] # Set custom avatar if form.cleaned_data['avatar_custom']: target.delete_avatar() target.avatar_image = form.cleaned_data['avatar_custom'] target.avatar_type = 'gallery' # Update user roles if self.request.user.is_god(): target.roles.clear() else: target.roles.remove(*target.roles.filter(protected=False)) for role in form.cleaned_data['roles']: target.roles.add(role) target.make_acl_key(True) target.save(force_update=True) return target, Message( _('Changes in user\'s "%(name)s" account have been saved.') % {'name': self.original_name}, 'success')