first commit

This commit is contained in:
2025-06-17 11:53:18 +02:00
commit 9f0f7ba12b
8804 changed files with 1369176 additions and 0 deletions

View File

@ -0,0 +1,36 @@
<?php
/**
* @package Joomla.Administrator
* @subpackage mod_messages
*
* @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
\defined('_JEXEC') or die;
use Joomla\CMS\Helper\ModuleHelper;
// Check permissions.
if (!$app->getIdentity()->authorise('core.login.admin') || !$app->getIdentity()->authorise('core.manage', 'com_messages')) {
return;
}
// Try to get the items from the messages model
try {
/** @var \Joomla\Component\Messages\Administrator\Model\MessagesModel $messagesModel */
$messagesModel = $app->bootComponent('com_messages')->getMVCFactory()
->createModel('Messages', 'Administrator', ['ignore_request' => true]);
$messagesModel->setState('filter.state', 0);
$messages = $messagesModel->getItems();
} catch (RuntimeException $e) {
$messages = [];
// Still render the error message from the Exception object
$app->enqueueMessage($e->getMessage(), 'error');
}
$countUnread = \count($messages);
require ModuleHelper::getLayoutPath('mod_messages', $params->get('layout', 'default'));

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<extension type="module" client="administrator" method="upgrade">
<name>mod_messages</name>
<author>Joomla! Project</author>
<creationDate>2019-07</creationDate>
<copyright>(C) 2019 Open Source Matters, Inc.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
<version>4.0.0</version>
<description>MOD_MESSAGES_XML_DESCRIPTION</description>
<files>
<filename module="mod_messages">mod_messages.php</filename>
<folder>tmpl</folder>
</files>
<languages>
<language tag="en-GB">language/en-GB/mod_messages.ini</language>
<language tag="en-GB">language/en-GB/mod_messages.sys.ini</language>
</languages>
<help key="Admin_Modules:_Messages" />
<config>
<fields name="params">
<fieldset name="advanced">
<field
name="layout"
type="modulelayout"
label="JFIELD_ALT_LAYOUT_LABEL"
class="form-select"
/>
<field
name="moduleclass_sfx"
type="textarea"
label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL"
rows="3"
validate="CssIdentifier"
/>
</fieldset>
</fields>
</config>
</extension>

View File

@ -0,0 +1,34 @@
<?php
/**
* @package Joomla.Administrator
* @subpackage mod_messages
*
* @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Router\Route;
$hideLinks = $app->getInput()->getBool('hidemainmenu');
if ($hideLinks || $countUnread < 1) {
return;
}
$route = 'index.php?option=com_messages&view=messages';
?>
<a class="header-item-content" href="<?php echo Route::_($route); ?>" title="<?php echo Text::_('MOD_MESSAGES_PRIVATE_MESSAGES'); ?>">
<div class="header-item-icon">
<div class="w-auto">
<span class="icon-envelope icon-fw" aria-hidden="true"></span>
<small class="header-item-count"><?php echo $countUnread; ?></small>
</div>
</div>
<div class="header-item-text">
<?php echo Text::_('MOD_MESSAGES_PRIVATE_MESSAGES'); ?>
</div>
</a>