Exemple #1
0
class NewsAddView(NewsView):
    template = 'cms/corp_site/news-add.jinja'
    form = NewsForm()

    def get_extra_context(self, request, *args, **kwargs):
        context = super().get_extra_context(request, *args, **kwargs)
        context.update({'form': self.form})
        return context

    def get_breadcrumbs(self, request, *args, **kwargs):
        crumbs = super().get_breadcrumbs(request, *args, **kwargs)
        return crumbs + [(reverse('corp-site.news-add'), _('Add New'))]

    def post(self, request, *args, **kwargs):
        self.form = NewsForm(request.POST, request.FILES)

        if self.form.is_valid():
            data = self.form.cleaned_data
            news_item = News.objects.create(**data)
            edit_url = reverse('corp-site.news-edit',
                               kwargs={'news_item_pk': news_item.pk})
            messages.add_message(request, messages.SUCCESS,
                                 _('News item was created.'))
            return redirect(edit_url)

        return self.get(request, *args, **kwargs)
Exemple #2
0
    def post(self, request, *args, **kwargs):
        self.form = NewsForm(request.POST, request.FILES)

        if self.form.is_valid():
            data = self.form.cleaned_data
            news_item = News.objects.create(**data)
            edit_url = reverse('corp-site.news-edit', kwargs={'news_item_pk': news_item.pk})
            messages.add_message(request, messages.SUCCESS, _('News item was created.'))
            return redirect(edit_url)

        return self.get(request, *args, **kwargs)
Exemple #3
0
    def post(self, request, *args, **kwargs):
        edit_url = reverse('corp-site.news-edit', kwargs={'news_item_pk': self.news_item.pk})

        self.form = NewsForm(request.POST, request.FILES, news=self.news_item)

        if self.form.is_valid():
            news_item = News.objects.filter(pk=self.news_item.pk)
            data = self.form.cleaned_data
            photo = data.pop('photo')
            news_item.update(**data)
            if photo:
                news_item = news_item.first()
                news_item.photo = photo
                news_item.save()
            messages.add_message(request, messages.SUCCESS, _('Changes saved.'))
            return redirect(edit_url)

        return self.get(request, *args, **kwargs)
Exemple #4
0
class NewsEditView(NewsDetailsView):
    template = 'cms/corp_site/news-edit.jinja'
    form = None

    def pre_dispatch(self, request, *args, **kwargs):
        response = super().pre_dispatch(request, *args, **kwargs)
        self.form = NewsForm(news=self.news_item)
        return response

    def get_extra_context(self, request, *args, **kwargs):
        context = super().get_extra_context(request, *args, **kwargs)
        context.update({'form': self.form})
        return context

    def get_breadcrumbs(self, request, *args, **kwargs):
        crumbs = super().get_breadcrumbs(request, *args, **kwargs)
        edit_url = reverse('corp-site.news-edit',
                           kwargs={'news_item_pk': self.news_item.pk})
        return crumbs + [(edit_url, _('Edit'))]

    def post(self, request, *args, **kwargs):
        edit_url = reverse('corp-site.news-edit',
                           kwargs={'news_item_pk': self.news_item.pk})

        self.form = NewsForm(request.POST, request.FILES, news=self.news_item)

        if self.form.is_valid():
            news_item = News.objects.filter(pk=self.news_item.pk)
            data = self.form.cleaned_data
            photo = data.pop('photo')
            news_item.update(**data)
            if photo:
                news_item = news_item.first()
                news_item.photo = photo
                news_item.save()
            messages.add_message(request, messages.SUCCESS,
                                 _('Changes saved.'))
            return redirect(edit_url)

        return self.get(request, *args, **kwargs)
Exemple #5
0
 def pre_dispatch(self, request, *args, **kwargs):
     response = super().pre_dispatch(request, *args, **kwargs)
     self.form = NewsForm(news=self.news_item)
     return response