diff --git a/galerie/migrations/0003_add_galerie_poradi.py b/galerie/migrations/0003_add_galerie_poradi.py
new file mode 100644
index 00000000..d9b32f48
--- /dev/null
+++ b/galerie/migrations/0003_add_galerie_poradi.py
@@ -0,0 +1,39 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import galerie.models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('galerie', '0002_auto_20151013_1145'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='galerie',
+ name='poradi',
+ field=models.IntegerField(null=True, verbose_name=b'Po\xc5\x99ad\xc3\xad', blank=True),
+ preserve_default=True,
+ ),
+ migrations.AlterField(
+ model_name='obrazek',
+ name='obrazek_maly',
+ field=models.ImageField(upload_to=galerie.models.obrazek_filename_maly, null=True, editable=False),
+ preserve_default=True,
+ ),
+ migrations.AlterField(
+ model_name='obrazek',
+ name='obrazek_stredni',
+ field=models.ImageField(upload_to=galerie.models.obrazek_filename_stredni, null=True, editable=False),
+ preserve_default=True,
+ ),
+ migrations.AlterField(
+ model_name='obrazek',
+ name='obrazek_velky',
+ field=models.ImageField(help_text=b'Lze vlo\xc5\xbeit libovoln\xc4\x9b velk\xc3\xbd obr\xc3\xa1zek. Ide\xc3\xa1ln\xc3\xad je, aby alespo\xc5\x88 jeden rozm\xc4\x9br m\xc4\x9bl alespo\xc5\x88 500px.', upload_to=galerie.models.obrazek_filename),
+ preserve_default=True,
+ ),
+ ]
diff --git a/galerie/models.py b/galerie/models.py
index 02781a96..e3f15f06 100644
--- a/galerie/models.py
+++ b/galerie/models.py
@@ -147,6 +147,7 @@ class Galerie(models.Model):
zobrazit = models.IntegerField('Zobrazit?', default = ORG, choices = VIDITELNOST)
galerie_up = models.ForeignKey('Galerie', blank = True, null = True)
soustredeni = models.ForeignKey(Soustredeni, blank = True, null = True)
+ poradi = models.IntegerField('Pořadí', blank = True, null = True)
def __unicode__(self):
return self.nazev
diff --git a/galerie/templates/galerie/GalerieNahled.html b/galerie/templates/galerie/GalerieNahled.html
index 135ef153..28358c82 100644
--- a/galerie/templates/galerie/GalerieNahled.html
+++ b/galerie/templates/galerie/GalerieNahled.html
@@ -8,15 +8,20 @@
{{galerie.nazev}}
{# podgalerie #}
- {% if galerie.galerie_set.all or galerie.galerie_up %}
+ {% if podgalerie or galerie.galerie_up %}
PODGALERIE
{% if galerie.galerie_up %}
- ..
{% endif %}
- {% for galerie in galerie.galerie_set.all %}
+ {% for galerie in podgalerie %}
{% if galerie.zobrazit < 1 or user.is_staff %}
- {{galerie}}
+ {% if user.is_staff and galerie.zobrazit > 0 %}
+ ({{galerie.poradi}})
+ +
+ -
+ {% endif %}
{% endif %}
{% endfor %}
diff --git a/galerie/urls.py b/galerie/urls.py
index 71dfb3ea..b2980b52 100644
--- a/galerie/urls.py
+++ b/galerie/urls.py
@@ -6,5 +6,7 @@ urlpatterns = patterns('',
(r'^(?P\d+)/$', 'galerie.views.nahled'),
(r'^(?P\d+)/(?P\d+)/$', 'galerie.views.detail'),
(r'^(?P\d+)/new/$', 'galerie.views.new_galerie'),
+ (r'^(?P\d+)/plus/(?P\d+)/$', 'galerie.views.plus_galerie'),
+ (r'^(?P\d+)/minus/(?P\d+)/$', 'galerie.views.minus_galerie'),
)
diff --git a/galerie/views.py b/galerie/views.py
index 92a61193..0926c5a3 100644
--- a/galerie/views.py
+++ b/galerie/views.py
@@ -23,10 +23,12 @@ def zobrazit(galerie, request):
def nahled(request, pk, soustredeni):
"""Zobrazeni nahledu vsech fotek ve skupine."""
galerie = get_object_or_404(Galerie, pk=pk)
+ podgalerie = Galerie.objects.filter(galerie_up = galerie).order_by('poradi')
obrazky = Obrazek.objects.filter(galerie = galerie).order_by('datum')
preview = zobrazit(galerie, request)
return render(request, 'galerie/GalerieNahled.html',
{'galerie' : galerie,
+ 'podgalerie' : podgalerie,
'obrazky' : obrazky,
'preview' : preview,
})
@@ -121,6 +123,7 @@ def new_galerie(request, galerie, soustredeni):
gal.galerie_up = galerie_up
else:
gal.soustredeni = soustredeni
+ gal.poradi = int(len(gal.galerie_up.galerie_set.all())) + 1
gal.save()
# zpracovani obrazku v galerii
@@ -144,3 +147,22 @@ def new_galerie(request, galerie, soustredeni):
'soustredeni' : soustredeni,
'galerie_text' : galerie_text,
})
+
+def plus_galerie(request, galerie, soustredeni, subgalerie):
+ galerie = get_object_or_404(Galerie, pk=subgalerie)
+ if galerie.poradi:
+ galerie.poradi += 1
+ else:
+ galerie.poradi = int(len(galerie.galerie_up.galerie_set.all()))
+ galerie.save()
+ return HttpResponseRedirect('../../')
+
+def minus_galerie(request, galerie, soustredeni, subgalerie):
+ galerie = get_object_or_404(Galerie, pk=subgalerie)
+ if galerie.poradi:
+ galerie.poradi -= 1
+ else:
+ galerie.poradi = 1
+ galerie.save()
+ return HttpResponseRedirect('../../')
+