nonadminsmaysee
All checks were successful
Build and push / Pulling repo on server (push) Successful in 21s

This commit is contained in:
Chris 2023-10-26 21:32:37 +02:00
parent 00c2e1ded6
commit b429513ab4
3 changed files with 28 additions and 2 deletions

View File

@ -11,7 +11,8 @@ class Tournament extends Model
'referee' => ['type' => 'text'],
'text' => ['type' => 'text'],
'url' => ['type' => 'text'], //if there is one
'logo' => ['type' => 'text', 'default' => 'https://pictshare.net/prrnrk.jpg']
'logo' => ['type' => 'text', 'default' => 'https://pictshare.net/prrnrk.jpg'],
'admins' => ['type'=> 'array', 'default'=>[]],
);
function isMyEvent($tournament = false)
@ -27,4 +28,18 @@ class Tournament extends Model
else return false;
}
}
function amIAdmin($tournament = false)
{
if ($tournament == false)
$tournament = $this->id;
if (!$this->exists($tournament))
return false;
else {
if (in_array($_SESSION['user']->id, $this->data['admins']))
return true;
else return false;
}
}
}

View File

@ -44,6 +44,8 @@ class Tournaments extends Page {
$t->load($tid);
$this->set('admin',$t->amIAdmin($tid));
$this->set('joined',$t->isMyEvent($tid));
$this->set('tournament_id',$tid);
$this->set('tdata',$t->data);
$this->set('template','event.html');
@ -111,7 +113,12 @@ class Tournaments extends Page {
{
$t = new Tournament();
if($id)
$t->load($id);
{
if(!in_array($_SESSION['user']->id, $t->data['admins']))
return partial('error.html', ['errorTitle' => 'Error', 'errorMessage' => 'Du bist nicht berechtigt, dieses Turnier zu bearbeiten']);
else
$t->load($id);
}
$t->name = $name;
$t->date = $date;
@ -119,6 +126,8 @@ class Tournaments extends Page {
$t->referee = $tournament_referee;
$t->text = $tournament_text;
$t->url = $tournament_url;
if(!in_array($_SESSION['user']->id, $t->data['admins']))
$t->data['admins'][] = $_SESSION['user']->id;
if($newlogo)
$t->logo = $newlogo;

View File

@ -18,11 +18,13 @@
<?php if($tdata['url']): ?><li>Webseite: <a href="<?= $tdata['url']; ?>"><?= escape($tdata['url']); ?></a></li> <?php endif; ?>
</ul>
<?php if($admin===true): ?>
<div class="d-flex justify-content-end">
<button type="button" class="btn btn-secondary" hx-get="/tournaments/edit/<?= $tournament_id; ?>" hx-target="#main">
<i class="fas fa-edit"></i>
</button>
</div>
<?php endif; ?>
</div>
</div>
</div>