KT CRUD Admin Column

Komponenta je určena pro definování sloupců pří výpisu a prezentaci vlastních záznamů pro KT CRUD Admin List. Komponenta tvoří kolekci sloupců, která je předávána / definována právě danému listu.

Logika práce s objektem

  1. Založíme a definujeme daný sloupec, který chceme v našem listu mít.
  2. Listu nastavíme potřebný typ, podle kterého se má chovat.
  3. Nastavíme / Vypneme potřebné parametry pro sloupec.

Inicializace modelu

Pro správné použití je potřeba mít vlastní KT CRUD Model, který jsme si definovali, a je napojený na vlastní tabulku v naší databázi. Pro náš příklad budeme využívat KT Catalog Model Base, který je obecně popisován v dokumentaci jako základní kostra.

KT_FW_Catalog_Model je pomyslný model, který není automaticky dostupný. Je nutné si definovat vlastní model vycházející z KT CRUD nebo KT Catalog Model Base.

__construct( $className )

  • $className – jedná se o název modelu vycházející z KT CRUD, který budeme obsluhovat.

Sada getterů

getName()

Vrátí název sloupce, který je využíván jako identifikátor sloupce v kolekci – název musí odpovídat také názvu sloupci v DB.

getLabel()

Vrátí popisek / titulek sloupce, který se zobrazuje v hlavičce tabulky vypisující záznamy.

getPosition()

Vrátí pozici (pořadí) – celé číslo – na které se má sloupec v rámci kolekce vypsat.

getCssClass()

Vrátí nastavenou CSS třídu pro tag tabulky <td>, kterou je možné sloupci nastavit pro speciální stylování.

Sada setterů

setName($name)

Nastaví název sloupce, který je schodný s názvem sloupce v naší tabulce v databázi.

setLabel($label)

Nastaví titulek sloupce, který je zobrazen v hlavičce tabulky vypisující záznamy.

setPosition($position)

Nastaví číslo pozice, na které se má sloupec v rámci kolekce zobrazovat. Setter provádí validaci na celé číslo typu int.

setType($type)

Nastaví typ sloupce – tedy vlastnost, která určuje, jak má být vykreslená hodnota sloupce v databázi. Funkce přijme pouze předem definované typy, které jsou definované jako konstanty komponenty.

  1. TEXT_TYPE – S obsahem sloupce se nic neprovádí a vypíše se tak, jak je uložen v databázi.
  2. EDIT_LINK_TYPE – Z obsahu sloupce se stane odkaz vedoucí na editaci záznamu. Na hover také přibude odkaz „zobrazit“.
  3. SWITCH_BUTTON_TYPE – Místo hodnoty 1 / 0 zobrazí switch button, který pomocí Ajaxu ukládá nový stav rovnou na změnu tlačítka.
  4. IMAGE_TYPE – Pokud je hodnota ID attachmentu v rámci WordPressu, zobrazí rovnou obrázek.
  5. CUSTOM_TYPE – Pokud nevyhovuje ani jeden z typu, je možné definovat WP filter, který se bude volat při vykreslování hodnoty.

Jako defaultní hodnota je nastaven typ – TEXT_TYPE. Tuto hodnotu tak není potřeba nastavovat ručně.

 Pokud bude do parametru předána jiná hodnota, dojde k vyhození exception InvalidArgumentException.

setPrefix($prefix)

Pokud potřebujeme před každou hodnotou záznamu ve sloupci dodat nějaký pevný text, můžeme použít parametr prefix.

 setSuffix($unit)

Pokud potřebujeme za každou hodnotou záznamu ve sloupci dodat nějaký pevný text, můžeme použít parametr suffix.

 setCustomCallbackFunction ($customCallbackFunction, $selfCallback = false)

Nastaví, jaký filtr / funkce, se má volat v případě vykreslení daného sloupce.

  1. $customCallbackFunction – Jméno filtru, který se má volat při každém vykreslení hodnoty. Jako parametr je do filtru předávána hodnota sloupce v databázi.
  2. $selfCallback – Říká, zda má callback funkci hledat na samotném modelu jako veřejnou funkci.

setDeletable($deleteAble = true)

Nastaví pro daný sloupec možnost smazání záznamu pomocí Ajax technologie. Obvykle se používá u sloupce typu EDIT_LINK_TYPE.

 setCssClass($cssClass)

Nastaví css třídu HTML tagu <td>, který obaluje hodnotu sloupce.

 

Obecné funkce komponenty

getCellContent( $item )

Vrátí HTML obsah pro jednu buňku ve sloupci. $item je proměnná modelového typu, kterou jsme si určili v inicializaci objektu.

 Příklad použití komponenty

Obyvkle se definice sloupců používá pro KT CRUD Admin List. Více se o možnostech komponent dočtete v tutoriálu 4. Díly metaboxy.



Odebírejte novinky z FW

Sledujte nás!

Tyto stránky využívají Cookies. Používáním těchto stránek vyjadřujete souhlas s používáním Cookies.Zjistit víceOK, rozumím