Пример #1
0
 public function start($kursus_id)
 {
     $tilmelding = Doctrine::getTable('VIH_Model_Course_Registration')->findOneBySessionId($this->session_id);
     if ($tilmelding === false) {
         $tilmelding = new VIH_Model_Course_Registration();
     }
     $tilmelding->session_id = $this->session_id;
     $tilmelding->ip = $this->getIpAddress();
     $tilmelding->kursus_id = $kursus_id;
     $tilmelding->save();
     return true;
 }
Пример #2
0
 public function testSubjectsCanBeRetrievedWhenReopeningTheRegistrationEvenThoughNoSubjectsWasSavedInitally()
 {
     $course1 = new VIH_Model_Course();
     $course1->navn = 'Course 1';
     $period1 = new VIH_Model_Course_Period();
     $period1->name = 'Period 1';
     $period1->Course = $course1;
     $period1->save();
     $group1 = new VIH_Model_Course_SubjectGroup();
     $group1->name = 'SubjectGroup 1';
     $group1->Period = $period1;
     $subject1 = new VIH_Model_Subject();
     $subject1->identifier = 'Subject 1';
     $subject2 = new VIH_Model_Subject();
     $subject2->identifier = 'Subject 2';
     $group1->Subjects[] = $subject1;
     $group1->Subjects[] = $subject2;
     $group1->save();
     $group1->Subjects[] = $subject1;
     $group1->Subjects[] = $subject2;
     $group1->save();
     $course1->SubjectGroups[] = $group1;
     $course1->save();
     // saved without Subjects
     try {
         $registrar = new VIH_Model_Course_Registration();
         $registrar->Course = $course1;
         // $registrar->Subjects; // if this is uncommented the test will pass
         $registrar->save();
     } catch (Doctrine_Record_Exception $e) {
         $this->fail($e->getMessage());
     }
     $reopend = Doctrine_Core::getTable('VIH_Model_Course_Registration')->findOneById($registrar->id);
     try {
         $reopend->Subjects[] = $subject1;
     } catch (Doctrine_Record_Exception $e) {
         $this->fail($e->getMessage());
     }
     $reopend->save();
     try {
         $subject = $reopend->Subjects[0];
         $this->assertTrue(is_object($subject));
         $this->assertEqual('VIH_Model_Subject', get_class($reopend->Subjects[0]));
     } catch (Doctrine_Record_Exception $e) {
         $this->fail($e->getMessage());
     }
 }
Пример #3
0
 /**
  * Bruges til at gemme ordren
  *
  * @param array $var Array to save
  */
 function save($var)
 {
     if (!empty($var['cpr'])) {
         $var['cpr'] = str_replace('-', '', $var['cpr']);
     } else {
         $var['cpr'] = '';
     }
     if (!$this->validate($var)) {
         return false;
     }
     // adressen
     $adresse = new VIH_Model_Adresse((int) $this->get('adresse_id'));
     $adresse_id = $adresse->save($var);
     $kontakt_adresse = new VIH_Model_Adresse($this->get('kontakt_adresse_id'));
     $kontakt_adresse_id = $kontakt_adresse->save(array('navn' => $var['kontakt_navn'], 'adresse' => $var['kontakt_adresse'], 'postnr' => $var['kontakt_postnr'], 'postby' => $var['kontakt_postby'], 'telefonnummer' => $var['kontakt_telefon'], 'arbejdstelefon' => $var['kontakt_arbejdstelefon'], 'mobil' => '', 'email' => $var['kontakt_email']));
     if ($this->get('status_key') < $this->getStatusKey('undervejs')) {
         $bind['status_key'] = $this->getStatusKey('undervejs');
     }
     $bind['adresse_id'] = $adresse_id;
     $bind['kontakt_adresse_id'] = $kontakt_adresse_id;
     $bind['besked'] = $var['besked'];
     $bind['uddannelse'] = $var['uddannelse'];
     $bind['kursus_id'] = $var['kursus_id'];
     $bind['betaling'] = $var['betaling'];
     $bind['cpr'] = $var['cpr'];
     $bind['nationalitet'] = $var['nationalitet'];
     $bind['kommune'] = $var['kommune'];
     if (!empty($var['sex'])) {
         $bind['sex'] = $var['sex'];
     }
     $conn = Doctrine_Manager::connection(DB_DSN);
     $conn->setCharset('utf8');
     $table = Doctrine::getTable('VIH_Model_Course_Registration');
     $tilmelding = $table->findOneById($this->id);
     if (empty($tilmelding)) {
         $tilmelding = new VIH_Model_Course_Registration();
     }
     $tilmelding->fromArray($bind);
     $tilmelding->save();
     if ($this->id == 0) {
         $this->id = $tilmelding->id;
     }
     $this->load();
     return $this->id;
 }