예제 #1
0
파일: Venteliste.php 프로젝트: vih/vih.dk
 /**
  * Loader v�rdier
  */
 function load()
 {
     // Informationer om kurser.
     if ($this->belong_to == 1 && $this->belong_to_id != 0) {
         // Kort kursus
         $kortkursus = new VIH_Model_KortKursus($this->belong_to_id);
         $this->value["kursusnavn"] = $kortkursus->get("kursusnavn");
         $this->value["kursus_id"] = $kortkursus->get("id");
     } elseif ($this->belong_to == 2) {
         // Langt kursus
         throw new Exception("Lange kurser Endnu ikke implementeret i load");
     }
     if ($this->id == 0) {
         return 1;
     }
     $db = new DB_Sql();
     $db->query("SELECT * FROM venteliste WHERE id = " . $this->id);
     $db->nextRecord() or die("Ugyldig id");
     $this->value["id"] = $db->f("id");
     $this->value["adresse_id"] = $db->f("adresse_id");
     $this->value["antal"] = $db->f("antal");
     $this->value["besked"] = $db->f("besked");
     $this->adresse = new VIH_Model_Adresse($db->f("adresse_id"));
     return 1;
 }
예제 #2
0
 function testSaveReturnsTrueOnValidData()
 {
     $data = array('navn' => 'test', 'dato_start' => date('Y-m-d'), 'dato_slut' => date('Y-m-d'));
     $kursus = new VIH_Model_KortKursus();
     $this->assertTrue($kursus->save($data) > 0);
     $this->assertEquals('test', $kursus->get('navn'));
 }
예제 #3
0
 function renderHtml()
 {
     $kursus = new VIH_Model_KortKursus($this->context->name());
     if ($kursus->get('gruppe_id') != 1) {
         echo '';
         exit;
     }
     $begyndere = $kursus->getBegyndere();
     throw new k_http_Response(200, $begyndere);
 }
예제 #4
0
 function renderHtml()
 {
     $kursus = new VIH_Model_KortKursus($this->context->name());
     $deltagere = $kursus->getDeltagere();
     switch ($kursus->get('gruppe_id')) {
         case 1:
             // golf
             $keywords[] = 'golf';
             break;
         case 2:
             // �vrige
             $keywords[] = 'familie';
             break;
         case 3:
             // bridge
             $keywords[] = 'bridge';
             break;
         case 4:
             // golf og bridge
             $keywords[] = 'golf';
             $keywords[] = 'bridge';
             break;
         case 5:
             // camp
             $keywords[] = 'camp';
             break;
         default:
             $keywords = array();
             break;
     }
     $this->document->setTitle('Deltagere på ' . $kursus->getKursusNavn());
     $this->document->addOption('Tilmeldingerne', $this->url('../tilmeldinger'));
     $this->document->addOption('Deltagerliste', $this->url('../deltagerliste'));
     $this->document->addOption('Adresselabels', $this->url('../adresselabels'));
     $this->document->addOption('Drikkevareliste', $this->url('../drikkevareliste'));
     $this->document->addOption('Navneskilte', $this->url('../navneskilte'));
     $this->document->addOption('Ministerium', $this->url('../ministeriumliste'));
     $this->document->addOption('Excel', $this->url('./', array('format' => 'excel')));
     $data = array('vis_tilmelding' => 'ja', 'deltagere' => $deltagere, 'type' => $keywords, 'indkvartering' => $kursus->get('indkvartering'));
     $tpl = $this->template->create('kortekurser/deltagere');
     return '<p>Deltagerantal: ' . count($deltagere) . '</p>' . $tpl->render($this, $data);
 }
예제 #5
0
 function renderHtml()
 {
     $db = $this->db;
     if (is_numeric($this->query('sletbillede'))) {
         $fields = array('date_updated', 'pic_id');
         $values = array('NOW()', 0);
         $sth = $db->autoPrepare('kortkursus', $fields, DB_AUTOQUERY_UPDATE, 'id = ' . $_GET['id']);
         $res = $db->execute($sth, $values);
         if (PEAR::isError($res)) {
             echo $res->getMessage();
         }
     }
     $extra_text = '';
     $kursus = new VIH_Model_KortKursus($this->name());
     $venteliste = new VIH_Model_Venteliste(1, $kursus->get('id'));
     $venteliste_list = $venteliste->getList();
     $venteliste_count = count($venteliste_list);
     if ($venteliste_count > 0) {
         $extra_text = '<p><a href="venteliste.php?kursus_id=' . $kursus->get('id') . '">Venteliste</a></p>';
     }
     $file = new VIH_FileHandler($kursus->get('pic_id'));
     if ($file->get('id') > 0) {
         $file->loadInstance('small');
         $extra_html = $file->getImageHtml();
         if (!empty($extra_html)) {
             $extra_html .= ' <br /><a href="?sletbillede=' . $kursus->get('pic_id') . '&amp;id=' . $_GET['id'] . '">slet billede</a>';
         }
     }
     if (empty($extra_html)) {
         $extra_html = $this->getForm()->toHTML();
     }
     $begynder = '';
     if ($kursus->get('gruppe_id') == 1) {
         $begynder = '<p>Begyndere: ' . $kursus->getBegyndere() . '</p>';
     }
     $this->document->setTitle($kursus->get('navn'));
     $this->document->addOption('Tilbage til kurser', $this->url('../', array('filter' => $kursus->get('gruppe_id'))));
     $this->document->addOption('Ret', $this->url('edit'));
     $this->document->addOption('Kopier', $this->url(null, array('copy')));
     return nl2br($kursus->get('beskrivelse')) . $extra_text . $extra_html;
 }
예제 #6
0
파일: Venteliste.php 프로젝트: vih/vih.dk
 function postForm()
 {
     $emailsender = '';
     $kursus = new VIH_Model_KortKursus($this->context->name());
     if ($this->getForm()->validate()) {
         $venteliste = new VIH_Model_Venteliste(1, $this->context->name());
         if (intval($venteliste->get("kursus_id")) == 0) {
             die("Ugyldigt kursus");
         }
         if ($venteliste->save($this->body())) {
             $number = $venteliste->getNumber();
             if (defined('EMAIL_STATUS') && EMAIL_STATUS == "online") {
                 $antal_personer = $venteliste->get("antal") . " person";
                 if ($venteliste->get("antal") > 1) {
                     $antal_personer .= "er";
                 }
                 $error = "";
                 $body = "Køre " . $this->body('navn') . "\n\nDu er nu skrevet på venteliste til kurset: " . $venteliste->get("kursusnavn") . ". Du er pt. nummer " . $number . " på ventelisten. Vi kontakter dig, hvis der bliver ledig plads til dig. Ønsker du ikke længere at stå på ventelisten, må du meget gerne kontakte os på telefon 75820811 eller besvare denne e-mail.\n\nMed venlig hilsen\nVejle Idrætshøjskole";
                 $mailer = new VIH_Email();
                 $mailer->setSubject("Opskrivning på venteliste");
                 $mailer->addAddress($this->body('email'), $this->body('navn'));
                 $mailer->setBody($body);
                 if ($mailer->send()) {
                     $emailsender = "<p>Du vil om kort tid modtage en e-mail med en bekræftelse på at du er optaget på ventelisten.</p><p>Med venlig hilsen<br />En venlig e-mail-robot<br />Vejle Idrætshøjskole</p>";
                 } else {
                     $emailsender = "<p>Det var ikke muligt at sende dig en bekræftelse på e-mail på din optagelse på venteliste. Har du spørgsmål er du velkommen til at kontakte Vejle Idrætshøjskole. Imens tager vi lige en alvorlig snak med webmasteren.</p>";
                 }
             }
             $data = array('content' => '<h1>Du er optaget på ventelisten!</h1><p>Du er nu optaget på ventelisten til ' . $kursus->get('kursusnavn') . ' med ' . $venteliste->get("antal") . ' deltagere. Du står som nummer <strong>' . $number . '</strong> på ventelisten.</p>' . $emailsender);
         } else {
             $data = array('content' => '
                 <h1>Fejl i indtastning!</h1>
                 <p>Der er fejl i de indtastede data, gå venligst tilbage og kontroller at de korrekte.</p>');
         }
     } else {
         $data = array('content' => '<h1>Vil du på venteliste?</h1><p>Der var fejl i dine indtastninger.</p>' . $this->getForm()->toHTML());
     }
     $tpl = $this->template->create('wrapper');
     return $tpl->render($this, $data);
 }
예제 #7
0
 function renderHtml()
 {
     $kursus = new VIH_Model_KortKursus($this->context->name());
     $gateway = new VIH_Model_KortKursus_Indkvartering($kursus);
     foreach ($gateway->getActive() as $active) {
         $indkvartering[$active['indkvartering_key']]['chosen'] = 1;
         $indkvartering[$active['indkvartering_key']]['price'] = $active['price'];
     }
     $this->getForm()->setDefaults(array('id' => $kursus->get('id'), 'navn' => $kursus->get('navn'), 'uge' => $kursus->get('uge'), 'nyhed' => $kursus->get('nyhed'), 'indkvartering' => $indkvartering, 'dato_start' => $kursus->get('dato_start'), 'dato_slut' => $kursus->get('dato_slut'), 'ansat_id' => $kursus->get('ansat_id'), 'begyndere' => $kursus->get('begyndere'), 'pladser' => $kursus->get('pladser'), 'vaerelser' => $kursus->get('vaerelser'), 'minimumsalder' => $kursus->get('minimumsalder'), 'pris' => $kursus->get('pris'), 'pris_boern' => $kursus->get('pris_boern'), 'pris_depositum' => $kursus->get('pris_depositum'), 'pris_afbestillingsforsikring' => $kursus->get('pris_afbestillingsforsikring'), 'beskrivelse' => $kursus->get('beskrivelse'), 'tilmeldingsmulighed' => $kursus->get('tilmeldingsmulighed'), 'published' => $kursus->get('published'), 'title' => $kursus->get('title'), 'description' => $kursus->get('description'), 'keywords' => $kursus->get('keywords'), 'gruppe_id' => $kursus->get('gruppe_id')));
     $this->document->setTitle('Rediger kursus');
     $this->document->navigation = array($this->context->url('../', array('filter' => $kursus->get('gruppe_id'))) => 'Tilbage til kurser');
     return $this->getForm()->toHTML();
 }
예제 #8
0
파일: Antal.php 프로젝트: vih/vih.dk
 function getForm()
 {
     if ($this->form) {
         return $this->form;
     }
     $tilmelding = $this->getTilmelding();
     $kursus = new VIH_Model_KortKursus();
     $kurser = $kursus->getList();
     $kursus_list = array('' => 'Vælg');
     foreach ($kurser as $kursus) {
         $kursus_id = $kursus->get('id');
         $kursus_navn = $kursus->get('kursusnavn') . ' (' . $kursus->get('pladser_status') . ')';
         $kursus_list[$kursus_id] = $kursus_navn;
     }
     $form = new HTML_QuickForm('kortekurser', 'POST', $this->url());
     $form->addElement('header', null, 'Hvilket kursus vil du tilmelde dig?');
     $form->addElement('select', 'kursus_id', 'Kursus', $kursus_list);
     $form->addElement('header', 'null', 'Hvor mange vil du tilmelde?');
     $form->addElement('select', 'antal_deltagere', 'Antal deltagere', array(1 => 1, 2 => 2, 3 => 3, 4 => 4, 5 => 5, 6 => 6, 7 => 7, 8 => 8, 9 => 9, 10 => 10));
     $form->addElement('submit', null, 'Videre >>');
     $defaults = array();
     if ($tilmelding->get('kursus_id') > 0) {
         $defaults['kursus_id'] = $tilmelding->get('kursus_id');
         $defaults['antal_deltagere'] = count($tilmelding->getDeltagere());
     } else {
         $defaults['kursus_id'] = $this->context->getKursusId();
     }
     $form->setDefaults($defaults);
     $form->applyFilter('__ALL__', 'trim');
     $form->addRule('kursus_id', 'Du skal vælge et kursus', 'required');
     $form->addRule('kursus_id', 'Du skal vælge et kursus', 'numeric');
     $form->addRule('antal_deltagere', 'Du skal vælge hvor mange, du vil have', 'required');
     $form->addRule('antal_deltagere', 'Deltagerne skal være et tal', 'numeric');
     // $form->addRule('antal_deltagere', 'Du skal vælge flere end en deltager', 'range', array(1,10));
     return $this->form = $form;
 }