mirror of
https://github.com/joomla-extensions/patchtester.git
synced 2024-12-22 19:09:00 +00:00
Refactor to use Joomla 4 structure step 1 WIP
Signed-off-by: Roland Dalmulder <contact@rolandd.com>
This commit is contained in:
parent
cfcfdf440d
commit
63510fe4f9
@ -1,36 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Patch testing component for the Joomla! CMS
|
|
||||||
*
|
|
||||||
* @copyright Copyright (C) 2011 - 2012 Ian MacLennan, Copyright (C) 2013 - 2018 Open Source Matters, Inc. All rights reserved.
|
|
||||||
* @license GNU General Public License version 2 or later
|
|
||||||
*/
|
|
||||||
|
|
||||||
\defined('_JEXEC') or die;
|
|
||||||
use Joomla\CMS\Factory;
|
|
||||||
use Joomla\CMS\Language\Text;
|
|
||||||
if (!Factory::getUser()->authorise('core.manage', 'com_patchtester')) {
|
|
||||||
throw new RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Application reference
|
|
||||||
$app = Factory::getApplication();
|
|
||||||
// Import our Composer autoloader to load the component classes
|
|
||||||
require_once __DIR__ . '/vendor/autoload.php';
|
|
||||||
// Build the controller class name based on task
|
|
||||||
$task = $app->input->getCmd('task', 'display');
|
|
||||||
// If $task is an empty string, apply our default since JInput might not
|
|
||||||
if ($task === '') {
|
|
||||||
$task = 'display';
|
|
||||||
}
|
|
||||||
|
|
||||||
$class = '\\PatchTester\\Controller\\' . ucfirst(strtolower($task)) . 'Controller';
|
|
||||||
if (!class_exists($class)) {
|
|
||||||
throw new InvalidArgumentException(Text::sprintf('JLIB_APPLICATION_ERROR_INVALID_CONTROLLER_CLASS', $class), 404);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Instantiate and execute the controller
|
|
||||||
/** @var \PatchTester\Controller\AbstractController $controller */
|
|
||||||
$controller = new $class($app);
|
|
||||||
$controller->execute();
|
|
@ -9,6 +9,7 @@
|
|||||||
<authorUrl>https://www.joomla.org</authorUrl>
|
<authorUrl>https://www.joomla.org</authorUrl>
|
||||||
<version>4.2.2</version>
|
<version>4.2.2</version>
|
||||||
<description>COM_PATCHTESTER_XML_DESCRIPTION</description>
|
<description>COM_PATCHTESTER_XML_DESCRIPTION</description>
|
||||||
|
<namespace path="src">Joomla\Component\Patchtester</namespace>
|
||||||
<scriptfile>script.php</scriptfile>
|
<scriptfile>script.php</scriptfile>
|
||||||
<install>
|
<install>
|
||||||
<sql>
|
<sql>
|
||||||
@ -38,7 +39,7 @@
|
|||||||
<folder>js</folder>
|
<folder>js</folder>
|
||||||
</media>
|
</media>
|
||||||
<administration>
|
<administration>
|
||||||
<menu img="../media/com_patchtester/images/icon-16-patchtester.png">com_patchtester</menu>
|
<menu img="../media/com_patchtester/images/icon-16-patchtester.png" view="pulls">com_patchtester</menu>
|
||||||
<files folder="admin">
|
<files folder="admin">
|
||||||
<folder>backups</folder>
|
<folder>backups</folder>
|
||||||
<folder>forms</folder>
|
<folder>forms</folder>
|
||||||
@ -48,7 +49,6 @@
|
|||||||
<folder>vendor</folder>
|
<folder>vendor</folder>
|
||||||
<filename>access.xml</filename>
|
<filename>access.xml</filename>
|
||||||
<filename>config.xml</filename>
|
<filename>config.xml</filename>
|
||||||
<filename>patchtester.php</filename>
|
|
||||||
</files>
|
</files>
|
||||||
</administration>
|
</administration>
|
||||||
<updateservers>
|
<updateservers>
|
||||||
|
@ -0,0 +1,54 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Patch testing component for the Joomla! CMS
|
||||||
|
*
|
||||||
|
* @copyright Copyright (C) 2011 - 2012 Ian MacLennan, Copyright (C) 2013 - 2018 Open Source Matters, Inc. All rights reserved.
|
||||||
|
* @license GNU General Public License version 2 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('_JEXEC') or die;
|
||||||
|
|
||||||
|
use Joomla\CMS\Dispatcher\ComponentDispatcherFactoryInterface;
|
||||||
|
use Joomla\CMS\Extension\ComponentInterface;
|
||||||
|
use Joomla\CMS\Extension\Service\Provider\ComponentDispatcherFactory;
|
||||||
|
use Joomla\CMS\Extension\Service\Provider\MVCFactory;
|
||||||
|
use Joomla\CMS\MVC\Factory\MVCFactoryInterface;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Extension\PatchtesterComponent;
|
||||||
|
use Joomla\DI\Container;
|
||||||
|
use Joomla\DI\ServiceProviderInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The patch tester service provider.
|
||||||
|
*
|
||||||
|
* @since 4.0.0
|
||||||
|
*/
|
||||||
|
return new class () implements ServiceProviderInterface {
|
||||||
|
/**
|
||||||
|
* Registers the service provider with a DI container.
|
||||||
|
*
|
||||||
|
* @param Container $container The DI container.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
* @since 4.0.0
|
||||||
|
*/
|
||||||
|
public function register(Container $container)
|
||||||
|
{
|
||||||
|
$container->registerServiceProvider(new MVCFactory('\\Joomla\\Component\\Patchtester'));
|
||||||
|
$container->registerServiceProvider(new ComponentDispatcherFactory('\\Joomla\\Component\\Patchtester'));
|
||||||
|
|
||||||
|
$container->set(
|
||||||
|
ComponentInterface::class,
|
||||||
|
function (Container $container) {
|
||||||
|
require_once dirname(__DIR__) . '/vendor/autoload.php';
|
||||||
|
|
||||||
|
$component = new PatchtesterComponent($container->get(ComponentDispatcherFactoryInterface::class));
|
||||||
|
|
||||||
|
$component->setMVCFactory($container->get(MVCFactoryInterface::class));
|
||||||
|
|
||||||
|
return $component;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
@ -7,20 +7,22 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Application\CMSApplication;
|
use Joomla\CMS\Application\CMSApplication;
|
||||||
use Joomla\CMS\Component\ComponentHelper;
|
use Joomla\CMS\Component\ComponentHelper;
|
||||||
|
use Joomla\CMS\MVC\Controller\BaseController;
|
||||||
|
use Joomla\CMS\MVC\Factory\MVCFactoryInterface;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Model\AbstractModel;
|
||||||
use Joomla\Input\Input;
|
use Joomla\Input\Input;
|
||||||
use Joomla\Registry\Registry;
|
use Joomla\Registry\Registry;
|
||||||
use PatchTester\Model\AbstractModel;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base controller for the patch testing component
|
* Base controller for the patch testing component
|
||||||
*
|
*
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*/
|
*/
|
||||||
abstract class AbstractController
|
abstract class AbstractController extends BaseController
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* The active application
|
* The active application
|
||||||
@ -50,7 +52,7 @@ abstract class AbstractController
|
|||||||
*
|
*
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*/
|
*/
|
||||||
public function __construct(CMSApplication $app)
|
public function __construct($config = array(), MVCFactoryInterface $factory = null, ?CMSApplication $app = null, ?Input $input = null)
|
||||||
{
|
{
|
||||||
$this->app = $app;
|
$this->app = $app;
|
||||||
// Set the context for the controller
|
// Set the context for the controller
|
@ -7,12 +7,12 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\Router\Route;
|
use Joomla\CMS\Router\Route;
|
||||||
use PatchTester\Model\PullModel;
|
use Joomla\Component\Patchtester\Administrator\Model\PullModel;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -7,12 +7,12 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
|
use Joomla\CMS\MVC\Controller\BaseController;
|
||||||
use Joomla\Registry\Registry;
|
use Joomla\Registry\Registry;
|
||||||
use PatchTester\Model\AbstractModel;
|
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
@ -24,8 +24,16 @@ use PatchTester\Model\AbstractModel;
|
|||||||
*
|
*
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*/
|
*/
|
||||||
class DisplayController extends AbstractController
|
class DisplayController extends BaseController
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* The default view.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
* @since 1.6
|
||||||
|
*/
|
||||||
|
protected $default_view = 'pulls';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default ordering value
|
* Default ordering value
|
||||||
*
|
*
|
||||||
@ -41,7 +49,7 @@ class DisplayController extends AbstractController
|
|||||||
* @since 2.0
|
* @since 2.0
|
||||||
* @throws \RuntimeException
|
* @throws \RuntimeException
|
||||||
*/
|
*/
|
||||||
public function execute()
|
public function executeOld()
|
||||||
{
|
{
|
||||||
// Set up variables to build our classes
|
// Set up variables to build our classes
|
||||||
$view = $this->getInput()->getCmd('view', $this->defaultView);
|
$view = $this->getInput()->getCmd('view', $this->defaultView);
|
@ -7,12 +7,12 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\Response\JsonResponse;
|
use Joomla\CMS\Response\JsonResponse;
|
||||||
use PatchTester\Model\PullsModel;
|
use Joomla\Component\Patchtester\Administrator\Model\PullsModel;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -7,17 +7,17 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Component\ComponentHelper;
|
use Joomla\CMS\Component\ComponentHelper;
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Filesystem\Folder;
|
use Joomla\CMS\Filesystem\Folder;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\Router\Route;
|
use Joomla\CMS\Router\Route;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Model\PullModel;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Model\PullsModel;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Model\TestsModel;
|
||||||
use Joomla\Filesystem\File;
|
use Joomla\Filesystem\File;
|
||||||
use PatchTester\Model\PullModel;
|
|
||||||
use PatchTester\Model\PullsModel;
|
|
||||||
use PatchTester\Model\TestsModel;
|
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -7,12 +7,12 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\Router\Route;
|
use Joomla\CMS\Router\Route;
|
||||||
use PatchTester\Model\PullModel;
|
use Joomla\Component\Patchtester\Administrator\Model\PullModel;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -7,14 +7,14 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Controller;
|
namespace Joomla\Component\Patchtester\Administrator\Controller;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\Response\JsonResponse;
|
use Joomla\CMS\Response\JsonResponse;
|
||||||
use Joomla\CMS\Session\Session;
|
use Joomla\CMS\Session\Session;
|
||||||
use PatchTester\Helper;
|
use Joomla\Component\Patchtester\Administrator\Helper\Helper;
|
||||||
use PatchTester\Model\TestsModel;
|
use Joomla\Component\Patchtester\Administrator\Model\TestsModel;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -0,0 +1,44 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Patch testing component for the Joomla! CMS
|
||||||
|
*
|
||||||
|
* @copyright Copyright (C) 2011 - 2012 Ian MacLennan, Copyright (C) 2013 - 2018 Open Source Matters, Inc. All rights reserved.
|
||||||
|
* @license GNU General Public License version 2 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Joomla\Component\Patchtester\Administrator\Extension;
|
||||||
|
|
||||||
|
use Joomla\CMS\Extension\BootableExtensionInterface;
|
||||||
|
use Joomla\CMS\Extension\MVCComponent;
|
||||||
|
use Psr\Container\ContainerInterface;
|
||||||
|
|
||||||
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
|
\defined('JPATH_PLATFORM') or die;
|
||||||
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component class for com_contact
|
||||||
|
*
|
||||||
|
* @since 4.0.0
|
||||||
|
*/
|
||||||
|
class PatchtesterComponent extends MVCComponent
|
||||||
|
implements BootableExtensionInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Booting the extension. This is the function to set up the environment of the extension like
|
||||||
|
* registering new class loaders, etc.
|
||||||
|
*
|
||||||
|
* If required, some initial set up can be done from services of the container, eg.
|
||||||
|
* registering HTML services.
|
||||||
|
*
|
||||||
|
* @param ContainerInterface $container The container
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*
|
||||||
|
* @since 4.0.0
|
||||||
|
*/
|
||||||
|
public function boot(ContainerInterface $container)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
@ -7,7 +7,7 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Field;
|
namespace Joomla\Component\Patchtester\Administrator\Field;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Form\Field\ListField;
|
use Joomla\CMS\Form\Field\ListField;
|
@ -7,7 +7,7 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Field;
|
namespace Joomla\Component\Patchtester\Administrator\Field;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Form\Field\ListField;
|
use Joomla\CMS\Form\Field\ListField;
|
@ -7,7 +7,7 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\GitHub\Exception;
|
namespace Joomla\Component\Patchtester\Administrator\Github\Exception;
|
||||||
|
|
||||||
use Joomla\CMS\Http\Response;
|
use Joomla\CMS\Http\Response;
|
||||||
|
|
@ -7,12 +7,13 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\GitHub;
|
namespace Joomla\Component\Patchtester\Administrator\GitHub;
|
||||||
|
|
||||||
use Joomla\CMS\Http\Http;
|
use Joomla\CMS\Http\Http;
|
||||||
use Joomla\CMS\Http\HttpFactory;
|
use Joomla\CMS\Http\HttpFactory;
|
||||||
use Joomla\CMS\Http\Response;
|
use Joomla\CMS\Http\Response;
|
||||||
use Joomla\CMS\Uri\Uri;
|
use Joomla\CMS\Uri\Uri;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Github\Exception\UnexpectedResponse;
|
||||||
use Joomla\Registry\Registry;
|
use Joomla\Registry\Registry;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -150,8 +151,8 @@ class GitHub
|
|||||||
*
|
*
|
||||||
* @return Response
|
* @return Response
|
||||||
*
|
*
|
||||||
|
* @throws UnexpectedResponse
|
||||||
*@since 3.0.0
|
*@since 3.0.0
|
||||||
* @throws Exception\UnexpectedResponse
|
|
||||||
*/
|
*/
|
||||||
protected function processResponse(Response $response, $expectedCode = 200)
|
protected function processResponse(Response $response, $expectedCode = 200)
|
||||||
{
|
{
|
||||||
@ -162,7 +163,7 @@ class GitHub
|
|||||||
$error = isset($body->error) ? $body->error
|
$error = isset($body->error) ? $body->error
|
||||||
: (isset($body->message) ? $body->message : 'Unknown Error');
|
: (isset($body->message) ? $body->message : 'Unknown Error');
|
||||||
|
|
||||||
throw new Exception\UnexpectedResponse(
|
throw new UnexpectedResponse(
|
||||||
$response,
|
$response,
|
||||||
$error,
|
$error,
|
||||||
$response->code
|
$response->code
|
@ -7,13 +7,13 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester;
|
namespace Joomla\Component\Patchtester\Administrator\Helper;
|
||||||
|
|
||||||
use Joomla\CMS\Component\ComponentHelper;
|
use Joomla\CMS\Component\ComponentHelper;
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\Registry\Registry;
|
use Joomla\Registry\Registry;
|
||||||
use PatchTester\GitHub\GitHub;
|
use src\GitHub\GitHub;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -7,7 +7,7 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester;
|
namespace Joomla\Component\Patchtester\Administrator\Helper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper class for Joomla's issue tracker integrations
|
* Helper class for Joomla's issue tracker integrations
|
@ -7,7 +7,7 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Model;
|
namespace Joomla\Component\Patchtester\Administrator\Model;
|
||||||
|
|
||||||
use Joomla\CMS\Factory;
|
use Joomla\CMS\Factory;
|
||||||
use Joomla\Database\DatabaseDriver;
|
use Joomla\Database\DatabaseDriver;
|
@ -7,9 +7,10 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Model;
|
namespace Joomla\Component\Patchtester\Administrator\Model;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
|
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
// phpcs:enable PSR1.Files.SideEffects
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
@ -7,7 +7,7 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Model;
|
namespace Joomla\Component\Patchtester\Administrator\Model;
|
||||||
|
|
||||||
use Joomla\Archive\Zip;
|
use Joomla\Archive\Zip;
|
||||||
use Joomla\CMS\Component\ComponentHelper;
|
use Joomla\CMS\Component\ComponentHelper;
|
||||||
@ -16,14 +16,14 @@ use Joomla\CMS\Filesystem\Path;
|
|||||||
use Joomla\CMS\Http\HttpFactory;
|
use Joomla\CMS\Http\HttpFactory;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\Version;
|
use Joomla\CMS\Version;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Helper\Helper;
|
||||||
use Joomla\Database\DatabaseDriver;
|
use Joomla\Database\DatabaseDriver;
|
||||||
use Joomla\Filesystem\File;
|
use Joomla\Filesystem\File;
|
||||||
use Joomla\Filesystem\Folder;
|
use Joomla\Filesystem\Folder;
|
||||||
use Joomla\Registry\Registry;
|
use Joomla\Registry\Registry;
|
||||||
use PatchTester\GitHub\Exception\UnexpectedResponse;
|
|
||||||
use PatchTester\GitHub\GitHub;
|
|
||||||
use PatchTester\Helper;
|
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
|
use src\GitHub\Exception\UnexpectedResponse;
|
||||||
|
use src\GitHub\GitHub;
|
||||||
use stdClass;
|
use stdClass;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
@ -7,15 +7,15 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Model;
|
namespace Joomla\Component\Patchtester\Administrator\Model;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Joomla\CMS\HTML\HTMLHelper;
|
use Joomla\CMS\HTML\HTMLHelper;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use Joomla\CMS\MVC\Model\ListModel;
|
use Joomla\CMS\MVC\Model\ListModel;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Github\Exception\UnexpectedResponse;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Helper\Helper;
|
||||||
use Joomla\Database\DatabaseQuery;
|
use Joomla\Database\DatabaseQuery;
|
||||||
use PatchTester\GitHub\Exception\UnexpectedResponse;
|
|
||||||
use PatchTester\Helper;
|
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
@ -7,9 +7,10 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\Model;
|
namespace Joomla\Component\Patchtester\Administrator\Model;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
|
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
// phpcs:enable PSR1.Files.SideEffects
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
@ -7,11 +7,13 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\View;
|
namespace Joomla\Component\Patchtester\Administrator\View;
|
||||||
|
|
||||||
use Joomla\CMS\Filesystem\Path;
|
use Joomla\CMS\Filesystem\Path;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use PatchTester\Model\AbstractModel;
|
use Joomla\Component\Patchtester\Administrator\Model\AbstractModel;
|
||||||
|
use PatchTester\View\RuntimeException;
|
||||||
|
use PatchTester\View\SplPriorityQueue;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -7,9 +7,9 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\View;
|
namespace Joomla\Component\Patchtester\Administrator\View;
|
||||||
|
|
||||||
use PatchTester\Model\AbstractModel;
|
use Joomla\Component\Patchtester\Administrator\Model\AbstractModel;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base view for the patch testing component
|
* Base view for the patch testing component
|
@ -7,9 +7,10 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\View;
|
namespace Joomla\Component\Patchtester\Administrator\View;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
|
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
// phpcs:enable PSR1.Files.SideEffects
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
@ -15,7 +15,7 @@ use Joomla\CMS\Language\Text;
|
|||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
// phpcs:enable PSR1.Files.SideEffects
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
||||||
/** @var \PatchTester\View\DefaultHtmlView $this */
|
/** @var \Joomla\Component\Patchtester\Administrator\View\DefaultHtmlView $this */
|
||||||
|
|
||||||
HTMLHelper::_('jquery.framework');
|
HTMLHelper::_('jquery.framework');
|
||||||
HTMLHelper::_('behavior.core');
|
HTMLHelper::_('behavior.core');
|
@ -7,17 +7,17 @@
|
|||||||
* @license GNU General Public License version 2 or later
|
* @license GNU General Public License version 2 or later
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace PatchTester\View\Pulls;
|
namespace Joomla\Component\Patchtester\Administrator\View\Pulls;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Joomla\CMS\Form\Form;
|
use Joomla\CMS\Form\Form;
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
|
use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView;
|
||||||
use Joomla\CMS\Pagination\Pagination;
|
use Joomla\CMS\Pagination\Pagination;
|
||||||
use Joomla\CMS\Toolbar\Toolbar;
|
use Joomla\CMS\Toolbar\Toolbar;
|
||||||
use Joomla\CMS\Toolbar\ToolbarHelper;
|
use Joomla\CMS\Toolbar\ToolbarHelper;
|
||||||
|
use Joomla\Component\Patchtester\Administrator\Helper\TrackerHelper;
|
||||||
use Joomla\Registry\Registry;
|
use Joomla\Registry\Registry;
|
||||||
use PatchTester\TrackerHelper;
|
|
||||||
use PatchTester\View\DefaultHtmlView;
|
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
@ -28,9 +28,9 @@ use PatchTester\View\DefaultHtmlView;
|
|||||||
*
|
*
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*
|
*
|
||||||
* @property-read \PatchTester\Model\PullsModel $model The model object.
|
* @property-read \Joomla\Component\Patchtester\Administrator\Model\PullsModel $model The model object.
|
||||||
*/
|
*/
|
||||||
class PullsHtmlView extends DefaultHtmlView
|
class HtmlView extends BaseHtmlView
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Array containing environment errors
|
* Array containing environment errors
|
||||||
@ -84,12 +84,12 @@ class PullsHtmlView extends DefaultHtmlView
|
|||||||
/**
|
/**
|
||||||
* Method to render the view.
|
* Method to render the view.
|
||||||
*
|
*
|
||||||
* @return string The rendered view.
|
* @return void
|
||||||
*
|
*
|
||||||
* @since 2.0.0
|
* @since 2.0.0
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
public function render(): string
|
public function display($tpl = null): void
|
||||||
{
|
{
|
||||||
if (!extension_loaded('openssl')) {
|
if (!extension_loaded('openssl')) {
|
||||||
$this->envErrors[] = Text::_('COM_PATCHTESTER_REQUIREMENT_OPENSSL');
|
$this->envErrors[] = Text::_('COM_PATCHTESTER_REQUIREMENT_OPENSSL');
|
||||||
@ -100,11 +100,12 @@ class PullsHtmlView extends DefaultHtmlView
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!count($this->envErrors)) {
|
if (!count($this->envErrors)) {
|
||||||
$this->state = $this->model->getState();
|
$model = $this->getModel();
|
||||||
$this->items = $this->model->getItems();
|
$this->state = $model->getState();
|
||||||
$this->pagination = $this->model->getPagination();
|
$this->items = $model->getItems();
|
||||||
$this->filterForm = $this->model->getFilterForm();
|
$this->pagination = $model->getPagination();
|
||||||
$this->activeFilters = $this->model->getActiveFilters();
|
$this->filterForm = $model->getFilterForm();
|
||||||
|
$this->activeFilters = $model->getActiveFilters();
|
||||||
$this->trackerAlias = TrackerHelper::getTrackerAlias($this->state->get('github_user'), $this->state->get('github_repo'));
|
$this->trackerAlias = TrackerHelper::getTrackerAlias($this->state->get('github_user'), $this->state->get('github_repo'));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,7 +116,8 @@ class PullsHtmlView extends DefaultHtmlView
|
|||||||
|
|
||||||
$this->addToolbar();
|
$this->addToolbar();
|
||||||
Text::script('COM_PATCHTESTER_CONFIRM_RESET');
|
Text::script('COM_PATCHTESTER_CONFIRM_RESET');
|
||||||
return parent::render();
|
|
||||||
|
parent::display($tpl);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
@ -16,7 +16,7 @@ use Joomla\CMS\Router\Route;
|
|||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
// phpcs:enable PSR1.Files.SideEffects
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
||||||
/** @var \PatchTester\View\Pulls\PullsHtmlView $this */
|
/** @var \Joomla\Component\Patchtester\Administrator\View\Pulls\PullsHtmlView $this */
|
||||||
|
|
||||||
HTMLHelper::_('stylesheet', 'com_patchtester/octicons.css', ['version' => '3.5.0', 'relative' => true]);
|
HTMLHelper::_('stylesheet', 'com_patchtester/octicons.css', ['version' => '3.5.0', 'relative' => true]);
|
||||||
HTMLHelper::_('script', 'com_patchtester/patchtester.js', ['version' => 'auto', 'relative' => true]);
|
HTMLHelper::_('script', 'com_patchtester/patchtester.js', ['version' => 'auto', 'relative' => true]);
|
@ -8,7 +8,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
use Joomla\CMS\Language\Text;
|
use Joomla\CMS\Language\Text;
|
||||||
use PatchTester\View\Pulls\PullsHtmlView;
|
use Joomla\Component\Patchtester\Administrator\View\Pulls\PullsHtmlView;
|
||||||
|
|
||||||
// phpcs:disable PSR1.Files.SideEffects
|
// phpcs:disable PSR1.Files.SideEffects
|
||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
@ -13,7 +13,7 @@ use Joomla\CMS\Language\Text;
|
|||||||
\defined('_JEXEC') or die;
|
\defined('_JEXEC') or die;
|
||||||
// phpcs:enable PSR1.Files.SideEffects
|
// phpcs:enable PSR1.Files.SideEffects
|
||||||
|
|
||||||
/** @var \PatchTester\View\Pulls\PullsHtmlView $this */
|
/** @var \Joomla\Component\Patchtester\Administrator\View\Pulls\PullsHtmlView $this */
|
||||||
?>
|
?>
|
||||||
<h3><?php echo Text::_('COM_PATCHTESTER_REQUIREMENTS_HEADING'); ?></h3>
|
<h3><?php echo Text::_('COM_PATCHTESTER_REQUIREMENTS_HEADING'); ?></h3>
|
||||||
<p><?php echo Text::_('COM_PATCHTESTER_REQUIREMENTS_NOT_MET'); ?></p>
|
<p><?php echo Text::_('COM_PATCHTESTER_REQUIREMENTS_NOT_MET'); ?></p>
|
@ -18,10 +18,5 @@
|
|||||||
"require-dev": {
|
"require-dev": {
|
||||||
"joomla/crowdin-sync": "dev-master",
|
"joomla/crowdin-sync": "dev-master",
|
||||||
"squizlabs/php_codesniffer": "~3.0"
|
"squizlabs/php_codesniffer": "~3.0"
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"PatchTester\\": "administrator/components/com_patchtester/PatchTester/"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user