function postForm() { $tilmelding = $this->getTilmelding(); if ($this->getForm()->validate()) { $kursus = new VIH_Model_KortKursus($this->body('kursus_id')); $kursus->getPladser(); if ($kursus->get('pladser_ledige') < $this->body('antal_deltagere')) { return new k_SeeOther($this->context->url('../venteliste'), array('antal' => $this->body('antal_deltagere'))); } if ($tilmelding->start($this->body())) { $tilmelding->kursus->getPladser(); if ($tilmelding->kursus->get('pladser_ledige') >= $this->body('antal_deltagere')) { $deltagere = $tilmelding->getDeltagere(); if (count($deltagere) == 0) { for ($i = 1; $i <= $this->body('antal_deltagere'); $i++) { $deltager = new VIH_Model_KortKursus_Tilmelding_Deltager($tilmelding); $deltager->add(); } } elseif (count($deltagere) < $this->body('antal_deltagere')) { for ($i = 1, $max = $this->body('antal_deltagere') - count($deltagere); $i <= $max; $i++) { $deltager = new VIH_Model_KortKursus_Tilmelding_Deltager($tilmelding); $deltager->add(); } } elseif (count($deltagere) > $tilmelding->get('antal_deltagere')) { // burde nok lave et tjek på, om nogle af dem er tomme? for ($i = 1, $max = count($deltagere) - $this->body('antal_deltagere'); $i <= $max; $i++) { $deltager = new VIH_Model_KortKursus_Tilmelding_Deltager($tilmelding, $deltagere[$i]->get('id')); $deltager->delete(); } } return new k_SeeOther($this->url('kontakt')); } } } return $this->render(); }