Adds new JCB package engine. Fix issue with loading the Component Builder Wiki. Adds advanced version update notice to the Component Builder Dashboard. Completely refactors the class that builds the Component Dashboard. #1134. Adds Initialize, Reset, and Push functionality to the Repository entities. Completely refactors the SQL teaks and SQL dump classes. Changes J4 fields to allow NULL. Fix a bug in Dynamic Get JavaScript that causes table columns to not load.
98 lines
2.4 KiB
PHP
98 lines
2.4 KiB
PHP
<?php
|
|
/**
|
|
* @package Joomla.Component.Builder
|
|
*
|
|
* @created 4th September 2022
|
|
* @author Llewellyn van der Merwe <https://dev.vdm.io>
|
|
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
|
|
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
// No direct access to this JCB template file (EVER)
|
|
defined('_JCB_TEMPLATE') or die;
|
|
?>
|
|
###BOM###
|
|
namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Site\Service;
|
|
|
|
###SITE_ROUTER_HEADER###
|
|
|
|
// No direct access to this file
|
|
\defined('_JEXEC') or die;
|
|
|
|
/**
|
|
* Router class for the ###Component_name### Component
|
|
*
|
|
* @since 3.10
|
|
*/
|
|
class Router extends RouterView
|
|
{
|
|
/**
|
|
* Flag to remove IDs
|
|
*
|
|
* @var boolean
|
|
* @since 4.0.0
|
|
*/
|
|
protected $noIDs = false;
|
|
|
|
/**
|
|
* The category factory
|
|
*
|
|
* @var CategoryFactoryInterface
|
|
* @since 4.0.0
|
|
*/
|
|
private $categoryFactory;
|
|
|
|
/**
|
|
* The category cache
|
|
*
|
|
* @var array
|
|
* @since 4.0.0
|
|
*/
|
|
private $categoryCache = [];
|
|
|
|
/**
|
|
* The db
|
|
*
|
|
* @var DatabaseInterface
|
|
* @since 4.0.0
|
|
*/
|
|
private $db;
|
|
|
|
/**
|
|
* The component params
|
|
*
|
|
* @var Registry
|
|
* @since 4.0.0
|
|
*/
|
|
private $params;
|
|
|
|
/**
|
|
* ###Component### Component router constructor
|
|
*
|
|
* @param SiteApplication $app The application object
|
|
* @param AbstractMenu $menu The menu object to work with
|
|
* @param CategoryFactoryInterface $categoryFactory The category object
|
|
* @param DatabaseInterface $db The database object
|
|
*
|
|
* @since 4.0.0
|
|
*/
|
|
public function __construct(
|
|
SiteApplication $app,
|
|
AbstractMenu $menu,
|
|
CategoryFactoryInterface $categoryFactory,
|
|
DatabaseInterface $db)
|
|
{
|
|
$this->categoryFactory = $categoryFactory;
|
|
$this->db = $db;
|
|
$this->params = Joomla___aeb8e463_291f_4445_9ac4_34b637c12dbd___Power::getParams('com_###component###');
|
|
$this->noIDs = (bool) $this->params->get('sef_ids', false);###SITE_ROUTER_CONSTRUCTOR_BEFORE_PARENT###
|
|
|
|
parent::__construct($app, $menu);###SITE_ROUTER_CONSTRUCTOR_AFTER_PARENT###
|
|
|
|
$this->attachRule(new MenuRules($this));
|
|
$this->attachRule(new StandardRules($this));
|
|
$this->attachRule(new NomenuRules($this));
|
|
}###SITE_ROUTER_METHODS###
|
|
}
|