Commit
This commit is contained in:
parent
8fe8c67b6a
commit
3296f1b078
@ -54,6 +54,18 @@ class TeamMapper
|
||||
#return $teams;
|
||||
}
|
||||
|
||||
public function getByCardnumber(string $cardnumber): ?Team
|
||||
{
|
||||
$sth = $this->dbh->prepare('SELECT * FROM lagtabell WHERE Kortnummer = ?');
|
||||
$sth->execute([$cardnumber]);
|
||||
$row = $sth->fetch(PDO::FETCH_ASSOC);
|
||||
if ($row)
|
||||
{
|
||||
return $this->mapRowToTeam($row);
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
public function get(int $id): ?Team
|
||||
{
|
||||
$sth = $this->dbh->prepare('SELECT * FROM lagtabell WHERE LagID = ?');
|
||||
|
@ -41,6 +41,11 @@ class Teamtable
|
||||
return $this->teamMapper->get($id);
|
||||
}
|
||||
|
||||
public function getByCardnumber(string $cardnumber): ?Team
|
||||
{
|
||||
return $this->teamMapper->getByCardnumber($cardnumber);
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts team into database
|
||||
*/
|
||||
@ -54,23 +59,29 @@ class Teamtable
|
||||
$this->teamMapper->delete($id);
|
||||
}
|
||||
|
||||
public function update(Team $team): Team
|
||||
{
|
||||
return $this->teamMapper->update($team);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns TRUE if team exists, FALSE if not
|
||||
* TODO: maybe use integers instead of booleans for codes
|
||||
*/
|
||||
public function recieveBaton(string $cardnumber): bool
|
||||
{
|
||||
$team = $this->getTeamByCardnumber($cardnumber);
|
||||
$team = $this->getByCardnumber($cardnumber);
|
||||
if ($team)
|
||||
{
|
||||
// team exists, insert into time table
|
||||
$sth = $this->dbh->prepare('INSERT INTO tidtabell (LagID) VALUES (?)');
|
||||
$sth->execute([$row['LagID']]);
|
||||
$sth->execute([$team->id]);
|
||||
return TRUE;
|
||||
}
|
||||
// team does not exist, lets create it
|
||||
$team = new Team();
|
||||
$team = new Team;
|
||||
$team->cardnumber = $cardnumber;
|
||||
$this->addTeam($team);
|
||||
$this->create($team);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
<h1>Endre lagtabell</h1>
|
||||
<span class="float-right">[ <a class="success" href="create.php">Opprett lag</a> ]</span>
|
||||
<span class="float-right">[ <a class="success" href="update.php">Opprett lag</a> ]</span>
|
||||
<br>
|
||||
<table>
|
||||
<tr>
|
||||
|
@ -1,42 +1,48 @@
|
||||
<h1>Endre lagdetaljer</h1>
|
||||
<h1><?=$title?></h1>
|
||||
<p>Her kan du oppdatere informasjonen om laget</p>
|
||||
<form method="post" autocomplete="off">
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<label for="company">Bedrift:</label>
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<input type="text" id="company" name="company" value="<?=htmlspecialchars($team->company)?>" maxlength="32">
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<label for="cardnumber">Kortnummer:</label>
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<input type="text" id="cardnumber" name="cardnumber" value="<?=htmlspecialchars($team->cardnumber)?>" maxlength="32">
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
|
||||
<label for="name">Navn:</label>
|
||||
<label for="leader">Leder:</label>
|
||||
<br>
|
||||
<input type="text" id="name" name="name" value="<?=htmlspecialchars($team->name)?>" maxlength="32">
|
||||
|
||||
<input type="text" id="leader" name="leader" value="<?=htmlspecialchars($team->leader)?>" maxlength="32">
|
||||
<br>
|
||||
|
||||
|
||||
<label for="phone">Telefon:</label>
|
||||
<br>
|
||||
<input type="number" id="phone" name="phone" value="<?=htmlspecialchars($team->phone)?>" maxlength="32">
|
||||
<br>
|
||||
|
||||
|
||||
<label for="participants">Deltagere:</label>
|
||||
<br>
|
||||
<input type="number" id="participants" name="participants" value="<?=htmlspecialchars($team->participants)?>" maxlength="32">
|
||||
<br>
|
||||
|
||||
|
||||
<label for="number">Runder:</label>
|
||||
<br>
|
||||
<input type="number" id="rounds" name="rounds" value="<?=htmlspecialchars($team->rounds)?>" maxlength="32">
|
||||
<br>
|
||||
|
||||
<br>
|
||||
<input type="submit" value="Lagre">
|
||||
<span>[ <a class="danger" href="index.php">Avbryt</a> ]</span>
|
||||
|
1
public/api/v1/recieve.php
Normal file
1
public/api/v1/recieve.php
Normal file
@ -0,0 +1 @@
|
||||
<?php $app = require '../../../app/inc.php';
|
@ -1,5 +1,7 @@
|
||||
<?php
|
||||
$app = require '../app/inc.php';
|
||||
<?php $app = require '../app/inc.php';
|
||||
|
||||
// TODO: refactor
|
||||
|
||||
$model = $app->model('Teamtable');
|
||||
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST')
|
||||
@ -9,7 +11,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST')
|
||||
$cardnumber = $_POST['cardnumber'];
|
||||
|
||||
if (!(strlen($cardnumber) > 32)) {
|
||||
if ($model->recieveStick($cardnumber))
|
||||
if ($model->recieveBaton($cardnumber))
|
||||
{
|
||||
$app->session->flash("Lag funnet for \"{$cardnumber}\"", "success");
|
||||
} else {
|
||||
|
@ -1,16 +0,0 @@
|
||||
<?php $app = require '../../../app/inc.php';
|
||||
/**
|
||||
* Insert a team into team table
|
||||
*/
|
||||
|
||||
use App\Teamtable\Team as Team;
|
||||
|
||||
$model = $app->model('Teamtable');
|
||||
|
||||
$team = $model->create(
|
||||
new Team()
|
||||
);
|
||||
|
||||
$app->session->flash('Opprettet ny lagmal, <a class="success" href=' . "update.php?item=$team->id" . '>klikk her</a> for å endre på den', 'success', TRUE);
|
||||
|
||||
$app->redirect('index.php');
|
@ -1,4 +1,7 @@
|
||||
<?php $app = require '../../../app/inc.php';
|
||||
/**
|
||||
* Creates and updates team in teamtable
|
||||
*/
|
||||
|
||||
use App\Teamtable\Team;
|
||||
|
||||
@ -6,20 +9,79 @@ $item = filter_input(INPUT_GET, 'item', FILTER_VALIDATE_INT);
|
||||
|
||||
$model = $app->model('Teamtable');
|
||||
|
||||
// item is NULL if not set
|
||||
if ($item !== NULL)
|
||||
{
|
||||
// check that team exists
|
||||
$team = $model->get($item);
|
||||
if (!$team)
|
||||
{
|
||||
// team does not exist
|
||||
$app->session->flash('Kunne ikke endre lag: Lag finnes ikke', 'danger');
|
||||
$app->session->flash('Kunne ikke oppdatere lag: Lag finnes ikke', 'danger');
|
||||
$app->redirect('index.php');
|
||||
}
|
||||
}
|
||||
|
||||
// lets create a team
|
||||
$app->view('template/header', ['title' => 'Endre lagdetaljer']);
|
||||
$app->view('pages/teamtable/edit/update', ["team" => new Team]);
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST')
|
||||
{
|
||||
$name = filter_input(INPUT_POST, 'name');
|
||||
$company = filter_input(INPUT_POST, 'company');
|
||||
$cardnumber = filter_input(INPUT_POST, 'cardnumber');
|
||||
$leader = filter_input(INPUT_POST, 'leader');
|
||||
$phone = filter_input(INPUT_POST, 'phone', FILTER_VALIDATE_INT);
|
||||
$participants = filter_input(INPUT_POST, 'participants', FILTER_VALIDATE_INT);
|
||||
$rounds = filter_input(INPUT_POST, 'rounds', FILTER_VALIDATE_INT);
|
||||
|
||||
$team = new Team;
|
||||
try {
|
||||
$team->setName($name);
|
||||
$team->setCompany($company);
|
||||
$team->setCardnumber($cardnumber);
|
||||
$team->setLeader($leader);
|
||||
$team->setPhone($phone);
|
||||
$team->setParticipants($participants);
|
||||
$team->setRounds($rounds);
|
||||
} catch(Throwable $e) {
|
||||
$app->session->flash('Kunne ikke oppdatere lag: Validerings feil ' . $e->getMessage() , 'danger');
|
||||
$app->redirect('index.php');
|
||||
}
|
||||
|
||||
if ($item !== NULL)
|
||||
{
|
||||
// team exists, lets update it
|
||||
$team->id = $item;
|
||||
$model->update($team);
|
||||
$app->session->flash('Oppdaterte lag', 'success');
|
||||
$app->redirect('index.php');
|
||||
}
|
||||
// no team was specified, lets create one
|
||||
$model->create($team);
|
||||
$app->session->flash('Opprettet nytt lag', 'success');
|
||||
$app->redirect('index.php');
|
||||
}
|
||||
|
||||
if ($item !== NULL)
|
||||
{
|
||||
// team exists
|
||||
$team = $model->get($item);
|
||||
|
||||
$title = "Endre lag";
|
||||
$app->view('template/header', [
|
||||
'title' => $title
|
||||
]);
|
||||
$app->view('pages/teamtable/edit/update', [
|
||||
"team" => $team,
|
||||
"title" => $title
|
||||
]);
|
||||
$app->view('template/footer');
|
||||
die();
|
||||
}
|
||||
|
||||
// lets create a team
|
||||
$title = "Legg til lag";
|
||||
$app->view('template/header', [
|
||||
'title' => $title
|
||||
]);
|
||||
$app->view('pages/teamtable/edit/update', [
|
||||
"team" => new Team,
|
||||
"title" => $title
|
||||
]);
|
||||
$app->view('template/footer');
|
Reference in New Issue
Block a user