<?php

class kontoauszug
{

    public $Author = 'SECURVITA Healthmiles';
    public $AbsenderFenster = 'SECURVITA Healthmiles · Postfach 10 55 09 · 20038 Hamburg';
    public $Verfalllabel = ' Healthmiles verfallen zum ';
    public $signaturetext = 'Kerstin Möller';
    public $signatureimage = 'controllers/konto/fpdf-stuff/unterschrift.png';
    public $postscriptum = "Bonusprogramm Healthmiles";
    public $remark = "Hinweis: Erstattete Prämien aus Wahltarifen und Bonusprogrammen mindern die Höhe der abzugsfähigen Sonderausgaben im Sinne des Einkommensteuerrechtes.";
    public $starttime = 0;
    public $auszugname = '';

    public $headline = '';
    public $headlineauszug = '';
    public $Absender = '';
    public $einleitungstext = '';
    public $HMKontoStandLabel = '';

    private $_morepages = false;
    private $_pdf = null;
    private $leftmargin = 2.2;
    private $rightmargin = 2.42;
    private $topmargin = 3.5;
    private $bottommargin = 3;
    private $type = '';
    private $kategorie = '';
    private $csvhandle = null;
    private $userids = array();
    private $Subject = '';
    private $Title;
    
    private $Datumstart = '';
    private $Datumend = '';

    private $dirname = '';


    /**
     * @param $kategorie (U18, O18,wechsler)
     * @param $type (email, letter)
     * @param $userids array of usersids
     * @param $startDate YYYY-mmm-dd
     * @param $endDate YYYY-mmm-dd
     **/
    public function __construct($kategorie,$type,$userids,$startDate,$endDate)
    {
        $this->kategorie = $kategorie;
        $this->type = $type;
        $this->userids = $userids;
        $this->startDate = $startDate;
        $this->endDate = $endDate;
        $this->Datumstart = date("d.m.Y",strtotime($this->startDate));
        $this->Datumend = date("d.m.Y",strtotime($this->endDate));
        $this->Absender = "SECURVITA Krankenkasse\nPostfach 10 58 29\n"
            . "20039 Hamburg\n\n"
            . "24-Stunden-Service-Hotline:\n"
            . "0800 / 14 14 300\n"
            . "(bundesweit gebührenfrei)\n"
            . "Fax: 040 / 33 47-90 00\n"
            . "E-Mail: securvita@healthmiles.de\n"
            . "www.securvita.de";

        $this->_createcsvhandle();
    }


    public function createpdfs()
    {
        switch($this->kategorie)
        {
            case 'O18':
                switch ($this->type)
                {
                    case 'letter':
                        $this->einleitungstext = utf8_decode(",

wir freuen uns, dass Sie am SECURVITA-Bonusprogramm Healthmiles teilnehmen. 

Sehr gerne senden wir Ihnen Ihren aktuellen Healthmiles-Kontoauszug zu (Bearbeitungsstand " . $this->Datumend . ").

Nutzen Sie für den Überblick über Ihren persönlichen Kontostand und die letzten Buchungen auch Ihren eigenen Online-Zugang auf www.healthmiles.de. Mit Ihrem Benutzernamen und dem Passwort können Sie jederzeit Ihr Konto einsehen.

Dort finden Sie auch unsere hochwertigen Prämien und Details zur Nutzung des Programms, darunter die Checkliste über die vielfältigen Aktivitäten und damit erzielbare Bonuspunkte. Lesen Sie auch gerne die Ausführungsbestimmungen, in denen die Regeln für das Programm erläutert sind.

Haben Sie Fragen oder benötigen Sie unsere Unterstützung? Dann rufen Sie uns gerne unter der gebührenfreien Nummer 0800 / 600 22 22 an.

Wir wünschen Ihnen eine aktive und gesunde Zeit.

Mit freundlichen Grüßen
\n\n");
                        break;
                    case 'email':
                        $this->einleitungstext = utf8_decode(",

wir freuen uns, dass Sie am Bonusprogramm Healthmiles teilnehmen.

Sie können Ihren Healthmiles-Kontostand und alle Buchungen bequem online einsehen. Einfach den Healthmiles-Link unter https://www.healthmiles.de/konto/konto.php?hmskin=O18 anklicken und mit Ihrem Benutzernamen und Passwort einloggen.  

Online sehen Sie auch, falls Punkte in Zukunft verfallen sollten. Zudem finden Sie dort alle Prämien aus dem Bonusprogramm und können in der Checkliste nachlesen, für welche Maßnahmen Ihnen Healthmiles gutgeschrieben werden. Alle anderen Details finden Sie in den Ausführungsbestimmungen.

Im aktuellen SECURVITA-Newsletter unter www.securvita.de/news_hm_2015_07/newsletter.html erfahren Sie zudem schnell und übersichtlich wichtige Neuigkeiten rund um die Themen gesunde Ernährung und Sport.

Haben Sie Fragen oder benötigen Sie unsere Unterstützung? Dann rufen Sie uns gerne unter der gebührenfreien Nummer 0800 / 600 22 22 an.

Wir wünschen Ihnen eine aktive und gesunde Zeit.

Mit freundlichen Grüßen
\n\n");
                        break;
                }

                $this->headline = 'Ihr Healthmiles-Kontoauszug' ;
                $this->headlineauszug = utf8_decode('Healthmiles-Kontoauszug für ');
                $this->HMKontoStandLabel = 'Healthmiles-Kontostand zum ';
                $this->Subject = "Healthmiles-Kontoauszug vom $this->endDate";
                $this->Title = utf8_decode("Healthmiles-Kontoauszug vom $this->endDate für ")
                        . utf8_decode($user->name) . ', ' . utf8_decode($user->vorname);
                break;
            case 'U18':
                switch ($this->type)
                {
                    case 'letter':
                        $this->einleitungstext = utf8_decode(",

wir freuen uns, dass Du am SECURVITA-Bonusprogramm Healthmiles teilnimmst. 

Sehr gerne senden wir Dir Deinen aktuellen Healthmiles-Kontoauszug zu (Bearbeitungsstand " . $this->Datumend . ").

Nutze für den Überblick über Deinen persönlichen Kontostand und die letzten Buchungen auch Deinen eigenen Online-Zugang auf www.healthmiles.de. Mit Deinem Benutzernamen und dem Passwort kannst Du jederzeit Dein Konto einsehen.

Dort findest Du auch unsere hochwertigen Prämien und Details zur Nutzung des Programms, darunter die Checkliste über die vielfältigen Aktivitäten und damit erzielbare Bonuspunkte. Lies auch gerne die Ausführungsbestimmungen, in denen die Regeln für das Programm erläutert sind.

Hast Du Fragen oder benötigst Du unsere Unterstützung? Dann ruf uns gerne unter der gebührenfreien Nummer 0800 / 600 22 22 an.

Wir wünschen Dir eine aktive und gesunde Zeit.

Mit freundlichen Grüßen
\n\n");
                        break;
                    case 'email':
                        $this->einleitungstext = utf8_decode(",

wir freuen uns, dass Du am Bonusprogramm Healthmiles teilnimmst.  

Du kannst Deinen Healthmiles-Kontostand und alle Buchungen bis " . $this->Datumend . " bequem online einsehen. Einfach den Healthmiles-Link unter https://www.healthmiles.de/konto/konto.php?hmskin=U18 anklicken und mit Deinem Benutzernamen und Passwort einloggen.  

Online siehst Du auch, falls Punkte in Zukunft verfallen sollten. Zudem findest Du dort alle Prämien aus dem Bonusprogramm und kannst in der Checkliste nachlesen, für welche Maßnahmen Dir Healthmiles gutgeschrieben werden. Alle anderen Details findest Du in den Ausführungsbestimmungen.

Hast Du Fragen oder benötigst Du unsere Unterstützung? Dann ruf uns gerne unter der gebührenfreien Nummer 0800 / 600 22 22 an.

Wir wünschen Dir eine aktive und gesunde Zeit.  

Mit freundlichen Grüßen 
\n\n");
                        break;
                }


                $this->Subject = "Healthmiles-Kontoauszug vom $this->endDate";
                $this->Title = utf8_decode("Healthmiles-Kontoauszug vom $this->endDate für ")
                        . utf8_decode($user->name) . ', ' . utf8_decode($user->vorname);
                $this->headline = 'Dein Healthmiles-Kontoauszug';
                $this->headlineauszug = utf8_decode('Healthmiles-Kontoauszug für ');
                $this->HMKontoStandLabel = 'Healthmiles-Kontostand zum ';
                break;
            case 'Wechsler':
                switch ($this->type)
                {
                    case 'letter':
                        $this->einleitungstext = utf8_decode(",

wir freuen uns, dass Sie am SECURVITA-Bonusprogramm Healthmiles teilnehmen. 

Sehr gerne senden wir Ihnen Ihren aktuellen Healthmiles-Kontoauszug zu (Bearbeitungsstand " . $this->Datumend . "). Nutzen Sie für den Überblick über Ihren persönlichen Kontostand und die letzten Buchungen auch Ihren eigenen Online-Zugang auf www.healthmiles.de. Mit Ihrem Benutzernamen und dem Passwort können Sie jederzeit Ihr Konto einsehen.

Dort finden Sie auch unsere hochwertigen Prämien und Details zur Nutzung des Programms, darunter die Checkliste über die vielfältigen Aktivitäten und damit erzielbare Bonuspunkte. Lesen Sie auch gerne die Ausführungsbestimmungen, in denen die Regeln für das Programm erläutert sind.

Mit Ihrem 18. Geburtstag wechseln Sie von Healthmiles U18 in das Bonusprogramm für Erwachsene. Ihre gesammelten Punkte sind Ihnen sicher, sie werden automatisch übernommen. 

Haben Sie Fragen oder benötigen Sie unsere Unterstützung? Dann rufen Sie uns gerne unter der gebührenfreien Nummer 0800 / 600 22 22 an.

Wir wünschen Ihnen eine aktive und gesunde Zeit.

Mit freundlichen Grüßen
\n\n");
                        break;
                    case 'email':
                        $this->einleitungstext = utf8_decode(",

wir freuen uns, dass Sie am Bonusprogramm Healthmiles teilnehmen.

Sie können Ihren Healthmiles-Kontostand und alle Buchungen bequem online einsehen. Einfach den Healthmiles-Link unter https://www.healthmiles.de/konto/konto.php?hmskin=O18 ankli

Online sehen Sie auch, falls Punkte in Zukunft verfallen sollten. Zudem finden Sie dort alle Prämien aus dem Bonusprogramm und können in der Checkliste nachlesen, für welche Maßnahmen Ihnen He

Im aktuellen SECURVITA-Newsletter unter www.securvita.de/news_hm_2015_07/newsletter.html erfahren Sie zudem schnell und übersichtlich wichtige Neuigkeiten rund um die Themen gesunde Ernährung und Sport.

Haben Sie Fragen oder benötigen Sie unsere Unterstützung? Dann rufen Sie uns gerne unter der gebührenfreien Nummer 0800 / 600 22 22 an.

Wir wünschen Ihnen eine aktive und gesunde Zeit.

Mit freundlichen Grüßen
\n\n");
                        break;
                }

                $this->Subject = "Healthmiles-Kontoauszug vom $this->endDate";
                $this->Title = utf8_decode("Healthmiles-Kontoauszug vom $this->endDate für ")
                        . utf8_decode($user->name) . ', ' . utf8_decode($user->vorname);
                $this->headline = 'Ihr Healthmiles-Kontoauszug';
                $this->headlineauszug = utf8_decode('Healthmiles-Kontoauszug für ');
                $this->HMKontoStandLabel = 'Healthmiles-Kontostand zum ';
        }

        switch ($this->type)
        {
            case 'letter':
                $this->Title = $this->Subject;
                $this->_createpdfsletter();
                break;
            case 'email':
                $this->_createpdfsemail();
                break;
            default:
                error('Unkown Kontoauszug Type ' . "'" . $this->type . "'");
        }
    }


    private function _createpdfsemail()
    {

        $x = 0;
        foreach($this->userids as $userId)
        {
            $x++;
            $user = new User(0,$userId);
            $ansprache = $this->_getansprache($user);
            $outputname = $this->dirname."/HM-Kontoauszug-".$user->userId.".pdf";
            $this->_initpdf($this->Subject,$this->Title)
                 ->_createKontoauszug($user, false)
                 ->_pdf->Output($outputname,"F");
            $csvline = utf8_decode($user->userId) . ";" . utf8_decode($user->email) . ";" . $ansprache . "\n";
            fwrite($this->csvhandle, $csvline);
        }
        fclose($this->csvhandle);

    }


    private function _createpdfsletter()
    {
        global $exportpath;

        $x = 0;
        $outputname = "$exportpath/kontoauszug/" . $this->auszugname;

        $this->_initpdf($Subject, $Subject);
        foreach($this->userids as $userId)
        {
            $x++;
            $user = new User(0, $userId);
            $konto = new konto($user->userId);
            $konto->readKontoauszugFiltered($this->startDate, $this->endDate);
            if (count($konto->kontoBewegungen) > 33 ) {
                print "Zuviele Zeilen in Auszug von " . $user->versnummerneu . " " . $user->vorname . " " . $user->name . "\n";
                continue;
            }
            $ansprache = $this->_getansprache($user);
            $ansprache .= $this->einleitungstext;
            $this->_createFrontpage($user, $ansprache)
                 ->_createKontoauszug($user, true);
            if ($this->morepages) {
                print "<h2>Kontoauszug hat mehrere Seiten!</h2>\n";
                print "UserId: $userId " . $this->_getansprache($user) . "\n";
                $this->morepages = false;
            }



        }

        $this->_pdf->Output($outputname,"F");
    }


    private function _createcsvhandle()
    {
        global $exportpath;
        $this->starttime = time();
        if ($this->type === 'letter') {
            $auszugname = $this->starttime . '_letter_' . $this->kategorie . '.pdf';
        } else {
            $auszugname = $this->starttime.'_email_' . $this->kategorie;
            $this->dirname = "$exportpath/kontoauszug/$auszugname";
            mkdir($this->dirname) or error("can't create directory '$this->dirname'");
            $filename = $this->dirname . '/uid-email-ansprache.csv';
            $this->csvhandle = fopen($filename, 'w') or error ("can't open file '$filename'");
        }
        $this->auszugname = $auszugname;
        return $this;
    }


    private function _getansprache($user)
    {
        $ansprache = '';
        switch ($this->kategorie)
        {
            case 'O18':
            case 'Wechsler':
                // $ansprache = 'Lieber Healthmiles-Teilnehmer,';
                $ansprache = 'Sehr geehrte'
                    . (($user->anrede=='Herrn')?'r Herr ':' Frau ')
                    . (($user->titel=='')?'':utf8_decode($user->titel) . ' ')
                    . utf8_decode($user->name);
                break;
            case 'U18':
                $ansprache = 'Hallo ' . utf8_decode($user->vorname);
               break;
            default:
                error('Unbekannter typ ' . $this->kategorie);
                break;
        }
        return $ansprache;
    }


    private function _initpdf($Subject,$Title)
    {
        $this->_pdf = new FPDF('P','cm','A4');
        /* FALSE in Textparametern meint kein UTF8, aendern fuer UTF8 Ausgaben aus der DB? */
        $this->_pdf->SetAuthor(utf8_decode($this->Author), FALSE) ;
        $this->_pdf->SetSubject(utf8_decode($Subject), FALSE) ;
        $this->_pdf->SetTitle(utf8_decode($Title), FALSE) ;
        $this->_pdf->SetDisplayMode('fullwidth', 'continuous') ;

        $this->_pdf->SetMargins($this->leftmargin, $this->topmargin, $this->rightmargin);
        $this->_pdf->SetAutoPageBreak(TRUE, $this->bottommargin);
        $this->_pdf->SetFont('Arial','',11);
        return $this;
    }


    private function _createFrontpage($user, $ansprache)
    {
        global $monatsarray;

        /* Anrede */
        /* $Adresse = $user->anrede."\n";
         */
        $Adresse = '';
        if ($user->titel != '') { $Adresse = utf8_decode($user->titel) . ' '; }
        $Adresse .= utf8_decode($user->vorname) . ' ' . utf8_decode($user->name) . "\n" .
            utf8_decode($user->strasse) . "\n" . utf8_decode($user->plz) . ' ' . utf8_decode($user->ort);
        if ($user->land != '' && $user->land != 'Deutschland') {
            $Adresse .= "\n".utf8_decode($user->land);
        }
        $Data_DateVersnr = utf8_encode($monatsarray[date('n')-1]) . ' '
            . date('Y');

        $this->_pdf->AddPage();

        /* AbsenderFenster */
        $this->_pdf->SetFont('Arial','',8);
        $this->_pdf->SetXY($this->leftmargin, 6);
        $this->_pdf->Cell(8, 0, utf8_decode($this->AbsenderFenster), 0, 0, 'L');

        /* Absender */
        $this->_pdf->SetFont('Arial','',10);
        $this->_pdf->SetXY(14.9, 4.5);
        $this->_pdf->MultiCell(8, 0.4, utf8_decode($this->Absender), 0, 'L', FALSE);

        /* Adressfeld */
        $this->_pdf->SetFont('Arial','',10);
        $this->_pdf->SetXY($this->leftmargin, 6.4);
        $this->_pdf->MultiCell(7.0, 0.42, $Adresse, 0, 'L', FALSE);

        /* Datum, Versicherungsnummer - Daten */
        $this->_pdf->SetXY(14.9, 9);
        $this->_pdf->MultiCell(4, 0.36, utf8_decode($Data_DateVersnr), 0, 'L', FALSE);

        /* Headline */
        $this->_pdf->SetXY($this->leftmargin,10.3);
        $this->_pdf->SetFont('','B');
        $this->_pdf->MultiCell(13, 0.36, utf8_decode(
                    $this->headline . "\nVersicherungsnummer " . utf8_decode($user->versnummerneu)), 0, 'L', FALSE);

        /* Fliesstext1 */
        $this->_pdf->SetXY($this->leftmargin, $this->_pdf->GetY() + 0.85); // 
        $this->_pdf->SetFont('','');
        $this->_pdf->Write(0.4, $ansprache);

        /* Unterschrift */
//        $this->_pdf->image($this->signatureimage, $this->_pdf->GetX(), $this->_pdf->GetY(),5.96,1.1);
        $this->_pdf->image($this->signatureimage, $this->_pdf->GetX(), $this->_pdf->GetY(),4.46,0.93);

        /* Signaturtext */
        $this->_pdf->SetXY($this->leftmargin, $this->_pdf->GetY() + 0.85);
        $this->_pdf->Write(0.4, utf8_decode($this->signaturetext));

        /* Postscriptum */
        $this->_pdf->SetXY($this->leftmargin, $this->_pdf->GetY() + 0.425);
        $this->_pdf->Write(0.4, utf8_decode($this->postscriptum));

        /* Hinweis */
        $this->_pdf->SetFont('Arial','',8);
        $this->_pdf->SetXY($this->leftmargin, $this->_pdf->GetY() + 0.85);
        $this->_pdf->Write(0.4, utf8_decode($this->remark));

        $this->_pdf->SetFont('Arial','',10);

/*
        $this->_pdf->SetXY($this->leftmargin, $this->_pdf->GetY() + 1.2 );
        $this->_pdf->Write(0.4, utf8_decode($this->postscriptum));
*/

        return $this;

    }


    private function _createKontoauszug($user, $nopagebrakes = false)
    {

        $HeadlineAM = $this->headlineauszug
                . utf8_decode($user->name).', ' . utf8_decode($user->vorname) . ' - Versicherungsnummer '
                . utf8_decode($user->versnummerneu);
        $PeriodAM = 'Zeitraum: ' . $this->Datumstart . ' bis ' . $this->Datumend;
        $konto = new konto($user->userId);

        /* Kontostände und Punkteverfall */
        /* Erster Saldo am Ende des vorigen Monats (Start: 01.04 -> Saldo 31.03) */
        $Milesstart = $konto->getSaldo(
                date('Y-m-d', strtotime(
                        '1 days ago',strtotime($this->startDate))
                        )
                );
        $Milesend = $konto->getSaldo($this->endDate);
        if ($Milesend < 0) {
            $Milesstart += abs($Milesend); $Milesend = 0; 
        }

        /* Ersten des nächsten und übernächsten Monats berechnen */
        List($year,$month) = explode('-', $this->endDate);
        #$refDate = "$year-$month-15";
        #$refDate = date('Y-m-15', strtotime('+1 months',time()));
    
        $refDate = "$year-$month-15";

        $refDate = date('Y-m-15', time());
        $VerfallDatum0 = date('01.m.Y',strtotime('+1 months',strtotime($refDate)));
        $VerfallDatum1 = date('01.m.Y',strtotime('+2 months',strtotime($refDate)));
        $VerfallDatum2 = date('01.m.Y',strtotime('+3 months',strtotime($refDate)));
        $VerfallDatum3 = date('01.m.Y',strtotime('+4 months',strtotime($refDate)));

        // $invalidpoints = $konto->calcinvalidatenext(date('Y-m-d', strtotime($refDate)));
        $invalidpoints = $konto->calcinvalidatenext();
        $i = 0;
        $Verfall0 = $invalidpoints[$i++] + 0;
        $Verfall1 = $invalidpoints[$i++] + 0;
        $Verfall2 = $invalidpoints[$i++] + 0;
	$Verfall3 = $invalidpoints[$i++] + 0;

        $this->_pdf->AddPage();

        /* Seitenkopf AMs */
        $this->_pdf->SetXY($this->leftmargin, 5);
        $this->_pdf->SetFont('','B');
        $this->_pdf->Write(0.4,$HeadlineAM);
        $this->_pdf->SetFont('','');
        $this->_pdf->Write(0.4,"\n" . utf8_decode($PeriodAM));

        /* HM Kontostand Box1 */
        $this->_pdf->SetXY($this->leftmargin, 6.5);
        $this->_pdf->SetFont('','B',8);
        $this->_pdf->Cell(8.15, 0.5, " ".utf8_decode($this->HMKontoStandLabel.$this->Datumstart), 1, 0, 'L');
        /* HM Kontostand Box2 */
//        $this->_pdf->SetXY(10.45, 6.5);
        $this->_pdf->SetFont('','B',8);
        $this->_pdf->Cell(8.15, 0.5, utf8_decode($Milesstart ." "), 1, 1, 'R');

        /* Abstand vor Bewegungen */
        $this->_pdf->SetFont('','',8);
        $this->_pdf->Write(0.4,"\n");

        /* Boxen mit Ueberschriften */
        $this->_pdf->SetFont('','B',8);
        $this->_pdf->SetLeftMargin($this->leftmargin);
        $this->_pdf->Cell(1.7, 0.5, "Buchung", 1, 0, 'L');
        $this->_pdf->Cell(1.7, 0.5, "Erwerb", 1, 0, 'L');
        //$this->_pdf->Cell(10.8, 0.5, "Beschreibung", 1, 0, 'L');
        $this->_pdf->Cell(11.7, 0.5, "Beschreibung", 1, 0, 'L');
        $this->_pdf->Cell(1.2, 0.5, "Punkte", 1, 1, 'R');
        $this->_pdf->SetFont('','',8);

        $this->_pdf->SetFillColor(230,230,230);

        $AnzahlZeilen = 1;
        // Filter lines to intervall
        $konto->readKontoauszugFiltered($this->startDate, $this->endDate);
        foreach ($konto->kontoBewegungen as $kontobewegung) {
            $this->_pdf->Cell(1.7, 0.5, date("d.m.Y", $kontobewegung->datum), 1, 0, 'L', ($AnzahlZeilen % 2 != 0));
            //$this->_pdf->Cell(1.7, 0.5, "99.99.9999", 1, 0, 'L', ($AnzahlZeilen % 2 != 0));
            $this->_pdf->Cell(1.7, 0.5, convertdatefromsql($kontobewegung->datumerwerb), 1, 0, 'L', ($AnzahlZeilen % 2 != 0));
            $beschreibung = trim(utf8_decode($kontobewegung->beschreibung));
            if (strlen($beschreibung) > 77) { $beschreibung = substr($beschreibung,0,77)."..."; }
            $this->_pdf->Cell(11.7, 0.5, $beschreibung, 1, 0, 'L', ($AnzahlZeilen % 2 != 0));
            $this->_pdf->Cell(1.2, 0.5, $kontobewegung->wert, 1, 1, 'R', ($AnzahlZeilen % 2 != 0));
            $AnzahlZeilen++;
        }

        /* Abstand nach Bewegungen */
        $this->_pdf->Write(0.4,"\n");

        /* HM Kontostand Box3 */
        $this->_pdf->SetFont('','B');
        $this->_pdf->Cell(8.15, 0.5, " ".utf8_decode($this->HMKontoStandLabel.$this->Datumend), 1, 'L', FALSE);
        /* HM Kontostand Box4 */
        $this->_pdf->SetFont('','B');
        $this->_pdf->Cell(8.15, 0.5, $Milesend." ", 1, 1, 'R', FALSE);

        $this->_pdf->SetFont('','B');
        $this->_pdf->Write(0.4,"\n".$Verfall0);
        $this->_pdf->SetFont('','');
        $this->_pdf->Write(0.4,utf8_decode($this->Verfalllabel.$VerfallDatum0));

        $this->_pdf->SetFont('','B');
        $this->_pdf->Write(0.4,"\n".$Verfall1);
        $this->_pdf->SetFont('','');
        $this->_pdf->Write(0.4,utf8_decode($this->Verfalllabel.$VerfallDatum1));

        $this->_pdf->SetFont('','B');
        $this->_pdf->Write(0.4,"\n".$Verfall2);
        $this->_pdf->SetFont('','');
        $this->_pdf->Write(0.4,utf8_decode($this->Verfalllabel.$VerfallDatum2));

        /* Verfall 3 */
		$this->_pdf->SetFont('','B');
		$this->_pdf->Write(0.4,"\n".$Verfall3);
		$this->_pdf->SetFont('','');
		$this->_pdf->Write(0.4,utf8_decode($this->Verfalllabel.$VerfallDatum3));

        if ($AnzahlZeilen > 33) {
            $this->morepages = true;
        }

        return $this;
    }

}
