Page 28 of 29

Re: Nieuwe module: Gallery

Posted: Wed Feb 13, 2013 8:07 am
by Gregor
Is er binnen Gallery de mogelijkheid om een categorie aan te maken en zo meerdere folders aan een categorie te koppelen?

Re: Nieuwe module: Gallery

Posted: Wed Feb 13, 2013 12:26 pm
by Jos
Kort antwoord: nee. Alles is gebaseerd op de mappenstructuur van de foto-bestanden

Re: Nieuwe module: Gallery

Posted: Wed Feb 13, 2013 2:19 pm
by Gregor
Jos wrote:Kort antwoord: nee. Alles is gebaseerd op de mappenstructuur van de foto-bestanden
Krachtig antwoord Jos :)

Ik zag dat je de mogelijkheid hebt om velden aan te maken. Zou daar nog iets in te bedenken zijn?

Re: Nieuwe module: Gallery

Posted: Wed Feb 13, 2013 2:42 pm
by Jos
Je zou een template kunnen maken die normaal gesproken alle mappen weergeeft, en daar een {if} aan toevoegen die checkt op de inhoud van een bepaald veld...

Re: Nieuwe module: Gallery

Posted: Wed Feb 13, 2013 2:52 pm
by deactivated010521
----------

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 10:15 am
by Gregor
@ Arnoud Van jouw code maak je een template die je vanuit een pagina aanroept, bijv. {Gallery template="<naam template>"} ? Als je vanuit de pagina dan een parameter kunt meegeven, dan kan je wellicht verschillende pagina's aanmaken die dan per afzonderlijke categorie de bijbehorende albums laten zien.

Ik zie hiermee wel mogelijkheden ;)

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 12:35 pm
by deactivated010521
----------

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 2:56 pm
by Gregor
Dit werkt Arnoud (een GCB aangemaakt die ik vanuit een pagina aanroep):

Code: Select all

{assign var=albums_cat_one value=["Winter0708/Bed", "Winter0708/Schroef", "Winter0910/Kachel"]}
<h1>Klussen</h1>
{foreach from=$albums_cat_one item='album' name='loop'} {Gallery dir=$album} {/foreach}
http://www.uisge-beatha.eu/test.html

Enige is, dat alle foto's worden getoond i.p.v. een album waarop je kunt doorklikken. Dit moet waarschijnlijk in een nieuw template worden opgevangen.

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 3:09 pm
by deactivated010521
----------

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 6:52 pm
by Gregor
arnoud wrote:Ja je kan iets doen met de template of action, check even Gallery -> Help pagina.
Ik heb daar geen setting o.i.d. kunnen vinden. Misschien Jos een suggestie ;)

Inmiddels Floatbox ook werkend :) http://www.uisge-beatha.eu/test-2.html

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 9:03 pm
by Jos
Jos wrote:Je zou een template kunnen maken die normaal gesproken alle mappen weergeeft, en daar een {if} aan toevoegen die checkt op de inhoud van een bepaald veld...
;D

Re: Nieuwe module: Gallery

Posted: Thu Feb 14, 2013 10:29 pm
by Gregor
Jos wrote:
Jos wrote:Je zou een template kunnen maken die normaal gesproken alle mappen weergeeft, en daar een {if} aan toevoegen die checkt op de inhoud van een bepaald veld...
;D
:D

Geprobeerd om na het aanmaken van een veld Categorie bij enkele albums in dat veld Klussen te zetten, maar {$image->fields.categorie.value} laat geen albums zien met alleen Klussen erin. Had dit idd in een if-statement gezet.

Re: Nieuwe module: Gallery

Posted: Fri Feb 15, 2013 7:56 am
by Gregor
Jos wrote:
Jos wrote:Je zou een template kunnen maken die normaal gesproken alle mappen weergeeft, en daar een {if} aan toevoegen die checkt op de inhoud van een bepaald veld...
;D
Ik heb aan gallerytree {if $image->fields.categorie.value == "Klussen"} toegevoegd. Zonder if-statement krijg ik alle albums te zien, maar zodra ik het if-statement erin zet, dan laat hij niks meer zien. In de pagina heb ik staan: {Gallery action='gallerytree' template='gallerytree'}
En de template is:

Code: Select all

	<ul>
{assign var='g_prevdepth' value=1}
{foreach from=$images item=image name=img}

{if $image->depth > $g_prevdepth}
{repeat string="<ul>" times=$image->depth-$g_prevdepth}
{elseif $image->depth < $g_prevdepth}
{repeat string="</li></ul>" times=$g_prevdepth-$image->depth}
</li>
{elseif $smarty.foreach.img.index > 0}</li>
{/if}
   {if $image->fields.categorie.value == "Klussen"}
		<li><a href="{$image->file}" title="{$image->titlename}"><img src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a> {$image->titlename}
   {/if}
{assign var='g_prevdepth' value=$image->depth}
{/foreach}
{repeat string="</li></ul>" times=$image->depth-1}</li>
	</ul>
Klopt deze syntax?

Re: Nieuwe module: Gallery

Posted: Fri Feb 15, 2013 12:10 pm
by Jos
Klopt aardig, maar ik zou een nieuwe template maken en wel de action=gallerytree gebruiken.

De gallerytree template heeft wat overkill om een hiërarchisch menu te creëren. Je zou qua template ook kunnen volstaan met

Code: Select all

<div class="gallery">
{foreach from=$images item=image}
	{if $image->isdir && $image->fields.categorie.value == "Klussen"}
	<div class="album">
		<a href="{$image->file}" title="{$image->titlename}"><img src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a><br />
		{$image->titlename}
	</div>
	{/if}
{/foreach}
</div>
Je custom veld "categorie" moet van het type/toepassing "galleries" zijn en het vakje "public" moet aangevinkt zijn.

Ter optimalisatie zou je in plaats van "Klussen" een smarty-variabele kunnen invoegen, die je vóór de {Gallery} tag in je pagina assigned met een waarde.

Re: Nieuwe module: Gallery

Posted: Sat Feb 16, 2013 7:51 am
by Gregor
Dank je Jos.

Ik heb een dropdown van het veld categorie gemaakt waarin ik de keuzemogelijkheden heb vastgelegd om daarmee ook invoervergissingen te voorkomen.

Je code heb ik met een {else} uitgebreid, dit ter test. De aanroep is:

Code: Select all

{Gallery action='gallerytree' template='test'}
en de template ziet er dan als volgt uit:

Code: Select all

<div class="gallery">
{foreach from=$images item=image}
   {if $image->isdir && $image->fields.categorie.value == "Klussen"}
   <div class="album">
      <a href="{$image->file}" title="{$image->titlename}"><img src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a><br />
      {$image->titlename}
   </div>
   {else}
    Leeg <br/>
   {/if}
{/foreach}
</div>
Het resultaat is, dat ik alleen maar 'leeg' zie verschijnen. In de database gekeken en daar staat de value die ik bij de verschillende albums heb ingegeven.

Enig idee waar het misgaat?