Bonjour,
J'ai remarqué qu'on pouvait compléter l'affichage d'un article avec un onglet supplémentaire en développant un plugin (https://docs.joomla.org/Adding_custo...icle_component).
L'idée est donc de faire la même chose pour mon composant.
Coté champ en plus la table dans attribs c'est fait
Coté affichage de l'onglet c'est bon + affichage des champs + sauvegarde....
Il me reste un os la lectre de ces données attrbs en vue de les afficher.
Dans mon fichier model.event.php j'ai
ce qui me permet d'avoir les nouveaux champs en plus...
Dans mon fichier model.event.php j'ai modifié GetItem pour charger ma donnée attribs
Sauf que si je fais un print_r de ma donnée form je retrouve bien : mes données hors le champ attribs, mes champs normaux, mes champs injectés va le plugin qui vont utiliser attribs.Mais je ne retrouve pas ma données attribs :/
L'un de vous a-t-il déjà mis en oeuvre cela ? car cela ouvre de belle perspective sur le développement d'un composant.
Manu
J'ai remarqué qu'on pouvait compléter l'affichage d'un article avec un onglet supplémentaire en développant un plugin (https://docs.joomla.org/Adding_custo...icle_component).
L'idée est donc de faire la même chose pour mon composant.
Coté champ en plus la table dans attribs c'est fait
Coté affichage de l'onglet c'est bon + affichage des champs + sauvegarde....
Il me reste un os la lectre de ces données attrbs en vue de les afficher.
Dans mon fichier model.event.php j'ai
Code PHP:
public function getForm($data = array(), $loadData = true)
{
// Get the form.
$form = $this->loadForm('com_allevents.event', 'event', array(
'control' => 'jform',
'load_data' => $loadData
));
// Get the dispatcher.
JPluginHelper::importPlugin('allevents');
$dispatcher = JEventDispatcher::getInstance();
// Trigger the form preparation event.
$dispatcher->trigger('onAllEventsPrepareForm', array($form, $data));
if ($form->getFieldAttribute('lastmod', 'default') == 'NOW')
{
$form->setFieldAttribute('lastmod', 'default', date('Y-m-d H:i:s'));
}
if (empty($form))
{
return false;
}
return $form;
}
Dans mon fichier model.event.php j'ai modifié GetItem pour charger ma donnée attribs
Code PHP:
public function getItem($pk = null)
{
...
// Convert the params field to an array.
$registry = new Registry;
$registry->loadString($item->attribs);
$item->attribs = $registry->toArray();
}
return $item;
}
L'un de vous a-t-il déjà mis en oeuvre cela ? car cela ouvre de belle perspective sur le développement d'un composant.
Manu
Commentaire