feat: action log registration, Moko theme defaults, security defaults

- Register plg_system_mokowaas in #__action_logs_extensions on install
  so emergency access events appear as filterable in Action Logs UI
- Unregister on uninstall
- Set Moko brand colors as defaults: navy #1a2744, dark #0f1b2d,
  accent green #2ecc71
- Force HTTPS default: Yes (was No)
- Admin session timeout default: 60 minutes (was 0/disabled)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-07 14:40:07 -05:00
parent f74808484d
commit b1f4c41310
2 changed files with 59 additions and 7 deletions
+53 -1
View File
@@ -125,6 +125,7 @@ class plgSystemMokoWaaSInstallerScript implements InstallerScriptInterface
$this->installLanguageOverrides();
$this->updateLoginSupportUrls();
$this->updateAtumBranding();
$this->registerActionLogExtension();
}
return true;
@@ -169,8 +170,8 @@ class plgSystemMokoWaaSInstallerScript implements InstallerScriptInterface
*/
public function uninstall(InstallerAdapter $adapter): bool
{
// Remove language overrides on uninstall
$this->uninstallLanguageOverrides();
$this->unregisterActionLogExtension();
return true;
}
@@ -437,6 +438,57 @@ class plgSystemMokoWaaSInstallerScript implements InstallerScriptInterface
);
}
/**
* Register the plugin in #__action_logs_extensions so it appears
* as a filterable extension in System > Action Logs.
*
* @return void
*
* @since 02.00.00
*/
private function registerActionLogExtension()
{
$db = Factory::getDbo();
$query = $db->getQuery(true)
->select('COUNT(*)')
->from($db->quoteName('#__action_logs_extensions'))
->where($db->quoteName('extension') . ' = '
. $db->quote('plg_system_mokowaas'));
$db->setQuery($query);
if ((int) $db->loadResult() > 0)
{
return;
}
$row = (object) ['extension' => 'plg_system_mokowaas'];
$db->insertObject('#__action_logs_extensions', $row);
Factory::getApplication()->enqueueMessage(
'Registered MokoWaaS in Action Logs.', 'message'
);
}
/**
* Remove the plugin from #__action_logs_extensions on uninstall.
*
* @return void
*
* @since 02.00.00
*/
private function unregisterActionLogExtension()
{
$db = Factory::getDbo();
$db->setQuery(
$db->getQuery(true)
->delete($db->quoteName('#__action_logs_extensions'))
->where($db->quoteName('extension') . ' = '
. $db->quote('plg_system_mokowaas'))
);
$db->execute();
}
/**
* Remove only MokoWaaS overrides from Joomla's global override files.
*