is115-php/modul6/index6_2.php

171 lines
6.0 KiB
PHP

<?php
include '../common.php';
include 'forberedelser.php';
ini_set('error_reporting', 1);
ini_set('display_errors',1);
$err = array();
$msg = array();
// Hent matrise med medlemmer fra forberedelser.php
$medlemmer = hentMedlemmer($_GET['size'] ?? 20, $_GET['page'] ?? 1);
if(isset($_GET['memberid'])){
$mid = $_GET['memberid'];
if(hentMedlem($mid) == 0){
$err[] = "Medlem ikke funnet.";
}
}
// Sjekker om det er et innsendt skjema (Redigert skjema)
if(!empty($_POST)){
if(!isset($_POST['bruker_id'])){
// NYTT MEDLEM
$medlem = new Medlem();
foreach ( Medlem::$stringNames as $name){
$medlem->{$name} = $_POST[$name];
}
$medlem->postnummer = (int) $_POST['postnummer'];
$medlem->dob = DateTime::createFromFormat('Y-m-d', $_POST['dob']);
$medlem->medlem_siden = DateTime::createFromFormat('Y-m-d', $_POST['medlem_siden']);
echo "Verified? ".($medlem->verifyMember()?"yes":"no")."<br>\n";
try {
echo "<pre>";
$medlem->persistMember();
echo "</pre>";
}
catch (InvalidArgumentException $e){
echo $e;
}
}
else {
$medlem = Medlem::getFromId($_POST['bruker_id']);
echo $medlem->fornavn." ".$medlem->etternavn."<br>\n";
foreach (Medlem::$stringNames as $felt){
echo "Oppdater $felt fra ".$medlem->{$felt};
if($medlem->set($felt, $_POST[$felt])){
echo " til ".$_POST[$felt];
}
echo "<br>\n";
}
foreach (Medlem::$intFields as $felt){
$medlem->set($felt, (int) $_POST[$felt]);
}
foreach (Medlem::$dateFields as $felt){
$medlem->set($felt, DateTime::createFromFormat('Y-m-d', $_POST[$felt]));
}
echo $medlem->fornavn." ".$medlem->etternavn."<br>\n";
echo "Medlem er ".($medlem->verifyMember()?"gyldig":"ugyldig")."<br>\n";
echo "Endrede verdier: ".implode(', ', $medlem->endret)."<br>\n";
echo "<br>\n";
echo "Medlem ikke oppdatert..<br>\n";
die();
}
}
?><!DOCTYPE html>
<html lang="no">
<head>
<title><?=title();?></title>
<link rel="stylesheet" href="../index.css">
</head>
<body>
<div class="container">
<h1><?=title();?></h1>
<h4><?=getNavigation();?></h4>
<h2>Registrering av nytt medlem</h2>
</div>
<div class="container">
<?php
if(!empty($err)){
foreach ($err as $e){
echo "<p class='error'>".$e."</p>\n";
}
}
if(!empty($msg)){
foreach ($msg as $m){
echo "<p class='suksess'>".$m."</p>\n";
}
}
?>
<form method="POST" action="index6_2.php">
<?php
// HVIS VI REDIGERER EN BRUKER ... (WIP)
if(isset($mid) && empty($err)){
foreach (array("fornavn", "etternavn", "adresse1", "adresse2", "postnummer", "poststed", "mobilnummer", "epost", "kjoenn", "interesser", "kursaktiviteter", "kontigentstatus") as $nkl){
$_POST[$nkl] = $_POST[$nkl] ?? $medlemmer[$mid]->{$nkl};
}
$_POST['dob'] = $_POST['dob'] ?? $medlemmer[$mid]->dob->format('Y-m-d');
$_POST['medlem_siden'] = $_POST['medlem_siden'] ?? $medlemmer[$mid]->medlem_siden->format("Y-m-d");
echo "<input type='hidden' name='bruker_id' value='$mid'>";
}
?>
<p>
<label>Fornavn:* <input type="text" name="fornavn" value="<?=$_POST['fornavn'] ?? '';?>"></label>
<label>Etternavn:* <input type="text" name="etternavn" value="<?=$_POST['etternavn'] ?? '';?>"></label>
</p>
<p>
<label>Adresselinje 1:* <input type="text" name="adresse1" value="<?=$_POST['adresse1'] ?? '';?>"></label><br>
<label>Adresselinje 2: <input type="text" name="adresse2" value="<?=$_POST['adresse2'] ?? '';?>"></label><br>
<label>Postnummer/Poststed:*
<input type="number" name="postnummer" min="0001" max="9999" value="<?=$_POST['postnummer'] ?? '';?>"><input type="text" name="poststed" value="<?=$_POST['poststed'] ?? '';?>">
</label>
</p>
<p>
<label>Mobilnummer: <input type="text" name="mobilnummer" value="<?=$_POST['mobilnummer'] ?? '';?>"></label><br>
<label>E-post:* <input type="text" name="epost" value="<?=$_POST['epost'] ?? '';?>"></label><br>
<label>Fødselsdato:* <input type="date" name="dob" value="<?=$_POST['dob'] ?? date('Y-m-d');?>"></label><br>
<label>
Kjønn:*
<select name="kjoenn">
<option value="0">-- Velg --</option>
<option <?=(@$_POST['kjoenn'] == "M"?SELECTED:'');?> value="M">Mann</option>
<option <?=(@$_POST['kjoenn'] == "F"?SELECTED:'');?> value="F">Kvinne</option>
<option <?=(@$_POST['kjoenn'] == "O"?SELECTED:'');?> value="O">Annet</option>
</select>
</label>
</p>
<p>
<label>Interesser:<br><textarea name="interesser"><?=$_POST['interesser'] ?? '';?></textarea></label>
</p>
<p>
<label>Kursaktiviteter:<br><textarea name="kursaktiviteter"><?=$_POST['kursaktiviteter'] ?? '';?></textarea></label>
</p>
<p>
<label>Medlem siden:* <input type="date" name="medlem_siden" value="<?=$_POST['medlem_siden'] ?? date('Y-m-d');?>"></label><br>
<label>
Kontigentstatus:*
<select name="kontigentstatus">
<option value="0">-- Velg --</option>
<option <?=(@$_POST['kontigentstatus'] == "BETALT"?SELECTED:'');?> value="BETALT">Betalt</option>
<option <?=(@$_POST['kontigentstatus'] == "IKKE_BETALT"?SELECTED:'');?> value="IKKE_BETALT">Ikke betalt</option>
</select>
</label>
</p>
<p>
<input type="submit" value="<?=(isset($mid)?"Rediger...":"Send inn...");?>">
</p>
</form>
</div>
</body>
</html>