Example #1
0
 function postForm()
 {
     $tilmelding = new VIH_Model_KortKursus_Tilmelding($this->context->name());
     $allowed_brev_type = array('' => '_fejl_', 'rykker.php' => 'rykker', 'depositumrykker.php' => 'depositumrykker', 'depositum.php' => 'depositum', 'bekraeftelse.php' => 'bekraeftelse', 'depositumbekraeftelse.php' => 'depositumbekraeftelse');
     $brev_type = $this->body('type');
     $brev_type_key = array_search($brev_type, $allowed_brev_type);
     if ($brev_type_key === false) {
         throw new Exception("Ugyldig brev type");
     }
     include dirname(__FILE__) . '/breve/' . $brev_type_key;
     if ($this->body('send_email')) {
         $mail = new VIH_Email();
         $mail->setSubject(ucfirst($brev_type) . " fra Vejle Idrætshøjskole");
         $mail->setBody($brev_tekst);
         $mail->addAddress($tilmelding->get('email'), $tilmelding->get('navn'));
         if (!$mail->send()) {
             throw new Exception("Email blev ikke sendt. Der opstod en fejl. Du kan forsøge igen eller kontakte ham den dovne webmaster");
         }
         $historik = new VIH_Model_Historik('kortekurser', $tilmelding->get("id"));
         $historik->save(array('type' => $brev_type, 'comment' => "Sendt via e-mail"));
         return new k_SeeOther($this->context->url());
     } elseif ($this->body('send_pdf')) {
         $historik = new VIH_Model_Historik('kortekurser', $tilmelding->get("id"));
         $historik->save(array('type' => $brev_type, 'comment' => "Sendt via post"));
         return new k_SeeOther($this->url(null . '.pdf', array('type' => $brev_type)));
     }
     return $this->render();
 }
Example #2
0
 function renderHtml()
 {
     $tilmelding = new VIH_Model_KortKursus_Tilmelding($this->name());
     if (is_numeric($this->query('sletdeltager'))) {
         $deltager = new VIH_Model_KortKursus_Tilmelding_Deltager($tilmelding, $this->query('sletdeltager'));
         $deltager->delete();
     } elseif ($this->query('action') == 'sendemail') {
         if ($tilmelding->sendEmail()) {
             $historik = new VIH_Model_Historik('kortekurser', $tilmelding->get('id'));
             if (!$historik->save(array('type' => 'kode', 'comment' => 'Kode sendt med e-mail'))) {
                 throw new Exception('Historikken kunne ikke gemmes');
             }
         } else {
             throw new Exception('E-mailen kunne ikke sendes');
         }
     }
     if ($this->query('slet_historik_id')) {
         $historik = new VIH_Model_Historik(intval($this->query('slet_historik_id')));
         $historik->delete();
     }
     $deltagere = $tilmelding->getDeltagere();
     $historik_object = new VIH_Model_Historik('kortekurser', $tilmelding->get("id"));
     $betalinger = new VIH_Model_Betaling('kortekurser', $tilmelding->get("id"));
     if ($this->query('registrer_betaling')) {
         if ($betalinger->save(array('type' => 'giro', 'amount' => $this->query('beloeb')))) {
             $betalinger->setStatus('approved');
             return new k_SeeOther($this->url());
         } else {
             throw new Exception("Betalingen kunne ikke gemmes. Det kan skyldes et ugyldigt beløb");
         }
     }
     $tilmelding->loadBetaling();
     $this->document->setTitle('Tilmelding #' . $tilmelding->getId());
     $this->document->addOption('Tilbage til liste', $this->url('../'));
     $this->document->addOption('Ret', $this->url('edit'));
     $this->document->addOption('Slet', $this->url(null, array('delete')));
     if ($tilmelding->get('email')) {
         $this->document->addOption('E-mail', $this->url('email'));
     }
     $this->document->addOption('Kundens side', KORTEKURSER_LOGIN_URI . $tilmelding->get('code'));
     $data = array('deltagere' => $deltagere, 'indkvartering' => !$tilmelding->kursus->isFamilyCourse(), 'type' => $tilmelding->get('keywords'), 'vis_slet' => 'ja');
     $historik = array('historik' => $historik_object->getList(), 'tilmelding' => $tilmelding);
     $historik_tpl = $this->templates->create('tilmelding/historik');
     $betaling_data = array('caption' => 'Afventende betalinger', 'betalinger' => $betalinger->getList('not_approved'), 'msg_ingen', 'Der er ingen afventende betalinger.');
     $prisoversigt_data = array('tilmelding' => $tilmelding);
     $prisoversigt_tpl = $this->templates->create('kortekurser/tilmelding/prisoversigt');
     $deltager_tpl = $this->templates->create('kortekurser/deltagere');
     $betaling_tpl = $this->templates->create('tilmelding/betalinger');
     $tilmelding = array('tilmelding' => $tilmelding, 'historik_object' => $historik_object, 'deltagere' => $deltager_tpl->render($this, $data), 'status' => $tilmelding->get('status'), 'prisoversigt' => $prisoversigt_tpl->render($this, $prisoversigt_data), 'historik' => $historik_tpl->render($this, $historik), 'betalinger' => $betaling_tpl->render($this, $betaling_data));
     $tpl = $this->templates->create('kortekurser/tilmelding');
     return $tpl->render($this, $tilmelding);
 }
Example #3
0
 function getForm()
 {
     if ($this->form) {
         return $this->form;
     }
     $tilmelding = new VIH_Model_KortKursus_Tilmelding($this->context->name());
     $deltagere = $tilmelding->getDeltagere();
     $form = new HTML_QuickForm(null, 'post', $this->url(), '', null, true);
     $form->addElement('header', null, 'Kontaktperson');
     $form->addElement('text', 'kontaktnavn', 'Navn');
     $form->addElement('text', 'adresse', 'Adresse');
     $form->addElement('text', 'postnr', 'Postnummer');
     $form->addElement('text', 'postby', 'By');
     $form->addElement('text', 'telefonnummer', 'Telefonnummer');
     $form->addElement('text', 'arbejdstelefon', 'Arbejdstelefon', 'Telefonnummer hvor du kan træffes mellem 8 og 16');
     $form->addElement('text', 'mobil', 'Mobil');
     $form->addElement('text', 'email', 'E-mail');
     // Confirmation is sent to this e-mail
     $form->addElement('header', null, 'Vil du tegne afbestillingsforsikring');
     $form->addElement('radio', 'afbestillingsforsikring', 'Afbestillingsforsikring', 'Ja', 'Ja');
     $form->addElement('radio', 'afbestillingsforsikring', '', 'Nej', 'Nej');
     $form->addElement('text', 'rabat', 'Rabat');
     //$form->addRule('kontaktnavn', 'Skriv venligst dit navn', 'required');
     //$form->addRule('adresse', 'Skriv venligst din adresse', 'required');
     //$form->addRule('postnr', 'Skriv venligst din postnummer', 'required');
     //$form->addRule('postby', 'Skriv venligst din postby', 'required');
     //$form->addRule('telefon', 'Skriv venligst din telefonnummer', 'required');
     //$form->addRule('arbejdstelefon', 'Skriv venligst din arbejdstelefon', 'required');
     //$form->addRule('email', 'Den e-mail du har indtastet er ikke gyldig', 'e-mail');
     //$form->addRule('afbestillingsforsikring', 'Du skal vælge, om du vil have en afbestillingsforsikring', 'required');
     $form->setDefaults(array('kontaktnavn' => $tilmelding->get('navn'), 'adresse' => $tilmelding->get('adresse'), 'postnr' => $tilmelding->get('postnr'), 'postby' => $tilmelding->get('postby'), 'telefonnummer' => $tilmelding->get('telefonnummer'), 'arbejdstelefon' => $tilmelding->get('arbejdstelefon'), 'mobil' => $tilmelding->get('mobil'), 'email' => $tilmelding->get('email'), 'afbestillingsforsikring' => $tilmelding->get('afbestillingsforsikring'), 'besked' => $tilmelding->get('besked'), 'rabat' => $tilmelding->get('rabat')));
     $deltager_nummer = 1;
     $i = 0;
     foreach ($deltagere as $deltager) {
         $form->addElement('header', null, 'Deltager ' . $deltager_nummer);
         $form->addElement('hidden', 'deltager_id[' . $i . ']');
         $form->addElement('text', 'navn[' . $i . ']', 'Navn');
         $form->addElement('text', 'cpr[' . $i . ']', 'CPR-nummer', '(ddmmåå-xxxx)', null);
         $form->setDefaults(array('deltager_id[' . $i . ']' => $deltager->get('id'), 'navn[' . $i . ']' => $deltager->get('navn'), 'cpr[' . $i . ']' => $deltager->get('cpr')));
         if (!$tilmelding->kursus->isFamilyCourse()) {
             $indkvartering_headline = 'Indkvartering';
             foreach ($tilmelding->kursus->getIndkvartering() as $key => $indkvartering) {
                 $form->addElement('radio', 'indkvartering_key[' . $i . ']', $indkvartering_headline, $indkvartering['text'], $indkvartering['indkvartering_key'], 'id="værelse_' . $indkvartering['indkvartering_key'] . '"');
                 $indkvartering_headline = '';
             }
             if (empty($indkvartering_headline)) {
                 $form->addElement('text', 'sambo[' . $i . ']', 'Vil gerne dele bad og toilet / værelse med?');
                 $form->setDefaults(array('indkvartering_key[' . $i . ']' => $deltager->get('indkvartering_key'), 'sambo[' . $i . ']' => $deltager->get('sambo')));
                 $form->addRule('værelse[' . $i . ']', 'Du skal vælge en indkvarteringsform', 'required');
             }
         }
         switch ($tilmelding->kursus->get('gruppe_id')) {
             case 1:
                 // golf
                 $form->addElement('text', 'handicap[' . $i . ']', 'Golfhandicap', '(begynder → skriv 99)');
                 $form->addElement('text', 'klub[' . $i . ']', 'Klub');
                 $form->addElement('text', 'dgu[' . $i . ']', 'DGU-medlem', null, null, 'ja');
                 $form->setDefaults(array('handicap[' . $i . ']' => $deltager->get('handicap'), 'klub[' . $i . ']' => $deltager->get('klub'), 'dgu[' . $i . ']' => $deltager->get('dgu')));
                 break;
             case 3:
                 // bridge
                 $niveau = array('Begynder' => 'Begynder', 'Let øvet' => 'Let øvet', 'Øvet' => 'Øvet', 'Meget øvet' => 'Meget øvet');
                 $form->addElement('select', 'niveau[' . $i . ']', 'Bridgeniveau', $niveau);
                 //$form->addRule('niveau['.$i.']', 'Hvilket bridgeniveau har du?', 'required');
                 $form->setDefaults(array('niveau[' . $i . ']' => $deltager->get('niveau')));
                 break;
             case 4:
                 // golf og bridge
                 $form->addElement('text', 'handicap[' . $i . ']', 'Golfhandicap', '(ingen spillere med handicap større end 50)');
                 $form->addElement('text', 'klub[' . $i . ']', 'Klub');
                 $form->addElement('text', 'dgu[' . $i . ']', 'DGU-medlem', 'Du skal være dgu-medlem for at deltage på kurset', null, 'ja');
                 $niveau = array('Let øvet' => 'Let øvet', 'Øvet' => 'Øvet', 'Meget øvet' => 'Meget øvet');
                 $form->addElement('select', 'niveau[' . $i . ']', 'Bridgeniveau', $niveau);
                 //$form->addRule('handicap['.$i.']', 'Du skal v�lge dit handicap', 'required');
                 //$form->addRule('klub['.$i.']', 'Hvem vil skrive en klub', 'required');
                 //$form->addRule('niveau['.$i.']', 'Hvilket bridgeniveau har du?', 'required');
                 $form->setDefaults(array('handicap[' . $i . ']' => $deltager->get('handicap'), 'klub[' . $i . ']' => $deltager->get('klub'), 'dgu[' . $i . ']' => $deltager->get('dgu'), 'niveau[' . $i . ']' => $deltager->get('niveau')));
                 break;
             default:
                 break;
         }
         // switch
         $deltager_nummer++;
         $i++;
     }
     // foreach
     $form->addElement('header', null, 'Øvrige oplysninger');
     $form->addElement('textarea', 'besked', 'Besked');
     $form->addElement('submit', null, 'Videre >>');
     $form->applyFilter('__ALL__', 'trim');
     return $this->form = $form;
 }
Example #4
0
<?php

require_once 'config.local.php';
set_include_path('/home/vih/pear/php/' . PATH_SEPARATOR . get_include_path());
require_once 'Ilib/ClassLoader.php';
$date = date('Y-m-d');
//$date_sent = '2010-06-08 12:00:00';
$date_sent = '2009-05-08 12:00:00';
$db = MDB2::factory(DB_DSN);
$res = $db->query('SELECT kortkursus_tilmelding.id
    FROM kortkursus_tilmelding
    INNER JOIN kortkursus ON kortkursus.id = kortkursus_tilmelding.kortkursus_id
    WHERE kortkursus.dato_start > "' . $date . '" AND kortkursus.active = 1
        AND kortkursus_tilmelding.active = 1 AND kortkursus_tilmelding.status_key > 1 AND kortkursus_tilmelding.date_created > "' . $date_sent . '"');
if (PEAR::isError($res)) {
    die($res->getUserInfo());
}
$i = 0;
while ($row = $res->fetchRow(MDB2_FETCHMODE_ASSOC)) {
    $tilmelding = new VIH_Model_KortKursus_Tilmelding($row['id']);
    $subject = 'Vil du have en udfordring?';
    $body = "Du er tilmeldt et af de kommende korte kurser på Vejle Idrætshøjskole. Vi glæder os til at se dig - og vi håber på en aktiv sommer :) Eleverne på de lange kurser er rejst, og skolen er ved at blive gjort klar til en travl og dejlig sommer.\n\nHvis du har lyst, kan du deltage i en lille udfordring, hvor det handler om at røre sig i flest minutter i løbet af sommeren. Det tæller lige meget om du går, løber, cykler eller ror. Det tæller ikke hvis du kører i bil :):\n\nhttp://www.endomondo.com/challenge/ihR2EWTL9nU\n\nDu kan læse lidt mere om Endomondo på http://motionsplan.dk/artikel/endomondo-din-motivation.\n\nHvis du har lyst, kan du også stadig klikke ind på vores Facebook-side og finde det kursus, du er tilmeldt :)\n\nhttp://www.facebook.com/pages/Vejle-Idraetshojskole/93365171887?v=app_2344061033&vm=all\n\n.\n\nHvis der er mindre end 14 dage til dit kursus starter, skulle du gerne have modtaget yderligere materiale om kurset med posten. Hvis det ikke er tilfældet, må du gerne skrive til kontor@vih.dk.\n\nVenlig hilsen\n\nLars Olesen\nVejle Idrætshøjskole";
    $headers = 'From: kontor@vih.dk' . "\r\n" . 'Reply-To: kontor@vih.dk';
    if ($email = $tilmelding->get('email')) {
        //mail('*****@*****.**', $subject, $body, $headers);
        mail($email, $subject, $body, $headers);
        $i++;
    }
}
echo 'Sendt til' . $i;