Server : LiteSpeed System : Linux server 3.10.0-1160.90.1.el7.x86_64 #1 SMP Thu May 4 15:21:22 UTC 2023 x86_64 User : alsaif ( 1057) PHP Version : 7.4.33 Disable Function : show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/alsaif/public_html/administrator/components/com_convertforms/views/addons/ |
<?php
/**
* @package Convert Forms
* @version 4.3.3 Pro
*
* @author Tassos Marinos <info@tassos.gr>
* @link https://www.tassos.gr
* @copyright Copyright © 2023 Tassos All Rights Reserved
* @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
*/
defined('_JEXEC') or die('Restricted access');
// import Joomla view library
jimport('joomla.application.component.view');
/**
* Addons View
*/
class ConvertFormsViewAddons extends JViewLegacy
{
/**
* Items view display method
*
* @param string $tpl The name of the template file to parse; automatically searches through the template paths.
*
* @return mixed A string if successful, otherwise a JError object.
*/
function display($tpl = null)
{
// Access check.
ConvertForms\Helper::authorise('convertforms.addons.manage', true);
$this->config = \Joomla\CMS\Component\ComponentHelper::getParams('com_convertforms');
ConvertForms\Helper::addSubmenu('addons');
$this->sidebar = JHtmlSidebar::render();
$this->availableAddons = $this->getAddons();
// Check for errors.
if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors')))
{
JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error');
return false;
}
// Set the toolbar
$this->addToolBar();
// Display the template
parent::display($tpl);
}
/**
* Get list of all available addons
*
* @return array
*/
function getAddons()
{
// Load XML file
$xmlfile = JPATH_COMPONENT_ADMINISTRATOR . '/ConvertForms/xml/addons.xml';
if (!JFile::exists($xmlfile))
{
return;
}
if (!$xmlItems = simplexml_load_file($xmlfile))
{
return;
}
$addons = [];
foreach ($xmlItems as $key => $item)
{
$item = (array) $item;
$item = new JRegistry($item["@attributes"]);
$extensionType = $item->get("extension_type", "plugin");
$extensionFolder = $item->get("extension_folder", "convertforms");
$extensionName = $item->get("name");
$extensionID = NRFramework\Extension::getID($extensionName, $extensionType, $extensionFolder);
$backEndURL = "";
if ($extensionID)
{
if ($extensionType == "plugin")
{
$backEndURL = "index.php?option=com_plugins&task=plugin.edit&extension_id=" . $extensionID;
}
}
$url = $item->get("customurl") ?: NRFramework\Functions::getUTMURL($item->get("url", "https://www.tassos.gr/joomla-extensions/convert-forms/"));
$obj = array(
"name" => $extensionName,
"label" => $item->get("label"),
"description" => $item->get("description"),
"image" => $item->get("image"),
"url" => $url,
"customlabel" => $item->get("customlabel"),
"docalias" => $item->get("docalias"),
"extensionid" => $extensionID,
"backendurl" => JURI::base() . $backEndURL,
"proonly" => $item->get("proonly", true),
"comingsoon" => $item->get("comingsoon", false)
);
$addons[] = $obj;
}
asort($addons);
return $addons;
}
/**
* Add Toolbar to layout
*/
protected function addToolBar()
{
$canDo = ConvertForms\Helper::getActions();
JToolBarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_ADDONS'), "puzzle");
if ($canDo->get('core.admin'))
{
JToolbarHelper::preferences('com_convertforms');
}
JToolbarHelper::help("Help", false, "http://www.tassos.gr/joomla-extensions/convert-forms/docs");
}
}