Špeciálne parametre rozšírení pre Joomla! 1.5.x PDF Tlačiť E-mail
Rady a návody - Vývoj rozšírení
Napísal Karol Čejka   
Piatok, 26 Jún 2009 00:00
Pri vývoji komponent pre Joomla! 1.5.x časom každý vývojár narazí na to, že potrebuje špeciálny typ pre parametre rozšírenia.
Joomla! v tejto oblasti poskytuje výbornú podporu, a nič vám nebráni v tom, aby ste si vlastný typ parametru vytvorili.

Pre ukážku založenia nového typu je možné upraviť modul mod_search.
V ukážke upravíme definíciu vlastností modulu, vytvoríme adresár špeciálnych typov a nakoniec súbor (triedu) špeciálneho typu.

Vytvorenie triedy špeciálneho parametru

Vytvorte súbor /modules/mod_search/elements/mojspecialnyparameter.php

defined('_JEXEC') or die( 'Restricted access' );

class JElementMojSpecialnyParameter extends JElement{

var $_name = 'mojspecialnyparameter';

function fetchElement($name, $value, &$node, $control_name) {
$db = &JFactory::getDBO();
$query = 'SELECT id, name FROM `#__menu` ORDER BY name';
$db->setQuery($query);
$options = $db->loadObjectList();
array_unshift($options,
JHTML::_('select.option', '0', '- '.JText::_('Vyberte polozku menu').' -', 'id', 'name'));

return JHTML::_('select.genericlist', $options, ''.$control_name.'['.$name.']',
'class="inputbox"', 'id', 'name', $value, $control_name.$name );
}
}
?>

Class si môžete pomenovať ľubovoľne, mal by to ale byť jedinečný názov - predídete tým rôznym problémom.
Premenná $_name predstavuje ako sa typ parametru bude identifikovať. Tu zadajte názov tak, ako ho chcete používať v XML parametrov.
Funkcia fetchElement slúži ako vykresľovacia funkcia. To, čo táto funkcia vráti na výstupe je len na vás.

V tomto prípade sa z databáze vyberá zoznam všetkých menu položiek zotriedených podľa názvu, a kľúčom je ID záznamu databáze.

Doplnenie súboru vlastností

Otvorte súbor /modules/mod_search/mod_search.xml, a dopľnte ho o následujúce riadky (hrubý text):
addpath="/modules/mod_search/elements">

...









V tagu params pridaním parametru addpath oznámite, kde sa nachádzajú vaše špeciálne typy parametrov.
Prvý pridaný riadok predstavuje vodorovnú čiaru.
Druhý pridaný riadok je náš špecálny parameter.

Po uložení súborov uvidíte v parametroch modulu okamžite zmenu. Pribudne vodorovná čiara a nový parameter s výberom položiek ponúk.
Posledná úprava Piatok, 26 Jún 2009 18:32