Projet

Général

Profil

0001-manager-add-an-endpoint-to-have-a-single-cell-displa.patch

Frédéric Péters, 10 janvier 2016 21:16

Télécharger (2,74 ko)

Voir les différences:

Subject: [PATCH] manager: add an endpoint to have a single cell displayed
 (#9570)

 combo/manager/templates/combo/cell_preview.html | 12 ++++++++++++
 combo/manager/urls.py                           |  2 ++
 combo/manager/views.py                          | 24 ++++++++++++++++++++++++
 3 files changed, 38 insertions(+)
 create mode 100644 combo/manager/templates/combo/cell_preview.html
combo/manager/templates/combo/cell_preview.html
1
{% load combo gadjo %}<!DOCTYPE html>
2
<html>
3
  <head>
4
    <meta charset="utf-8">
5
    <script src="{% xstatic 'jquery' 'jquery.min.js' %}"></script>
6
    <script src="{{ STATIC_URL }}js/combo.public.js"></script>
7
    {{media}}
8
  </head>
9
  <body>
10
    {% placeholder "preview" %}
11
  </body>
12
</html>
combo/manager/urls.py
56 56
            name='combo-manager-page-order'),
57 57
        url(r'^assets/$', views.assets, name='combo-manager-assets'),
58 58
        url(r'^assets/delete$', views.asset_delete, name='combo-manager-asset-delete'),
59
        url(r'^preview/cell/(?P<page_pk>\w+)/(?P<cell_reference>[\w_-]+)/',
60
            views.cell_preview, name='combo-cell-preview'),
59 61
        (r'^ckeditor/', include('ckeditor.urls')),
60 62
)
61 63

  
combo/manager/views.py
340 340
            break
341 341
    response.write(json_str)
342 342
    return response
343

  
344

  
345
class CellPreview(TemplateView):
346
    template_name = 'combo/cell_preview.html'
347

  
348
    def get_context_data(self, **kwargs):
349
        context = super(CellPreview, self).get_context_data(**kwargs)
350
        page_pk = kwargs['page_pk']
351
        cell_reference = kwargs['cell_reference']
352
        try:
353
            page = Page.objects.get(id=page_pk)
354
        except Page.DoesNotExist:
355
            raise Http404()
356
        try:
357
            cell = CellBase.get_cell(cell_reference, page_id=page_pk)
358
        except ObjectDoesNotExist:
359
            raise Http404()
360
        cell.placeholder = 'preview'
361
        context['page'] = page
362
        context['page_cells'] = [cell]
363
        context['media'] = getattr(cell, 'media', None)
364
        return context
365

  
366
cell_preview = CellPreview.as_view()
343
-