break;
        case 2:
            if ($eingabeTag > schaltjahrFeb($eingabeJah)) {
                $valid = false;
            }
            break;
    }
}
// Datum berechnen
if ($valid) {
    if ($richtung == 1) {
        $ergebnis = rlSy($eingabeTag, $eingabeMon, $eingabeJah, $eingabeStu, $eingabeMin);
        $ausgansRichtung = "RL-Zeit";
        $zielRichtung = "SY-Zeit";
    } elseif ($richtung == 2) {
        $ergebnis = syRl($eingabeTag, $eingabeMon, $eingabeJah, $eingabeStu, $eingabeMin);
        $ausgansRichtung = "SY-Zeit";
        $zielRichtung = "RL-Zeit";
    }
} else {
    $ergebnis = "Ungültige Eingaben";
}
// Ausgabe formatieren
if ($ergebnis == "Ungültige Eingaben") {
    $eingabe = "Ungültige Eingaben.";
    $ausgabe = "Berechnung konnte nicht durchgeführt werden.";
} else {
    if ($eingabeMin < 10) {
        $eingabeMin = "0" . $eingabeMin;
    }
    $eingabe = $eingabeTag . "." . $eingabeMon . "." . $eingabeJah . " " . $eingabeStu . ":" . $eingabeMin . " Uhr " . $ausgansRichtung;
function wfDRechnerRender($input, array $args, Parser $parser, PPFrame $frame)
{
    $valid = false;
    // Wenn kein Datum angegeben
    if ($input == null) {
        date_default_timezone_set('Europe/Berlin');
        $timestampJetzt = time();
        $eingabeJah = date('Y', $timestampJetzt);
        $eingabeMon = date('m', $timestampJetzt);
        $eingabeTag = date('d', $timestampJetzt);
        $eingabeStu = date('G', $timestampJetzt);
        $eingabeMin = date('i', $timestampJetzt);
        $richtung = 1;
        $valid = true;
    } else {
        /*// Eingabeformat prüfen
        		$pattern1 = /^2[0-9]{3}[-](0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])$/;
        		$pattern2 = /^2[0-9]{3}[-](0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])[ ]([01][0-9]|2[0-3])[:]([0-5][0-9])$/;
        		
        		if(preg_match($pattern1, $input)) $valid = true;
        		elseif(preg_match($pattern2, $input)) $valid = true;
        		else $valid = false;*/
        // Eingaben auslesen
        if ($args['dir'] == 'rl') {
            $richtung = 2;
        } else {
            $richtung = 1;
        }
        $inputDate = DateTime::createFromFormat('Y-m-d G:i', $input);
        if ($inputDate != false) {
            $eingabeJah = $inputDate->format('Y');
            $eingabeMon = $inputDate->format('m');
            $eingabeTag = $inputDate->format('d');
            $eingabeStu = $inputDate->format('G');
            $eingabeMin = $inputDate->format('i');
            $valid = true;
        } else {
            $inputDate = DateTime::createFromFormat('Y-m-d', $input);
            if ($inputDate != false) {
                $eingabeJah = $inputDate->format('Y');
                $eingabeMon = $inputDate->format('m');
                $eingabeTag = $inputDate->format('d');
                $eingabeStu = 12;
                $eingabeMin = 00;
                $valid = true;
            } else {
                $valid = false;
            }
        }
    }
    // Eingaben prüfen
    if ($richtung != 1 && $richtung != 2) {
        $valid = false;
    }
    // Berechnungsrichtung
    if ($valid) {
        if ($richtung == 1) {
            if ($eingabeJah < 2008) {
                $valid = false;
            }
            if ($eingabeJah == 2008 && $eingabeMon < 10) {
                $is08 = true;
            }
        } elseif ($richtung == 2) {
            if ($eingabeJah < 1930) {
                $valid = false;
            }
            if ($eingabeJah < 2030) {
                $is08 = true;
            }
        } else {
            $valid = false;
        }
    }
    /*if($valid) // Tagesangabe
    	{
    		switch ($eingabeMon)
    		{
    			case 4:
    			case 6:
    			case 9:
    			case 11:
    				if($eingabeTag > 30) $valid = false;
    				break;
    			case 2:
    				if($eingabeTag > schaltjahrFeb($eingabeJah)) $valid = false;
    				break;
    		}
    	}*/
    // Datum berechnen
    if ($valid) {
        if ($richtung == 1) {
            if ($is2008) {
            } else {
                $ergebnis = rlSy($eingabeTag, $eingabeMon, $eingabeJah, $eingabeStu, $eingabeMin);
            }
            $ausgansRichtung = 'RL';
            $zielRichtung = 'SY';
        } elseif ($richtung == 2) {
            if ($is2008) {
            } else {
                $ergebnis = syRl($eingabeTag, $eingabeMon, $eingabeJah, $eingabeStu, $eingabeMin);
            }
            $ausgansRichtung = 'SY';
            $zielRichtung = 'RL';
        }
    } else {
        $ergebnis = null;
    }
    // Ausgabe formatieren
    if ($ergebnis == null) {
        $eingabe = 'Ung&uuml;ltige Eingaben.';
        $ausgabe = 'Berechnung konnte nicht durchgef&uuml;hrt werden.';
    } else {
        if ($eingabeMin < 10) {
            $eingabeMin = "0" . $eingabeMin;
        }
        $eingabe = $eingabeTag . '.' . $eingabeMon . '.' . $eingabeJah . ' ' . $eingabeStu . ':' . $eingabeMin . ' ' . $ausgansRichtung;
        $ausgabe = $ergebnis[0] . '.' . $ergebnis[1] . '.' . $ergebnis[2] . ' ' . $ergebnis[3] . ':' . $ergebnis[4] . ' ' . $zielRichtung;
    }
    if ($args['eing'] == 'j') {
        $output = '<abbr title="' . $eingabe . '">' . $ausgabe . '</abbr>';
    } else {
        $output = $ausgabe;
    }
    return $output;
}
function wfDRechnerRender($input, array $args, Parser $parser, PPFrame $frame)
{
    $valid = false;
    // Wenn kein Datum angegeben
    if (!isset($input) || trim($input) === '') {
        date_default_timezone_set('Europe/Berlin');
        $timestampJetzt = time();
        $eingabeJah = date('Y', $timestampJetzt);
        $eingabeMon = date('n', $timestampJetzt);
        $eingabeTag = date('j', $timestampJetzt);
        $eingabeStu = date('G', $timestampJetzt);
        $eingabeMin = date('i', $timestampJetzt);
        $richtung = 1;
        $valid = true;
    } else {
        // Eingaben auslesen
        if ($args['dir'] == 'rl') {
            $richtung = 2;
        } else {
            $richtung = 1;
        }
        $inputDate = DateTime::createFromFormat('Y-m-d H:i', $input);
        if ($inputDate != false) {
            $eingabeJah = $inputDate->format('Y');
            $eingabeMon = $inputDate->format('n');
            $eingabeTag = $inputDate->format('j');
            $eingabeStu = $inputDate->format('G');
            $eingabeMin = $inputDate->format('i');
            $valid = true;
        } else {
            $inputDate = DateTime::createFromFormat('Y-m-d', $input);
            if ($inputDate != false) {
                $eingabeJah = $inputDate->format('Y');
                $eingabeMon = $inputDate->format('n');
                $eingabeTag = $inputDate->format('j');
                $eingabeStu = 12;
                $eingabeMin = 00;
                $valid = true;
            } else {
                $inputDate = DateTime::createFromFormat('d.m.Y', $input);
                if ($inputDate != false) {
                    $eingabeJah = $inputDate->format('Y');
                    $eingabeMon = $inputDate->format('n');
                    $eingabeTag = $inputDate->format('j');
                    $eingabeStu = 12;
                    $eingabeMin = 00;
                    $valid = true;
                } else {
                    $valid = false;
                }
            }
        }
    }
    // Eingaben prüfen
    if ($richtung != 1 && $richtung != 2) {
        $valid = false;
    }
    // Berechnungsrichtung
    if ($valid) {
        if ($richtung == 1) {
            if ($eingabeJah < 2008) {
                $valid = false;
            }
            if ($eingabeJah == 2008 && $eingabeMon < 10) {
                $valid = false;
            }
        } elseif ($richtung == 2) {
            if ($eingabeJah < 2020) {
                $valid = false;
            }
        } else {
            $valid = false;
        }
    }
    /*if($valid) // Tagesangabe
    	{
    		switch ($eingabeMon)
    		{
    			case 4:
    			case 6:
    			case 9:
    			case 11:
    				if($eingabeTag > 30) $valid = false;
    				break;
    			case 2:
    				if($eingabeTag > schaltjahrFeb($eingabeJah)) $valid = false;
    				break;
    		}
    	}*/
    // Datum berechnen
    if ($valid) {
        if ($richtung == 1) {
            $ergebnis = rlSy($eingabeTag, $eingabeMon, $eingabeJah, $eingabeStu, $eingabeMin);
            $ausgansRichtung = 'RL';
            $zielRichtung = 'SY';
        } elseif ($richtung == 2) {
            $ergebnis = syRl($eingabeTag, $eingabeMon, $eingabeJah, $eingabeStu, $eingabeMin);
            $ausgansRichtung = 'SY';
            $zielRichtung = 'RL';
        }
    } else {
        $ergebnis = null;
    }
    // Ausgabe formatieren
    if ($ergebnis == null) {
        $eingabe = 'Ung&uuml;ltige Eingaben.';
        $ausgabe = 'Berechnung konnte nicht durchgef&uuml;hrt werden.';
    } else {
        if (strlen($eingabeMin) < 2) {
            $eingabeMin = '0' . $eingabeMin;
        }
        if (strlen($ergebnis[4]) < 2) {
            $ergebnis[4] = '0' . $ergebnis[4];
        }
        $eingabe = $eingabeTag . '.' . $eingabeMon . '.' . $eingabeJah . ' ' . $eingabeStu . ':' . $eingabeMin . ' ' . $ausgansRichtung;
        $ausgabe = $ergebnis[0] . '.' . $ergebnis[1] . '.' . $ergebnis[2] . ' ';
        if ($args['day'] != 'j') {
            $ausgabe = $ausgabe . $ergebnis[3] . ':' . $ergebnis[4] . ' ';
        }
        $ausgabe = $ausgabe . $zielRichtung;
    }
    if ($args['eing'] == 'j') {
        $output = '<abbr title="' . $eingabe . '">' . $ausgabe . '</abbr>';
    } else {
        $output = $ausgabe;
    }
    return $output;
}