123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- from django.contrib import messages
- from django.utils.translation import ugettext_lazy as _
- from misago.admin.views import generic
- from misago.core import cachebuster
- from misago.threads.models import Prefix
- from misago.threads.forms.admin import PrefixForm
- class PrefixesAdmin(generic.AdminBaseMixin):
- root_link = 'misago:admin:forums:prefixes:index'
- Model = Prefix
- Form = PrefixForm
- templates_dir = 'misago/admin/prefixes'
- message_404 = _("Requested thread prefix does not exist.")
- def handle_form(self, form, request, target):
- target.save()
- target.forums.clear()
- if form.cleaned_data.get('forums'):
- target.forums.add(*[f for f in form.cleaned_data.get('forums')])
- Prefix.objects.clear_cache()
- if self.message_submit:
- messages.success(request, self.message_submit % target.name)
- class PrefixesList(PrefixesAdmin, generic.ListView):
- ordering = (('name', None),)
- class NewPrefix(PrefixesAdmin, generic.ModelFormView):
- message_submit = _('New prefix "%s" has been saved.')
- class EditPrefix(PrefixesAdmin, generic.ModelFormView):
- message_submit = _('Prefix "%s" has been edited.')
- class DeletePrefix(PrefixesAdmin, generic.ButtonView):
- def button_action(self, request, target):
- target.delete()
- message = _('Prefix "%s" has been deleted.')
- messages.success(request, message % unicode(target.name))
|