Možná jste si všimli, že mám na svých stránkách fotogalerii. Tahle galerie je jednou z plug-in komponent redakčního systému Gryphoon a je postavená na Picasa Raw XML formátu. U většiny programů, které dělají html galerie, je nevýhoda, že je layout výsledné galerie pevně daný. Toto omezení se někdy dá vyřešit pomocí vytvoření vlastní šablony, ale většinou je tato technika celkem složitá a navíc je výsledkem pouze sada statických souborů. Další možností je použít nějakou free dynamickou galerii. Ta většinou všechno řeší přes databázi, ale zase je nezávislá na desktopové aplikaci.
Můj plug-in je závislý na výše zmiňované Picase a její exportní šabloně XML gallery. Výsledný export se nahraje na ftp, nebo se využije možnost uploadu zazipované galerie přímo přes rozhranní Gryphoonu. Vložení galerie do stránky je stejně tak složité, jako tam vložit obyčejný label :)
<%@ Register TagPrefix="Gryphoon" TagName="Galerie" Src="~/controls/Galerie.ascx" %>
…
<Gryphoon:Galerie ID="Galerie1" runat="server" Folder="~/galerie" ParseDateFromFolder="true">
<!-- šablony částí stránky -->
</Gryphoon:Galerie>
Pomocí vlastnosti Folder nastavíme adresář, kde jsou
uloženy adresáře s exporty z Picasy. Pomocí vlastnosti
ParseDateFromFolder povoluje parsování data z názvu
složky Alba. To je proto, že já i mí kamarádi, kteří také
používají Gryphoon, jsme zvyklí pojmenovávat složky exportů
v následujícím tvaru yyyy-mm-dd_jmeno_alba. Dokonce lze
použít i rozšířenou formu, kdy se album vztahuje k nějakému
úseku dnů, pak se použije název složky ve tvaru
yyyy-mm-dd-dd_jmeno_alba. Takže pokud je tato vlastnost nastavena
na true, lze v šablonách použít
Container.Date pro výpis data kdy bylo album pořízeno.
U staré verze zde končily možnosti nastavení výsledného vzhledu galerie, protože vše bylo natvrdo napsáno v kódu kontrolu. Nová verze přichází se šablonováním. Máme tu sedm šablon pro nastavení vzhledu jednotlivých částí v různých stavech galerie. Každá šablona má svou vlastní sadu vlastností, které lze použít. Nutností je si šablony nadefinovat, jinak Galerie fungovat nebude, protože nemá předprogramované šablony – to snad v příští verzi.
Poslední věc, která se ještě musí udělat, je svázání dat pomocí
příkazu DataBind() ve stránce, která má v sobě galerii
vloženou.
void Page_Load(object sender, EventArgs e){
...
DataBind();
}
Ke stažení Gryphoon Gallery v0.82 (Zip, 4,87KiB)
Update ke stažení nyní i ukázka použití a lehká úprava galerie.











Komentáře
Discogio
12.51 - 19. února 2006 | #
Discogio
13.11 - 19. února 2006 | #
Aleš Roubíček
19.18 - 20. února 2006 | #
Miki
19.05 - 26. července 2006 | #
Aleš Roubíček
22.04 - 26. července 2006 | #
Miki
14.36 - 27. července 2006 | #
Místo pro tvůj názor