Move the whole compiler GET of the component object to now use the container->component object/class.

This commit is contained in:
2023-01-22 02:38:21 +02:00
parent f44f385159
commit e6c02a29f6
115 changed files with 13148 additions and 6292 deletions

View File

@@ -0,0 +1,78 @@
<?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
*/
namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Adminview\Data as AdminviewData;
/**
* Compiler Adminview
*
* @since 3.2.0
*/
class Adminview implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(AdminviewData::class, 'Adminview.Data')
->share('Adminview.Data', [$this, 'getAdminviewData'], true);
}
/**
* Get the Compiler Adminview Data
*
* @param Container $container The DI container.
*
* @return AdminviewData
* @since 3.2.0
*/
public function getAdminviewData(Container $container): AdminviewData
{
return new AdminviewData(
$container->get('Config'),
$container->get('Registry'),
$container->get('Event'),
$container->get('Placeholder'),
$container->get('Customcode.Dispenser'),
$container->get('Model.Customtabs'),
$container->get('Model.Tabs'),
$container->get('Model.Fields'),
$container->get('Model.Historyadminview'),
$container->get('Model.Permissions'),
$container->get('Model.Conditions'),
$container->get('Model.Relations'),
$container->get('Model.Linkedviews'),
$container->get('Model.Javascriptadminview'),
$container->get('Model.Cssadminview'),
$container->get('Model.Phpadminview'),
$container->get('Model.Custombuttons'),
$container->get('Model.Customimportscripts'),
$container->get('Model.Ajaxadmin'),
$container->get('Model.Customalias'),
$container->get('Model.Sql'),
$container->get('Model.Mysqlsettings')
);
}
}

View File

@@ -16,6 +16,7 @@ use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Config;
use VDM\Joomla\Componentbuilder\Compiler\Registry;
use VDM\Joomla\Componentbuilder\Compiler\Counter;
/**
@@ -40,6 +41,9 @@ class Compiler implements ServiceProviderInterface
$container->alias(Registry::class, 'Registry')
->share('Registry', [$this, 'getRegistry'], true);
$container->alias(Counter::class, 'Counter')
->share('Counter', [$this, 'getCounter'], true);
}
/**
@@ -67,6 +71,19 @@ class Compiler implements ServiceProviderInterface
{
return new Registry();
}
/**
* Get the Compiler Counter
*
* @param Container $container The DI container.
*
* @return Counter
* @since 3.2.0
*/
public function getCounter(Container $container): Counter
{
return new Counter();
}
}

View File

@@ -14,7 +14,9 @@ namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Component as ComponentObject;
use VDM\Joomla\Componentbuilder\Compiler\Component\Placeholder as ComponentPlaceholder;
use VDM\Joomla\Componentbuilder\Compiler\Component\Data as ComponentData;
/**
@@ -34,8 +36,29 @@ class Component implements ServiceProviderInterface
*/
public function register(Container $container)
{
$container->alias(ComponentObject::class, 'Component')
->share('Component', [$this, 'getComponent'], true);
$container->alias(ComponentPlaceholder::class, 'Component.Placeholder')
->share('Component.Placeholder', [$this, 'getComponentPlaceholder'], true);
$container->alias(ComponentData::class, 'Component.Data')
->share('Component.Data', [$this, 'getComponentData'], true);
}
/**
* Get the Component
*
* @param Container $container The DI container.
*
* @return ComponentObject
* @since 3.2.0
*/
public function getComponent(Container $container): ComponentObject
{
return new ComponentObject(
$container->get('Component.Data')
);
}
/**
@@ -51,6 +74,39 @@ class Component implements ServiceProviderInterface
return new ComponentPlaceholder(
$container->get('Config')
);
}
/**
* Get the Component Data
*
* @param Container $container The DI container.
*
* @return ComponentData
* @since 3.2.0
*/
public function getComponentData(Container $container): ComponentData
{
return new ComponentData(
$container->get('Config'),
$container->get('Event'),
$container->get('Placeholder'),
$container->get('Component.Placeholder'),
$container->get('Customcode.Dispenser'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Field'),
$container->get('Field.Name'),
$container->get('Field.Unique.Name'),
$container->get('Model.Filesfolders'),
$container->get('Model.Historycomponent'),
$container->get('Model.Whmcs'),
$container->get('Model.Sqltweaking'),
$container->get('Model.Adminviews'),
$container->get('Model.Siteviews'),
$container->get('Model.Customadminviews'),
$container->get('Model.Joomlamodules'),
$container->get('Model.Joomlaplugins')
);
}
}

View File

@@ -0,0 +1,114 @@
<?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
*/
namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Customview\Data as CustomviewData;
use VDM\Joomla\Componentbuilder\Compiler\Dynamicget\Data as DynamicgetData;
use VDM\Joomla\Componentbuilder\Compiler\Dynamicget\Selection as DynamicgetSelection;
/**
* Compiler Customview
*
* @since 3.2.0
*/
class Customview implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(CustomviewData::class, 'Customview.Data')
->share('Customview.Data', [$this, 'getCustomviewData'], true);
$container->alias(DynamicgetData::class, 'Dynamicget.Data')
->share('Dynamicget.Data', [$this, 'getDynamicgetData'], true);
$container->alias(DynamicgetSelection::class, 'Dynamicget.Selection')
->share('Dynamicget.Selection', [$this, 'getDynamicgetSelection'], true);
}
/**
* Get the Compiler Customview Data
*
* @param Container $container The DI container.
*
* @return CustomviewData
* @since 3.2.0
*/
public function getCustomviewData(Container $container): CustomviewData
{
return new CustomviewData(
$container->get('Config'),
$container->get('Event'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Model.Libraries'),
$container->get('Templatelayout.Data'),
$container->get('Dynamicget.Data'),
$container->get('Model.Loader'),
$container->get('Model.Javascriptcustomview'),
$container->get('Model.Csscustomview'),
$container->get('Model.Phpcustomview'),
$container->get('Model.Ajaxcustomview'),
$container->get('Model.Custombuttons')
);
}
/**
* Get the Compiler Dynamicget Data
*
* @param Container $container The DI container.
*
* @return DynamicgetData
* @since 3.2.0
*/
public function getDynamicgetData(Container $container): DynamicgetData
{
return new DynamicgetData(
$container->get('Config'),
$container->get('Registry'),
$container->get('Event'),
$container->get('Customcode'),
$container->get('Customcode.Dispenser'),
$container->get('Customcode.Gui'),
$container->get('Model.Dynamicget')
);
}
/**
* Get the Compiler Dynamicget Selection
*
* @param Container $container The DI container.
*
* @return DynamicgetSelection
* @since 3.2.0
*/
public function getDynamicgetSelection(Container $container): DynamicgetSelection
{
return new DynamicgetSelection(
$container->get('Config'),
$container->get('Registry')
);
}
}

View File

@@ -0,0 +1,66 @@
<?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
*/
namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Joomlamodule\Data as JoomlaModuleData;
/**
* Joomla Module Service Provider
*
* @since 3.2.0
*/
class Joomlamodule implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(JoomlaModuleData::class, 'Joomlamodule.Data')
->share('Joomlamodule.Data', [$this, 'getJoomlaModuleData'], true);
}
/**
* Get the Joomla Module Data
*
* @param Container $container The DI container.
*
* @return JoomlaModuleData
* @since 3.2.0
*/
public function getJoomlaModuleData(Container $container): JoomlaModuleData
{
return new JoomlaModuleData(
$container->get('Config'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Placeholder'),
$container->get('Language'),
$container->get('Field'),
$container->get('Field.Name'),
$container->get('Model.Filesfolders'),
$container->get('Model.Libraries'),
$container->get('Dynamicget.Data')
);
}
}

View File

@@ -0,0 +1,64 @@
<?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
*/
namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Joomlaplugin\Data as JoomlaPluginData;
/**
* Joomla Plugin Service Provider
*
* @since 3.2.0
*/
class Joomlaplugin implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(JoomlaPluginData::class, 'Joomlaplugin.Data')
->share('Joomlaplugin.Data', [$this, 'getJoomlaPluginData'], true);
}
/**
* Get the Joomla Plugin Data
*
* @param Container $container The DI container.
*
* @return JoomlaPluginData
* @since 3.2.0
*/
public function getJoomlaPluginData(Container $container): JoomlaPluginData
{
return new JoomlaPluginData(
$container->get('Config'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Placeholder'),
$container->get('Language'),
$container->get('Field'),
$container->get('Field.Name'),
$container->get('Model.Filesfolders')
);
}
}

View File

@@ -0,0 +1,62 @@
<?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
*/
namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Library\Data as LibraryData;
/**
* Compiler Library
*
* @since 3.2.0
*/
class Library implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(LibraryData::class, 'Library.Data')
->share('Library.Data', [$this, 'getLibraryData'], true);
}
/**
* Get the Compiler Library Data
*
* @param Container $container The DI container.
*
* @return LibraryData
* @since 3.2.0
*/
public function getLibraryData(Container $container): LibraryData
{
return new LibraryData(
$container->get('Config'),
$container->get('Registry'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Field.Data'),
$container->get('Model.Filesfolders')
);
}
}

View File

@@ -15,6 +15,41 @@ namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Server\Model\Load as ServerLoad;
use VDM\Joomla\Componentbuilder\Compiler\Model\Joomlaplugins;
use VDM\Joomla\Componentbuilder\Compiler\Model\Joomlamodules;
use VDM\Joomla\Componentbuilder\Compiler\Model\Historycomponent;
use VDM\Joomla\Componentbuilder\Compiler\Model\Customadminviews;
use VDM\Joomla\Componentbuilder\Compiler\Model\Ajaxcustomview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Javascriptcustomview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Csscustomview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Phpcustomview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Dynamicget;
use VDM\Joomla\Componentbuilder\Compiler\Model\Libraries;
use VDM\Joomla\Componentbuilder\Compiler\Model\Siteviews;
use VDM\Joomla\Componentbuilder\Compiler\Model\Permissions;
use VDM\Joomla\Componentbuilder\Compiler\Model\Historyadminview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Mysqlsettings;
use VDM\Joomla\Componentbuilder\Compiler\Model\Sql;
use VDM\Joomla\Componentbuilder\Compiler\Model\Customalias;
use VDM\Joomla\Componentbuilder\Compiler\Model\Ajaxadmin;
use VDM\Joomla\Componentbuilder\Compiler\Model\Customimportscripts;
use VDM\Joomla\Componentbuilder\Compiler\Model\Custombuttons;
use VDM\Joomla\Componentbuilder\Compiler\Model\Loader;
use VDM\Joomla\Componentbuilder\Compiler\Model\Phpadminview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Cssadminview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Javascriptadminview;
use VDM\Joomla\Componentbuilder\Compiler\Model\Linkedviews;
use VDM\Joomla\Componentbuilder\Compiler\Model\Relations;
use VDM\Joomla\Componentbuilder\Compiler\Model\Conditions;
use VDM\Joomla\Componentbuilder\Compiler\Model\Fields;
use VDM\Joomla\Componentbuilder\Compiler\Model\Updatesql;
use VDM\Joomla\Componentbuilder\Compiler\Model\Tabs;
use VDM\Joomla\Componentbuilder\Compiler\Model\Customtabs;
use VDM\Joomla\Componentbuilder\Compiler\Model\Adminviews;
use VDM\Joomla\Componentbuilder\Compiler\Model\Sqltweaking;
use VDM\Joomla\Componentbuilder\Compiler\Model\Sqldump;
use VDM\Joomla\Componentbuilder\Compiler\Model\Whmcs;
use VDM\Joomla\Componentbuilder\Compiler\Model\Filesfolders;
/**
@@ -34,10 +69,674 @@ class Model implements ServiceProviderInterface
*/
public function register(Container $container)
{
$container->alias(Joomlaplugins::class, 'Model.Joomlaplugins')
->share('Model.Joomlaplugins', [$this, 'getModelJoomlaplugins'], true);
$container->alias(Joomlamodules::class, 'Model.Joomlamodules')
->share('Model.Joomlamodules', [$this, 'getModelJoomlamodules'], true);
$container->alias(Historycomponent::class, 'Model.Historycomponent')
->share('Model.Historycomponent', [$this, 'getModelHistorycomponent'], true);
$container->alias(Customadminviews::class, 'Model.Customadminviews')
->share('Model.Customadminviews', [$this, 'getModelCustomadminviews'], true);
$container->alias(Ajaxcustomview::class, 'Model.Ajaxcustomview')
->share('Model.Ajaxcustomview', [$this, 'getModelAjaxcustomview'], true);
$container->alias(Javascriptcustomview::class, 'Model.Javascriptcustomview')
->share('Model.Javascriptcustomview', [$this, 'getModelJavascriptcustomview'], true);
$container->alias(Csscustomview::class, 'Model.Csscustomview')
->share('Model.Csscustomview', [$this, 'getModelCsscustomview'], true);
$container->alias(Phpcustomview::class, 'Model.Phpcustomview')
->share('Model.Phpcustomview', [$this, 'getModelPhpcustomview'], true);
$container->alias(Dynamicget::class, 'Model.Dynamicget')
->share('Model.Dynamicget', [$this, 'getModelDynamicget'], true);
$container->alias(Libraries::class, 'Model.Libraries')
->share('Model.Libraries', [$this, 'getModelLibraries'], true);
$container->alias(Siteviews::class, 'Model.Siteviews')
->share('Model.Siteviews', [$this, 'getModelSiteviews'], true);
$container->alias(Permissions::class, 'Model.Permissions')
->share('Model.Permissions', [$this, 'getModelPermissions'], true);
$container->alias(Historyadminview::class, 'Model.Historyadminview')
->share('Model.Historyadminview', [$this, 'getModelHistoryadminview'], true);
$container->alias(Mysqlsettings::class, 'Model.Mysqlsettings')
->share('Model.Mysqlsettings', [$this, 'getModelMysqlsettings'], true);
$container->alias(Sql::class, 'Model.Sql')
->share('Model.Sql', [$this, 'getModelSql'], true);
$container->alias(Customalias::class, 'Model.Customalias')
->share('Model.Customalias', [$this, 'getModelCustomalias'], true);
$container->alias(Ajaxadmin::class, 'Model.Ajaxadmin')
->share('Model.Ajaxadmin', [$this, 'getModelAjaxadmin'], true);
$container->alias(Customimportscripts::class, 'Model.Customimportscripts')
->share('Model.Customimportscripts', [$this, 'getModelCustomimportscripts'], true);
$container->alias(Custombuttons::class, 'Model.Custombuttons')
->share('Model.Custombuttons', [$this, 'getModelCustombuttons'], true);
$container->alias(Loader::class, 'Model.Loader')
->share('Model.Loader', [$this, 'getModelLoader'], true);
$container->alias(Phpadminview::class, 'Model.Phpadminview')
->share('Model.Phpadminview', [$this, 'getModelPhpadminview'], true);
$container->alias(Cssadminview::class, 'Model.Cssadminview')
->share('Model.Cssadminview', [$this, 'getModelCssadminview'], true);
$container->alias(Javascriptadminview::class, 'Model.Javascriptadminview')
->share('Model.Javascriptadminview', [$this, 'getModelJavascriptadminview'], true);
$container->alias(Linkedviews::class, 'Model.Linkedviews')
->share('Model.Linkedviews', [$this, 'getModelLinkedviews'], true);
$container->alias(Relations::class, 'Model.Relations')
->share('Model.Relations', [$this, 'getModelRelations'], true);
$container->alias(Conditions::class, 'Model.Conditions')
->share('Model.Conditions', [$this, 'getModelConditions'], true);
$container->alias(Fields::class, 'Model.Fields')
->share('Model.Fields', [$this, 'getModelFields'], true);
$container->alias(Updatesql::class, 'Model.Updatesql')
->share('Model.Updatesql', [$this, 'getModelUpdatesql'], true);
$container->alias(Tabs::class, 'Model.Tabs')
->share('Model.Tabs', [$this, 'getModelTabs'], true);
$container->alias(Customtabs::class, 'Model.Customtabs')
->share('Model.Customtabs', [$this, 'getModelCustomtabs'], true);
$container->alias(Adminviews::class, 'Model.Adminviews')
->share('Model.Adminviews', [$this, 'getModelAdminviews'], true);
$container->alias(Sqltweaking::class, 'Model.Sqltweaking')
->share('Model.Sqltweaking', [$this, 'getModelSqltweaking'], true);
$container->alias(Sqldump::class, 'Model.Sqldump')
->share('Model.Sqldump', [$this, 'getModelSqldump'], true);
$container->alias(Whmcs::class, 'Model.Whmcs')
->share('Model.Whmcs', [$this, 'getModelWhmcs'], true);
$container->alias(Filesfolders::class, 'Model.Filesfolders')
->share('Model.Filesfolders', [$this, 'getModelFilesfolders'], true);
$container->alias(ServerLoad::class, 'Model.Server.Load')
->share('Model.Server.Load', [$this, 'getServerLoad'], true);
}
/**
* Get the Joomla plugins Model
*
* @param Container $container The DI container.
*
* @return Joomlaplugins
* @since 3.2.0
*/
public function getModelJoomlaplugins(Container $container): Joomlaplugins
{
return new Joomlaplugins(
$container->get('Joomlaplugin.Data')
);
}
/**
* Get the Joomla modules Model
*
* @param Container $container The DI container.
*
* @return Joomlamodules
* @since 3.2.0
*/
public function getModelJoomlamodules(Container $container): Joomlamodules
{
return new Joomlamodules(
$container->get('Joomlamodule.Data')
);
}
/**
* Get the history component Model
*
* @param Container $container The DI container.
*
* @return Historycomponent
* @since 3.2.0
*/
public function getModelHistorycomponent(Container $container): Historycomponent
{
return new Historycomponent(
$container->get('Config'),
$container->get('History'),
$container->get('Model.Updatesql')
);
}
/**
* Get the custom admin views Model
*
* @param Container $container The DI container.
*
* @return Customadminviews
* @since 3.2.0
*/
public function getModelCustomadminviews(Container $container): Customadminviews
{
return new Customadminviews(
$container->get('Customview.Data'),
$container->get('Config')
);
}
/**
* Get the ajax custom view Model
*
* @param Container $container The DI container.
*
* @return Ajaxcustomview
* @since 3.2.0
*/
public function getModelAjaxcustomview(Container $container): Ajaxcustomview
{
return new Ajaxcustomview(
$container->get('Config'),
$container->get('Customcode.Dispenser')
);
}
/**
* Get the javascript custom view Model
*
* @param Container $container The DI container.
*
* @return Javascriptcustomview
* @since 3.2.0
*/
public function getModelJavascriptcustomview(Container $container): Javascriptcustomview
{
return new Javascriptcustomview(
$container->get('Customcode'),
$container->get('Customcode.Gui')
);
}
/**
* Get the css custom view Model
*
* @param Container $container The DI container.
*
* @return Csscustomview
* @since 3.2.0
*/
public function getModelCsscustomview(Container $container): Csscustomview
{
return new Csscustomview(
$container->get('Customcode')
);
}
/**
* Get the php custom view Model
*
* @param Container $container The DI container.
*
* @return Phpcustomview
* @since 3.2.0
*/
public function getModelPhpcustomview(Container $container): Phpcustomview
{
return new Phpcustomview(
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Model.Loader'),
$container->get('Templatelayout.Data')
);
}
/**
* Get the dynamic get Model
*
* @param Container $container The DI container.
*
* @return Dynamicget
* @since 3.2.0
*/
public function getModelDynamicget(Container $container): Dynamicget
{
return new Dynamicget(
$container->get('Config'),
$container->get('Registry'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Placeholder'),
$container->get('Dynamicget.Selection')
);
}
/**
* Get the libraries Model
*
* @param Container $container The DI container.
*
* @return Libraries
* @since 3.2.0
*/
public function getModelLibraries(Container $container): Libraries
{
return new Libraries(
$container->get('Config'),
$container->get('Registry'),
$container->get('Library.Data')
);
}
/**
* Get the site views Model
*
* @param Container $container The DI container.
*
* @return Siteviews
* @since 3.2.0
*/
public function getModelSiteviews(Container $container): Siteviews
{
return new Siteviews(
$container->get('Customview.Data'),
$container->get('Config')
);
}
/**
* Get the permissions Model
*
* @param Container $container The DI container.
*
* @return Permissions
* @since 3.2.0
*/
public function getModelPermissions(Container $container): Permissions
{
return new Permissions();
}
/**
* Get the admin view history Model
*
* @param Container $container The DI container.
*
* @return Historyadminview
* @since 3.2.0
*/
public function getModelHistoryadminview(Container $container): Historyadminview
{
return new Historyadminview(
$container->get('Config'),
$container->get('History'),
$container->get('Model.Updatesql')
);
}
/**
* Get the MySQL settings Model
*
* @param Container $container The DI container.
*
* @return Mysqlsettings
* @since 3.2.0
*/
public function getModelMysqlsettings(Container $container): Mysqlsettings
{
return new Mysqlsettings(
$container->get('Config'),
$container->get('Registry')
);
}
/**
* Get the Sql Model
*
* @param Container $container The DI container.
*
* @return Sql
* @since 3.2.0
*/
public function getModelSql(Container $container): Sql
{
return new Sql(
$container->get('Customcode.Dispenser'),
$container->get('Model.Sqldump')
);
}
/**
* Get the custom alias Model
*
* @param Container $container The DI container.
*
* @return Customalias
* @since 3.2.0
*/
public function getModelCustomalias(Container $container): Customalias
{
return new Customalias(
$container->get('Config'),
$container->get('Field.Name')
);
}
/**
* Get the Admin Ajax Model
*
* @param Container $container The DI container.
*
* @return Ajaxadmin
* @since 3.2.0
*/
public function getModelAjaxadmin(Container $container): Ajaxadmin
{
return new Ajaxadmin(
$container->get('Config'),
$container->get('Registry'),
$container->get('Customcode.Dispenser')
);
}
/**
* Get the custom import scripts Model
*
* @param Container $container The DI container.
*
* @return Customimportscripts
* @since 3.2.0
*/
public function getModelCustomimportscripts(Container $container): Customimportscripts
{
return new Customimportscripts(
$container->get('Customcode.Dispenser')
);
}
/**
* Get the custom import scripts Model
*
* @param Container $container The DI container.
*
* @return Custombuttons
* @since 3.2.0
*/
public function getModelCustombuttons(Container $container): Custombuttons
{
return new Custombuttons(
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Templatelayout.Data')
);
}
/**
* Get the Model Auto Loader
*
* @param Container $container The DI container.
*
* @return Loader
* @since 3.2.0
*/
public function getModelLoader(Container $container): Loader
{
return new Loader(
$container->get('Config'),
$container->get('Registry')
);
}
/**
* Get the php admin view Model
*
* @param Container $container The DI container.
*
* @return Phpadminview
* @since 3.2.0
*/
public function getModelPhpadminview(Container $container): Phpadminview
{
return new Phpadminview(
$container->get('Customcode.Dispenser'),
$container->get('Templatelayout.Data')
);
}
/**
* Get the Css Adminview Model
*
* @param Container $container The DI container.
*
* @return Cssadminview
* @since 3.2.0
*/
public function getModelCssadminview(Container $container): Cssadminview
{
return new Cssadminview(
$container->get('Customcode.Dispenser')
);
}
/**
* Get the Javascript Adminview Model
*
* @param Container $container The DI container.
*
* @return Javascriptadminview
* @since 3.2.0
*/
public function getModelJavascriptadminview(Container $container): Javascriptadminview
{
return new Javascriptadminview(
$container->get('Customcode.Dispenser')
);
}
/**
* Get the linked views Model
*
* @param Container $container The DI container.
*
* @return Linkedviews
* @since 3.2.0
*/
public function getModelLinkedviews(Container $container): Linkedviews
{
return new Linkedviews(
$container->get('Registry')
);
}
/**
* Get the relations Model
*
* @param Container $container The DI container.
*
* @return Relations
* @since 3.2.0
*/
public function getModelRelations(Container $container): Relations
{
return new Relations(
$container->get('Config'),
$container->get('Registry'),
$container->get('Language'),
$container->get('Customcode')
);
}
/**
* Get the conditions Model
*
* @param Container $container The DI container.
*
* @return Conditions
* @since 3.2.0
*/
public function getModelConditions(Container $container): Conditions
{
return new Conditions(
$container->get('Field.Type.Name'),
$container->get('Field.Name')
);
}
/**
* Get the fields Model
*
* @param Container $container The DI container.
*
* @return Fields
* @since 3.2.0
*/
public function getModelFields(Container $container): Fields
{
return new Fields(
$container->get('Config'),
$container->get('Registry'),
$container->get('History'),
$container->get('Customcode'),
$container->get('Field'),
$container->get('Field.Name'),
$container->get('Model.Updatesql')
);
}
/**
* Get the update sql Model
*
* @param Container $container The DI container.
*
* @return Updatesql
* @since 3.2.0
*/
public function getModelUpdatesql(Container $container): Updatesql
{
return new Updatesql(
$container->get('Registry')
);
}
/**
* Get the tabs Model
*
* @param Container $container The DI container.
*
* @return Updatesql
* @since 3.2.0
*/
public function getModelTabs(Container $container): Tabs
{
return new Tabs();
}
/**
* Get the custom tabs Model
*
* @param Container $container The DI container.
*
* @return Customtabs
* @since 3.2.0
*/
public function getModelCustomtabs(Container $container): Customtabs
{
return new Customtabs(
$container->get('Config'),
$container->get('Registry'),
$container->get('Language'),
$container->get('Placeholder'),
$container->get('Customcode')
);
}
/**
* Get the admin views Model
*
* @param Container $container The DI container.
*
* @return Adminviews
* @since 3.2.0
*/
public function getModelAdminviews(Container $container): Adminviews
{
return new Adminviews(
$container->get('Adminview.Data'),
$container->get('Registry'),
$container->get('Config')
);
}
/**
* Get the SQL tweaking Model
*
* @param Container $container The DI container.
*
* @return Sqltweaking
* @since 3.2.0
*/
public function getModelSqltweaking(Container $container): Sqltweaking
{
return new Sqltweaking(
$container->get('Registry')
);
}
/**
* Get the SQL dump Model
*
* @param Container $container The DI container.
*
* @return Sqldump
* @since 3.2.0
*/
public function getModelSqldump(Container $container): Sqldump
{
return new Sqldump(
$container->get('Registry')
);
}
/**
* Get the whmcs Model
*
* @param Container $container The DI container.
*
* @return Whmcs
* @since 3.2.0
*/
public function getModelWhmcs(Container $container): Whmcs
{
return new Whmcs();
}
/**
* Get the files folders Model
*
* @param Container $container The DI container.
*
* @return Filesfolders
* @since 3.2.0
*/
public function getModelFilesfolders(Container $container): Filesfolders
{
return new Filesfolders();
}
/**
* Get the Server Model Server Loader class
*

View File

@@ -0,0 +1,83 @@
<?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
*/
namespace VDM\Joomla\Componentbuilder\Compiler\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\Componentbuilder\Compiler\Templatelayout\Data as TemplatelayoutData ;
use VDM\Joomla\Componentbuilder\Compiler\Alias\Data as AliasData;
/**
* Compiler Templatelayout
*
* @since 3.2.0
*/
class Templatelayout implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(TemplatelayoutData::class, 'Templatelayout.Data')
->share('Templatelayout.Data', [$this, 'getTemplatelayoutData'], true);
$container->alias(AliasData::class, 'Alias.Data')
->share('Alias.Data', [$this, 'getAliasData'], true);
}
/**
* Get the Compiler Templatelayout Data
*
* @param Container $container The DI container.
*
* @return TemplatelayoutData
* @since 3.2.0
*/
public function getTemplatelayoutData(Container $container): TemplatelayoutData
{
return new TemplatelayoutData(
$container->get('Config'),
$container->get('Registry'),
$container->get('Alias.Data')
);
}
/**
* Get the Compiler Alias Data
*
* @param Container $container The DI container.
*
* @return AliasData
* @since 3.2.0
*/
public function getAliasData(Container $container): AliasData
{
return new AliasData(
$container->get('Config'),
$container->get('Registry'),
$container->get('Customcode'),
$container->get('Customcode.Gui'),
$container->get('Model.Loader'),
$container->get('Model.Libraries')
);
}
}