primo commit

This commit is contained in:
2024-12-17 17:34:10 +01:00
commit e650f8df99
16435 changed files with 2451012 additions and 0 deletions

View File

@ -0,0 +1,41 @@
<?php
/**
* @package Joomla.API
* @subpackage com_installer
*
* @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace Joomla\Component\Installer\Api\Controller;
use Joomla\CMS\MVC\Controller\ApiController;
// phpcs:disable PSR1.Files.SideEffects
\defined('_JEXEC') or die;
// phpcs:enable PSR1.Files.SideEffects
/**
* The manage controller
*
* @since 5.2.0
*/
class LanguagesController extends ApiController
{
/**
* The content type of the item.
*
* @var string
* @since 5.2.0
*/
protected $contentType = 'languages';
/**
* The default view for the display method.
*
* @var string
* @since 5.2.0
*/
protected $default_view = 'languages';
}

View File

@ -0,0 +1,71 @@
<?php
/**
* @package Joomla.API
* @subpackage com_installer
*
* @copyright (C) 2020 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace Joomla\Component\Installer\Api\Controller;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Controller\ApiController;
use Tobscure\JsonApi\Exception\InvalidParameterException;
// phpcs:disable PSR1.Files.SideEffects
\defined('_JEXEC') or die;
// phpcs:enable PSR1.Files.SideEffects
/**
* The manage controller
*
* @since 4.0.0
*/
class ManageController extends ApiController
{
/**
* The content type of the item.
*
* @var string
* @since 4.0.0
*/
protected $contentType = 'manage';
/**
* The default view for the display method.
*
* @var string
* @since 4.0.0
*/
protected $default_view = 'manage';
/**
* Extension list view amended to add filtering of data
*
* @return static A BaseController object to support chaining.
*
* @since 4.0.0
*/
public function displayList()
{
$requestBool = $this->input->get('core', $this->input->get->get('core'));
if (!\is_null($requestBool) && $requestBool !== 'true' && $requestBool !== 'false') {
// Send the error response
$error = Text::sprintf('JLIB_FORM_VALIDATE_FIELD_INVALID', 'core');
throw new InvalidParameterException($error, 400, null, 'core');
}
if (!\is_null($requestBool)) {
$this->modelState->set('filter.core', ($requestBool === 'true') ? '1' : '0');
}
$this->modelState->set('filter.status', $this->input->get('status', $this->input->get->get('status', null, 'INT'), 'INT'));
$this->modelState->set('filter.type', $this->input->get('type', $this->input->get->get('type', null, 'STRING'), 'STRING'));
return parent::displayList();
}
}

View File

@ -0,0 +1,57 @@
<?php
/**
* @package Joomla.API
* @subpackage com_installer
*
* @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace Joomla\Component\Installer\Api\View\Languages;
use Joomla\CMS\MVC\View\JsonApiView as BaseApiView;
// phpcs:disable PSR1.Files.SideEffects
\defined('_JEXEC') or die;
// phpcs:enable PSR1.Files.SideEffects
/**
* The languages view
*
* @since 5.2.0
*/
class JsonapiView extends BaseApiView
{
/**
* The fields to render item in the documents
*
* @var array
* @since 5.2.0
*/
protected $fieldsToRenderList = [
'name',
'element',
'version',
'type',
'detailsurl',
];
protected $i = 0;
/**
* Prepare item before render.
*
* @param object $item The model item
*
* @return object
*
* @since 5.2.0
*/
protected function prepareItem($item)
{
$item->id = ++$this->i;
return parent::prepareItem($item);
}
}

View File

@ -0,0 +1,58 @@
<?php
/**
* @package Joomla.API
* @subpackage com_installer
*
* @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace Joomla\Component\Installer\Api\View\Manage;
use Joomla\CMS\MVC\View\JsonApiView as BaseApiView;
// phpcs:disable PSR1.Files.SideEffects
\defined('_JEXEC') or die;
// phpcs:enable PSR1.Files.SideEffects
/**
* The manage view
*
* @since 4.0.0
*/
class JsonapiView extends BaseApiView
{
/**
* The fields to render item in the documents
*
* @var array
* @since 4.0.0
*/
protected $fieldsToRenderList = [
'id',
'name',
'type',
'version',
'folder',
'status',
'client_id',
];
/**
* Prepare item before render.
*
* @param object $item The model item
*
* @return object
*
* @since 4.0.0
*/
protected function prepareItem($item)
{
$item->id = $item->extension_id;
unset($item->extension_id);
return $item;
}
}