diff --git a/README.md b/README.md index 074a057..985a232 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,9 @@ This repository contains an index (see below) of all the approved powers within - **final class Grep** | [Details](src/6784dd52-0909-451a-a872-9a942a023c68) | [Code](src/6784dd52-0909-451a-a872-9a942a023c68/code.php) | [Settings](src/6784dd52-0909-451a-a872-9a942a023c68/settings.json) | Super__6784dd52_0909_451a_a872_9a942a023c68__Power - **final class Super** | [Details](src/3ab0eba9-f37b-4b37-aec1-2e78067f2aff) | [Code](src/3ab0eba9-f37b-4b37-aec1-2e78067f2aff/code.php) | [Settings](src/3ab0eba9-f37b-4b37-aec1-2e78067f2aff/settings.json) | Super__3ab0eba9_f37b_4b37_aec1_2e78067f2aff__Power - **class Config** | [Details](src/be4ccfae-65a9-401e-bdbe-637d8c226954) | [Code](src/be4ccfae-65a9-401e-bdbe-637d8c226954/code.php) | [Settings](src/be4ccfae-65a9-401e-bdbe-637d8c226954/settings.json) | Super__be4ccfae_65a9_401e_bdbe_637d8c226954__Power +- **Namespace**: [VDM\Joomla\Componentbuilder\Service](#vdm-joomla-componentbuilder-service) + + - **class CoreRules** | [Details](src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0) | [Code](src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.php) | [Settings](src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/settings.json) | Super__f65b52c2_593a_4c35_89d1_4a8e57a1adf0__Power - **Namespace**: [VDM\Joomla\Componentbuilder\Utilities](#vdm-joomla-componentbuilder-utilities) - **class Constantpaths** | [Details](src/e0c8c931-52a0-4171-9909-e8769505bb1f) | [Code](src/e0c8c931-52a0-4171-9909-e8769505bb1f/code.php) | [Settings](src/e0c8c931-52a0-4171-9909-e8769505bb1f/settings.json) | Super__e0c8c931_52a0_4171_9909_e8769505bb1f__Power diff --git a/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.php b/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.php index 54a9b7b..be0f88f 100644 --- a/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.php +++ b/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.php @@ -261,7 +261,7 @@ final class InputButton implements InputButtonInterface $addButton[] = Indent::_(4) . "//" . Line::_(__Line__, __Class__) . " build edit button"; $addButton[] = Indent::_(4) - . "\$button[] = 'config->lang_prefix . "_EDIT_S', \$button_label).'\" style=\"display: none; border-radius: 0px 4px 4px 0px;\" href=\"#\" >"; $addButton[] = Indent::_(5) diff --git a/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.power b/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.power index 27cbb01..ebacc20 100644 --- a/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.power +++ b/src/163fa7ca-21bd-4e7f-a618-26fe10b870fe/code.power @@ -230,7 +230,7 @@ $addButton[] = Indent::_(4) . "//" . Line::_(__Line__, __Class__) . " build edit button"; $addButton[] = Indent::_(4) - . "\$button[] = 'config->lang_prefix . "_EDIT_S', \$button_label).'\" style=\"display: none; border-radius: 0px 4px 4px 0px;\" href=\"#\" >"; $addButton[] = Indent::_(5) diff --git a/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.php b/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.php index fe58464..22e61bf 100644 --- a/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.php +++ b/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.php @@ -261,7 +261,7 @@ final class InputButton implements InputButtonInterface $addButton[] = Indent::_(4) . "//" . Line::_(__Line__, __Class__) . " build edit button"; $addButton[] = Indent::_(4) - . "\$button[] = 'config->lang_prefix . "_EDIT_S', \$button_label).'\" style=\"display: none; border-radius: 0px 4px 4px 0px;\" href=\"#\" >"; $addButton[] = Indent::_(5) diff --git a/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.power b/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.power index 27cbb01..ebacc20 100644 --- a/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.power +++ b/src/1b8a40e9-7847-4341-8a8e-dfdc2d531bbe/code.power @@ -230,7 +230,7 @@ $addButton[] = Indent::_(4) . "//" . Line::_(__Line__, __Class__) . " build edit button"; $addButton[] = Indent::_(4) - . "\$button[] = 'config->lang_prefix . "_EDIT_S', \$button_label).'\" style=\"display: none; border-radius: 0px 4px 4px 0px;\" href=\"#\" >"; $addButton[] = Indent::_(5) diff --git a/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.php b/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.php index fb3ac3a..4d02833 100644 --- a/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.php +++ b/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.php @@ -263,7 +263,7 @@ final class InputButton implements InputButtonInterface $addButton[] = Indent::_(4) . "\$button[] = 'config->lang_prefix - . "_EDIT_S', \$button_label).'\" style=\"display: none; padding: 4px 4px 4px 7px;\" href=\"#\" >"; + . "_EDIT_S', \$button_label).'\" style=\"display: none; padding: 3px 4px 4px 7px;\" href=\"#\" >"; $addButton[] = Indent::_(5) . "';"; $addButton[] = Indent::_(4) . "//" . Line::_(__Line__, __Class__) diff --git a/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.power b/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.power index aa6450e..b533ef1 100644 --- a/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.power +++ b/src/2bc33733-e900-4a9c-8cb3-c537aa9db785/code.power @@ -232,7 +232,7 @@ $addButton[] = Indent::_(4) . "\$button[] = 'config->lang_prefix - . "_EDIT_S', \$button_label).'\" style=\"display: none; padding: 4px 4px 4px 7px;\" href=\"#\" >"; + . "_EDIT_S', \$button_label).'\" style=\"display: none; padding: 3px 4px 4px 7px;\" href=\"#\" >"; $addButton[] = Indent::_(5) . "';"; $addButton[] = Indent::_(4) . "//" . Line::_(__Line__, __Class__) diff --git a/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.php b/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.php index 5135b50..6486921 100644 --- a/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.php +++ b/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.php @@ -150,7 +150,10 @@ class Autoloader // for now we load it if the plugin is not loaded // but we may want to add a switch that // controls this behaviour. - return !$this->loadPluginAutoloader(); + // return !$this->loadPluginAutoloader(); + // lets load it anyway (can't break anything) + // but we will still like a switch for this + return true; } /** diff --git a/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.power b/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.power index f6cca26..3d14913 100644 --- a/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.power +++ b/src/6e64917c-d687-4ef3-a655-811319f5a81e/code.power @@ -121,7 +121,10 @@ // for now we load it if the plugin is not loaded // but we may want to add a switch that // controls this behaviour. - return !$this->loadPluginAutoloader(); + // return !$this->loadPluginAutoloader(); + // lets load it anyway (can't break anything) + // but we will still like a switch for this + return true; } /** diff --git a/src/6e64917c-d687-4ef3-a655-811319f5a81e/settings.json b/src/6e64917c-d687-4ef3-a655-811319f5a81e/settings.json index f6121ef..d756566 100644 --- a/src/6e64917c-d687-4ef3-a655-811319f5a81e/settings.json +++ b/src/6e64917c-d687-4ef3-a655-811319f5a81e/settings.json @@ -10,27 +10,27 @@ "system_name": "JCB.Compiler.Power.Autoloader", "type": "class", "use_selection": { - "use_selection1": { + "use_selection0": { "use": "b836c1b1-b6b1-44f7-b8a2-9a763a4185b1", "as": "default" }, - "use_selection2": { + "use_selection1": { "use": "fa4bf18e-301e-42e3-91fb-6e0096c07adc", "as": "default" }, - "use_selection3": { + "use_selection2": { "use": "adfbe68a-6d22-43e5-aee8-2787e8c47e75", "as": "Content" }, - "use_selection4": { + "use_selection3": { "use": "4e6ff11d-bebf-42f5-8fd7-b2f882857222", "as": "default" }, - "use_selection5": { + "use_selection4": { "use": "a68c010b-e92e-47d5-8a44-d23cfddeb6c6", "as": "default" }, - "use_selection6": { + "use_selection5": { "use": "0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a", "as": "default" } diff --git a/src/77224dc6-8024-47eb-896e-18ec3aa23420/code.php b/src/77224dc6-8024-47eb-896e-18ec3aa23420/code.php index 232fb62..f38ac5e 100644 --- a/src/77224dc6-8024-47eb-896e-18ec3aa23420/code.php +++ b/src/77224dc6-8024-47eb-896e-18ec3aa23420/code.php @@ -12,6 +12,7 @@ namespace VDM\Joomla\Componentbuilder\Compiler\JoomlaFive; +use Joomla\CMS\Factory; use Joomla\Registry\Registry; use Joomla\CMS\Plugin\PluginHelper; use VDM\Joomla\Utilities\Component\Helper; diff --git a/src/77224dc6-8024-47eb-896e-18ec3aa23420/settings.json b/src/77224dc6-8024-47eb-896e-18ec3aa23420/settings.json index f20beb3..d4666be 100644 --- a/src/77224dc6-8024-47eb-896e-18ec3aa23420/settings.json +++ b/src/77224dc6-8024-47eb-896e-18ec3aa23420/settings.json @@ -20,6 +20,6 @@ "namespace": "VDM\\Joomla\\Componentbuilder.Compiler.JoomlaFive.Event", "description": "Compiler Events\r\n\r\n@since 3.2.0", "licensing_template": "\/**\r\n * @package Joomla.Component.Builder\r\n *\r\n * @created 4th September, 2022\r\n * @author Llewellyn van der Merwe \r\n * @git Joomla Component Builder \r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n", - "head": "use Joomla\\Registry\\Registry;\r\nuse Joomla\\CMS\\Plugin\\PluginHelper;", + "head": "use Joomla\\CMS\\Factory;\r\nuse Joomla\\Registry\\Registry;\r\nuse Joomla\\CMS\\Plugin\\PluginHelper;", "composer": "" } \ No newline at end of file diff --git a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/README.md b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/README.md index a88703c..cb106a4 100644 --- a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/README.md +++ b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/README.md @@ -24,9 +24,6 @@ class Field #Gold { + getRule(Container $container) : Rule + getCustomcode(Container $container) : Customcode + getDatabaseName(Container $container) : DatabaseName - + getJ3CoreRule(Container $container) : J3CoreRule - + getJ4CoreRule(Container $container) : J4CoreRule - + getJ5CoreRule(Container $container) : J5CoreRule + getJ3CoreField(Container $container) : J3CoreField + getJ4CoreField(Container $container) : J4CoreField + getJ5CoreField(Container $container) : J5CoreField @@ -34,7 +31,6 @@ class Field #Gold { + getJ4InputButton(Container $container) : J4InputButton + getJ5InputButton(Container $container) : J5InputButton + getCoreField(Container $container) : CoreField - + getCoreRule(Container $container) : CoreRule + getInputButton(Container $container) : InputButton } @@ -115,83 +111,55 @@ note right of Field::getDatabaseName return: DatabaseName end note -note left of Field::getJ3CoreRule - Get The CoreRule Class. - - since: 3.2.0 - return: J3CoreRule -end note - -note right of Field::getJ4CoreRule - Get The CoreRule Class. - - since: 3.2.0 - return: J4CoreRule -end note - -note left of Field::getJ5CoreRule - Get The CoreRule Class. - - since: 3.2.0 - return: J5CoreRule -end note - -note right of Field::getJ3CoreField +note left of Field::getJ3CoreField Get The CoreField Class. since: 3.2.0 return: J3CoreField end note -note left of Field::getJ4CoreField +note right of Field::getJ4CoreField Get The CoreField Class. since: 3.2.0 return: J4CoreField end note -note right of Field::getJ5CoreField +note left of Field::getJ5CoreField Get The CoreField Class. since: 3.2.0 return: J5CoreField end note -note left of Field::getJ3InputButton +note right of Field::getJ3InputButton Get The J3InputButton Class. since: 3.2.0 return: J3InputButton end note -note right of Field::getJ4InputButton +note left of Field::getJ4InputButton Get The J4InputButton Class. since: 3.2.0 return: J4InputButton end note -note left of Field::getJ5InputButton +note right of Field::getJ5InputButton Get The J5InputButton Class. since: 3.2.0 return: J5InputButton end note -note right of Field::getCoreField +note left of Field::getCoreField Get The CoreFieldInterface Class. since: 3.2.0 return: CoreField end note -note left of Field::getCoreRule - Get The CoreRuleInterface Class. - - since: 3.2.0 - return: CoreRule -end note - note right of Field::getInputButton Get The InputButton Class. diff --git a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.php b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.php index 01292db..1db4eac 100644 --- a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.php +++ b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.php @@ -25,9 +25,6 @@ use VDM\Joomla\Componentbuilder\Compiler\Field\UniqueName; use VDM\Joomla\Componentbuilder\Compiler\Field\Rule; use VDM\Joomla\Componentbuilder\Compiler\Field\Customcode; use VDM\Joomla\Componentbuilder\Compiler\Field\DatabaseName; -use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaThree\CoreRule as J3CoreRule; -use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFour\CoreRule as J4CoreRule; -use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFive\CoreRule as J5CoreRule; use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaThree\CoreField as J3CoreField; use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFour\CoreField as J4CoreField; use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFive\CoreField as J5CoreField; @@ -35,7 +32,6 @@ use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaThree\InputButton as J3Inpu use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFour\InputButton as J4InputButton; use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFive\InputButton as J5InputButton; use VDM\Joomla\Componentbuilder\Compiler\Interfaces\Field\CoreFieldInterface as CoreField; -use VDM\Joomla\Componentbuilder\Compiler\Interfaces\Field\CoreRuleInterface as CoreRule; use VDM\Joomla\Componentbuilder\Compiler\Interfaces\Field\InputButtonInterface as InputButton; @@ -102,15 +98,6 @@ class Field implements ServiceProviderInterface $container->alias(DatabaseName::class, 'Field.Database.Name') ->share('Field.Database.Name', [$this, 'getDatabaseName'], true); - $container->alias(J3CoreRule::class, 'J3.Field.Core.Rule') - ->share('J3.Field.Core.Rule', [$this, 'getJ3CoreRule'], true); - - $container->alias(J4CoreRule::class, 'J4.Field.Core.Rule') - ->share('J4.Field.Core.Rule', [$this, 'getJ4CoreRule'], true); - - $container->alias(J5CoreRule::class, 'J5.Field.Core.Rule') - ->share('J5.Field.Core.Rule', [$this, 'getJ5CoreRule'], true); - $container->alias(J3CoreField::class, 'J3.Field.Core.Field') ->share('J3.Field.Core.Field', [$this, 'getJ3CoreField'], true); @@ -132,9 +119,6 @@ class Field implements ServiceProviderInterface $container->alias(CoreField::class, 'Field.Core.Field') ->share('Field.Core.Field', [$this, 'getCoreField'], true); - $container->alias(CoreRule::class, 'Field.Core.Rule') - ->share('Field.Core.Rule', [$this, 'getCoreRule'], true); - $container->alias(InputButton::class, 'Field.Input.Button') ->share('Field.Input.Button', [$this, 'getInputButton'], true); } @@ -308,45 +292,6 @@ class Field implements ServiceProviderInterface ); } - /** - * Get The CoreRule Class. - * - * @param Container $container The DI container. - * - * @return J3CoreRule - * @since 3.2.0 - */ - public function getJ3CoreRule(Container $container): J3CoreRule - { - return new J3CoreRule(); - } - - /** - * Get The CoreRule Class. - * - * @param Container $container The DI container. - * - * @return J4CoreRule - * @since 3.2.0 - */ - public function getJ4CoreRule(Container $container): J4CoreRule - { - return new J4CoreRule(); - } - - /** - * Get The CoreRule Class. - * - * @param Container $container The DI container. - * - * @return J5CoreRule - * @since 3.2.0 - */ - public function getJ5CoreRule(Container $container): J5CoreRule - { - return new J5CoreRule(); - } - /** * Get The CoreField Class. * @@ -455,24 +400,6 @@ class Field implements ServiceProviderInterface return $container->get('J' . $this->currentVersion . '.Field.Core.Field'); } - /** - * Get The CoreRuleInterface Class. - * - * @param Container $container The DI container. - * - * @return CoreRule - * @since 3.2.0 - */ - public function getCoreRule(Container $container): CoreRule - { - if (empty($this->currentVersion)) - { - $this->currentVersion = Version::MAJOR_VERSION; - } - - return $container->get('J' . $this->currentVersion . '.Field.Core.Rule'); - } - /** * Get The InputButton Class. * diff --git a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.power b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.power index 980d07c..101c5fe 100644 --- a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.power +++ b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/code.power @@ -54,15 +54,6 @@ $container->alias(DatabaseName::class, 'Field.Database.Name') ->share('Field.Database.Name', [$this, 'getDatabaseName'], true); - $container->alias(J3CoreRule::class, 'J3.Field.Core.Rule') - ->share('J3.Field.Core.Rule', [$this, 'getJ3CoreRule'], true); - - $container->alias(J4CoreRule::class, 'J4.Field.Core.Rule') - ->share('J4.Field.Core.Rule', [$this, 'getJ4CoreRule'], true); - - $container->alias(J5CoreRule::class, 'J5.Field.Core.Rule') - ->share('J5.Field.Core.Rule', [$this, 'getJ5CoreRule'], true); - $container->alias(J3CoreField::class, 'J3.Field.Core.Field') ->share('J3.Field.Core.Field', [$this, 'getJ3CoreField'], true); @@ -84,9 +75,6 @@ $container->alias(CoreField::class, 'Field.Core.Field') ->share('Field.Core.Field', [$this, 'getCoreField'], true); - $container->alias(CoreRule::class, 'Field.Core.Rule') - ->share('Field.Core.Rule', [$this, 'getCoreRule'], true); - $container->alias(InputButton::class, 'Field.Input.Button') ->share('Field.Input.Button', [$this, 'getInputButton'], true); } @@ -260,45 +248,6 @@ ); } - /** - * Get The CoreRule Class. - * - * @param Container $container The DI container. - * - * @return J3CoreRule - * @since 3.2.0 - */ - public function getJ3CoreRule(Container $container): J3CoreRule - { - return new J3CoreRule(); - } - - /** - * Get The CoreRule Class. - * - * @param Container $container The DI container. - * - * @return J4CoreRule - * @since 3.2.0 - */ - public function getJ4CoreRule(Container $container): J4CoreRule - { - return new J4CoreRule(); - } - - /** - * Get The CoreRule Class. - * - * @param Container $container The DI container. - * - * @return J5CoreRule - * @since 3.2.0 - */ - public function getJ5CoreRule(Container $container): J5CoreRule - { - return new J5CoreRule(); - } - /** * Get The CoreField Class. * @@ -407,24 +356,6 @@ return $container->get('J' . $this->currentVersion . '.Field.Core.Field'); } - /** - * Get The CoreRuleInterface Class. - * - * @param Container $container The DI container. - * - * @return CoreRule - * @since 3.2.0 - */ - public function getCoreRule(Container $container): CoreRule - { - if (empty($this->currentVersion)) - { - $this->currentVersion = Version::MAJOR_VERSION; - } - - return $container->get('J' . $this->currentVersion . '.Field.Core.Rule'); - } - /** * Get The InputButton Class. * diff --git a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/settings.json b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/settings.json index 4efb258..69ff1b3 100644 --- a/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/settings.json +++ b/src/c6c30d66-3106-44eb-9272-b2cf7ec74613/settings.json @@ -52,51 +52,35 @@ "use": "99368a6f-2f64-4d4e-ad3a-544d4020ecc6", "as": "default" }, - "use_selection10": { - "use": "24da9672-e47f-4bb1-b6c0-0ebfc17f0957", - "as": "J3CoreRule" - }, - "use_selection11": { - "use": "43f46bb2-ab6d-47c7-9fd9-f1745a3576fb", - "as": "J4CoreRule" - }, - "use_selection19": { - "use": "8b56b62d-b960-4823-b9bb-c71675a71b85", - "as": "J5CoreRule" - }, - "use_selection12": { + "use_selection13": { "use": "e6683873-b74e-4b54-8466-69f8a9282033", "as": "J3CoreField" }, - "use_selection13": { + "use_selection14": { "use": "c6818275-cdf7-4fce-a365-90d95a77a71c", "as": "J4CoreField" }, - "use_selection20": { + "use_selection15": { "use": "4c143764-1b84-4b9f-86c5-8de119b26f1a", "as": "J5CoreField" }, - "use_selection14": { + "use_selection16": { "use": "2bc33733-e900-4a9c-8cb3-c537aa9db785", "as": "J3InputButton" }, - "use_selection15": { + "use_selection17": { "use": "1b8a40e9-7847-4341-8a8e-dfdc2d531bbe", "as": "J4InputButton" }, - "use_selection21": { + "use_selection18": { "use": "163fa7ca-21bd-4e7f-a618-26fe10b870fe", "as": "J5InputButton" }, - "use_selection16": { + "use_selection19": { "use": "e2f5fddf-cbc8-44ee-836c-7f3fb08d8900", "as": "CoreField" }, - "use_selection17": { - "use": "b9f05dc4-d23a-499a-a826-9749b81818ed", - "as": "CoreRule" - }, - "use_selection18": { + "use_selection21": { "use": "c600f58c-3fe2-4d2d-b711-2660eab6effe", "as": "InputButton" } diff --git a/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.php b/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.php index d244e1d..990d0ea 100644 --- a/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.php +++ b/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.php @@ -31,6 +31,7 @@ use VDM\Joomla\Componentbuilder\Compiler\Service\Library; use VDM\Joomla\Componentbuilder\Compiler\Service\Customview; use VDM\Joomla\Componentbuilder\Compiler\Service\Templatelayout; use VDM\Joomla\Componentbuilder\Compiler\Service\Extension; +use VDM\Joomla\Componentbuilder\Service\CoreRules; use VDM\Joomla\Componentbuilder\Compiler\Service\Field; use VDM\Joomla\Componentbuilder\Compiler\Service\Joomlamodule; use VDM\Joomla\Componentbuilder\Compiler\Service\Joomlaplugin; @@ -162,6 +163,7 @@ abstract class Factory implements FactoryInterface ->registerServiceProvider(new Customview()) ->registerServiceProvider(new Templatelayout()) ->registerServiceProvider(new Extension()) + ->registerServiceProvider(new CoreRules()) ->registerServiceProvider(new Field()) ->registerServiceProvider(new Joomlamodule()) ->registerServiceProvider(new Joomlaplugin()) diff --git a/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.power b/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.power index 0118f3d..6df63c0 100644 --- a/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.power +++ b/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/code.power @@ -99,6 +99,7 @@ ->registerServiceProvider(new Customview()) ->registerServiceProvider(new Templatelayout()) ->registerServiceProvider(new Extension()) + ->registerServiceProvider(new CoreRules()) ->registerServiceProvider(new Field()) ->registerServiceProvider(new Joomlamodule()) ->registerServiceProvider(new Joomlaplugin()) diff --git a/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/settings.json b/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/settings.json index a047fa8..ea305b8 100644 --- a/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/settings.json +++ b/src/d910d8b8-4c23-4f3e-8cda-438f2d2bd7ac/settings.json @@ -84,6 +84,10 @@ "use": "ed9591cb-0a03-400a-bf47-eaf78ab19b9d", "as": "default" }, + "use_selection38": { + "use": "f65b52c2-593a-4c35-89d1-4a8e57a1adf0", + "as": "default" + }, "use_selection18": { "use": "c6c30d66-3106-44eb-9272-b2cf7ec74613", "as": "default" @@ -100,67 +104,67 @@ "use": "516f93b8-5fff-41c6-aeaf-2d93180a12cc", "as": "default" }, - "use_selection37": { + "use_selection22": { "use": "c7230c8c-ea88-4d8d-8c53-6136133195b7", "as": "default" }, - "use_selection22": { + "use_selection23": { "use": "2c76c06e-a371-4b73-9fbe-b4d9b4df55d7", "as": "default" }, - "use_selection23": { + "use_selection24": { "use": "8fdd604f-53e7-4a91-9935-afcfd2f6ac1b", "as": "default" }, - "use_selection24": { + "use_selection25": { "use": "56ba30f5-a5c4-4c4c-be6f-a56f7f9cbc60", "as": "default" }, - "use_selection25": { + "use_selection26": { "use": "bbd36fbf-d905-47e8-8e67-9ea6ec734712", "as": "default" }, - "use_selection26": { + "use_selection27": { "use": "71acf8d6-32b8-4173-8277-eb9cda29fd64", "as": "default" }, - "use_selection27": { + "use_selection28": { "use": "6edf0cf3-c2b0-45c9-84d2-c6ef1c5d434c", "as": "GiteaUtilities" }, - "use_selection28": { + "use_selection29": { "use": "f4d00907-c94a-49b7-8727-d64c1fa74cf5", "as": "GiteaSettings" }, - "use_selection29": { + "use_selection30": { "use": "3d25ea99-4f33-489a-934c-0e42027e6114", "as": "GiteaOrg" }, - "use_selection30": { + "use_selection31": { "use": "0a69cfc5-3223-4afb-8c9a-75f4bacf3c0e", "as": "GiteaUser" }, - "use_selection31": { + "use_selection32": { "use": "0bb2b72f-ebcd-46fe-844b-ac5fe715c230", "as": "GiteaRepo" }, - "use_selection32": { + "use_selection33": { "use": "808da4eb-b467-46cf-a767-e7e714f46b5a", "as": "GiteaPackage" }, - "use_selection33": { + "use_selection34": { "use": "44396eb8-e14c-47d9-9bdc-8205c0fd2bba", "as": "GiteaIssue" }, - "use_selection34": { + "use_selection35": { "use": "be57f70f-1214-4d69-8d33-7cd4e312ff70", "as": "GiteNotifi" }, - "use_selection35": { + "use_selection36": { "use": "012af7d0-3436-4cae-b856-be49bdc39a3e", "as": "GiteaMisc" }, - "use_selection36": { + "use_selection37": { "use": "ddced4c5-667d-4559-873d-d716c17fd85b", "as": "GiteaAdmin" } diff --git a/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/README.md b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/README.md new file mode 100644 index 0000000..78c319a --- /dev/null +++ b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/README.md @@ -0,0 +1,70 @@ +``` +██████╗ ██████╗ ██╗ ██╗███████╗██████╗ +██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗ +██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝ +██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗ +██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║ +╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝ +``` +# class CoreRules (Details) +> namespace: **VDM\Joomla\Componentbuilder\Service** +```uml +@startuml +class CoreRules #Gold { + # $currentVersion + + register(Container $container) : void + + getJ3CoreRule(Container $container) : J3CoreRule + + getJ4CoreRule(Container $container) : J4CoreRule + + getJ5CoreRule(Container $container) : J5CoreRule + + getCoreRule(Container $container) : CoreRule +} + +note right of CoreRules::register + Registers the service provider with a DI container. + + since: 3.2.0 + return: void +end note + +note right of CoreRules::getJ3CoreRule + Get The CoreRule Class. + + since: 3.2.0 + return: J3CoreRule +end note + +note right of CoreRules::getJ4CoreRule + Get The CoreRule Class. + + since: 3.2.0 + return: J4CoreRule +end note + +note right of CoreRules::getJ5CoreRule + Get The CoreRule Class. + + since: 3.2.0 + return: J5CoreRule +end note + +note right of CoreRules::getCoreRule + Get The CoreRuleInterface Class. + + since: 3.2.0 + return: CoreRule +end note + +@enduml +``` + +--- +``` + ██╗ ██████╗██████╗ + ██║██╔════╝██╔══██╗ + ██║██║ ██████╔╝ +██ ██║██║ ██╔══██╗ +╚█████╔╝╚██████╗██████╔╝ + ╚════╝ ╚═════╝╚═════╝ +``` +> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder) + diff --git a/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.php b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.php new file mode 100644 index 0000000..ce8d633 --- /dev/null +++ b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.php @@ -0,0 +1,119 @@ + + * @git 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\Service; + + +use Joomla\DI\Container; +use Joomla\DI\ServiceProviderInterface; +use Joomla\CMS\Version; +use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaThree\CoreRule as J3CoreRule; +use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFour\CoreRule as J4CoreRule; +use VDM\Joomla\Componentbuilder\Compiler\Field\JoomlaFive\CoreRule as J5CoreRule; +use VDM\Joomla\Componentbuilder\Compiler\Interfaces\Field\CoreRuleInterface as CoreRule; + + +/** + * Joomla Core Rules + * + * @since 3.2.0 + */ +class CoreRules implements ServiceProviderInterface +{ + /** + * Current Joomla Version We are IN + * + * @var int + * @since 3.2.0 + **/ + protected $currentVersion; + + /** + * 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(J3CoreRule::class, 'J3.Field.Core.Rule') + ->share('J3.Field.Core.Rule', [$this, 'getJ3CoreRule'], true); + + $container->alias(J4CoreRule::class, 'J4.Field.Core.Rule') + ->share('J4.Field.Core.Rule', [$this, 'getJ4CoreRule'], true); + + $container->alias(J5CoreRule::class, 'J5.Field.Core.Rule') + ->share('J5.Field.Core.Rule', [$this, 'getJ5CoreRule'], true); + + $container->alias(CoreRule::class, 'Field.Core.Rule') + ->share('Field.Core.Rule', [$this, 'getCoreRule'], true); + } + + /** + * Get The CoreRule Class. + * + * @param Container $container The DI container. + * + * @return J3CoreRule + * @since 3.2.0 + */ + public function getJ3CoreRule(Container $container): J3CoreRule + { + return new J3CoreRule(); + } + + /** + * Get The CoreRule Class. + * + * @param Container $container The DI container. + * + * @return J4CoreRule + * @since 3.2.0 + */ + public function getJ4CoreRule(Container $container): J4CoreRule + { + return new J4CoreRule(); + } + + /** + * Get The CoreRule Class. + * + * @param Container $container The DI container. + * + * @return J5CoreRule + * @since 3.2.0 + */ + public function getJ5CoreRule(Container $container): J5CoreRule + { + return new J5CoreRule(); + } + + /** + * Get The CoreRuleInterface Class. + * + * @param Container $container The DI container. + * + * @return CoreRule + * @since 3.2.0 + */ + public function getCoreRule(Container $container): CoreRule + { + if (empty($this->currentVersion)) + { + $this->currentVersion = Version::MAJOR_VERSION; + } + + return $container->get('J' . $this->currentVersion . '.Field.Core.Rule'); + } +} + diff --git a/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.power b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.power new file mode 100644 index 0000000..328455f --- /dev/null +++ b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/code.power @@ -0,0 +1,87 @@ + /** + * Current Joomla Version We are IN + * + * @var int + * @since 3.2.0 + **/ + protected $currentVersion; + + /** + * 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(J3CoreRule::class, 'J3.Field.Core.Rule') + ->share('J3.Field.Core.Rule', [$this, 'getJ3CoreRule'], true); + + $container->alias(J4CoreRule::class, 'J4.Field.Core.Rule') + ->share('J4.Field.Core.Rule', [$this, 'getJ4CoreRule'], true); + + $container->alias(J5CoreRule::class, 'J5.Field.Core.Rule') + ->share('J5.Field.Core.Rule', [$this, 'getJ5CoreRule'], true); + + $container->alias(CoreRule::class, 'Field.Core.Rule') + ->share('Field.Core.Rule', [$this, 'getCoreRule'], true); + } + + /** + * Get The CoreRule Class. + * + * @param Container $container The DI container. + * + * @return J3CoreRule + * @since 3.2.0 + */ + public function getJ3CoreRule(Container $container): J3CoreRule + { + return new J3CoreRule(); + } + + /** + * Get The CoreRule Class. + * + * @param Container $container The DI container. + * + * @return J4CoreRule + * @since 3.2.0 + */ + public function getJ4CoreRule(Container $container): J4CoreRule + { + return new J4CoreRule(); + } + + /** + * Get The CoreRule Class. + * + * @param Container $container The DI container. + * + * @return J5CoreRule + * @since 3.2.0 + */ + public function getJ5CoreRule(Container $container): J5CoreRule + { + return new J5CoreRule(); + } + + /** + * Get The CoreRuleInterface Class. + * + * @param Container $container The DI container. + * + * @return CoreRule + * @since 3.2.0 + */ + public function getCoreRule(Container $container): CoreRule + { + if (empty($this->currentVersion)) + { + $this->currentVersion = Version::MAJOR_VERSION; + } + + return $container->get('J' . $this->currentVersion . '.Field.Core.Rule'); + } \ No newline at end of file diff --git a/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/settings.json b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/settings.json new file mode 100644 index 0000000..2154cb7 --- /dev/null +++ b/src/f65b52c2-593a-4c35-89d1-4a8e57a1adf0/settings.json @@ -0,0 +1,38 @@ +{ + "add_head": "1", + "add_licensing_template": "2", + "extends": "0", + "guid": "f65b52c2-593a-4c35-89d1-4a8e57a1adf0", + "implements": [ + "-1" + ], + "load_selection": null, + "name": "CoreRules", + "power_version": "1.0.0", + "system_name": "JCB.Service.CoreRules", + "type": "class", + "use_selection": { + "use_selection0": { + "use": "24da9672-e47f-4bb1-b6c0-0ebfc17f0957", + "as": "J3CoreRule" + }, + "use_selection1": { + "use": "43f46bb2-ab6d-47c7-9fd9-f1745a3576fb", + "as": "J4CoreRule" + }, + "use_selection2": { + "use": "8b56b62d-b960-4823-b9bb-c71675a71b85", + "as": "J5CoreRule" + }, + "use_selection3": { + "use": "b9f05dc4-d23a-499a-a826-9749b81818ed", + "as": "CoreRule" + } + }, + "namespace": "VDM\\Joomla\\Componentbuilder.Service.CoreRules", + "description": "Joomla Core Rules\r\n\r\n@since 3.2.0", + "implements_custom": "ServiceProviderInterface", + "licensing_template": "\/**\r\n * @package Joomla.Component.Builder\r\n *\r\n * @created 4th September, 2022\r\n * @author Llewellyn van der Merwe \r\n * @git Joomla Component Builder \r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n", + "head": "use Joomla\\DI\\Container;\r\nuse Joomla\\DI\\ServiceProviderInterface;\r\nuse Joomla\\CMS\\Version;", + "composer": "" +} \ No newline at end of file diff --git a/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.php b/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.php index 9868f0e..4a8ff2b 100644 --- a/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.php +++ b/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.php @@ -704,6 +704,22 @@ class Config extends BaseConfig */ protected function getJcbpowerspath(): string { + $add = GetHelper::var( + 'joomla_component', $this->component_id, 'id', 'add_jcb_powers_path' + ); + + if ($add == 1) + { + $path = GetHelper::var( + 'joomla_component', $this->component_id, 'id', 'jcb_powers_path' + ); + + if (StringHelper::check($path)) + { + return $path; + } + } + // get jcb powers path return $this->params->get('jcb_powers_path', 'libraries/jcb_powers'); } diff --git a/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.power b/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.power index 42aa364..17e3351 100644 --- a/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.power +++ b/src/fa4bf18e-301e-42e3-91fb-6e0096c07adc/code.power @@ -670,6 +670,22 @@ */ protected function getJcbpowerspath(): string { + $add = GetHelper::var( + 'joomla_component', $this->component_id, 'id', 'add_jcb_powers_path' + ); + + if ($add == 1) + { + $path = GetHelper::var( + 'joomla_component', $this->component_id, 'id', 'jcb_powers_path' + ); + + if (StringHelper::check($path)) + { + return $path; + } + } + // get jcb powers path return $this->params->get('jcb_powers_path', 'libraries/jcb_powers'); } diff --git a/super-powers.json b/super-powers.json index 594efd4..73537f9 100644 --- a/super-powers.json +++ b/super-powers.json @@ -3827,6 +3827,17 @@ "spk": "Super__f48764e0_16c6_459c_8576_af7616f3b720__Power", "guid": "f48764e0-16c6-459c-8576-af7616f3b720" }, + "f65b52c2-593a-4c35-89d1-4a8e57a1adf0": { + "name": "CoreRules", + "type": "class", + "namespace": "VDM\\Joomla\\Componentbuilder\\Service", + "code": "src\/f65b52c2-593a-4c35-89d1-4a8e57a1adf0\/code.php", + "power": "src\/f65b52c2-593a-4c35-89d1-4a8e57a1adf0\/code.power", + "settings": "src\/f65b52c2-593a-4c35-89d1-4a8e57a1adf0\/settings.json", + "path": "src\/f65b52c2-593a-4c35-89d1-4a8e57a1adf0", + "spk": "Super__f65b52c2_593a_4c35_89d1_4a8e57a1adf0__Power", + "guid": "f65b52c2-593a-4c35-89d1-4a8e57a1adf0" + }, "f6ba34a2-0cd7-4dc1-ab67-75e962a5045b": { "name": "Xml", "type": "final class",