WebToDate/Diskuze/Začínáme

Z WebToDate
Skočit na navigaciSkočit na vyhledávání

První kroky

Při prvotní konfiguraci modulu směřující k vytvoření první funkční diskuzní skupiny (ať už se jedná o samostatné diskuzní fórum nebo diskuze pod článkem se postupuje v následujících krocích):

  1. Základní nastavení celého modulu (např. předvoleb)
  2. Založení prvního předpisu
  3. Založení první diskuzní skupiny
  4. Vlastní definice předpisu, tj. potřebných WebToDate stylů a předloh pro jednotlivé typy stránek a jejich nastavení pro danou diskuzi
  5. Testování funkčnosti diskuze

V následujících kapitolách jsou popsány první tři kroky. Návody na další kroky jsou rozděleny do samostatných kapitol Založení samostatného diskusního fóra a Zpřístupnění komentářů ke článkům.

Postupy uvedené v této kapitole předpokládají, že uživatel je přihlášen k WebToDate jako člen týmu Administrátoři.

Základní nastavení

V prvé řadě je třeba nastavit předvolby. Přejděte do nabídky modulu AdministracePředvolby.

Soubor:Image003.jpg

Zde doporučujeme nastavit tyto předvolby tak, jak je znázorněno na předchozím otisku obrazovky, později je možné v rámci podrobnější konfigurace funkčnosti modulu se do tohoto formuláře vrátit a předvolby změnit.

I když jsou ve formuláři nastaveny nějaké výchozí hodnoty, po instalaci nejsou tyto hodnoty uloženy v databázi systému. I v případě, že chcete ponechat všechny výchozí hodnoty, použijte nejprve v tomto i ve všech ostatních formulářích tlačítko Uložit.

Nyní přejděte do nabídky NastaveníGlobálníDalší nastavení (pokud máte v systému definován více než jeden jazyk, rozlišují se tyto nabídky ještě na úrovni jazyka, pak toto proveďte pro výchozí jazyk, typicky češtinu).

Soubor:Image004.jpg

Ve formuláři ponechte výchozí nastavení a uložte.

Již nyní poznamenejme, že první čtyři položky formuláře definují způsob možného formátování stromu diskuzních příspěvků, typicky komentářů pod článkem. Jak výchozí hodnoty jsou zde zvoleny semigrafické znaky, které dávají odpovídající logický výsledek, ale graficky bývá zpravidla vhodnější použít pro tyto účely obrázky s danými značkami – semigrafické značky jsou závislé např. na zvolené velikosti a druhu písma, použití obrázků tedy dává přinejmenším preciznější kontrolu nad grafickým zobrazením výsledku. Nastavení pak vypadá zhruba tak, jak je naznačeno na následujícím otisku obrazovky.
Soubor:Image005.jpg

Přejděte do nabídky NastaveníGlobálníNavigační lišta a formulář uložte s výchozími hodnotami. Opět lze později zpřesnit toto nastavení, pro základní funkčnost postačuje výchozí nastavení.

Založení předpisu

Přejděte do nabídky NastaveníSeznam předpisů, klepněte na odkaz Přidat v pravém horním rohu okna prohlížeče a založte první předpis.

Soubor:Image006.jpg

V tomto formuláři se zadává pouze název předpisu. Předpis je souhrn grafických a funkčních nastavení, který definuje chování a vzhled dané části modulu, v tomto případě dané diskuzní skupiny. Pojmenujte proto předpis podle zamýšleného způsobu užití ("Diskuze pod článkem", "Diskuzní fórum", "Návštěvní kniha" apod.).

Vlastní definice předpisu, tj. výběry různých WebToDate, stylům předloh apod. se neprovádějí zde, ale v nabídce NastaveníPředpisy, jak je popsáno v příslušných kapitolách níže.

Založení diskuzní skupiny

Přejděte do nabídky AdministraceDiskuze. Pomocí odkazu Přidat v pravém horním rohu okna prohlížeče založte první diskuzní skupinu. Formulář vyplňte dle následujícího vzoru a uložte.

Soubor:Image007.jpg
Poznámka: Pokud máte v poli Přihlašovací režim méně voleb než je na tomto otisku obrazovky, nemáte nainstalován modul Registrace a personalizace. Ten není pro modul Diskuze vyžadován, nelze pak ale používat funkce modulu vyžadující registrace.


Nyní je vše připraveno pro vytvoření a definování vlastního vzhledu a chování diskuze. Postupujte podle následujících kapitol podle toho, zda chcete vytvořit samostatné diskuzní fórum nebo komentáře ke článkům.

Založení samostatného diskusního fóra

Cílová funkcionalita

V této kapitole je popsán postup vytvoření kompletního diskuzního fóra s několika typy stránek.

Prvním typem stránky je zobrazení diskuzních vláken, neboli příspěvků v nejvyšší úrovni vnoření.

Soubor:Image008.jpg

Příspěvky lze rovněž volitelně zobrazit i jiným stylem, který vykresluje celý strom příspěvků.

Soubor:Image009.jpg

Po klepnutí na příspěvek v nejvyšší úrovni se zobrazuje stránka, kde se nachází text jednoho příspěvku, vybrané vlákno formátované jako strom, kde lze přecházet mezi příspěvky, a formulář pro vložení reakce na zobrazovaný příspěvek.

Soubor:Image010.jpg

Posledním typem stránky je stránka pro vložení nového příspěvku v nejvyšší úrovni, neboli založení nového vlákna.

Soubor:Image011.jpg

V tomto modulu je poněkud problematické samostatné testování jednotlivých typů stránek, protože tyto stránky na sebe navazují – např. aby se něco zobrazilo v seznamu příspěvků je třeba mít připravený vstupní formulář a naopak po uložení formuláře se zpravidla ihned zobrazuje stránka se seznamem příspěvků apod. Proto je v následujících podkapitolách popsán způsob vytvoření všech typů stránek najednou a celkovou funkčnost je možné vyzkoušet, až když jsou všechny potřebné stránky a jejich elementy definovány a správně nastaveny.

Vytvoření stránky pro vložení nového příspěvku

Nejprve vytvoříme HTML kód formuláře pro vložení nového příspěvku. První možností je využít vestavěné funkce pro vygenerování tohoto kódu do těla fragmentu. Přejděte do nabídky NástrojeNový příspěvek. Zobrazí se formulář pro generování pomocného fragmentu obsahujícího HTML kód formuláře. Zvolte vhodnou kategorii pro fragment a použijte tlačítko Přidat HTML fragment a následně tlačítko Vyhledat. Funkce přejde zpět do WebToDate na formulář pro úpravy nově založeného fragmentu. HTML kód formuláře zde můžete upravit dle potřeby, je ale třeba zachovat všechna URL a názvy parametrů ve formuláři.

Druhou možností je ručně založit nový fragment. Do těla fragmentu vložte následující kód.

<h3>Nový příspěvek</h3>
Příspěvek bude zařazen do diskuze <strong><!--WTD_DISC(DNAME)--></strong>.
<form method="post" action="/scripts/modules/disc/add.php">
<input type="hidden" id="did" name="did" value="<!--WTD_DISC(DID)-->" />
<input type="hidden" id="rootid" name="rootid" value="<!--WTD_DISC(ROOTID)-->" />
<input type="hidden" id="msgid" name="msgid" value="<!--WTD_DISC(ID)-->" />
<table>
<tr>
<td>E-mail:</td>
<td><input type="text" name="email" value="<!--WTD_USER(EMAIL)-->" /></td>
</tr>
<tr>
<td>Přezdívka:</td>
<td><input type="text" name="nickname" value="<!--WTD_USER(NICKNAME)-->" /></td>
</tr>
<tr>
<td>Jméno:</td>
<td><input type="text" name="firstname" value="<!--WTD_USER(FIRSTNAME)-->" /></td>
</tr>
<tr>
<td>Příjmení:</td>
<td><input type="text" name="lastname" value="<!--WTD_USER(LASTNAME)-->" /></td>
</tr>
<tr>
<td>Nadpis:</td>
<td><input type="text" size="60" name="name" value="<!--WTD_DISC(ADDNAME)-->"/></td>
</tr>
<tr>
<td colspan="2">Text příspěvku:</td>
</tr>
<tr>
<td colspan="2"><textarea cols="50" rows="10" name="body"><!--WTD_DISC(ADDBODY)--></textarea></td>
</tr>
<tr>
<td colspan="2">
<input type="reset" name="smazat" value="Smazat" />
<input type="submit"  name="send" value="Uložit" />
</td>
</tr>
</table>
</form>

Nyní založíme předlohu pro stránku pro vkládání příspěvků. V hlavní nabídce WebToDate použijte VzhledPředlohy, klepněte na ikonu složku vedle názvu Diskuze a použijte odkaz Přidat v pravém horním rohu. Formulář pro založení předlohy vyplňte dle následujícího vzoru. Jako šablonu použijte vhodnou stránku, která má oblast, na kterou bude možné vložit fragment s formulářem založený v prvním kroku.

Soubor:Image012.jpg

Po uložení stránky klepněte na název stránky v seznamu předloh, v hlavní nabídce WebToDate přejděte na ObsahFragmenty a vložte fragment na vhodnou oblast v předloze pod stylem, který vkládá jen tělo fragmentu; tyto fragmenty přiřazujte vždy staticky. Pokud vhodný styl nemáte, založte ve WebToDate nový styl (Vzhled - Styly) a do jeho těla vložte kód

<!--WTD_F(BODY)-->

Stránku pak vygenerujte.

Přejděte do nabídky modulu NastaveníPředpisy – název předpisu – Nový příspěvek. V poli Předloha vyberte stránku založenou v předchozím kroku a formulář uložte. Výběr stylu ve spodní části formuláře může být jakýkoliv, protože v tomto případě se ve stránce nebude využívat možnost zobrazení vlákna příspěvků.

Soubor:Image013.jpg

Formulář nyní můžete zobrazit na stránce /scripts/modules/disc/add.php?did=xxx, kde xxx je ID diskuzní skupiny založené v kapitole Založení diskuzní skupiny. Formulář zde můžete zkontrolovat a případně ještě graficky upravit jeho kód v těle fragmentu, nový příspěvek ale ještě nevkládejte, protože chybí další stránky modulu.

Vytvoření stránky pro seznam příspěvků

Nejprve vytvoříme fragment obsahující hlavní kód stránky zobrazující seznam příspěvků. Založte nový fragment ve vhodné kategorii a do těla vložte následující kód.

<div>
Seznam diskuzních příspěvků ve skupině <strong><!--WTD_DISC(DNAME)--></strong><br />
Počet příspěvků: <!--WTD_DISC(DNUMOFITEMS)-->, datum posledního příspěvku: <!--WTD_DISC(DLASTUPDATE)--><br />
<div align="right"><a href="<!--WTD_DISC(ADDURL)-->">Přidat nový příspěvek</a></div>
</div>
<br/>
<div>
<!--WTD_IF(NORECORDS,"Tato diskusní skupina je zatím bez příspěvků")-->
<!--WTD_DISC(LIST)-->
</div>

Klíčové slovo <!--WTD_DISC(LIST)--> zde reprezentuje místo, kde se bude zobrazovat seznam příspěvků, ostatní klíčová slova reprezentují informace o počtu příspěvků ve skupině apod.

Nyní založte novou předlohu pro tento typ stránky. Postupujte identicky jako v předchozí kapitole, na stránku vložte fragment založený v předchozím kroku a stránku vygenerujte.

Dále založíme dva WebToDate styly – jeden styl zobrazující seznam příspěvků v dané diskuzi v nejvyšší úrovni vnoření, druhý styl zobrazující hierarchicky celý strom diskuze.

První styl založte dle následujícího otisku obrazovky.

Soubor:Image014.jpg

V definici stylu použijte následující kódy.

Hlavička

<div>
<table border="0" cellpadding="4" cellspacing="0" class="descr80">
<tr bgcolor="#efefef">
<th>Téma</th>
<th>Autor</th>
<th>Odpovědí</th>
<th>Poslední modifikace</th>
</tr>

Tělo

<tr>
<td class="messageCol">
<strong><a href="<!--WTD_DISC(URL)-->"><!--WTD_DISC(NAME)--></a></strong>
</td>
<td><!--WTD_DISC(NICKNAME)--></td>
<td class="messageCol"><!--WTD_DISC(TNUMOFITEMS)--></td>
<td><!--WTD_DISC(LASTMODIFIED)--></td>
</tr>

Patička

</table>
</div>
<p align="right">
<a href="messages.php?did=<!--WTD_DISC(DID)-->&collapse=0">Zobrazit jako strom</a>
</p>
<!--WTD_DISC(LISTNAVIG)-->

Analogicky založte druhý styl pro zobrazení celého stromu diskuze.

Poznámka: Tento styl a typ zobrazení stromu příspěvků není v podstatě pro daný způsob provozování diskuze nutný, je zde uveden jako příklad možností. V praxi by pro takovýto typ diskuzního fóra měl postačovat seznam příspěvků v nejvyšší úrovni, možnost procházet jednotlivá vlákna přes stránku zobrazující jeden příspěvek a dané vlákno a vkládání nových příspěvků.

V definici tohoto stylu použijte následující kódy.

Hlavička

<div><ul  class="disc1">

Tělo

<li class="disc1"><div class="disc_lhead"><!--WTD_DISC(NAME)--></div>
Autor: <!--WTD_DISC(NICKNAME)--> | přidáno: <!--WTD_DISC(TIME)-->, <!--WTD_DISC(DATE)-->
<!--WTD_DISC(BODY)-->
<div align="right"><a href="add.php?msgid=<!--WTD_DISC(ID)-->">Odpovědět</a>
</li>

Patička

</ul></div>

Začátek sekce

<li class="disc1"><ul class="disc1">

Konec sekce

</ul></li>

Aby se výsledek zobrazil zhruba tak, jak je uvedeno na otiscích obrazovky v kapitole Cílová funkcionalita, je třeba definovat vhodné CSS styly, pro tyto demonstrační účely bylo použito následující:

td.messageHead {color:white;background:#339900;font-weight:bold;}
td.messageCol {border-right: 1px solid silver;}
.disc_lhead {width:100%;background:#efefef;font-weight:bold;}
ul.disc1 {margin-top:0px; border:1px solid #aa66aa; padding:2px;margin-left:8px;}
li.disc1 {list-style-type:none;font-size:xx-small;}

Nyní je třeba v modulu provést příslušné nastavení pro stránku zobrazující seznam položek v diskuzi. Přejděte do nabídky modulu NastaveníPředpisy – název předpisu – Seznam. Formulář vyplňte dle následujícího otisku obrazovky.

Soubor:Image015.jpg

V poli Předloha zde zvolte předlohu založenou v této kapitole, Styl diskuze pro všechny příspěvky v nulté úrovni je styl založený v této kapitole jako první, Styl diskuze pro všechny příspěvky je styl založený jako druhý. Poslední styl ve formuláři je pro tyto účely irelevantní a můžete jej zvolit libovolně.

Stránku pro seznam příspěvků nyní můžete zobrazit na URL /scripts/modules/disc/messages.php?did=xxx, kde xxx je ID diskuzní skupiny založené v kapitole Založení diskuzní skupiny. Můžete vyzkoušet i vložení nového příspěvku v nejvyšší úrovni pomocí odkazu "Přidat nový příspěvek". Po přidání příspěvku by se měla zobrazit stránka se seznamem příspěvků, na položku v seznamu ale ještě neklepejte, definice stránky pro zobrazení jednoho příspěvku je popsána až v následující kapitole.

Vytvoření stránky pro text jednoho příspěvku

V této kapitola nadefinujeme stránku, která zobrazuje

  • Vlastní text jednoho příspěvku v diskuzi včetně dalších údajů (datum vložení, autor apod.)
  • Formulář pro vložení reakce na zobrazovaný příspěvek
  • Celé vlákno, ve kterém se daný příspěvek nachází.

Postup je analogický jako v předchozích kapitolách. Doporučujeme vytvořit tři fragmenty odpovídající třem položkám uvedeným výše a tyto tři fragmenty vložit na nově založenou předlohu pro tento typ stránky. Všechny tři fragmenty mohou být umístěny na jednu oblast nebo do různých vhodných oblastí, záleží na celkovém grafickém designu www prezentace.

Fragment 1 – text příspěvku a další informace:

<h4><!--WTD_DISC(NAME)--></h4>
<div><!--WTD_DISC(BODY)--></div>
<div>
<em>Datum a čas příspěvku: <!--WTD_DISC(DATE)-->, <!--WTD_DISC(TIME)--><br>
Autor: <a href="mailto:<!--WTD_DISC(EMAIL)-->"><!--WTD_DISC(NICKNAME)--></a> (<!--WTD_DISC(FIRSTNAME)--> <!--WTD_DISC(LASTNAME)-->)</em>
</div>
<hr size="1" noshade="noshade"/>
<div class="descr_sm">
Tento příspěvek se nachází v diskusní skupině <b><!--WTD_DISC(DNAME)--></b>, kde je <!--WTD_DISC(DNUMOFITEMS)--> příspěvků, poslední příspěvek <!--WTD_DISC(DLASTUPDATE)-->
<br />
<a href="<!--WTD_DISC(DURL)-->">Zpět na diskusi</a>
</div>
<hr size="1" noshade="noshade"/>

Fragment 2 – formulář pro vložení reakce na příspěvek:

<div>
<strong>Odpovědět na tento příspěvek</strong>
<form method="post" action="/scripts/modules/disc/add.php">
<input type="hidden" name="did" value="<!--WTD_DISC(DID)-->" />
<input type="hidden" name="msgid" value="<!--WTD_DISC(ID)-->" />
<input type="hidden" name="rootid" value="<!--WTD_DISC(ROOTID)-->" />
<div style="margin-left:5px;">
<table class="newMessage" cellspacing="0" style="font-size:x-small">
<tr>
 <td class="messageLeft">Email</td>
 <td class="messageRight"><input type="text" name="email" value="<!--WTD_USER(EMAIL)-->" /></td>
 <td class="messageLeft">Přezdívka</td>
 <td class="messageRight"><input type="text" name="nickname" value="<!--WTD_USER(NICKNAME)-->" /></td>
</tr>
<tr>
 <td class="messageLeft">Jméno</td>
 <td class="messageRight"><input type="text" name="firstname" value="<!--WTD_USER(FIRSTNAME)-->" /></td>
 <td class="messageLeft">Příjmení</td>
 <td class="messageRight"><input type="text" name="lastname" value="<!--WTD_USER(LASTNAME)-->" /></td>
</tr>
<tr>
 <td class="messageLeft">Nadpis</td>
 <td class="messageRight" colspan="3"><input type="text" name="name" value="<!--WTD_DISC(ADDNAME)-->" style="width: 100%;"/></td>
</tr>
<tr>
 <td class="messageLeft" valign="top">Text příspěvku</td>
 <td class="messageRight" colspan="3"><textarea cols="50" rows="10" name="body">
<!--WTD_DISC(ADDBODY)--></textarea></td>
</tr>
<tr>
 <td class="messageLeft" colspan="4" align="center">
 <input type="reset" name="smazat" value="Výchozí hodnoty" />
 <input type="submit" name="send" value="Uložit" />
 </td>
</tr>
</table>
</form>
</div>
</div>

Fragment 3 – zobrazení vlákna diskuze:

<!--WTD_DISC(LIST)-->

Druhým potřebným elementem, který je třeba kromě předlohy pro stránku definovat, je styl pro formátování vlákna diskuze. Založte nový WebToDate styl dle následující definice.

Hlavička

<strong>Příspěvky v tomto vlákně</strong><br/>
<div class="descr90">

Tělo

<!--WTD_DISC(SPACER)-->
<a href="<!--WTD_DISC(URL)-->" title="<!--WTD_DISC(NICKNAME)-->, <!--WTD_DISC(DATE)-->"><!--WTD_DISC(NAME)--></a> <!--WTD_IF(ISACTIVE,"<strong>«</strong>")-->
<br/>

Patička

</div>

V tomto stylu se používá klíčové slovo <!--WTD_DISC(SPACER)-->, které se funkčností celkem podstatně liší od jiných doposud uvedených značek. Toto klíčové slovo se nahrazuje řádkem formátovacích značek, které dohromady dávají grafické zobrazení stromu příspěvků. Jedná se o značky, které byly definovány ve formuláři NastaveníGlobálníDalší nastavení.

Pro nastavení stránky přejděte do nabídky modulu NastaveníPředpisy – název předpisu – Detail. Zde zvolte předlohu a styl vytvořené v této kapitole.

Soubor:Image016.jpg

Testování výsledku

Pokud jste postupovali podle výše uvedených návodů, mělo by být diskuzní fórum připraveno. Začněte na adrese /scripts/modules/disc/messages.php?did=xxx, kde xxx je ID diskuzní skupiny založené v kapitole Založení diskuzní skupiny. Odkaz na "Přidat nový příspěvek" vyvolává stránku typu Nový příspěvek, odkaz na položku v seznamu příspěvků vyvolává stránku typu Detail, odkaz "Zobrazit jako strom" vyvolává stejný typ stránky (seznam příspěvků) s volbou jiného stylu zobrazujícího hierarchii všech příspěvků.

Zpřístupnění komentářů ke článkům

Pravidla řazení

V prvé řadě je třeba definovat pravidla řazení příspěvků. Teoreticky je možné příspěvky k různým zprávám řadit do různých skupin, což lze využít např. pro účely prohledávání nebo prezentace příspěvků v zobrazeních, které neobsahují vlastní zprávy. Toto řazení je možné definovat na úrovni publikací.

V tuto chvíli využijte možnosti volby "všechny nedefinované", což znamená, že příspěvky ke zprávám ze všech publikací budou ukládány do zvolené diskuzní skupiny. Přejděte do nabídky AdministracePravidla řazení, formulář nastavte dle následujícího otisku obrazovky a uložte. Později je v případě potřeba možné v tomto formuláři způsoby řazení změnit.

Soubor:Image017.jpg

Cílová funkcionalita

V této kapitole je popsán postup pro vytvoření možnosti komentářů pod článkem, jejich vkládání a prohlížení.

Prvním typem stránky je zobrazení celého textu zprávy (typu /scripts/detail.php?id=xxx), kde se nachází strom komentářů k danému článku.

Soubor:Image018.jpg

Vlastní texty komentárů se zobrazují na další stránce. Zobrazení se liší podle toho, zda se zobrazují všechny nebo jen vybrané příspěvky. Všechny příspěvky se zobrazují jako strom příspěvků.

Soubor:Image019.jpg

Vybrané příspěvky se zobrazují jako lineární seznam setříděný od nejnovějších k nejstarším.

Soubor:Image020.jpg

Posledním typem stránky je stránka pro vložení nového příspěvku nebo reakce na existující příspěvek. Stránka kromě formuláře zobrazuje relevantní část vlákna příspěvků.

Soubor:Image021.jpg

I v tomto případě platí, že testovat lze až celou sadu stránek najednou, následující kapitoly tedy postupně popisují nastavení všech potřebných typů stránek, pak je možné celou funkcionalitu ověřit.

Vytvoření stránky pro vložení nového příspěvku

Nejprve vytvoříme HTML kód formuláře pro vložení nového příspěvku. První možností je využít vestavěné funkce pro vygenerování tohoto kódu do těla fragmentu. Přejděte do nabídky NástrojeNový příspěvek. Zobrazí se formulář pro generování pomocného fragmentu obsahujícího HTML kód formuláře. Zvolte vhodnou kategorii pro fragment a použijte tlačítko Přidat HTML fragment a následně tlačítko Vyhledat. Funkce přejde zpět do WebToDate na formulář pro úpravy nově založeného fragmentu. HTML kód formuláře zde můžete upravit dle potřeby, je ale třeba zachovat všechna URL a názvy parametrů ve formuláři.

Druhou možností je ručně založit nový fragment. Doporučeno je založit dva fragmenty, první pro kód formuláře, druhý pro zobrazení vlákna příspěvků.

Založte nový fragment, do těla vložte následující kód.

<h3>Nový příspěvek</h3>
<a href="<!--WTD_F(TITLELINK)-->">Zpět na článek <!--WTD_F(TITLE)--></a>
<form method="post" action="/scripts/modules/disc/add.php">
<input type="hidden" id="did" name="did" value="<!--WTD_DISC(DID)-->" />
<input type="hidden" id="rootid" name="rootid" value="<!--WTD_DISC(ROOTID)-->" />
<input type="hidden" id="msgid" name="msgid" value="<!--WTD_DISC(ID)-->" />
<input type="hidden" name="newsid" value="<!--WTD_DISC(NEWSID)-->" />
<input type="hidden" name="lastaction" value="newspage" />
<table>
<tr>
<td><label for="email">>E-mail:</label></td>
<td><input type="text" name="email" id="email" value="<!--WTD_USER(EMAIL)-->" /></td>
</tr><tr>
<td><label for="nickname">Přezdívka:</label></td>
<td><input type="text" name="nickname" id="nickname" value="<!--WTD_USER(NICKNAME)-->" /></td>
</tr><tr>
<td><label for="firstname">Jméno:</label></td>
<td><input type="text" name="firstname" id="firstname" value="<!--WTD_USER(FIRSTNAME)-->" /></td>
</tr><tr>
<td><label for="lastname">Příjmení:</label></td>
<td><input type="text" name="lastname" id="lastname" value="<!--WTD_USER(LASTNAME)-->" /></td>
</tr><tr>
<td><label for="name">Nadpis:</label></td>
<td><input type="text" size="60" name="name" id="name" value="<!--WTD_DISC(ADDNAME)-->"/></td>
</tr><tr>
<td colspan="2"><label for="body">Text:</label></td>
</tr><tr>
<td colspan="2"><textarea cols="50" rows="10" name="body" id="body"><!--WTD_DISC(ADDBODY)--></textarea></td>
</tr>
<tr>
<td><input type="reset" id="smazat" name="smazat" value="Smazat" /></td>
<td><input type="submit" id="send" name="send" value="Uložit" /></td>
</tr>
</table>
</form>

Zde poznamenejme, že řádek

<input type="hidden" name="lastaction" value="newspage" />

udává, jaká stránka se uživateli zobrazí po vložení nového příspěvku či reakce. Toto nastavení znamená, že se uživatel dostane zpět na stránku se článkem. Pokud chcete, aby se uživateli místo toho zobrazila stránka s celými texty příspěvků, nahraďte tento řádek řádkem

<input type="hidden" name="lastaction" value="all" />

Založte druhý fragment definující zobrazení vlákna příspěvků v této stránce. Do těla fragmentu vložte kód

<!--WTD_DISC(LIST)-->

Nyní založíme předlohu pro stránku pro vkládání příspěvků. V hlavní nabídce WebToDate použijte VzhledPředlohy, klepněte na ikonu složku vedle názvu Diskuze a použijte odkaz Přidat v pravém horním rohu. Formulář pro založení předlohy vyplňte dle následujícího vzoru. Jako šablonu použijte vhodnou stránku, která má oblast či oblasti, na které bude možné vložit fragment s formulářem založený v prvním kroku a fragment pro zobrazení vlákna příspěvků.

Soubor:Image022.jpg

Po uložení stránky klepněte na název stránky v seznamu předloh, v hlavní nabídce WebToDate přejděte na ObsahFragmenty a vložte oba fragmenty na vhodnou oblast v předloze pod stylem, který vkládá jen tělo fragmentu; tyto fragmenty přiřazujte vždy staticky. Pokud vhodný styl nemáte, založte ve WebToDate nový styl (Vzhled - Styly) a do jeho těla vložte kód

<!--WTD_F(BODY)-->

Stránku pak vygenerujte.

Nyní vytvoříme WebToDate styl pro formátování vlákna příspěvků. Založte nový styl v kategorii stylů Diskuze a pole stylu vyplňte následujícím způsobem.

Hlavička

<strong>Příspěvky v tomto vlákně</strong><br/>
<div class="descr90">

Tělo

<!--WTD_DISC(SPACER)-->
<a href="<!--WTD_DISC(URL)-->" title="<!--WTD_DISC(NICKNAME)-->, <!--WTD_DISC(DATE)-->"><!--WTD_DISC(NAME)--></a> <!--WTD_IF(ISACTIVE,"<strong>«</strong>")-->
<br />

Patička

</div>

Přejděte do nabídky modulu NastaveníPředpisy – název předpisu – Nový příspěvek. V poli Předloha vyberte stránku založenou v této kapitole, stejně tak zvolte výše vytvořený styl v poli Styl diskuze. V nastavení Třídit podle nastavte Strom vzestupně a formulář uložte.

Soubor:Image023.jpg


Vytvoření stránky pro seznam příspěvků

Nejprve vytvoříme fragment obsahující hlavní kód stránky zobrazující seznam příspěvků. Založte nový fragment ve vhodné kategorii a do těla vložte následující kód.

<div>
Příspěvky ke článku <strong><a href="<!--WTD_F(TITLELINK)-->"><!--WTD_F(TITLE)--></a></strong><br />
<div align="right"><a href="<!--WTD_DISC(ADDURL)-->">Přidat nový příspěvek</a></div>
</div>
<br/>
<div>
<!--WTD_DISC(LIST)-->
</div>

Klíčové slovo <!--WTD_DISC(LIST)--> zde reprezentuje místo, kde se bude zobrazovat seznam příspěvků, dále je uveden odkaz na článek, ke kterému se příspěvky vztahují.

Nyní založte novou předlohu pro tento typ stránky. Postupujte identicky jako v předchozí kapitole, na stránku vložte fragment založený v předchozím kroku a stránku vygenerujte.

Dále založíme dva WebToDate styly – jeden styl zobrazující hierarchicky celý strom diskuze ke článku, druhý styl pro zobrazení nových či vybraných příspěvků lineárně podle času..

V definici prvního stylu pro celý strom diskuze použijte následující kódy.

Hlavička

<div><ul  class="disc1">

Tělo

<li class="disc1"><div class="disc_lhead"><!--WTD_DISC(NAME)--></div>
Autor: <!--WTD_DISC(NICKNAME)--> | přidáno: <!--WTD_DISC(TIME)-->, <!--WTD_DISC(DATE)-->
<!--WTD_DISC(BODY)-->
<div align="right"><a href="add.php?msgid=<!--WTD_DISC(ID)-->&newsid=<!--WTD_F(ID)-->">Odpovědět</a>
</li>

Patička

</ul></div>

Začátek sekce

<li class="disc1"><ul class="disc1">

Konec sekce

</ul></li>

Aby se výsledek zobrazil zhruba tak, jak je uvedeno na otiscích obrazovky v kapitole Cílová funkcionalita, je třeba definovat vhodné CSS styly, pro tyto demonstrační účely bylo použito následující:

td.messageHead {color:white;background:#339900;font-weight:bold;}
td.messageCol {border-right: 1px solid silver;}
.disc_lhead {width:100%;background:#efefef;font-weight:bold;}
ul.disc1 {margin-top:0px; border:1px solid #aa66aa; padding:2px;margin-left:8px;}
li.disc1 {list-style-type:none;font-size:xx-small;}


V definici druhého stylu pro zobrazení nových nebo vybraných příspěvků použijte následující kódy.

Hlavička

<div class="descr80">
<!--WTD_DISC(LISTNAVIG)--><br />

Tělo

<div class="disc_lhead"><a href="<!--WTD_DISC(URL)-->"><!--WTD_DISC(NAME)--></a>
(<!--WTD_DISC(DATE)--> <!--WTD_DISC(TIME)-->), <em><!--WTD_DISC(NICKNAME)--></em></div>
<!--WTD_DISC(BODY)-->
<div align="right"><a href="/scripts/modules/disc/add.php?msgid=<!--WTD_DISC(ID)-->&newsid=<!--WTD_F(ID)-->">Odpovědět</a></div>
<br />

Patička

</div>

Nyní je třeba v modulu provést příslušné nastavení pro stránku zobrazující seznam položek v diskuzi. Přejděte do nabídky modulu NastaveníPředpisy – název předpisu – Seznam. Formulář vyplňte dle následujícího otisku obrazovky.

Soubor:Image024.jpg

V poli Předloha zde zvolte předlohu založenou v této kapitole, Styl diskuze pro všechny příspěvky je styl založený v této kapitole jako první, Styl diskuze pro vybrané nebo nové příspěvky je styl založený jako druhý. Prostřední styl ve formuláři je pro tyto účely irelevantní a můžete jej zvolit libovolně.

Nastavení zobrazování stromu příspěvků ve stránkách se zprávou

Celý výpis komentárů ve stránce se zprávou je formátován jedním WebToDate stylem. Tento styl opět založte v kategorii Diskuze a vyplňte jej s využitím následujících kódů.

Hlavička

<form action="/scripts/modules/disc/default.php" method="get">
<input type="hidden" name="did" value="<!--WTD_DISC(DID)-->" />
<input type="hidden" name="newsid" value="<!--WTD_DISC(NEWSID)-->" />
<input type="hidden" name="lastvisit" value="<!--WTD_DISC(LASTVISIT)-->" />
<input type="hidden" name="lastaction" value="<!--WTD_DISC(LASTACTION)-->" />
<table border="0" cellpadding="2" width="600" cellspacing="0" class="dd80" >
<tr><td class="messageHead">Příspěvků celkem <!--WTD_DISC(TNUMOFITEMS)-->, z toho <!--WTD_DISC(TNUMOFNEWITEMS)--> nových</td></tr>
<tr><td>

Tělo

<input type="checkbox" name="select[]" value="<!--WTD_DISC(ID)-->" <!--WTD_DISC(CHECKED)-->> 
<!--WTD_DISC(SPACER)--><!--WTD_DISC(NAME)-->
(<!--WTD_DISC(DATE)--> <!--WTD_DISC(TIME)-->) 
<strong>[<!--WTD_DISC(NICKNAME)-->]</strong><br />

Patička

</td></tr>
<tr><td align="center">
<input class="btn ball" type="submit" name="event_all" value="Všechny" />
<input class="btn ball" type="submit" name="event_new" value="Nové" />
<input class="btn ball" type="submit" name="event_selected" value="Vybrané" />
<input class="btn" type="submit" name="event_add" value="Přidat příspěvek" />
</td></tr>
</table>
</form>

Po uložení stylu přejděte do nabídky modulu NastaveníPředpisy – název předpisu – Zpráva. Jako styl diskuze zvolte právě založený styl a formulář uložte.

Soubor:Image025.jpg

Testování výsledku

Aby se zobrazovaly příspěvky ve stránce se zprávou, je třeba do předlohy či předloh pro zprávy doplnit klíčové slovo pro umístění seznamu příspěvků. Doporučená technika je opět vložení fragmentu na stránku. Založte nový fragment, do těla vložte následující kód.

<div>
<!--WTD_DISC(LIST)-->
</div>

Vyberte odpovídající předlohu pro zprávy a na vhodnou oblast vložte výše založený fragment (staticky) pod stylem vkládajícím pouze tělo fragmentu a předlohu vygenerujte. Celá operace je naznačená na následujícím otisku obrazovky.

Soubor:Image026.jpg

Druhou podmínkou pro zobrazování diskuze ve stránce se článkem je správná instalace extenze, jak je uvedeno v kapitole Umístění extenzí.

Při ověřování funkčnosti postupujte tak, že jako výchozí stránku zobrazte nějakou zprávu využívající předlohu, ve které je klíčové slovo pro diskuze (/scripts/detail.php?id=xxx) a použijte tlačítka, která jsou součástí formuláře (a jsou definovaná v patičce stylu založeném v posledním kroku).