This repository has been archived on 2023-01-06. You can view files and clone it, but cannot push or open issues or pull requests.
web/public/teamtable/edit/update.php
2022-02-28 05:51:22 +01:00

157 lines
4.0 KiB
PHP

<?php
$app = require '../../../app/inc.php';
$model = $app->model('Teamtable');
if (!isset($_GET['item']))
{
$app->session->flash('Kunne ikke endre lag: ID ikke definert som GET parameter', 'danger');
$app->redirect('index.php');
}
$id = $_GET['item'];
// Id must be a number
if (!is_numeric($id))
{
$app->session->flash('Kunne ikke endre lag: ID må være tall', 'danger');
$app->redirect('index.php');
}
// Check if team with supplied ID exists
$currentTeam = $model->getTeamByID($id);
if (!$currentTeam)
{
$app->session->flash("Kunne ikke endre lag: ID $id finnes ikke", "danger");
$app->redirect('index.php');
}
if ($_SERVER['REQUEST_METHOD'] === 'POST')
{
// Check that all parameters are present
if (!isset(
$_POST['LagNavn'],
$_POST['Bedrift'],
$_POST['Kortnummer'],
$_POST['Lagleder'],
$_POST['Telefon'],
$_POST['Deltagere'],
$_POST['Runder'],
)
)
{
$app->session->flash("Kunne ikke endre lag: Ikke alle POST parametere er til stede!", "danger");
$app->redirect('./');
}
$LagNavn = $_POST['LagNavn'];
$Bedrift = $_POST['Bedrift'];
$Kortnummer = $_POST['Kortnummer'];
$Lagleder = $_POST['Lagleder'];
$Telefon = $_POST['Telefon'];
$Deltagere = $_POST['Deltagere'];
$Runder = $_POST['Runder'];
//====Validate Input====//
$validationError = FALSE;
$template = $model->template;
// LagNavn
if (!strlen($LagNavn)) {
$LagNavn = $template['LagNavn'];
}
if (strlen($LagNavn) > 32) {
$validationError = TRUE;
}
// Bedrift
if (!strlen($Bedrift)) {
$Bedrift = $template['Bedrift'];
}
if (strlen($Bedrift) > 32) {
$validationError = TRUE;
}
// Kortnummer
if (!strlen($Kortnummer)) {
$Kortnummer = $template['Kortnummer'];
}
if (strlen($Kortnummer) > 32) {
$validationError = TRUE;
}
// Lagleder
if (!strlen($Lagleder)) {
$Lagleder = $template['Lagleder'];
}
if (strlen($Lagleder) > 32) {
$validationError = TRUE;
}
// Telefon
if (!strlen($Telefon)) {
$Telefon = $template['Telefon'];
}
if (strlen((string) $Telefon) > 32) {
$validationError = TRUE;
}
// Deltagere
if (!strlen($Deltagere)) {
$Deltagere = $template['Deltagere'];
}
if (strlen((string) $Deltagere) > 32) {
$validationError = TRUE;
}
// Runder
if (!strlen($Runder)) {
$Runder = $template['Runder'];
}
if (strlen((string) $Runder) > 32) {
$validationError = TRUE;
}
if (!$validationError) {
if (
$LagNavn == $currentTeam['LagNavn'] &&
$Bedrift == $currentTeam['Bedrift'] &&
$Kortnummer == $currentTeam['Kortnummer'] &&
$Lagleder == $currentTeam['Lagleder'] &&
$Telefon == $currentTeam['Telefon'] &&
$Deltagere == $currentTeam['Deltagere'] &&
$Runder == $currentTeam['Runder']
)
{
$app->session->flash('Fant ingen endringer for lag: '.$LagNavn);
} else {
// All is good! Lets update the team details
$model->updateTeamByID(
$id,
$LagNavn,
$Bedrift,
$Kortnummer,
$Lagleder,
$Telefon,
$Deltagere,
$Runder,
);
$app->session->flash('Lagret endringer for lag: '.$LagNavn, 'success');
}
$app->redirect('index.php');
} else {
$app->session->flash('Kunne ikke endre lag: Validerings feil!', 'danger');
}
}
// Escape all values
foreach ($currentTeam as $key => $value)
{
$currentTeam[$key] = htmlspecialchars($currentTeam[$key]);
}
$app->view('template/header', ['title' => 'Endre lagdetaljer']);
$app->view('pages/teamtable/edit/update', ["team" => $currentTeam]);
$app->view('template/footer');