--- /dev/null
+<?php
+class Horde_Date_Parser_Locale_De_Repeater extends Horde_Date_Parser_Locale_Base_Repeater
+{
+ public $monthNameScanner = array(
+ '/^jan\.?(uar)?$/' => 'january',
+ '/^feb\.?(ruar)?$/' => 'february',
+ '/^mär\.?(z)?$/' => 'march',
+ '/^apr\.?(il)?$/' => 'april',
+ '/^mai$/' => 'may',
+ '/^jun\.?i?$/' => 'june',
+ '/^jul\.?i?$/' => 'july',
+ '/^aug\.?(ust)?$/' => 'august',
+ '/^sep\.?(t\.?|tember)?$/' => 'september',
+ '/^okt\.?(ober)?$/' => 'october',
+ '/^nov\.?(ember)?$/' => 'november',
+ '/^dez\.?(ember)?$/' => 'december',
+ );
+
+ public $dayNameScanner = array(
+ '/^mo(n(d?tag)?)?$/' => 'monday',
+ '/^di(e(nst?tag)?)?$/' => 'tuesday',
+ '/^mi(t(t?woch)?)?$/' => 'wednesday',
+ '/^do(n(n?erstag)?)?$/' => 'thursday',
+ '/^fr(e(itag)?)?$/' => 'friday',
+ '/^sa(m(stag)?)?$/' => 'saturday',
+ '/^so(n(ntag)?)?$/' => 'sunday',
+ );
+
+ public $dayPortionScanner = array(
+ '/^vormittags?$/' => 'morning',
+ '/^morgens?$/' => 'morning',
+ '/^afternoons?$/' => 'afternoon',
+ '/^abends?$/' => 'evening',
+ '/^nachts?$/' => 'night',
+ );
+
+ public $unitScanner = array(
+ '/^jahre?$/' => 'year',
+ //'/^seasons?$/' => 'season', ???
+ '/^monate?$/' => 'month',
+ //'/^fortnights?$/' => 'fortnight', ??
+ '/^wochen?$/' => 'week',
+ '/^wochenenden?$/' => 'weekend',
+ '/^tage?$/' => 'day',
+ '/^stunden?$/' => 'hour',
+ '/^minuten?$/' => 'minute',
+ '/^sekunden?$/' => 'second',
+ );
+
+}
--- /dev/null
+<?php
+/**
+ * @category Horde
+ * @package Horde_Date
+ * @subpackage UnitTests
+ */
+
+/**
+ * @category Horde
+ * @package Horde_Date
+ * @subpackage UnitTests
+ */
+class Horde_Date_Parser_Locale_DeTest extends Horde_Test_Case
+{
+ /**
+ * Wed Aug 16 14:00:00 UTC 2006
+ */
+ public function setUp()
+ {
+ $this->now = new Horde_Date('2006-08-16 14:00:00');
+ $this->parser = Horde_Date_Parser::factory(array('locale' => 'de', 'now' => $this->now));
+ }
+
+ public function testTodayAt11()
+ {
+ $this->assertEquals('2006-08-16 11:00:00', (string)$this->parser->parse('heute um 11'));
+ }
+
+ public function testTomorrow()
+ {
+ $this->assertEquals('2006-08-17 12:00:00', (string)$this->parser->parse('morgen'));
+ }
+
+}