Opraveno odsazování dvojmezerami
This commit is contained in:
parent
b55a36e8cb
commit
dc4fced39f
3 changed files with 126 additions and 128 deletions
|
@ -47,13 +47,13 @@ def obrazek_filename(self, filename):
|
||||||
|
|
||||||
class Obrazek(models.Model):
|
class Obrazek(models.Model):
|
||||||
obrazek_velky = models.ImageField(upload_to=obrazek_filename,
|
obrazek_velky = models.ImageField(upload_to=obrazek_filename,
|
||||||
help_text = "Lze vložit libovolně velký obrázek. Ideální je, aby alespoň jeden rozměr měl alespoň 500px.")
|
help_text = "Lze vložit libovolně velký obrázek. Ideální je, aby alespoň jeden rozměr měl alespoň 500px.")
|
||||||
obrazek_stredni = ImageSpecField(source='obrazek_velky',
|
obrazek_stredni = ImageSpecField(source='obrazek_velky',
|
||||||
processors=[Transpose(Transpose.AUTO), ResizeToFit(900, 675, upscale=False)],
|
processors=[Transpose(Transpose.AUTO), ResizeToFit(900, 675, upscale=False)],
|
||||||
options={'quality': 95})
|
options={'quality': 95})
|
||||||
obrazek_maly = ImageSpecField(source='obrazek_velky',
|
obrazek_maly = ImageSpecField(source='obrazek_velky',
|
||||||
processors=[Transpose(Transpose.AUTO), ResizeToFit(167, 167, upscale=False)],
|
processors=[Transpose(Transpose.AUTO), ResizeToFit(167, 167, upscale=False)],
|
||||||
options={'quality': 95})
|
options={'quality': 95})
|
||||||
nazev = models.CharField('Název', max_length=50, blank=True, null=True)
|
nazev = models.CharField('Název', max_length=50, blank=True, null=True)
|
||||||
popis = models.TextField('Popis', blank=True, null=True)
|
popis = models.TextField('Popis', blank=True, null=True)
|
||||||
datum_vlozeni = models.DateTimeField('Datum vložení', auto_now_add=True)
|
datum_vlozeni = models.DateTimeField('Datum vložení', auto_now_add=True)
|
||||||
|
@ -61,15 +61,15 @@ class Obrazek(models.Model):
|
||||||
poradi = models.IntegerField('Pořadí', blank=True, null=True)
|
poradi = models.IntegerField('Pořadí', blank=True, null=True)
|
||||||
|
|
||||||
def __unicode__(self):
|
def __unicode__(self):
|
||||||
return unicode(self.obrazek_velky.name)
|
return unicode(self.obrazek_velky.name)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = 'Obrázek'
|
verbose_name = 'Obrázek'
|
||||||
verbose_name_plural = 'Obrázky'
|
verbose_name_plural = 'Obrázky'
|
||||||
ordering = ['nazev']
|
ordering = ['nazev']
|
||||||
|
|
||||||
def obrazek_maly_tag(self):
|
def obrazek_maly_tag(self):
|
||||||
return u'<img src="{}">'.format(self.obrazek_maly.url)
|
return u'<img src="{}">'.format(self.obrazek_maly.url)
|
||||||
obrazek_maly_tag.short_description = "Náhled"
|
obrazek_maly_tag.short_description = "Náhled"
|
||||||
obrazek_maly_tag.allow_tags = True
|
obrazek_maly_tag.allow_tags = True
|
||||||
|
|
||||||
|
@ -80,43 +80,42 @@ class Obrazek(models.Model):
|
||||||
self.nazev = os.path.basename(self.obrazek_velky.name)
|
self.nazev = os.path.basename(self.obrazek_velky.name)
|
||||||
super(Obrazek, self).save(*args, **kwargs)
|
super(Obrazek, self).save(*args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class Galerie(models.Model):
|
class Galerie(models.Model):
|
||||||
nazev = models.CharField('Název', max_length=100)
|
nazev = models.CharField('Název', max_length=100)
|
||||||
datum_vytvoreni = models.DateTimeField('Datum vytvoření', auto_now_add = True)
|
datum_vytvoreni = models.DateTimeField('Datum vytvoření', auto_now_add = True)
|
||||||
datum_zmeny = models.DateTimeField('Datum poslední změny', auto_now = True)
|
datum_zmeny = models.DateTimeField('Datum poslední změny', auto_now = True)
|
||||||
popis = models.TextField('Popis', blank = True, null = True)
|
popis = models.TextField('Popis', blank = True, null = True)
|
||||||
titulni_obrazek = models.ForeignKey(Obrazek, blank = True, null = True, related_name = "+", on_delete = models.SET_NULL)
|
titulni_obrazek = models.ForeignKey(Obrazek, blank = True, null = True, related_name = "+", on_delete = models.SET_NULL)
|
||||||
zobrazit = models.IntegerField('Zobrazit?', default = ORG, choices = VIDITELNOST)
|
zobrazit = models.IntegerField('Zobrazit?', default = ORG, choices = VIDITELNOST)
|
||||||
galerie_up = models.ForeignKey('Galerie', blank = True, null = True)
|
galerie_up = models.ForeignKey('Galerie', blank = True, null = True)
|
||||||
soustredeni = models.ForeignKey(Soustredeni, blank = True, null = True)
|
soustredeni = models.ForeignKey(Soustredeni, blank = True, null = True)
|
||||||
poradi = models.IntegerField('Pořadí', blank = True, null = True)
|
poradi = models.IntegerField('Pořadí', blank = True, null = True)
|
||||||
|
|
||||||
def __unicode__(self):
|
def __unicode__(self):
|
||||||
return self.nazev
|
return self.nazev
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = 'Galerie'
|
verbose_name = 'Galerie'
|
||||||
verbose_name_plural = 'Galerie'
|
verbose_name_plural = 'Galerie'
|
||||||
|
|
||||||
#def link_na_preview(self):
|
#def link_na_preview(self):
|
||||||
#"""Odkaz na galerii, používá se v admin rozhranní. """
|
#"""Odkaz na galerii, používá se v admin rozhranní. """
|
||||||
#return '<a href="/fotogalerie/galerie/%s/">Preview</a>' % self.id
|
#return '<a href="/fotogalerie/galerie/%s/">Preview</a>' % self.id
|
||||||
#link_na_preview.allow_tags = True
|
#link_na_preview.allow_tags = True
|
||||||
#link_na_preview.short_description = 'Zobrazit galerii'
|
#link_na_preview.short_description = 'Zobrazit galerii'
|
||||||
#
|
#
|
||||||
#def je_publikovano(self):
|
#def je_publikovano(self):
|
||||||
#"""Vraci True, pokud je tato galerie publikovana. """
|
#"""Vraci True, pokud je tato galerie publikovana. """
|
||||||
#if self.zobrazit == VZDY:
|
#if self.zobrazit == VZDY:
|
||||||
#return True
|
#return True
|
||||||
#if self.zobrazit == PODLE_CLANKU:
|
#if self.zobrazit == PODLE_CLANKU:
|
||||||
#for clanek in self.clanek_set.all():
|
#for clanek in self.clanek_set.all():
|
||||||
#if clanek.je_publikovano():
|
#if clanek.je_publikovano():
|
||||||
#return True
|
#return True
|
||||||
#return False
|
#return False
|
||||||
#
|
#
|
||||||
#@staticmethod
|
#@staticmethod
|
||||||
#def publikovane_galerie():
|
#def publikovane_galerie():
|
||||||
#"""Vraci galerie, ktere uz maji byt publikovane."""
|
#"""Vraci galerie, ktere uz maji byt publikovane."""
|
||||||
#clanky = Blog.models.Clanek.publikovane_clanky()
|
#clanky = Blog.models.Clanek.publikovane_clanky()
|
||||||
#return Galerie.objects.filter(Q(zobrazit=VZDY) | (Q(clanek__in=clanky) & Q(zobrazit=PODLE_CLANKU))).distinct()
|
#return Galerie.objects.filter(Q(zobrazit=VZDY) | (Q(clanek__in=clanky) & Q(zobrazit=PODLE_CLANKU))).distinct()
|
||||||
|
|
151
galerie/views.py
151
galerie/views.py
|
@ -72,89 +72,88 @@ def nahled(request, pk, soustredeni):
|
||||||
})
|
})
|
||||||
|
|
||||||
def detail(request, pk, fotka, soustredeni):
|
def detail(request, pk, fotka, soustredeni):
|
||||||
"""Zobrazeni nahledu fotky s id 'fotka'."""
|
"""Zobrazeni nahledu fotky s id 'fotka'."""
|
||||||
MAX_VYSKA = 900
|
MAX_VYSKA = 900
|
||||||
MAX_SIRKA = 900
|
MAX_SIRKA = 900
|
||||||
MAX_VYSKA_MALA = 100
|
MAX_VYSKA_MALA = 100
|
||||||
MAX_SIRKA_MALA = 200
|
MAX_SIRKA_MALA = 200
|
||||||
NAHLEDU = 1
|
NAHLEDU = 1
|
||||||
|
|
||||||
galerie = get_object_or_404(Galerie, pk=pk)
|
galerie = get_object_or_404(Galerie, pk=pk)
|
||||||
preview = zobrazit(galerie, request)
|
preview = zobrazit(galerie, request)
|
||||||
obrazek = get_object_or_404(Obrazek, pk=fotka)
|
obrazek = get_object_or_404(Obrazek, pk=fotka)
|
||||||
obrazky = galerie.obrazek_set.all()
|
obrazky = galerie.obrazek_set.all()
|
||||||
|
|
||||||
# vytvoreni a obslouzeni formulare
|
# vytvoreni a obslouzeni formulare
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
form = KomentarForm(request.POST)
|
form = KomentarForm(request.POST)
|
||||||
if form.is_valid():
|
if form.is_valid():
|
||||||
obrazek.popis = form.cleaned_data['komentar']
|
obrazek.popis = form.cleaned_data['komentar']
|
||||||
obrazek.save()
|
obrazek.save()
|
||||||
else:
|
|
||||||
form = KomentarForm({'komentar': obrazek.popis})
|
|
||||||
|
|
||||||
# Poradi aktualniho obrazku v galerii/stitku.
|
|
||||||
for i in range(len(obrazky)):
|
|
||||||
if obrazky[i] == obrazek:
|
|
||||||
znacka = i
|
|
||||||
break
|
|
||||||
else:
|
|
||||||
# Obrazek neni v galerii/stitku.
|
|
||||||
raise Http404
|
|
||||||
|
|
||||||
|
|
||||||
# Nacteni okolnich obrazku a galerii
|
|
||||||
# TODO vyjmout zjisteni predchozich a nasledujicich galerii
|
|
||||||
# a udelat z toho funkci, ktera se pouzije u nahledu
|
|
||||||
predchozi_galerie = None
|
|
||||||
nasledujici_galerie = None
|
|
||||||
obrazky_dalsi = obrazky[znacka+1:znacka+NAHLEDU+1]
|
|
||||||
if (znacka+1) > NAHLEDU:
|
|
||||||
obrazky_predchozi = obrazky[znacka-NAHLEDU:znacka]
|
|
||||||
else:
|
|
||||||
obrazky_predchozi = obrazky[0:znacka]
|
|
||||||
if galerie.poradi > 1:
|
|
||||||
predchozi_galerie = Galerie.objects.\
|
|
||||||
filter(galerie_up=galerie.galerie_up).\
|
|
||||||
filter(poradi=(galerie.poradi-1))
|
|
||||||
if predchozi_galerie:
|
|
||||||
predchozi_galerie = predchozi_galerie[0]
|
|
||||||
else:
|
else:
|
||||||
predchozi_galerie = None
|
form = KomentarForm({'komentar': obrazek.popis})
|
||||||
if (znacka+1) == len(obrazky):
|
|
||||||
nasledujici_galerie = Galerie.objects.\
|
# Poradi aktualniho obrazku v galerii/stitku.
|
||||||
filter(galerie_up=galerie.galerie_up).\
|
for i in range(len(obrazky)):
|
||||||
filter(poradi=(galerie.poradi+1))
|
if obrazky[i] == obrazek:
|
||||||
if nasledujici_galerie:
|
znacka = i
|
||||||
nasledujici_galerie = nasledujici_galerie[0]
|
break
|
||||||
else:
|
else:
|
||||||
nasledujici_galerie = None
|
# Obrazek neni v galerii/stitku.
|
||||||
|
raise Http404
|
||||||
|
|
||||||
|
# Nacteni okolnich obrazku a galerii
|
||||||
|
# TODO vyjmout zjisteni predchozich a nasledujicich galerii
|
||||||
|
# a udelat z toho funkci, ktera se pouzije u nahledu
|
||||||
|
predchozi_galerie = None
|
||||||
|
nasledujici_galerie = None
|
||||||
|
obrazky_dalsi = obrazky[znacka+1:znacka+NAHLEDU+1]
|
||||||
|
if (znacka+1) > NAHLEDU:
|
||||||
|
obrazky_predchozi = obrazky[znacka-NAHLEDU:znacka]
|
||||||
|
else:
|
||||||
|
obrazky_predchozi = obrazky[0:znacka]
|
||||||
|
if galerie.poradi > 1:
|
||||||
|
predchozi_galerie = Galerie.objects.\
|
||||||
|
filter(galerie_up=galerie.galerie_up).\
|
||||||
|
filter(poradi=(galerie.poradi-1))
|
||||||
|
if predchozi_galerie:
|
||||||
|
predchozi_galerie = predchozi_galerie[0]
|
||||||
|
else:
|
||||||
|
predchozi_galerie = None
|
||||||
|
if (znacka+1) == len(obrazky):
|
||||||
|
nasledujici_galerie = Galerie.objects.\
|
||||||
|
filter(galerie_up=galerie.galerie_up).\
|
||||||
|
filter(poradi=(galerie.poradi+1))
|
||||||
|
if nasledujici_galerie:
|
||||||
|
nasledujici_galerie = nasledujici_galerie[0]
|
||||||
|
else:
|
||||||
|
nasledujici_galerie = None
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Preskalovani obrazku do vybraneho prostoru.
|
|
||||||
vyska = obrazek.obrazek_stredni.height
|
|
||||||
sirka = obrazek.obrazek_stredni.width
|
|
||||||
if vyska > MAX_VYSKA:
|
|
||||||
sirka = sirka * MAX_VYSKA / vyska
|
|
||||||
vyska = MAX_VYSKA
|
|
||||||
if sirka > MAX_SIRKA:
|
|
||||||
vyska = vyska * MAX_SIRKA / sirka
|
|
||||||
sirka = MAX_SIRKA
|
|
||||||
|
|
||||||
return render(request, 'galerie/Galerie.html',
|
# Preskalovani obrazku do vybraneho prostoru.
|
||||||
{'galerie' : galerie,
|
vyska = obrazek.obrazek_stredni.height
|
||||||
'predchozi_galerie' : predchozi_galerie,
|
sirka = obrazek.obrazek_stredni.width
|
||||||
'nasledujici_galerie' : nasledujici_galerie,
|
if vyska > MAX_VYSKA:
|
||||||
'obrazek' : obrazek,
|
sirka = sirka * MAX_VYSKA / vyska
|
||||||
'vyska' : vyska,
|
vyska = MAX_VYSKA
|
||||||
'sirka' : sirka,
|
if sirka > MAX_SIRKA:
|
||||||
'obrazky_predchozi' : obrazky_predchozi,
|
vyska = vyska * MAX_SIRKA / sirka
|
||||||
'obrazky_dalsi' : obrazky_dalsi,
|
sirka = MAX_SIRKA
|
||||||
'preview' : preview,
|
|
||||||
'form' : form,
|
return render(request, 'galerie/Galerie.html',
|
||||||
'cesta': cesta_od_korene(galerie),
|
{'galerie' : galerie,
|
||||||
})
|
'predchozi_galerie' : predchozi_galerie,
|
||||||
|
'nasledujici_galerie' : nasledujici_galerie,
|
||||||
|
'obrazek' : obrazek,
|
||||||
|
'vyska' : vyska,
|
||||||
|
'sirka' : sirka,
|
||||||
|
'obrazky_predchozi' : obrazky_predchozi,
|
||||||
|
'obrazky_dalsi' : obrazky_dalsi,
|
||||||
|
'preview' : preview,
|
||||||
|
'form' : form,
|
||||||
|
'cesta': cesta_od_korene(galerie),
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
def new_galerie(request, galerie, soustredeni):
|
def new_galerie(request, galerie, soustredeni):
|
||||||
|
|
|
@ -20,14 +20,14 @@ def newPrednaska(request):
|
||||||
if form.is_valid():
|
if form.is_valid():
|
||||||
jmeno = form.cleaned_data['ucastnik']
|
jmeno = form.cleaned_data['ucastnik']
|
||||||
for i in request.POST:
|
for i in request.POST:
|
||||||
if i[0] == 'q':
|
if i[0] == 'q':
|
||||||
hlasovani = Hlasovani()
|
hlasovani = Hlasovani()
|
||||||
print("q:"+i[1:])
|
print("q:"+i[1:])
|
||||||
hlasovani.prednaska = Prednaska.objects.filter(pk = int(i[1:]))[0]
|
hlasovani.prednaska = Prednaska.objects.filter(pk = int(i[1:]))[0]
|
||||||
hlasovani.body = int(request.POST[i])
|
hlasovani.body = int(request.POST[i])
|
||||||
hlasovani.ucastnik = jmeno
|
hlasovani.ucastnik = jmeno
|
||||||
hlasovani.seznam = seznam
|
hlasovani.seznam = seznam
|
||||||
hlasovani.save()
|
hlasovani.save()
|
||||||
|
|
||||||
# presmerovani na prave vzniklou galerii
|
# presmerovani na prave vzniklou galerii
|
||||||
return HttpResponseRedirect('./hotovo')
|
return HttpResponseRedirect('./hotovo')
|
||||||
|
|
Loading…
Reference in a new issue