Verteilerliste erweitert

This commit is contained in:
Jürgen Meyer
2026-02-12 15:58:23 +01:00
parent a583131162
commit 46474c6c40
2 changed files with 73 additions and 3 deletions
@@ -340,6 +340,27 @@ function adminVerteiler(): void
} }
} }
$query = "SELECT *"
. "\n FROM #__sportsmanager_verbandsorgane AS t1"
. "\n ORDER BY reihenfolge, kategorie";
$verbandsorgane = loadObjectList($db, $query);
$verbandsorgane_mailverteiler = array();
foreach ($verbandsorgane as $verbandsorgan) {
$query = "SELECT vorname, nachname, email"
. "\n FROM #__sportsmanager_mitglied_von_verbandsorgan"
. "\n WHERE verbandsorgane_id = " . $verbandsorgan->verbandsorgane_id
. "\n ORDER BY reihenfolge, nachname, vorname, email";
$rows = loadObjectList($db, $query);
$verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id] = "";
$verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id . "p"] = "";
foreach ($rows as $row) {
if (!empty($row->email)){
$verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id] .= (!empty($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id]) ? "; " : "") . $row->email;
$verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id . "p"] .= (!empty($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id . "p"]) ? "; " : "") . "\"" . $row->vorname . " " . $row->nachname . "\" <" . $row->email . ">";
}
}
}
$query = "SELECT t1.*, veranstalterbezeichnung" $query = "SELECT t1.*, veranstalterbezeichnung"
. "\n FROM #__sportsmanager_veranstaltung AS t1" . "\n FROM #__sportsmanager_veranstaltung AS t1"
. "\n LEFT JOIN #__sportsmanager_veranstalter USING (veranstalter_id)" . "\n LEFT JOIN #__sportsmanager_veranstalter USING (veranstalter_id)"
@@ -361,7 +382,7 @@ function adminVerteiler(): void
} }
} }
HTML_sportsmanager_admin::adminVerteiler($verteiler, $organisationen, $organisationen_mailverteiler, $veranstaltungen, $veranstaltungen_mailverteiler, $saisons, $filter_saison_id, benutzerZugriff("verteiler_aendern")); HTML_sportsmanager_admin::adminVerteiler($verteiler, $organisationen, $organisationen_mailverteiler, $verbandsorgane, $verbandsorgane_mailverteiler, $veranstaltungen, $veranstaltungen_mailverteiler, $saisons, $filter_saison_id, benutzerZugriff("verteiler_aendern"));
} }
function adminEditVerteiler(): void function adminEditVerteiler(): void
@@ -2911,7 +2911,7 @@ class HTML_sportsmanager_admin
} }
} }
static function adminVerteiler($verteiler, $organisationen, $organisationen_mailverteiler, $veranstaltungen, $veranstaltungen_mailverteiler, $saisons, $filter_saison_id, $moderator_zugriff): void static function adminVerteiler($verteiler, $organisationen, $organisationen_mailverteiler, $verbandsorgane, $verbandsorgane_mailverteiler, $veranstaltungen, $veranstaltungen_mailverteiler, $saisons, $filter_saison_id, $moderator_zugriff): void
{ {
global $params; global $params;
@@ -3045,6 +3045,55 @@ class HTML_sportsmanager_admin
<?php <?php
} }
$k = 0;
if (count($verbandsorgane) > 0) {
?>
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr>
<td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>" style="width: 100%; text-align: left;">
<?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?>
</td>
</tr>
</table>
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th style="text-align: left;" nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODY'); ?></strong></th>
<th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EMAIL'); ?></strong></th>
<th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EMAIL_ADDRESS'); ?></strong></th>
</tr>
<?php
foreach ($verbandsorgane as $verbandsorgan) {
?>
<tr class="sectiontableentry<?php echo $k + 1;
$k = ($k + 1) % 2; ?><?php echo $params->get('pageclass_sfx'); ?>">
<td style="vertical-align: top" nowrap>
<?php echo htmlentities_utf8($verbandsorgan->verbandsorgan); ?>
</td>
<td style="vertical-align: top" nowrap>
<?php
if (isset($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id]) && !empty($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id])) {
?>
<a href="mailto:?bcc=<?php echo htmlentities_utf8($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id]); ?>"><?php echo Text::_('COM_SPORTSMANAGER_LETTER'); ?></a>
<?php
}
?>
</td>
<td>
<?php
if (isset($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id . "p"]) && !empty($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id . "p"]))
echo htmlentities_utf8($verbandsorgane_mailverteiler[$verbandsorgan->verbandsorgane_id . "p"]);
?>
</td>
</tr>
<?php
}
?>
</table>
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php
}
$k = 0; $k = 0;
if (count($veranstaltungen) > 0) { if (count($veranstaltungen) > 0) {
?> ?>
@@ -3064,7 +3113,7 @@ class HTML_sportsmanager_admin
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EVENT'); ?></strong></th> <th style="text-align: left;" nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EVENT'); ?></strong></th>
<th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EMAIL'); ?></strong></th> <th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EMAIL'); ?></strong></th>
<th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EMAIL_ADDRESS'); ?></strong></th> <th nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_EMAIL_ADDRESS'); ?></strong></th>
</tr> </tr>