Skip to content
Permalink
Browse files

Moved the phpseclib files to their own folder in libraries. Improved …

…the composer autoloader in JCB. Improved the phpseclib class implementation. Added a new Expert Mode to field modeling under the database tab in the field area.
  • Loading branch information...
Llewellynvdm committed Oct 16, 2019
1 parent d78e3bb commit 010a134e1a27adfa09f2c64ad6dfef85d70dc508
Showing with 5,675 additions and 3,664 deletions.
  1. +6 −6 README.md
  2. +6 −6 admin/README.txt
  3. +30 −7 admin/helpers/compiler/a_Get.php
  4. +79 −46 admin/helpers/compiler/c_Fields.php
  5. +160 −53 admin/helpers/compiler/e_Interpretation.php
  6. +0 −3 admin/helpers/compiler/f_Infusion.php
  7. +1,063 −999 admin/helpers/componentbuilder.php
  8. +52 −16 admin/language/en-GB/en-GB.com_componentbuilder.ini
  9. +6 −1 admin/layouts/field/database_right.php
  10. +1 −1 admin/layouts/fieldtype/fields_fullwidth.php
  11. +1 −0 admin/layouts/library/behaviour_above.php
  12. +1 −1 admin/layouts/server/linked_components_fullwidth.php
  13. +1 −1 admin/models/ajax.php
  14. +60 −7 admin/models/field.php
  15. +12 −3 admin/models/fields.php
  16. +18 −16 admin/models/fields/libraries.php
  17. +22 −20 admin/models/fields/librariesx.php
  18. +18 −17 admin/models/fields/library.php
  19. +8 −7 admin/models/fieldtype.php
  20. +438 −140 admin/models/forms/field.js
  21. +124 −68 admin/models/forms/field.xml
  22. +303 −303 admin/models/forms/fieldtype.js
  23. +2 −0 admin/models/forms/fieldtype.xml
  24. +82 −82 admin/models/forms/help_document.js
  25. +539 −108 admin/models/forms/library.js
  26. +40 −25 admin/models/forms/library.xml
  27. +173 −173 admin/models/forms/server.js
  28. +1 −1 admin/models/joomla_components.php
  29. +29 −4 admin/models/libraries.php
  30. +1 −0 admin/models/library.php
  31. +1 −1 admin/models/server.php
  32. +8 −3 admin/sql/install.mysql.utf8.sql
  33. +1 −0 admin/sql/updates/mysql/2.10.1.sql
  34. +7 −0 admin/sql/updates/mysql/2.10.2.sql
  35. +127 −59 admin/views/field/tmpl/edit.php
  36. +170 −170 admin/views/fieldtype/tmpl/edit.php
  37. +1 −1 admin/views/fieldtype/view.html.php
  38. +30 −30 admin/views/help_document/tmpl/edit.php
  39. +4 −1 admin/views/libraries/tmpl/default_body.php
  40. +1 −1 admin/views/libraries/tmpl/default_foot.php
  41. +4 −1 admin/views/libraries/tmpl/default_head.php
  42. +68 −1 admin/views/libraries/view.html.php
  43. +303 −34 admin/views/library/tmpl/edit.php
  44. +66 −66 admin/views/server/tmpl/edit.php
  45. +1 −1 admin/views/server/view.html.php
  46. +3 −3 componentbuilder.xml
  47. +34 −0 componentbuilder_update_server.xml
  48. 0 libraries/{vdm_io → phpseclib}/index.html
  49. 0 libraries/{vdm_io → phpseclib}/vendor/.htaccess
  50. 0 libraries/{vdm_io → phpseclib}/vendor/autoload.php
  51. 0 libraries/{vdm_io → phpseclib}/vendor/composer/ClassLoader.php
  52. 0 libraries/{vdm_io → phpseclib}/vendor/composer/LICENSE
  53. 0 libraries/{vdm_io → phpseclib}/vendor/composer/autoload_classmap.php
  54. 0 libraries/{vdm_io → phpseclib}/vendor/composer/autoload_files.php
  55. 0 libraries/{vdm_io → phpseclib}/vendor/composer/autoload_namespaces.php
  56. 0 libraries/{vdm_io → phpseclib}/vendor/composer/autoload_psr4.php
  57. 0 libraries/{vdm_io → phpseclib}/vendor/composer/autoload_real.php
  58. 0 libraries/{vdm_io → phpseclib}/vendor/composer/autoload_static.php
  59. +6 −6 libraries/{vdm_io → phpseclib}/vendor/composer/installed.json
  60. 0 libraries/{vdm_io → phpseclib}/vendor/htaccess.txt
  61. 0 libraries/{vdm_io → phpseclib}/vendor/index.html
  62. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/AUTHORS
  63. +7 −0 libraries/phpseclib/vendor/phpseclib/phpseclib/BACKERS.md
  64. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/LICENSE
  65. +1 −1 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/README.md
  66. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/appveyor.yml
  67. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/composer.json
  68. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/AES.php
  69. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/Base.php
  70. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/Blowfish.php
  71. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/DES.php
  72. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php
  73. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/RC2.php
  74. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/RC4.php
  75. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php
  76. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/Random.php
  77. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/Rijndael.php
  78. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/TripleDES.php
  79. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Crypt/Twofish.php
  80. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/File/ANSI.php
  81. +9 −2 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php
  82. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/File/ASN1/Element.php
  83. +35 −3 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/File/X509.php
  84. +10 −2 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php
  85. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php
  86. +15 −0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php
  87. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP/Stream.php
  88. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Net/SSH1.php
  89. +405 −155 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php
  90. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent.php
  91. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent/Identity.php
  92. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/bootstrap.php
  93. 0 libraries/{vdm_io → phpseclib}/vendor/phpseclib/phpseclib/phpseclib/openssl.cnf
  94. 0 libraries/{vdm_io → phpseclib}/vendor/web.config
  95. +17 −9 script.php
  96. +1,063 −999 site/helpers/componentbuilder.php
  97. +2 −1 site/language/en-GB/en-GB.com_componentbuilder.ini
@@ -12,7 +12,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo

Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will safe you lots of time and money. A real must have!

You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.10.1) with **ALL** its features and **ALL** concepts totally open-source and free!
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.10.4) with **ALL** its features and **ALL** concepts totally open-source and free!

> Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
@@ -146,13 +146,13 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 14th October, 2019
+ *Version*: 2.10.1
+ *Last Build*: 16th October, 2019
+ *Version*: 2.10.4
+ *Copyright*: Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **253791**
+ *Field count*: **1347**
+ *File count*: **1618**
+ *Line count*: **255312**
+ *Field count*: **1353**
+ *File count*: **1620**
+ *Folder count*: **261**

> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com).
@@ -12,7 +12,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo

Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will safe you lots of time and money. A real must have!

You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.10.1) with **ALL** its features and **ALL** concepts totally open-source and free!
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.10.4) with **ALL** its features and **ALL** concepts totally open-source and free!

> Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)

@@ -146,13 +146,13 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 14th October, 2019
+ *Version*: 2.10.1
+ *Last Build*: 16th October, 2019
+ *Version*: 2.10.4
+ *Copyright*: Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **253791**
+ *Field count*: **1347**
+ *File count*: **1618**
+ *Line count*: **255312**
+ *Field count*: **1353**
+ *File count*: **1620**
+ *Folder count*: **261**

> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com).
@@ -638,7 +638,7 @@ class Get
*
* @var array
*/
public $cryptionTypes = array('basic', 'medium', 'whmcs');
public $cryptionTypes = array('basic', 'medium', 'whmcs', 'expert');
/**
* The WHMCS Encryption Switch
@@ -2586,7 +2586,7 @@ public function getCustomViewData($id, $table = 'site_view')
{
if (!isset($this->libManager[$this->target][$view->code][$library]))
{
if ($this->getLibrary((int) $library))
if ($this->getMediaLibrary((int) $library))
{
$this->libManager[$this->target][$view->code][(int) $library] = true;
}
@@ -2595,7 +2595,7 @@ public function getCustomViewData($id, $table = 'site_view')
}
elseif (is_numeric($view->libraries) && !isset($this->libManager[$this->target][$view->code][(int) $view->libraries]))
{
if ($this->getLibrary((int) $view->libraries))
if ($this->getMediaLibrary((int) $view->libraries))
{
$this->libManager[$this->target][$view->code][(int) $view->libraries] = true;
}
@@ -2922,6 +2922,28 @@ public function getFieldData($id, $name_single = null, $name_list = null)
{
$this->mediumEncryption = true;
}
// check if we have better encryption
elseif (6 == $field->store
&& ComponentbuilderHelper::checkString($field->on_get_model_field)
&& ComponentbuilderHelper::checkString($field->on_save_model_field))
{
// add only if string lenght found
if (ComponentbuilderHelper::checkString($field->initiator_on_save_model))
{
$field->initiator_save_key = md5($field->initiator_on_save_model);
$field->initiator_save = explode(PHP_EOL, $this->setPlaceholders($this->setDynamicValues(base64_decode($field->initiator_on_save_model)), $this->placeholders));
}
if (ComponentbuilderHelper::checkString($field->initiator_on_save_model))
{
$field->initiator_get_key = md5($field->initiator_on_get_model);
$field->initiator_get = explode(PHP_EOL, $this->setPlaceholders($this->setDynamicValues(base64_decode($field->initiator_on_get_model)), $this->placeholders));
}
// set the field modeling
$field->model_field['save'] = explode(PHP_EOL, $this->setPlaceholders($this->setDynamicValues(base64_decode($field->on_save_model_field)), $this->placeholders));
$field->model_field['get'] = explode(PHP_EOL, $this->setPlaceholders($this->setDynamicValues(base64_decode($field->on_get_model_field)), $this->placeholders));
// remove the original values
unset($field->on_save_model_field, $field->on_get_model_field, $field->initiator_on_save_model, $field->initiator_on_get_model);
}
// get the last used version
$field->history = $this->getHistoryWatch('field', $id);
@@ -4400,7 +4422,7 @@ public function getDataWithAlias($n_ame, $table, $view)
{
if (!isset($this->libManager[$this->target][$view][$library]))
{
if ($this->getLibrary((int) $library))
if ($this->getMediaLibrary((int) $library))
{
$this->libManager[$this->target][$view][(int) $library] = true;
}
@@ -4409,7 +4431,7 @@ public function getDataWithAlias($n_ame, $table, $view)
}
elseif (is_numeric($row->libraries) && !isset($this->libManager[$this->target][$view][(int) $row->libraries]))
{
if ($this->getLibrary((int) $row->libraries))
if ($this->getMediaLibrary((int) $row->libraries))
{
$this->libManager[$this->target][$view][(int) $row->libraries] = true;
}
@@ -4488,14 +4510,14 @@ public function getDataWithAlias($n_ame, $table, $view)
}
/**
* Get Library Data and store globaly
* Get Media Library Data and store globally
*
* @param string $id the library id
*
* @return bool true on success
*
*/
protected function getLibrary($id)
protected function getMediaLibrary($id)
{
// check if the lib has already been set
@@ -4579,6 +4601,7 @@ protected function getLibrary($id)
$query->join('LEFT', $this->db->quoteName('#__componentbuilder_library_config', 'b') . ' ON (' . $this->db->quoteName('a.id') . ' = ' . $this->db->quoteName('b.library') . ')');
$query->join('LEFT', $this->db->quoteName('#__componentbuilder_library_files_folders_urls', 'c') . ' ON (' . $this->db->quoteName('a.id') . ' = ' . $this->db->quoteName('c.library') . ')');
$query->where($this->db->quoteName('a.id') . ' = ' . (int) $id);
$query->where($this->db->quoteName('a.target') . ' = 1');
// Reset the query using our newly populated query object.
$this->db->setQuery($query);

0 comments on commit 010a134

Please sign in to comment.
You can’t perform that action at this time.