function getParams($data) { // get params definitions $params = new JParameter($data); if (WF_JOOMLA15) { $xml = JPATH_PLUGINS . DS . 'system' . DS . 'jcemediabox.xml'; $params->loadSetupFile($xml); return $params->getParams(); } else { $xml = JPATH_PLUGINS . DS . 'system' . DS . 'jcemediabox' . DS . 'jcemediabox.xml'; $parser = JFactory::getXMLParser('Simple'); if ($parser->loadFile($xml)) { if ($fieldsets = $parser->document->getElementByPath('config')->getElementByPath('fields')->children()) { foreach ($fieldsets as $fieldset) { $params->setXML($fieldset); } } } $groups = array(); $array = array(); foreach ($params->getGroups() as $group => $num) { $groups[] = $params->getParams('params', $group); } foreach ($groups as $group) { $array = array_merge($array, $group); } return $array; } }
/** * Test the JParameter::getGroups method. * * @return void * * @since 11.1 */ public function testGetGroups() { $p = new JParameter('{"foo":"bar"}', __DIR__ . '/jparameter.xml'); $this->assertThat($p->getGroups(), $this->equalTo(array('basic' => 1, 'advanced' => 2))); }