проблема валідації у ЖШ5

10.11.2023 14:33
#1
nevigen
User nevigen
Name: nevigen
25.09.2008
Posts: 45
Quote
проблема валідації у ЖШ5

Наприклад у класі таблиць UsershopbaseTable.php не відпрацьовують тригери так як використовується в назві тригера ім'я класу, а воно зараз повертається з namespace
Наприклад "onBeforeCheckJoomla\Component\Jshopping\Site\Table\UserShopTable" а було "onBeforeCheckUserShopTable"
Відповідно дані тригери неможливо використовувати у плагінах
проблема валідації у ЖШ5
2224.jpg


Joomla: 4.3
JoomShopping: 5.2.1
 
10.11.2023 15:11
#2
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25975
Quote
Aw: проблема валідації у ЖШ5

Буде виправлено в новій версії

components/com_jshopping/Helper/Helper.php | 5 +++++
components/com_jshopping/Table/UsershopbaseTable.php | 6 +++---
2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/components/com_jshopping/Helper/Helper.php b/components/com_jshopping/Helper/Helper.php
index 5a59815a..8bdb3fa5 100644
--- a/components/com_jshopping/Helper/Helper.php
+++ b/components/com_jshopping/Helper/Helper.php
@@ -1579,4 +1579,9 @@ class Helper{
$db->setQuery("set @@sql_mode = ''");
$db->execute();
}
+
+ public static function get_class_base($class_name) {
+ $path = explode('\\', $class_name);
+ return array_pop($path);
+ }
}
\ No newline at end of file
diff --git a/components/com_jshopping/Table/UsershopbaseTable.php b/components/com_jshopping/Table/UsershopbaseTable.php
index e4db9d8a..afef50de 100644
--- a/components/com_jshopping/Table/UsershopbaseTable.php
+++ b/components/com_jshopping/Table/UsershopbaseTable.php
@@ -15,7 +15,7 @@ abstract class UsershopbaseTable extends ShopbaseTable{
parent::__construct('#__jshopping_users', 'user_id', $_db);
\JPluginHelper::importPlugin('jshoppingcheckout');
$obj = $this;
- \JFactory::getApplication()->triggerEvent('onConstruct'.ucfirst(get_class($this)), array(&$obj));
+ \JFactory::getApplication()->triggerEvent('onConstruct'.ucfirst(\JSHelper::get_class_base(get_class($this))), array(&$obj));
}

function check($type = ''){
@@ -38,8 +38,8 @@ abstract class UsershopbaseTable extends ShopbaseTable{

$config_fields = $JshopConfig->getListFieldsRegisterType($type);
$fields_client_check = $JshopConfig->fields_client_check;
- $obj = $this;
- \JFactory::getApplication()->triggerEvent('onBeforeCheck'.ucfirst(get_class($this)), array(&$obj, &$type, &$config_fields, &$type2, &$return, &$fields_client_check));
+ $obj = $this;
+ \JFactory::getApplication()->triggerEvent('onBeforeCheck'.ucfirst(\JSHelper::get_class_base(get_class($this))), array(&$obj, &$type, &$config_fields, &$type2, &$return, &$fields_client_check));

foreach ($config_fields as $field => $v) {
if ($field == 'password_2') {

 


Copyrights MAXXmarketing GmbH. Alle Rechte vorbehalten
Durch die Nutzung dieser Website stimme ich zu, dass Cookies zur optimalen Gestaltung der Website sowie zur Analyse der Nutzung der Website verwendet werden. Weiterführende Informationen finden Sie hier. OK, einverstanden.