Skip to content

Commit

Permalink
Ajout de la pagination pour les galeries (#3915)
Browse files Browse the repository at this point in the history
* Ajout de la pagination pour les galeries

* fix tests

* PEP8
  • Loading branch information
AmarOk1412 authored and gustavi committed Oct 31, 2016
1 parent 81e80e5 commit df1933e
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 19 deletions.
12 changes: 3 additions & 9 deletions templates/gallery/gallery/details.html
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@
</button>

<div class="gallery topic-list list-view clearfix navigable-list">
{% for img in gallery.get_images %}
{% for img in images %}
<div class="topic gallery-item navigable-elem">
<div class="topic-infos">
<input name="items" type="checkbox" value="{{ img.pk }}">
Expand All @@ -91,14 +91,6 @@

<a href="{% url "gallery-image-new" gallery.pk %}" title="Ajouter une image" class="gallery-item add-image">+</a>
</div>

{% if gallery_mode.can_write %}
<button class="btn btn-cancel" name="delete_multi" tabindex="-1">{% trans "Supprimer la sélection" %}</button>
{% endif %}

<button class="toggle-gallery-view btn btn-grey" type="button" tabindex="-1">
{% trans "Vue grille" %}
</button>
{% else %}
<p>
{% trans "Aucune image" %}. <br>
Expand All @@ -111,6 +103,8 @@
{% endif %}
</p>
{% endif %}

{% include "misc/paginator.html" with position="bottom" %}
</form>
{% endblock %}

Expand Down
24 changes: 14 additions & 10 deletions zds/gallery/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
import os
from django.utils.translation import ugettext_lazy as _

from django.views.generic import DetailView, CreateView, UpdateView, DeleteView, FormView
from django.views.generic import CreateView, UpdateView, DeleteView, FormView
from django.utils.decorators import method_decorator
from zds.tutorialv2.models.models_database import PublishableContent

Expand Down Expand Up @@ -125,25 +125,29 @@ def ensure_user_access(gallery, user, can_write=False):
return user_gallery


class GalleryDetails(DetailView):
class GalleryDetails(ZdSPagingListView):
"""Gallery details"""

model = Gallery
object = UserGallery
template_name = "gallery/gallery/details.html"
context_object_name = "gallery"
context_object_name = "images"
paginate_by = settings.ZDS_APP['gallery']['images_per_page']

@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
return super(GalleryDetails, self).dispatch(*args, **kwargs)

def get_queryset(self):
self.pkey = self.kwargs.pop('pk', None)
self.slug = self.kwargs.pop('slug', None)
self.gallery = get_object_or_404(Gallery, pk=self.pkey, slug=self.slug)
self.user_access = ensure_user_access(self.gallery, self.request.user, can_write=True)
return self.gallery.get_images().order_by('title')

def get_context_data(self, **kwargs):
context = super(GalleryDetails, self).get_context_data(**kwargs)

context['gallery_mode'] = ensure_user_access(self.object, self.request.user)
context['images'] = self.object.get_images()
context['gallery_mode'] = self.user_access
context['form'] = UserGalleryForm
context['content_linked'] = PublishableContent.objects.filter(gallery__pk=self.object.pk).first()

context['gallery'] = self.gallery
return context


Expand Down
1 change: 1 addition & 0 deletions zds/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -469,6 +469,7 @@
'gallery': {
'image_max_size': 1024 * 1024,
'gallery_per_page': 21,
'images_per_page': 21,
},
'article': {
'home_number': 3,
Expand Down

0 comments on commit df1933e

Please sign in to comment.