I'm beginner in PHP and developing my own component for Joomla. I've replaced all the classes in HelloWorld example but yet I haven't change the names of views. If I try to open the specific message/record in the backend I get the error:
Fatal error: Call to a member function getFieldset() on a non-object in administrator/components/com_mycom/views/helloworld/tmpl/edit.php on line 12
Line 12: <?php foreach ($this->form->getFieldset('details') as $field) : ?>
The code of my administrator/components/com_mycom/models/fields/mycom.php:
<?php
defined('_JEXEC') or die;
jimport('joomla.form.helper');
JFormHelper::loadFieldClass('list');
class JFormFieldHelloWorld extends JFormFieldList
{
protected $type = 'Mycom';
protected function getOptions()
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('h.id, h.header, h.parent')
->from('#__pages as h')
->select('c.title as category')
->leftJoin('#__categories AS c ON c.id = h.parent');
$db->setQuery($query);
$messages = $db->loadObjectList();
$options = array();
if ($messages)
{
foreach ($messages as $message)
{
$options[] = JHtml::_('select.option', $message->id,
$message->header . ($message->parent ? ' (' . $message->category . ')' : '')
);
}
}
$options = array_merge(parent::getOptions(), $options);
return $options;
}
}
Joomla 3.4