Skip to content

Commit e383eb1

Browse files
committed
Merge remote-tracking branch 'upstream/5.4-dev' into upmerges/2025-06-18
2 parents 5c1b94e + e55389d commit e383eb1

File tree

7 files changed

+21
-25
lines changed

7 files changed

+21
-25
lines changed

administrator/components/com_finder/src/Helper/LanguageHelper.php

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
use Joomla\CMS\Factory;
1414
use Joomla\CMS\Language\LanguageHelper as CMSLanguageHelper;
1515
use Joomla\CMS\Language\Text;
16+
use Joomla\CMS\Plugin\PluginHelper;
1617

1718
// phpcs:disable PSR1.Files.SideEffects
1819
\defined('_JEXEC') or die;
@@ -123,16 +124,8 @@ public static function loadPluginLanguage()
123124

124125
$loaded = true;
125126

126-
// Get array of all the enabled Smart Search plugin names.
127-
$db = Factory::getDbo();
128-
$query = $db->getQuery(true)
129-
->select([$db->quoteName('name'), $db->quoteName('element')])
130-
->from($db->quoteName('#__extensions'))
131-
->where($db->quoteName('type') . ' = ' . $db->quote('plugin'))
132-
->where($db->quoteName('folder') . ' = ' . $db->quote('finder'))
133-
->where($db->quoteName('enabled') . ' = 1');
134-
$db->setQuery($query);
135-
$plugins = $db->loadObjectList();
127+
// Get array of all the enabled Smart Search plugins.
128+
$plugins = PluginHelper::getPlugin('finder');
136129

137130
if (empty($plugins)) {
138131
return;
@@ -144,8 +137,9 @@ public static function loadPluginLanguage()
144137

145138
// Load language file for each plugin.
146139
foreach ($plugins as $plugin) {
147-
$lang->load($plugin->name, JPATH_ADMINISTRATOR)
148-
|| $lang->load($plugin->name, JPATH_PLUGINS . '/finder/' . $plugin->element);
140+
$extension = 'plg_finder_' . $plugin->name;
141+
$lang->load($extension, JPATH_ADMINISTRATOR)
142+
|| $lang->load($extension, JPATH_PLUGINS . '/finder/' . $plugin->name);
149143
}
150144
}
151145
}

administrator/components/com_users/src/Model/UserModel.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ public function delete(&$pks)
351351
}
352352

353353
// Trigger the after delete event.
354-
Factory::getApplication()->triggerEvent($this->event_after_delete, [$user_to_delete->getProperties(), true, $this->getError()]);
354+
Factory::getApplication()->triggerEvent($this->event_after_delete, [ArrayHelper::fromObject($user_to_delete, false), true, $this->getError()]);
355355
} else {
356356
// Prune items that you can't change.
357357
unset($pks[$i]);

components/com_users/src/Model/RegistrationModel.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
use Joomla\CMS\User\UserFactoryAwareTrait;
3232
use Joomla\CMS\User\UserHelper;
3333
use Joomla\Database\ParameterType;
34+
use Joomla\Utilities\ArrayHelper;
3435

3536
// phpcs:disable PSR1.Files.SideEffects
3637
\defined('_JEXEC') or die;
@@ -138,7 +139,7 @@ public function activate($token)
138139
$linkMode = $app->get('force_ssl', 0) == 2 ? Route::TLS_FORCE : Route::TLS_IGNORE;
139140

140141
// Compile the admin notification mail values.
141-
$data = $user->getProperties();
142+
$data = ArrayHelper::fromObject($user, false);
142143
$data['activation'] = ApplicationHelper::getHash(UserHelper::genRandomPassword());
143144
$user->activation = $data['activation'];
144145
$data['siteurl'] = Uri::base();
@@ -209,7 +210,7 @@ public function activate($token)
209210
$user->block = '0';
210211

211212
// Compile the user activated notification mail values.
212-
$data = $user->getProperties();
213+
$data = ArrayHelper::fromObject($user, false);
213214
$user->setParam('activate', 0);
214215
$data['fromname'] = $app->get('fromname');
215216
$data['mailfrom'] = $app->get('mailfrom');
@@ -466,7 +467,7 @@ public function register($temp)
466467
$query = $db->getQuery(true);
467468

468469
// Compile the notification mail values.
469-
$data = $user->getProperties();
470+
$data = ArrayHelper::fromObject($user, false);
470471
$data['fromname'] = $app->get('fromname');
471472
$data['mailfrom'] = $app->get('mailfrom');
472473
$data['sitename'] = $app->get('sitename');

components/com_users/src/Model/ResetModel.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
use Joomla\CMS\User\UserFactoryAwareInterface;
2525
use Joomla\CMS\User\UserFactoryAwareTrait;
2626
use Joomla\CMS\User\UserHelper;
27+
use Joomla\Utilities\ArrayHelper;
2728

2829
// phpcs:disable PSR1.Files.SideEffects
2930
\defined('_JEXEC') or die;
@@ -469,7 +470,7 @@ public function processResetRequest($data)
469470
$link = 'index.php?option=com_users&view=reset&layout=confirm&token=' . $token;
470471

471472
// Put together the email template data.
472-
$data = $user->getProperties();
473+
$data = ArrayHelper::fromObject($user, false);
473474
$data['sitename'] = $app->get('sitename');
474475
$data['link_text'] = Route::_($link, false, $mode);
475476
$data['link_html'] = Route::_($link, true, $mode);

libraries/src/User/User.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -704,7 +704,7 @@ public function save($updateOnly = false)
704704
// Create the user table object
705705
$table = static::getTable();
706706
$this->params = (string) $this->_params;
707-
$table->bind($this->getProperties());
707+
$table->bind(ArrayHelper::fromObject($this, false));
708708

709709
// Allow an exception to be thrown.
710710
try {
@@ -773,9 +773,9 @@ public function save($updateOnly = false)
773773
PluginHelper::importPlugin('user', null, true, $dispatcher);
774774

775775
$saveEvent = new BeforeSaveEvent('onUserBeforeSave', [
776-
'subject' => $oldUser->getProperties(),
776+
'subject' => ArrayHelper::fromObject($oldUser, false),
777777
'isNew' => $isNew,
778-
'data' => $this->getProperties(),
778+
'data' => ArrayHelper::fromObject($this, false),
779779
]);
780780
$dispatcher->dispatch('onUserBeforeSave', $saveEvent);
781781
$result = $saveEvent['result'] ?? [];
@@ -800,7 +800,7 @@ public function save($updateOnly = false)
800800

801801
// Fire the onUserAfterSave event
802802
$dispatcher->dispatch('onUserAfterSave', new AfterSaveEvent('onUserAfterSave', [
803-
'subject' => $this->getProperties(),
803+
'subject' => ArrayHelper::fromObject($this),
804804
'isNew' => $isNew,
805805
'savingResult' => $result,
806806
'errorMessage' => $this->getError() ?? '',
@@ -828,7 +828,7 @@ public function delete()
828828

829829
// Trigger the onUserBeforeDelete event
830830
$dispatcher->dispatch('onUserBeforeDelete', new BeforeDeleteEvent('onUserBeforeDelete', [
831-
'subject' => $this->getProperties(),
831+
'subject' => ArrayHelper::fromObject($this, false),
832832
]));
833833

834834
// Create the user table object
@@ -840,7 +840,7 @@ public function delete()
840840

841841
// Trigger the onUserAfterDelete event
842842
$dispatcher->dispatch('onUserAfterDelete', new AfterDeleteEvent('onUserAfterDelete', [
843-
'subject' => $this->getProperties(),
843+
'subject' => ArrayHelper::fromObject($this, false),
844844
'deletingResult' => $result,
845845
'errorMessage' => $this->getError() ?? '',
846846
]));

plugins/system/jooa11y/src/Extension/Jooa11y.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ private function isAuthorisedDisplayChecker(): bool
7070
if (!empty($filterGroups)) {
7171
$userGroups = $this->getApplication()
7272
->getIdentity()
73-
->get('groups');
73+
->groups;
7474

7575
if (!array_intersect($filterGroups, $userGroups)) {
7676
$result = false;

plugins/user/joomla/src/Extension/Joomla.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ public function onUserLogout(LogoutEvent $event)
390390
$userid = (int) $user['id'];
391391

392392
// Make sure we're a valid user first
393-
if ($user['id'] === 0 && !$my->get('tmp_user')) {
393+
if ($user['id'] === 0 && !empty($my->tmp_user)) {
394394
return;
395395
}
396396

0 commit comments

Comments
 (0)