/** * * Method to display list of export types */ function display() { //needed to make display function correctly JHTML::_('stylesheet', 'admin.css', 'media/com_tienda/css/'); JHTML::_('script', 'tienda.js', 'media/com_tienda/js/'); Tienda::loadJQuery(); require_once JPATH_SITE . '/libraries/joomla/html/html/select.php'; JToolBarHelper::title(JText::_('COM_TIENDA_GENERIC_EXPORT')); $bar = JToolBar::getInstance('toolbar'); $btnhtml = '<a class="toolbar" onclick="javascript: document.adminForm.submit();" href="#">'; $btnhtml .= '<span title="Submit" class="icon-32-forward">'; $btnhtml .= '</span>' . JText::_('COM_TIENDA_SUBMIT') . '</a>'; $bar->appendButton('Custom', $btnhtml); //read the type files inside the /plugins/tienda/genericexporter/models jimport('joomla.filesystem.file'); if (version_compare(JVERSION, '1.6.0', 'ge')) { // Joomla! 1.6+ code here $folder = JPATH_SITE . '/plugins/tienda/genericexporter/genericexporter/models'; } else { // Joomla! 1.5 code here $folder = JPATH_SITE . '/plugins/tienda/genericexporter/models'; } if (JFolder::exists($folder)) { $extensions = array('php'); $exclusions = array('_base.php'); $files = JFolder::files($folder); foreach ($files as $file) { $namebits = explode('.', $file); $extension = $namebits[count($namebits) - 1]; if (in_array($extension, $extensions) && !in_array($file, $exclusions)) { $classname = 'TiendaGenericExporterModel' . ucfirst($namebits[0]); if (version_compare(JVERSION, '1.6.0', 'ge')) { // Joomla! 1.6+ code here Tienda::load($classname, 'genericexporter.genericexporter.models.' . $namebits[0], array('site' => 'site', 'type' => 'plugins', 'ext' => 'tienda')); } else { // Joomla! 1.5 code here Tienda::load($classname, 'genericexporter.models.' . $namebits[0], array('site' => 'site', 'type' => 'plugins', 'ext' => 'tienda')); } if (class_exists($classname)) { $exporter = new $classname(); $models[] = array($exporter->getModelClass(), $exporter->getName()); } } } } if (version_compare(JVERSION, '1.6.0', 'ge')) { // Joomla! 1.6+ code here $folderTypes = JPATH_SITE . '/plugins/tienda/genericexporter/genericexporter/types'; } else { // Joomla! 1.5 code here $folderTypes = JPATH_SITE . '/plugins/tienda/genericexporter/types'; } if (JFolder::exists($folderTypes)) { $extensions = array('php'); $exclusions = array('_base.php'); $typeFiles = JFolder::files($folderTypes); foreach ($typeFiles as $typeFile) { $namebits = explode('.', $typeFile); $extension = $namebits[count($namebits) - 1]; if (in_array($extension, $extensions) && !in_array($typeFile, $exclusions)) { $classname = 'TiendaGenericExporterType' . $namebits[0]; if (version_compare(JVERSION, '1.6.0', 'ge')) { // Joomla! 1.6+ code here Tienda::load($classname, 'genericexporter.genericexporter.types.' . strtolower($namebits[0]), array('site' => 'site', 'type' => 'plugins', 'ext' => 'tienda')); } else { // Joomla! 1.5 code here Tienda::load($classname, 'genericexporter.types.' . strtolower($namebits[0]), array('site' => 'site', 'type' => 'plugins', 'ext' => 'tienda')); } if (class_exists($classname)) { $exporterType = new $classname(); $types[] = $exporterType->getFormat(); } } } } sort($models); sort($types); $vars = new JObject(); $vars->models = $models; $vars->types = $types; $html = $this->_getLayout('default', $vars); return $html; }