<?php

function naam_ingevuld( $naam ) {
  // 2.5 punten
  //
  // De functie naam_ingevuld() retourneert true als $naam ingevuld is, dat 
  // wil zeggen dat $naam *niet* gelijk aan de lege string is. Is $naam wel 
  // gelijk aan de lege string, dan retourneert deze functie false.
  //
  return true;
};

function sommen_okay( $ingevulde_sommen ) {
  // 15 punten, alleen het zinvol gebruik van een iteratie-statement levert het 
  // maximaal aantal punten op.
  //
  // De functie sommen_okay() retourneert true als *elke* waarde in 
  // het array $ingevulde_sommen een getal tussen -30 en 30 is (inclusief -30 
  // en 30). In elk ander geval retourneert deze functie false.
  //
  // Let op, alle sommetjes moeten ingevuld zijn.
  //
  return true;
};  

function bereken_punt( $ingevulde_sommen, $antwoorden ) {
  // 15 punten, alleen het zinvol gebruik van een iteratie-statement levert 
  // het maximaal aantal punten op
  //
  // De functie bereken_punt() retourneert het punt dat de leerling heeft 
  // gehaald voor de rekentoets. In het array $ingevulde_sommen vind je alle 
  // antwoorden van de leerling. In het array $antwoorden de bijbehorende 
  // goede antwoorden.
  //
  // Als een leerling alle sommen goed heeft beantwoord, krijgt hij of zij 
  // een 10. Voor de eerste fout worden 2 punten afgetrokken, voor de tweede fout 
  // 1 punt, voor de derde fout 2/3 punt, voor de vierde fout 2/4, enzovoorts. 
  //
  // Met andere woorden, voor de n-de fout wordt 2/n punt afgetrokken.
  //
  return 2.5;  
};

function punt_naar_plaatje( $punt ) {
  // 10 punten
  //
  // De functie punt_naar_plaatje() vertaalt een punt ($punt) naar een URL van 
  // een plaatje op het internet:
  // * is het punt groter of gelijk aan 8? retourneer de tekst:
  //     http://www.vonnetje.isdenaam.nl/homepage/show/1085697.gif
  // * ligt het punt tussen 6 en 8 in? retourneer de tekst:
  //     http://www.vonnetje.isdenaam.nl/homepage/show/786483.gif
  // * ligt het het punt tussen 5 en 6? retourneer de tekst:
  //     http://www.vonnetje.isdenaam.nl/homepage/show/253689.gif
  // * is het punt kleiner dan een 5? retourneer de tekst:
  //     http://www.vonnetje.isdenaam.nl/homepage/show/504409.gif
  //
  return "http://www.vonnetje.isdenaam.nl/homepage/show/504409.gif";
};

function staaf($punt) {
  // 15 punten
  //
  // De functie staaf() retourneert $punt*10 sterretjes. $punt 
  // is een getal met één cijfer achter de komma.
  //
  // Voorbeelden:
  // - het punt 1.0 levert 10 sterretjes op (**********)
  // - het punt 2.5 een tekst met 25 sterretjes (***********************)
  // - enzovoorts.
  //
  return "***********************";
}

//////////////////////////////////////////////////////////////////////////////////////////
//
//    VERANDER HIERONDER NIETS !!!
//    
//////////////////////////////////////////////////////////////////////////////////////////

// Goede antwoorden
$antwoorden = array( 5, 7, 8, -3, 2, -30, -7, -27, 12, -1, -9, -24, -5, -1, 28, 30, 20, -3, 20, 9);
// Antwoorden van de leerling
$ingevulde_sommen = $_POST['sommen'];

if ( !empty( $_POST ) && 
     naam_ingevuld( $_POST['naam'] ) && 
     sommen_okay( $ingevulde_sommen) ) {
  $punt = sprintf( "%01.2f", bereken_punt( $ingevulde_sommen, $antwoorden ) ) + 0;
?>
<html>
  <head>
    <link rel="stylesheet" type="text/css" href="rekentoets.css">
    <title>Resultaat rekentoets</title>
  </head>
  <body>
    <h2>Resultaat rekentoets</h2>
    <p>
      Beste <?php echo $_POST['naam']; ?> uit groep <?php echo $_POST['groep']; ?>,  
      je hebt op <?php echo $_POST['datum']; ?> een <b><?php echo $punt; ?></b> gehaald
      voor de rekentoets.
    </p>
    <img alt="beoordelingsplaatje" src="<?php echo punt_naar_plaatje( $punt );?>">
    <p>
      Je punt in staafdiagram:
    </p>
      <table>
	<tr class="staafdiagram">
	  <td>0</td>
	  <td class="balk"><span><?php echo staaf( $punt ); ?></span></td>
	  <td>10</td>
	</tr>
      </table>
  </body>
</html>

<?php
} else {
  // er is iets foutgegaan
  // geef de foutpagina weer
?>
<html>
  <head>
    <link rel="stylesheet" type="text/css" href="rekentoets.css">
    <title>Er is iets fout gegaan ...</title>
  </head>
  <body>
    <h2>Er is iets fout gegaan ...</h2>
    <ul>
<?php
  if (!naam_ingevuld( $_POST['naam'] )) {
    echo "<li>Je bent vergeten je naam in te vullen!</li>";
  };
  if (!sommen_okay( $ingevulde_sommen )) {
    echo "<li>Bij de rekensommen vul je alleen <b>getallen</b> tussen <b>&minus;30</b> en <b>30</b> in!</li>";
    echo "<li>Vul iets in bij elke som!</li>";
  };
?>
    </ul>
  </body>
</html>
<?php
  };
?>
