Formulare für Tabelle Verbandsorgane erstellt

This commit is contained in:
Jürgen Meyer
2026-02-09 17:20:45 +01:00
parent fe885160d9
commit e469e70b97
5 changed files with 293 additions and 4 deletions
@@ -7334,6 +7334,119 @@ function adminEditOrdnungsstrafe(): void
die();
}
function adminVerbandsorgane(): void
{
$db = getDatabase();
if (!benutzerZugriff("organisationen_aendern"))
keinZugriff(true);
$query = "SELECT t1.*, COUNT(t2.verbandsorgane_id) AS anzahl"
. "\n FROM #__sportsmanager_verbandsorgane t1"
. "\n LEFT JOIN #__sportsmanager_mitglied_von_verbandsorgan t2 ON t2.verbandsorgane_id = t1.verbandsorgane_id"
. "\n GROUP BY t1.verbandsorgane_id"
. "\n ORDER BY t1.reihenfolge;";
$rows = loadObjectList($db, $query);
HTML_sportsmanager_admin::adminVerbandsorgane($rows);
}
function adminEditVerbandsorgan(): void
{
$db = getDatabase();
$jInput = Factory::getContainer()->get(SiteApplication::class)->input;
if (!benutzerZugriff("organisationen_aendern"))
keinZugriff(true);
$id = $jInput->get('id', 0, 'INT');
if ($id == 0)
$row = null;
else {
$query = "SELECT * FROM #__sportsmanager_verbandsorgane WHERE verbandsorgane_id = $id";
$rows = loadObjectList($db, $query);
if (count($rows) < 1) die("Wrong id!");
$row = $rows[0];
}
$query = "SELECT nummer, bezeichnung FROM #__sportsmanager_kategorie WHERE typ = 7 ORDER BY nummer";
$rows_kategorien = loadObjectList($db, $query);
$kategorien = array();
foreach ($rows_kategorien as $kategorie)
$kategorien[$kategorie->nummer] = $kategorie->bezeichnung;
HTML_sportsmanager_admin::adminEditVerbandsorgan($row,$kategorien);
}
#[NoReturn] function adminSaveVerbandsorgan(): void
{
$db = getDatabase();
$jInput = Factory::getContainer()->get(SiteApplication::class)->input;
if (!benutzerZugriff("organisationen_aendern"))
keinZugriff();
if ($jInput->get('cancel', false, 'BOOL')) {
redirectSportsManagerURL('&task=admin_verbandsorgane');
}
$id = $jInput->get('id', 0, 'INT');
$verbandsorgan = $db->escape(trim($jInput->get('verbandsorgan', '', 'RAW')));
$kategorie = $db->escape(trim($jInput->get('kategorie', 0, 'INT')));
$reihenfolge = $db->escape(trim($jInput->get('reihenfolge', 0, 'INT')));
$email = $db->escape(trim($jInput->get('email', '', 'RAW')));
$beschreibung = $db->escape(trim($jInput->get('beschreibung', '', 'RAW')));
if (strlen($verbandsorgan) < 3) {
redirectSportsManagerURL('&task=admin_verbandsorgane','Ung&uuml;ltiger Name f&uuml;r Verbandsorgan!');
}
if ($id == 0)
$query = "INSERT INTO #__sportsmanager_verbandsorgane"
. "\n (verbandsorgan,kategorie,reihenfolge,email,beschreibung) VALUES"
. "\n ('$verbandsorgan',$kategorie,$reihenfolge,'$email','$beschreibung');";
else {
$query = "UPDATE #__sportsmanager_verbandsorgane"
. "\n SET verbandsorgan = '$verbandsorgan'"
. "\n , kategorie = $kategorie"
. "\n , reihenfolge = $reihenfolge"
. "\n , email = '$email'"
. "\n , beschreibung = '$beschreibung'"
. "\n WHERE verbandsorgane_id = $id";
}
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
redirectSportsManagerURL('&task=admin_verbandsorgane');
}
#[NoReturn] function adminRemoveVerbandsorgan(): void
{
$db = getDatabase();
$jInput = Factory::getContainer()->get(SiteApplication::class)->input;
if (!benutzerZugriff("organisationen_aendern"))
keinZugriff(true);
$id = $jInput->get('id', 0, 'INT');
$query = "DELETE FROM #__sportsmanager_verbandsorgane WHERE verbandsorgane_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
//Alle Mitglieder löschen
$query = "DELETE FROM #__sportsmanager_mitglied_von_verbandsorgan WHERE verbandsorgane_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
redirectSportsManagerURL('&task=admin_verbandsorgane');
}
function adminRegelwerke(): void
{
$db = getDatabase();
@@ -371,6 +371,18 @@ if ($task == "spielerbild") {
case 'admin_joomla_mail_senden':
sendJoomlaMail();
break;
case 'admin_verbandsorgane':
adminVerbandsorgane();
break;
case 'admin_verbandsorgan_edit':
adminEditVerbandsorgan();
break;
case 'admin_verbandsorgan_save':
adminSaveVerbandsorgan();
break;
case 'admin_verbandsorgan_remove':
adminRemoveVerbandsorgan();
break;
case 'admin_regelwerke':
adminRegelwerke();
break;
@@ -101,6 +101,12 @@ class HTML_sportsmanager_admin
</td>
<?php
$Spalte_Nr = self::checkZeilenumbruch($Spalte_Nr, $max_Spalten);
?>
<td style="padding-right: 15px" nowrap>
<a href="<?php echo SportsManagerURL('&task=admin_verbandsorgane'); ?>"><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?></a>
</td>
<?php
$Spalte_Nr = self::checkZeilenumbruch($Spalte_Nr, $max_Spalten);
}
if (benutzerZugriff("kategorien_aendern")) {
?>
@@ -7477,6 +7483,156 @@ class HTML_sportsmanager_admin
<?php
}
static function adminVerbandsorgane($rows): void
{
global $params;
?>
<div
class="componentheading<?php echo $params->get('pageclass_sfx'); ?>"><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?>
: <?php echo Text::_('COM_SPORTSMANAGER_JOOMLA_MANAGEMENT'); ?></div>
<table style="border-spacing: 10px">
<tr>
<td nowrap><a
href="<?php echo SportsManagerURL('&task=admin_uebersicht'); ?>"><?php echo Text::_('COM_SPORTSMANAGER_BACK'); ?></a>
</td>
</tr>
<tr>
<td nowrap><a
href="<?php echo SportsManagerURL('&task=admin_verbandsorgan_edit'); ?>"><?php echo Text::_('COM_SPORTSMANAGER_ADD_ASSOCIATION_BODY'); ?></a>
</td>
</tr>
</table>
<?php
if (count($rows) > 0) {
?>
<table style='width: 300px;' 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_BODIES'); ?></strong></th>
<th style='text-align: left;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_MEMBERS'); ?></strong></th>
</tr>
<?php
$k = 0;
foreach ($rows as $row) {
?>
<tr class="sectiontableentry<?php echo $k + 1;
$k = ($k + 1) % 2; ?><?php echo $params->get('pageclass_sfx'); ?>">
<td nowrap>
<a href="<?php echo SportsManagerURL('&task=admin_verbandsorgan_edit&id=' . $row->verbandsorgane_id); ?>">
<?php echo htmlentities_utf8(NichtLeererString($row->verbandsorgan)); ?>
</a>
</td>
<td nowrap>
<?php echo $row->anzahl; ?>
</td>
<td nowrap><small><a
href="<?php echo SportsManagerURL('&task=admin_verbandsorgan_remove&id=' . $row->verbandsorgane_id); ?>"
onclick="return confirm('<?php echo Text::_('COM_SPORTSMANAGER_REALLY_REMOVE_ASSOCIATION_BODY'); ?>');"
title="<?php echo Text::_('COM_SPORTSMANAGER_REMOVE'); ?>">X</a></small>
</td>
</tr>
<?php
}
?>
</table>
<?php
}
}
static function adminEditVerbandsorgan($row,$kategorien): void
{
global $params;
?>
<div
class="componentheading<?php echo $params->get('pageclass_sfx'); ?>"><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?>
: <?php echo($row != null ? Text::_('COM_SPORTSMANAGER_CHANGING') : Text::_('COM_SPORTSMANAGER_ADD')); ?></div>
<form action="<?php echo SportsManagerURL(); ?>" method="post" name="adminForm" id="adminForm"
enctype="multipart/form-data">
<div class="uk-overflow-auto">
<table style="width: 100%">
<tr>
<td nowrap style="width: 20%; text-align: right">
<label
for="association_body"><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?>
:</label>
</td>
<td nowrap>
<input class="inputbox" type="text" name="verbandsorgan"
id="association_body" size="50" maxlength="32"
value="<?php echo htmlentities_utf8($row->verbandsorgan); ?>"/>
</td>
</tr>
<tr>
<td nowrap style="width: 20%; text-align: right">
<label for="category"><?php echo Text::_('COM_SPORTSMANAGER_CATEGORY'); ?>
:</label>
</td>
<td nowrap>
<select class="uk-select uk-form-width-medium" style='width: 350px;' name="kategorie"
id="category" size="1">
<?php
for ($i = 1; $i <= 50; $i++) {
echo "<option value=\"" . $i . "\"" . ($row != null ? ($row->kategorie == $i ? " selected" : "") : "") . ">" . $i . (isset($kategorien[$i]) ? htmlentities_utf8(" " . $kategorien[$i]) : "") . "</option>";
}
?>
</select>
</td>
</tr>
<tr>
<td nowrap style="width: 20%; text-align: right">
<label for="order"><?php echo Text::_('COM_SPORTSMANAGER_ORDER'); ?>
:</label>
</td>
<td nowrap>
<select class="uk-select uk-form-width-medium" name="reihenfolge" id="order"
size="1">
<?php
for ($i = 1; $i <= 100; $i++) {
echo "<option value=\"" . $i . "\"" . ($row != null ? ($row->reihenfolge == $i ? " selected" : "") : "") . ">" . $i . "</option>";
}
?>
</select>
</td>
</tr>
<tr>
<td nowrap style="width: 20%; text-align: right">
<label for="email"><?php echo Text::_('COM_SPORTSMANAGER_EMAIL'); ?>
:</label>
</td>
<td nowrap>
<input class="inputbox" type="text" name="email"
id="email" size="50" maxlength="64"
value="<?php echo htmlentities_utf8($row->email); ?>"/>
</td>
</tr>
<tr>
<td nowrap style="width: 20%; text-align: right; vertical-align: top">
<label
for="description"><?php echo Text::_('COM_SPORTSMANAGER_DESCRIPTION'); ?>
:</label>
</td>
<td nowrap>
<textarea name="beschreibung" id="description" cols="50" rows="8"><?php echo htmlentities_utf8($row->beschreibung); ?></textarea>
</td>
</tr>
<tr>
<td nowrap colspan="2">&nbsp;
</td>
</tr>
</table>
</div>
<input type="submit" name="save" value="<?php echo Text::_('COM_SPORTSMANAGER_SAVE'); ?>" class="button"/>
<input type="submit" name="cancel" value="<?php echo Text::_('COM_SPORTSMANAGER_CANCEL'); ?>"
class="button"/>
<input type="hidden" name="task" value="admin_verbandsorgan_save"/>
<input type="hidden" name="id" value="<?php echo($row != null ? $row->verbandsorgane_id : "0"); ?>"/>
</form>
<?php
}
static function adminRegelwerke($rows): void
{
global $params;
@@ -72,7 +72,6 @@ COM_SPORTSMANAGER_CONFIRM_REMOVE_RANKING="Willst du die Rangliste wirklich entfe
COM_SPORTSMANAGER_ADD_INDIVIDUAL_COMPETITION="Individualwettbewerb hinzuf&uuml;gen"
COM_SPORTSMANAGER_INDIVIDUAL_COMPETITION="Individualwettbewerb"
COM_SPORTSMANAGER_INDIVIDUAL_COMPETITIONS="Individualwettbewerbe"
COM_SPORTSMANAGER_ASSOCIATION_BODIES="Verbandsorgane"
COM_SPORTSMANAGER_GAME="Spiel"
COM_SPORTSMANAGER_GAMES="Spiele"
COM_SPORTSMANAGER_GAMES_SHORTCUT="S"
@@ -1071,3 +1070,8 @@ COM_SPORTSMANAGER_REALLY_MATCH_RESCHEDULING="Willst Du diesen Spielverlegung wir
COM_SPORTSMANAGER_REST_DAYS="Ruhetage"
COM_SPORTSMANAGER_TRAINING_DAYS="Trainingstage"
COM_SPORTSMANAGER_NOT_ACTUALIZED_DATA="Nicht aktualisierte Daten"
COM_SPORTSMANAGER_ASSOCIATION_BODIES="Verbandsorgane"
COM_SPORTSMANAGER_ASSOCIATION_BODY="Verbandsorgan"
COM_SPORTSMANAGER_ADD_ASSOCIATION_BODY="Verbandsorgan hinzuf&uuml;gen"
COM_SPORTSMANAGER_REALLY_REMOVE_ASSOCIATION_BODY="Willst Du dieses Verbandsorgan wirklich entfernen?"
COM_SPORTSMANAGER_INVALID_ASSOCIATION_BODY_NAME="Ung&uuml;ltiger Name f&uuml;r Verbandsorgan!"
@@ -72,7 +72,6 @@ COM_SPORTSMANAGER_CONFIRM_REMOVE_RANKING="Do you really want to remove the ranki
COM_SPORTSMANAGER_ADD_INDIVIDUAL_COMPETITION="Add individual competition"
COM_SPORTSMANAGER_INDIVIDUAL_COMPETITION="Individual competition"
COM_SPORTSMANAGER_INDIVIDUAL_COMPETITIONS="Individual competitions"
COM_SPORTSMANAGER_ASSOCIATION_BODIES="Association bodies"
COM_SPORTSMANAGER_GAME="Game"
COM_SPORTSMANAGER_GAMES="Games"
COM_SPORTSMANAGER_GAMES_SHORTCUT="G"
@@ -1071,3 +1070,8 @@ COM_SPORTSMANAGER_REALLY_MATCH_RESCHEDULING="Do you really want to remove this m
COM_SPORTSMANAGER_REST_DAYS="Rest days"
COM_SPORTSMANAGER_TRAINING_DAYS="Training days"
COM_SPORTSMANAGER_NOT_ACTUALIZED_DATA="Data not updated"
COM_SPORTSMANAGER_ASSOCIATION_BODIES="Association bodies"
COM_SPORTSMANAGER_ASSOCIATION_BODY="Association body"
COM_SPORTSMANAGER_ASSOCIATION_BODY="Add association body"
COM_SPORTSMANAGER_REALLY_REMOVE_ASSOCIATION_BODY="Do you really want to remove this association body?"
COM_SPORTSMANAGER_INVALID_ASSOCIATION_BODY_NAME="Invalid association body name"