Html helper

Html helper pomáhá generovat html výstup, zvláště tam, kde se častokrát opakujte. Html helper je ve view přístupen v proměnné $html. Níže naleznete výčet metod s komentáři.

Zpracování url

Pokud se v metodách používá url, pak je vždy zpracována následujícím způsobem: Pokud $url začíná www., doplní se před ní automaticky protokol http://. Pokud url nezačíná ani www., ani http://, pak ji automaticky zpracuje metoda Controller::ur­l().

public function link($url, $text = null, $attrs = array(), $escape = true)

Metoda link() vygeneruje html odkaz, který bude směřovat na $url, s textem $text. Pokud bude $text prázdný, pak se použije $url. Pomocí $attrs můžete nastavit html atributy. Pokud $escape je nastavena na false, pak se $text neescapuje.

{$html->link('<:url:>/rss', 'Sledovat stránku pomocí rss', array('class' => 'rss-label'))}

Metoda button()

public function button($url, $text, $attrs = array(), $escape = false)

Metoda button funguje stejně jako metoda link, akorát nevytváří odkaz, ale formulář s tlačítkem.

{$html->button('/posts/delete/15', 'Smazat')}

Metoda img()

public function img($url, $attrs = array())

Metoda img vytvoří html tag img. Url je standardně zpracováno. Můžete také definovat atributy pomocí druhého argumentu.

{$html->img('/design/imgs/logo.png')}

Metody css(), js(), rss(), icon()encoding()

public function css($url, $media = 'screen', $timestamp = true)
public function js($url, $timestamp = true)
public function rss($url, $title = 'RSS')
public function icon($url)
public function encoding($charset = 'UTF-8')

Tato skupina metod slouží k vytváření html hlavička, odkazů na jednotlivé css, js soubory, na rss kanály a informace o kódovaní. Použití je dle argumentů velmi jednoduché.

<head>
    {$html->encoding()}

    {$html->icon('design/imgs/favicon.ico')}
    {$html->css('design/hrach-reset.css')}
    {$html->css('design/style.css')}

    {$html->js('design/js/jquery.js')}
</head>

Timestamp pro js a css

U metod js a css existuje ještě nepovinný parametr $timestamp s výchozí hodnotou true. Pokud je tato volba aktivní, pak se automaticky do url na daný soubor přidá ?xxx, kde místo xxx je timestamp poslední změny souboru. Tohoto se využívá pro lepší kontrolu nad cache prohlížeče. Když uděláte nějakou změnu – změní se url a prohlížeč nový styl automaticky načte znovu místo z cache.

Metoda analytics()

Vygeneruje měřící kód pro Google Analytics. Jako jediná parametr se předává vaše analytics id.

{$html->analytics('UA-7802329-3')}

Metoda paginator()

Díky této metodě můžete jednoduše vygenerovat stránkovací tlačítka. Metoda má jediný povinný parametr – objekt Paginator. Seznam parametrů:

  1. objekt Paginatoru
  2. jméno url proměnné s číslem stránky
  3. počet obklopujících tlačítkem aktuální stránku každým směrem
  4. popisek pro stránku zpět
  5. popisek pro stránku vpřed
{$html->paginator($query->paginator, 'page', 2, 'Předchozí', 'Další')}

Html výstup je velmi jednoduchý, lehce skinovatelný pomocí css. Ukázku nastylování najdete ve složce /resources/paginator/ v distribučním archivu.