0010058: vevent with lots of exdates leads to alarm saving failure
authorPhilipp Schüle <p.schuele@metaways.de>
Tue, 15 Jul 2014 12:03:16 +0000 (14:03 +0200)
committerPhilipp Schüle <p.schuele@metaways.de>
Mon, 21 Jul 2014 15:24:55 +0000 (17:24 +0200)
* fixes the problem by adding a missing clone() in adoptAlarmTime
* improves code by creating separate functions (converter), formatting
and more logging

https://forge.tine20.org/mantisbt/view.php?id=10058

Change-Id: I12a3879329160f44374f27d82f71d299ecb3171d
Reviewed-on: http://gerrit.tine20.com/customers/863
Tested-by: Jenkins CI (http://ci.tine20.com/)
Reviewed-by: Philipp Schüle <p.schuele@metaways.de>
tests/tine20/Calendar/Convert/Event/VCalendar/GenericTest.php
tests/tine20/Calendar/Import/files/invalid_alarm_time.ics [new file with mode: 0644]
tine20/Calendar/Controller/Event.php
tine20/Calendar/Controller/MSEventFacade.php
tine20/Calendar/Convert/Event/VCalendar/Abstract.php
tine20/Tinebase/Model/Alarm.php

index e78f206..c3985f6 100644 (file)
@@ -50,6 +50,7 @@ class Calendar_Convert_Event_VCalendar_GenericTest extends PHPUnit_Framework_Tes
      */
     protected function setUp()
     {
+        Calendar_Controller_Event::getInstance()->sendNotifications(false);
         Tinebase_TransactionManager::getInstance()->startTransaction(Tinebase_Core::getDb());
     }
 
@@ -629,4 +630,24 @@ class Calendar_Convert_Event_VCalendar_GenericTest extends PHPUnit_Framework_Tes
         
         $this->assertEquals('meeting Philipp / Lars', $event->summary, print_r($event->toArray(), true));
     }
+
+    /**
+     * testConvertWithInvalidAlarmTime
+     * 
+     * @see 0010058: vevent with lots of exdates leads alarm saving failure
+     */
+    public function testConvertWithInvalidAlarmTime()
+    {
+        $vcalendarStream = Calendar_Frontend_WebDAV_EventTest::getVCalendar(dirname(__FILE__) . '/../../../Import/files/invalid_alarm_time.ics', 'r');
+        
+        $this->_converter = Calendar_Convert_Event_VCalendar_Factory::factory(Calendar_Convert_Event_VCalendar_Factory::CLIENT_GENERIC);
+        
+        $event = $this->_converter->toTine20Model($vcalendarStream);
+        
+        // try to save event
+        $savedEvent = Calendar_Controller_MSEventFacade::getInstance()->create($event);
+        
+        $this->assertEquals(104, count($savedEvent->exdate), print_r($savedEvent->toArray(), true));
+        $this->assertEquals(2, count($savedEvent->alarms), print_r($savedEvent->toArray(), true));
+    }
 }
diff --git a/tests/tine20/Calendar/Import/files/invalid_alarm_time.ics b/tests/tine20/Calendar/Import/files/invalid_alarm_time.ics
new file mode 100644 (file)
index 0000000..a13d774
--- /dev/null
@@ -0,0 +1,2642 @@
+BEGIN:VCALENDAR
+VERSION:2.0
+PRODID:-//Apple Inc.//Mac OS X 10.8.2//EN
+CALSCALE:GREGORIAN
+BEGIN:VTIMEZONE
+TZID:Europe/Berlin
+BEGIN:DAYLIGHT
+TZOFFSETFROM:+0100
+RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
+DTSTART:19810329T020000
+TZNAME:MESZ
+TZOFFSETTO:+0200
+END:DAYLIGHT
+BEGIN:STANDARD
+TZOFFSETFROM:+0200
+RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
+DTSTART:19961027T030000
+TZNAME:MEZ
+TZOFFSETTO:+0100
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20101209T144500
+EXDATE;TZID=Europe/Berlin:20121115T141500
+EXDATE;TZID=Europe/Berlin:20120705T141500
+EXDATE;TZID=Europe/Berlin:20110609T141500
+EXDATE;TZID=Europe/Berlin:20121227T141500
+EXDATE;TZID=Europe/Berlin:20110414T141500
+EXDATE;TZID=Europe/Berlin:20101230T141500
+EXDATE;TZID=Europe/Berlin:20111124T141500
+EXDATE;TZID=Europe/Berlin:20120607T141500
+EXDATE;TZID=Europe/Berlin:20110922T141500
+EXDATE;TZID=Europe/Berlin:20120426T141500
+EXDATE;TZID=Europe/Berlin:20110602T141500
+EXDATE;TZID=Europe/Berlin:20101223T141500
+EXDATE;TZID=Europe/Berlin:20111117T141500
+EXDATE;TZID=Europe/Berlin:20120628T141500
+EXDATE;TZID=Europe/Berlin:20110929T141500
+EXDATE;TZID=Europe/Berlin:20111110T141500
+RRULE:FREQ=WEEKLY;COUNT=119
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20101209T141500
+DTSTAMP:20130314T164017Z
+SEQUENCE:8
+BEGIN:VALARM
+X-WR-ALARMUID:AFCC2492-5A3C-4E50-B506-969AE3BC4495
+UID:AFCC2492-5A3C-4E50-B506-969AE3BC4495
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130314T072422Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:EE6DA647-4F7C-47ED-B8EA-FB8A55FF4BEC
+UID:EE6DA647-4F7C-47ED-B8EA-FB8A55FF4BEC
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110811T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110811T141500
+DTSTAMP:20110811T060246Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20110811T141500
+BEGIN:VALARM
+X-WR-ALARMUID:78133BF2-521C-44EE-810E-6D174A301CF2
+UID:78133BF2-521C-44EE-810E-6D174A301CF2
+TRIGGER;VALUE=DATE-TIME:20110811T080246Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:845F3D86-0C8C-4AF3-A49E-D09A720A9022
+UID:845F3D86-0C8C-4AF3-A49E-D09A720A9022
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120131T180000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120131T180000
+DTSTAMP:20120131T184806Z
+SEQUENCE:18
+RECURRENCE-ID;TZID=Europe/Berlin:20120202T141500
+BEGIN:VALARM
+X-WR-ALARMUID:4A19EAF8-033E-4FC9-BE72-658C1DB454CF
+UID:4A19EAF8-033E-4FC9-BE72-658C1DB454CF
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:27E05FB7-55C9-476E-96C0-4D0B8FF13F84
+UID:27E05FB7-55C9-476E-96C0-4D0B8FF13F84
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110407T093000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110407T090000
+DTSTAMP:20110406T151712Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20110407T141500
+BEGIN:VALARM
+X-WR-ALARMUID:B94518A0-F7C7-4DAC-825E-838E0EB0A466
+UID:B94518A0-F7C7-4DAC-825E-838E0EB0A466
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:7083727D-23D1-43A2-BF7C-14DE6B376D81
+UID:7083727D-23D1-43A2-BF7C-14DE6B376D81
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+DESCRIPTION:anb
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120726T103000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text (xxx)
+DTSTART;TZID=Europe/Berlin:20120726T100000
+DTSTAMP:20120723T091236Z
+SEQUENCE:14
+RECURRENCE-ID;TZID=Europe/Berlin:20120726T141500
+BEGIN:VALARM
+X-WR-ALARMUID:0A3F0FEA-4EAD-4FBA-BF5B-95A42D6F4401
+UID:0A3F0FEA-4EAD-4FBA-BF5B-95A42D6F4401
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:50E87130-FEB2-481A-A490-D9874D227C22
+UID:50E87130-FEB2-481A-A490-D9874D227C22
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+DESCRIPTION:arg
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120809T093000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120809T090000
+DTSTAMP:20120808T080013Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20120809T141500
+BEGIN:VALARM
+X-WR-ALARMUID:7E82FE06-8E95-41C6-915A-4538BB71ECD3
+UID:7E82FE06-8E95-41C6-915A-4538BB71ECD3
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:25E48AFC-09A6-4A18-9C04-F3B749302D3F
+UID:25E48AFC-09A6-4A18-9C04-F3B749302D3F
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110915T081500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110915T074500
+DTSTAMP:20110915T065637Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20110915T141500
+BEGIN:VALARM
+X-WR-ALARMUID:E389C288-397C-4ED5-A5FE-4DE83B063594
+UID:E389C288-397C-4ED5-A5FE-4DE83B063594
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:26D1ED9F-A39D-4FE3-8E2E-08E5B9778893
+UID:26D1ED9F-A39D-4FE3-8E2E-08E5B9778893
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110825T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110825T083000
+DTSTAMP:20110825T073340Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110825T141500
+BEGIN:VALARM
+X-WR-ALARMUID:BCF5A67C-122E-4930-8C10-DB6649A6B268
+UID:BCF5A67C-122E-4930-8C10-DB6649A6B268
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:B5F8DCD8-46C0-47BC-8A69-90CF4F1725FE
+UID:B5F8DCD8-46C0-47BC-8A69-90CF4F1725FE
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111230T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111230T080000
+DTSTAMP:20111230T090748Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20111229T141500
+BEGIN:VALARM
+X-WR-ALARMUID:AE1476E5-F52B-44AB-87EC-8FCDC5B5D59E
+UID:AE1476E5-F52B-44AB-87EC-8FCDC5B5D59E
+TRIGGER;VALUE=DATE-TIME:20111230T092248Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:1515BA13-8D12-488F-A795-83BD631D8AB8
+UID:1515BA13-8D12-488F-A795-83BD631D8AB8
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+DESCRIPTION:brg
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120802T113000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120802T110000
+DTSTAMP:20120801T184343Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20120802T141500
+BEGIN:VALARM
+X-WR-ALARMUID:A3616EA7-F443-4A37-B5BA-9191F605859C
+UID:A3616EA7-F443-4A37-B5BA-9191F605859C
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:C0B2A47D-6E41-44F7-A15C-049E6AFE0F1A
+UID:C0B2A47D-6E41-44F7-A15C-049E6AFE0F1A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111102T174500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111102T171500
+DTSTAMP:20111102T233057Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20111103T141500
+BEGIN:VALARM
+X-WR-ALARMUID:2BC8D841-70A6-46F8-ACA5-EF4E7BCA15E8
+UID:2BC8D841-70A6-46F8-ACA5-EF4E7BCA15E8
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:FBA936EC-D8F9-4073-977D-7F7CF72151F2
+UID:FBA936EC-D8F9-4073-977D-7F7CF72151F2
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120816T091500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120816T084500
+DTSTAMP:20120814T154124Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20120816T141500
+BEGIN:VALARM
+X-WR-ALARMUID:E4CBAC5F-B3FC-419C-9290-7008F22C538C
+UID:E4CBAC5F-B3FC-419C-9290-7008F22C538C
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:C9715881-8D17-43AE-8603-063D8F4F2609
+UID:C9715881-8D17-43AE-8603-063D8F4F2609
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+DESCRIPTION:Ha
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110804T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text an Mareike (mittags)
+DTSTART;TZID=Europe/Berlin:20110804T080000
+DTSTAMP:20110803T105844Z
+SEQUENCE:15
+RECURRENCE-ID;TZID=Europe/Berlin:20110804T141500
+BEGIN:VALARM
+X-WR-ALARMUID:6828F64C-147A-4B23-9FFD-E5EB13F8F739
+UID:6828F64C-147A-4B23-9FFD-E5EB13F8F739
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:BB085933-57DC-497C-877F-14FCBD4475F6
+UID:BB085933-57DC-497C-877F-14FCBD4475F6
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110512T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110512T080000
+DTSTAMP:20110504T090843Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20110512T141500
+BEGIN:VALARM
+X-WR-ALARMUID:66639840-E60E-47A2-875B-31EDCA39C339
+UID:66639840-E60E-47A2-875B-31EDCA39C339
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:244B7102-81D1-4DD5-B2C4-B209CF49D55E
+UID:244B7102-81D1-4DD5-B2C4-B209CF49D55E
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120516T124500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120516T121500
+DTSTAMP:20120516T131714Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20120517T141500
+BEGIN:VALARM
+X-WR-ALARMUID:6FBA19E3-98DA-4E4A-8DE2-FB095B4C4C80
+UID:6FBA19E3-98DA-4E4A-8DE2-FB095B4C4C80
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:D0A3755C-DC49-4CFC-A7C2-BF37D598E12C
+UID:D0A3755C-DC49-4CFC-A7C2-BF37D598E12C
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120927T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120927T130000
+DTSTAMP:20120926T191316Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20120927T141500
+BEGIN:VALARM
+X-WR-ALARMUID:A04D72A1-550C-49FF-B90A-E761F4806675
+UID:A04D72A1-550C-49FF-B90A-E761F4806675
+TRIGGER;VALUE=DATE-TIME:20120926T192827Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:1607A5DB-F5C8-4B7B-8829-0D99B8A55057
+UID:1607A5DB-F5C8-4B7B-8829-0D99B8A55057
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111215T143000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111215T140000
+DTSTAMP:20111208T083444Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20111215T141500
+BEGIN:VALARM
+X-WR-ALARMUID:C3A17F9F-E71E-4573-AA59-A770C86AF792
+UID:C3A17F9F-E71E-4573-AA59-A770C86AF792
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:ADECC56E-125F-460D-AB1D-559080954D20
+UID:ADECC56E-125F-460D-AB1D-559080954D20
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110728T143000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110728T140000
+DTSTAMP:20110721T073452Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110728T141500
+BEGIN:VALARM
+X-WR-ALARMUID:BEBB329F-CA10-4538-AEFC-CB57F9C850B9
+UID:BEBB329F-CA10-4538-AEFC-CB57F9C850B9
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:7EB6A4C7-C3DD-47FC-B55C-EB9844F2C053
+UID:7EB6A4C7-C3DD-47FC-B55C-EB9844F2C053
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120322T150000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120322T143000
+DTSTAMP:20120322T145959Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20120322T141500
+BEGIN:VALARM
+X-WR-ALARMUID:1A3D781D-EC0E-44EC-A8D6-404495E4F08E
+UID:1A3D781D-EC0E-44EC-A8D6-404495E4F08E
+TRIGGER;VALUE=DATE-TIME:20120322T152959Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:2F550CF8-8BF7-4980-8F1D-917054D9075D
+UID:2F550CF8-8BF7-4980-8F1D-917054D9075D
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130110T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130110T083000
+DTSTAMP:20130110T074607Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20130110T141500
+BEGIN:VALARM
+X-WR-ALARMUID:C39DFA29-A1E5-43D7-8668-88408740AFC3
+UID:C39DFA29-A1E5-43D7-8668-88408740AFC3
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130110T074607Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F89B631F-952A-4632-9966-18A80B7E3398
+UID:F89B631F-952A-4632-9966-18A80B7E3398
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121011T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121011T080000
+DTSTAMP:20121010T193521Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20121011T141500
+BEGIN:VALARM
+X-WR-ALARMUID:9449B9EA-DDFD-4C2D-9E2B-5AF74F19B575
+UID:9449B9EA-DDFD-4C2D-9E2B-5AF74F19B575
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121010T193521Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:376C35E7-71FC-4E7F-BEDC-EA970C3760D5
+UID:376C35E7-71FC-4E7F-BEDC-EA970C3760D5
+TRIGGER;VALUE=DATE-TIME:20121010T195021Z
+RELATED-TO:9449B9EA-DDFD-4C2D-9E2B-5AF74F19B575
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:29F795ED-69C3-4436-A22A-38D0AAC9F40C
+UID:29F795ED-69C3-4436-A22A-38D0AAC9F40C
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120216T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120216T130000
+DTSTAMP:20120208T164935Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120216T141500
+BEGIN:VALARM
+X-WR-ALARMUID:5626AA49-432D-437C-84E5-5F129A254E0F
+UID:5626AA49-432D-437C-84E5-5F129A254E0F
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:4A62FBEE-D776-4C2A-AA83-DD62FBFFB8D3
+UID:4A62FBEE-D776-4C2A-AA83-DD62FBFFB8D3
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110310T103000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110310T100000
+DTSTAMP:20110310T154119Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110310T141500
+BEGIN:VALARM
+X-WR-ALARMUID:77126E26-E33D-4BD7-A9C1-4277F13E7116
+UID:77126E26-E33D-4BD7-A9C1-4277F13E7116
+TRIGGER;VALUE=DATE-TIME:20110310T164119Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:2F0CBFC4-0333-4E73-93E5-278D5647EB9C
+UID:2F0CBFC4-0333-4E73-93E5-278D5647EB9C
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130221T100000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130221T093000
+DTSTAMP:20130221T121421Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20130221T141500
+BEGIN:VALARM
+X-WR-ALARMUID:96B5F2CD-96A0-4328-A015-B51664FEA37F
+UID:96B5F2CD-96A0-4328-A015-B51664FEA37F
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130220T195242Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F33C4E34-D17C-44AB-B6CE-A6D880FD764F
+UID:F33C4E34-D17C-44AB-B6CE-A6D880FD764F
+TRIGGER;VALUE=DATE-TIME:20130220T200742Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:96B5F2CD-96A0-4328-A015-B51664FEA37F
+ACKNOWLEDGED:20130221T075104Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:CC802AEA-CE41-4E39-9FA3-2E5A2ABD7238
+UID:CC802AEA-CE41-4E39-9FA3-2E5A2ABD7238
+TRIGGER;VALUE=DATE-TIME:20130221T113608Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:935CED11-7E2B-4C74-A555-9ED14F352026
+ACKNOWLEDGED:20130221T121421Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:935CED11-7E2B-4C74-A555-9ED14F352026
+UID:935CED11-7E2B-4C74-A555-9ED14F352026
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130221T112108Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+DESCRIPTION:crg
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120719T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text (Larissa)
+DTSTART;TZID=Europe/Berlin:20120719T141500
+DTSTAMP:20120717T121214Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20120719T141500
+BEGIN:VALARM
+X-WR-ALARMUID:D8821F9E-C270-472A-A34F-6B24065DBE75
+UID:D8821F9E-C270-472A-A34F-6B24065DBE75
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:3CE0B618-8F3A-481F-A282-115FED0A6F0E
+UID:3CE0B618-8F3A-481F-A282-115FED0A6F0E
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110428T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text (Mareike)
+DTSTART;TZID=Europe/Berlin:20110428T141500
+DTSTAMP:20110428T142834Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110428T141500
+BEGIN:VALARM
+X-WR-ALARMUID:1D33B2D4-2079-4B4D-AC63-2CC9F3A48A80
+UID:1D33B2D4-2079-4B4D-AC63-2CC9F3A48A80
+TRIGGER;VALUE=DATE-TIME:20110428T144334Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:6D8FBEFC-6355-4A4D-ACDF-AB452181BF92
+UID:6D8FBEFC-6355-4A4D-ACDF-AB452181BF92
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130103T123000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130103T120000
+DTSTAMP:20130103T115118Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20130103T141500
+BEGIN:VALARM
+X-WR-ALARMUID:3BCD7BE1-4DF1-4FAD-B9ED-9557CD5A67AD
+UID:3BCD7BE1-4DF1-4FAD-B9ED-9557CD5A67AD
+TRIGGER;VALUE=DATE-TIME:20130103T112459Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:DCBC441D-ECA6-4D76-BD65-A161E6360E94
+ACKNOWLEDGED:20130103T115113Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:DCBC441D-ECA6-4D76-BD65-A161E6360E94
+UID:DCBC441D-ECA6-4D76-BD65-A161E6360E94
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130103T110959Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:E8465920-5361-4515-8710-9A21D8809CDD
+UID:E8465920-5361-4515-8710-9A21D8809CDD
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110623T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110623T141500
+DTSTAMP:20110623T140809Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20110623T141500
+BEGIN:VALARM
+X-WR-ALARMUID:9F31C105-0F8D-42BB-BA94-E9A6F557E978
+UID:9F31C105-0F8D-42BB-BA94-E9A6F557E978
+TRIGGER;VALUE=DATE-TIME:20110623T142309Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:7CE0AF6D-8A78-4591-8879-6733D9162229
+UID:7CE0AF6D-8A78-4591-8879-6733D9162229
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120223T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120223T130000
+DTSTAMP:20120102T123224Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120223T141500
+BEGIN:VALARM
+X-WR-ALARMUID:E9637F7C-8FAB-44C4-AD5E-59F27928F67D
+UID:E9637F7C-8FAB-44C4-AD5E-59F27928F67D
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:93E37841-F54E-4ED0-9AFD-209A5312B5FE
+UID:93E37841-F54E-4ED0-9AFD-209A5312B5FE
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121129T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121129T080000
+DTSTAMP:20121128T222656Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20121129T141500
+BEGIN:VALARM
+X-WR-ALARMUID:5984A81B-41EC-43ED-B647-02641DB7F3ED
+UID:5984A81B-41EC-43ED-B647-02641DB7F3ED
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121128T174848Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:EBAA1596-369F-4C34-A58D-40919EEAAF79
+UID:EBAA1596-369F-4C34-A58D-40919EEAAF79
+TRIGGER;VALUE=DATE-TIME:20121128T180348Z
+RELATED-TO:5984A81B-41EC-43ED-B647-02641DB7F3ED
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:5BC3457B-E2B0-4C63-81BF-92E7C3F9A618
+UID:5BC3457B-E2B0-4C63-81BF-92E7C3F9A618
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120308T103000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120308T100000
+DTSTAMP:20120308T094239Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20120308T141500
+BEGIN:VALARM
+X-WR-ALARMUID:84C073B9-3DF1-4288-A1CF-E333CDE6662B
+UID:84C073B9-3DF1-4288-A1CF-E333CDE6662B
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:4D50F959-14CC-47CA-A570-0351F7F99145
+UID:4D50F959-14CC-47CA-A570-0351F7F99145
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121107T140000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121107T133000
+DTSTAMP:20121107T140033Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20121108T141500
+BEGIN:VALARM
+X-WR-ALARMUID:E384E714-A6A0-4D8F-9A8E-072E1D794409
+UID:E384E714-A6A0-4D8F-9A8E-072E1D794409
+TRIGGER;VALUE=DATE-TIME:20121107T135202Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:45CB5EF0-A164-41FB-9A8E-6B3A46C89C0F
+ACKNOWLEDGED:20121107T140033Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:45CB5EF0-A164-41FB-9A8E-6B3A46C89C0F
+UID:45CB5EF0-A164-41FB-9A8E-6B3A46C89C0F
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121107T133702Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:BB0F5351-F55E-433C-A11C-889BEA2D2A69
+UID:BB0F5351-F55E-433C-A11C-889BEA2D2A69
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20121107T113732Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111208T103000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111208T100000
+DTSTAMP:20111103T112222Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20111208T141500
+BEGIN:VALARM
+X-WR-ALARMUID:32D99168-CBB0-4C6F-B4F6-C422C705C423
+UID:32D99168-CBB0-4C6F-B4F6-C422C705C423
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:74A10824-6ECB-4396-AC44-0FF5A19D94C6
+UID:74A10824-6ECB-4396-AC44-0FF5A19D94C6
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120119T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120119T083000
+DTSTAMP:20120118T153935Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20120119T141500
+BEGIN:VALARM
+X-WR-ALARMUID:17A102BB-AE48-4316-8E7C-684193A0C864
+UID:17A102BB-AE48-4316-8E7C-684193A0C864
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:CC69864E-AE9F-46A8-B445-882573297D47
+UID:CC69864E-AE9F-46A8-B445-882573297D47
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120524T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120524T080000
+DTSTAMP:20120524T110620Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120524T141500
+BEGIN:VALARM
+X-WR-ALARMUID:32146FFE-B0B7-4C5D-8204-F571942A1F40
+UID:32146FFE-B0B7-4C5D-8204-F571942A1F40
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:FF0B2E89-F41B-4307-A070-F9C4476ED15D
+UID:FF0B2E89-F41B-4307-A070-F9C4476ED15D
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110203T100000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110203T093000
+DTSTAMP:20110203T132745Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20110203T141500
+BEGIN:VALARM
+X-WR-ALARMUID:09A30D4C-0095-4209-8231-C3D150717981
+UID:09A30D4C-0095-4209-8231-C3D150717981
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:98AF621B-FAF0-4A11-82D9-EC998996F62A
+UID:98AF621B-FAF0-4A11-82D9-EC998996F62A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110505T140000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110505T133000
+DTSTAMP:20110505T094544Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20110505T141500
+BEGIN:VALARM
+X-WR-ALARMUID:55A437B5-AF12-4050-A295-096BC509C6D9
+UID:55A437B5-AF12-4050-A295-096BC509C6D9
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:33BBCFE0-F6A8-49DE-9E69-81AD8678AAEE
+UID:33BBCFE0-F6A8-49DE-9E69-81AD8678AAEE
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120614T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120614T130000
+DTSTAMP:20120614T120759Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120614T141500
+BEGIN:VALARM
+X-WR-ALARMUID:4ECF451A-9E6E-4EF1-93B8-5B5924AA44E5
+UID:4ECF451A-9E6E-4EF1-93B8-5B5924AA44E5
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:D390D801-B336-4D1B-97F0-FD96A07A7481
+UID:D390D801-B336-4D1B-97F0-FD96A07A7481
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120906T134500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120906T131500
+DTSTAMP:20120906T153358Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20120906T141500
+BEGIN:VALARM
+X-WR-ALARMUID:A02A75FB-AA45-4BBF-9A99-70BE2B5D472E
+UID:A02A75FB-AA45-4BBF-9A99-70BE2B5D472E
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:573C5519-50E0-462B-8FFA-014EED6B9759
+UID:573C5519-50E0-462B-8FFA-014EED6B9759
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111019T191500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111019T184500
+DTSTAMP:20111020T061615Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20111020T141500
+BEGIN:VALARM
+X-WR-ALARMUID:E27D8E9B-B0F7-49A3-BDCD-48EB0C3CA75C
+UID:E27D8E9B-B0F7-49A3-BDCD-48EB0C3CA75C
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:C2D2FC44-D55E-4E39-8CF0-27B31EC62407
+UID:C2D2FC44-D55E-4E39-8CF0-27B31EC62407
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111201T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111201T141500
+DTSTAMP:20111201T082654Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20111201T141500
+BEGIN:VALARM
+X-WR-ALARMUID:6F16B81E-22D3-46AF-9F91-704E1D0C729C
+UID:6F16B81E-22D3-46AF-9F91-704E1D0C729C
+TRIGGER;VALUE=DATE-TIME:20111201T092654Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:26D52647-0AB3-4944-AA39-ED28C77C523B
+UID:26D52647-0AB3-4944-AA39-ED28C77C523B
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130314T180000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130314T173000
+DTSTAMP:20130314T175228Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20130314T141500
+BEGIN:VALARM
+X-WR-ALARMUID:80972FFE-C0DF-49FC-8BD3-1FD835128C49
+UID:80972FFE-C0DF-49FC-8BD3-1FD835128C49
+TRIGGER;VALUE=DATE-TIME:20130314T174103Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:2880F855-904B-4D89-8063-922E07816457
+ACKNOWLEDGED:20130314T175228Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:E3E188E2-F700-41C5-A213-A8F01FE85A02
+UID:E3E188E2-F700-41C5-A213-A8F01FE85A02
+TRIGGER;VALUE=DATE-TIME:20130314T152509Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:F5B5FCFB-A22E-4984-8EAD-319FB3DE857E
+ACKNOWLEDGED:20130314T153000Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F5B5FCFB-A22E-4984-8EAD-319FB3DE857E
+UID:F5B5FCFB-A22E-4984-8EAD-319FB3DE857E
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130314T151009Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:2880F855-904B-4D89-8063-922E07816457
+UID:2880F855-904B-4D89-8063-922E07816457
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130314T172603Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110210T130000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110210T123000
+DTSTAMP:20110203T114347Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110210T141500
+BEGIN:VALARM
+X-WR-ALARMUID:45024347-336D-4C46-BD95-D346F5DC044E
+UID:45024347-336D-4C46-BD95-D346F5DC044E
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F25DE9B6-9268-4665-A990-BBD6C55D153C
+UID:F25DE9B6-9268-4665-A990-BBD6C55D153C
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121220T191500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121220T184500
+DTSTAMP:20121220T181948Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20121220T141500
+BEGIN:VALARM
+X-WR-ALARMUID:2FBF84EF-FF17-4D69-A760-C4B3092A88E6
+UID:2FBF84EF-FF17-4D69-A760-C4B3092A88E6
+TRIGGER;VALUE=DATE-TIME:20121220T130508Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:A2C9132B-0E09-4DBC-9AE3-31120577202D
+ACKNOWLEDGED:20121220T135912Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:6A61C117-7F19-402D-AD43-D61B8773B7E1
+UID:6A61C117-7F19-402D-AD43-D61B8773B7E1
+TRIGGER;VALUE=DATE-TIME:20121220T181137Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:A2C9132B-0E09-4DBC-9AE3-31120577202D
+ACKNOWLEDGED:20121220T181211Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:5595FBB8-69BB-4AEC-834F-0CD11774F731
+UID:5595FBB8-69BB-4AEC-834F-0CD11774F731
+TRIGGER;VALUE=DATE-TIME:20121220T093532Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:D69B26FE-9301-41FB-9243-42D453E047D3
+ACKNOWLEDGED:20121220T093624Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:D69B26FE-9301-41FB-9243-42D453E047D3
+UID:D69B26FE-9301-41FB-9243-42D453E047D3
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121220T092032Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:A2C9132B-0E09-4DBC-9AE3-31120577202D
+UID:A2C9132B-0E09-4DBC-9AE3-31120577202D
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20121220T175637Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110519T140000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110519T133000
+DTSTAMP:20110519T152959Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110519T141500
+BEGIN:VALARM
+X-WR-ALARMUID:27D1D20F-319A-40C5-B156-6421F5A7DC3D
+UID:27D1D20F-319A-40C5-B156-6421F5A7DC3D
+TRIGGER;VALUE=DATE-TIME:20110519T154459Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:BE136652-A220-4326-9113-859BAABB66DA
+UID:BE136652-A220-4326-9113-859BAABB66DA
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121018T100000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121018T093000
+DTSTAMP:20121018T072742Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20121018T141500
+BEGIN:VALARM
+X-WR-ALARMUID:3EFAA500-70EA-403E-B2AE-FED6B7BD6B66
+UID:3EFAA500-70EA-403E-B2AE-FED6B7BD6B66
+TRIGGER;VALUE=DATE-TIME:20121017T205217Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:2CE92900-3E5E-40FA-B2C1-CF6804060CB7
+ACKNOWLEDGED:20121018T063000Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:2CE92900-3E5E-40FA-B2C1-CF6804060CB7
+UID:2CE92900-3E5E-40FA-B2C1-CF6804060CB7
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121017T203717Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:44C0392B-5856-41D5-A796-758B347C22F3
+UID:44C0392B-5856-41D5-A796-758B347C22F3
+TRIGGER;VALUE=DATE-TIME:20121018T064815Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:42A3A9B3-CE6B-485F-97AE-44B6B5ED01A4
+ACKNOWLEDGED:20121018T072742Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:42A3A9B3-CE6B-485F-97AE-44B6B5ED01A4
+UID:42A3A9B3-CE6B-485F-97AE-44B6B5ED01A4
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20121018T063315Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120829T100000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120829T093000
+DTSTAMP:20120820T134602Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120830T141500
+BEGIN:VALARM
+X-WR-ALARMUID:8C7543EA-A9E0-4B66-BA1C-6582B1AA76C8
+UID:8C7543EA-A9E0-4B66-BA1C-6582B1AA76C8
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:768AF4FD-2068-48DB-AD1B-40330BD74132
+UID:768AF4FD-2068-48DB-AD1B-40330BD74132
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130117T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130117T141500
+DTSTAMP:20130117T132613Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20130117T141500
+BEGIN:VALARM
+X-WR-ALARMUID:54B02BC1-D73E-41A8-8AF2-B0940A5B94F3
+UID:54B02BC1-D73E-41A8-8AF2-B0940A5B94F3
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130117T112906Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:CA1C0050-936D-452B-A24D-0742CF59335C
+UID:CA1C0050-936D-452B-A24D-0742CF59335C
+TRIGGER;VALUE=DATE-TIME:20130117T131017Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:511629C1-0104-4328-A4AB-E911FD726E39
+ACKNOWLEDGED:20130117T132613Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:84D81970-F75C-46EE-A768-2046FE52AF43
+UID:84D81970-F75C-46EE-A768-2046FE52AF43
+TRIGGER;VALUE=DATE-TIME:20130117T114406Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:54B02BC1-D73E-41A8-8AF2-B0940A5B94F3
+ACKNOWLEDGED:20130117T121649Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:511629C1-0104-4328-A4AB-E911FD726E39
+UID:511629C1-0104-4328-A4AB-E911FD726E39
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130117T125517Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20101216T091500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20101216T084500
+DTSTAMP:20101215T114635Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20101216T141500
+BEGIN:VALARM
+X-WR-ALARMUID:714822A4-9AC9-4D09-9EFB-FA7E70FBE785
+UID:714822A4-9AC9-4D09-9EFB-FA7E70FBE785
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:38ACD4E8-37B5-49DE-92BC-FC67ECD919C1
+UID:38ACD4E8-37B5-49DE-92BC-FC67ECD919C1
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120502T204500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120502T201500
+DTSTAMP:20120502T203943Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20120503T141500
+BEGIN:VALARM
+X-WR-ALARMUID:330C5256-4920-4D8B-9209-4B33490EE81B
+UID:330C5256-4920-4D8B-9209-4B33490EE81B
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:0D9E6CB0-7376-4284-AE99-972E805F7FC7
+UID:0D9E6CB0-7376-4284-AE99-972E805F7FC7
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110317T160000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110317T153000
+DTSTAMP:20110311T093445Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110317T141500
+BEGIN:VALARM
+X-WR-ALARMUID:2E7CDDA2-6894-475B-8385-67524E8DA05E
+UID:2E7CDDA2-6894-475B-8385-67524E8DA05E
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F48A4792-7924-47EB-8692-4B7C60FC4973
+UID:F48A4792-7924-47EB-8692-4B7C60FC4973
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120419T143000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120419T140000
+DTSTAMP:20120418T141242Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20120419T141500
+BEGIN:VALARM
+X-WR-ALARMUID:96271EB0-B2FE-49B8-BF33-88F7B7925F94
+UID:96271EB0-B2FE-49B8-BF33-88F7B7925F94
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:6C82DCD0-2E9B-4172-B3EC-B5D2D85F1063
+UID:6C82DCD0-2E9B-4172-B3EC-B5D2D85F1063
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120531T153000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120531T150000
+DTSTAMP:20120516T113909Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120531T141500
+BEGIN:VALARM
+X-WR-ALARMUID:B6465457-E1CC-4F4C-8B62-C958EAE4087C
+UID:B6465457-E1CC-4F4C-8B62-C958EAE4087C
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:73E175A5-8B92-42B1-8295-E920558F9E14
+UID:73E175A5-8B92-42B1-8295-E920558F9E14
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120510T100000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120510T093000
+DTSTAMP:20120509T173243Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120510T141500
+BEGIN:VALARM
+X-WR-ALARMUID:9033BAF7-AD2E-427E-B197-CF877431C574
+UID:9033BAF7-AD2E-427E-B197-CF877431C574
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:9022A548-AC16-41D5-91CA-30DCFEDCA2B6
+UID:9022A548-AC16-41D5-91CA-30DCFEDCA2B6
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+DESCRIPTION:gnrg
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110818T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text an Mareike mittags
+DTSTART;TZID=Europe/Berlin:20110818T083000
+DTSTAMP:20110811T140035Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20110818T141500
+BEGIN:VALARM
+X-WR-ALARMUID:6A739382-B459-41FE-8C4C-5327F78416D2
+UID:6A739382-B459-41FE-8C4C-5327F78416D2
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:A537D092-BB0A-4D66-977D-828B4404719A
+UID:A537D092-BB0A-4D66-977D-828B4404719A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130306T174500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130306T171500
+DTSTAMP:20130306T164120Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20130307T141500
+BEGIN:VALARM
+X-WR-ALARMUID:79BC7276-52BE-48C5-945F-B7720F1FF8A8
+UID:79BC7276-52BE-48C5-945F-B7720F1FF8A8
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130306T131445Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:FB5B82B2-DCA5-412C-8126-31FD47A0A003
+UID:FB5B82B2-DCA5-412C-8126-31FD47A0A003
+TRIGGER;VALUE=DATE-TIME:20130306T132945Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:79BC7276-52BE-48C5-945F-B7720F1FF8A8
+ACKNOWLEDGED:20130306T133000Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:041EFD73-48B8-4D2E-BAB9-72B567F6F5F2
+UID:041EFD73-48B8-4D2E-BAB9-72B567F6F5F2
+TRIGGER;VALUE=DATE-TIME:20130306T163853Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:4617A5F6-D62C-4589-B6DF-D3FC6884F09F
+ACKNOWLEDGED:20130306T164033Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:4617A5F6-D62C-4589-B6DF-D3FC6884F09F
+UID:4617A5F6-D62C-4589-B6DF-D3FC6884F09F
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130306T162353Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130214T131500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130214T130000
+DTSTAMP:20130214T142348Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20130214T141500
+BEGIN:VALARM
+X-WR-ALARMUID:DC45C077-B6DA-4AC2-BC10-E313D992EFE5
+UID:DC45C077-B6DA-4AC2-BC10-E313D992EFE5
+TRIGGER;VALUE=DATE-TIME:20130214T124935Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:D97D5708-16D9-40BB-80E3-EDFFD20260B4
+ACKNOWLEDGED:20130214T125459Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:D97D5708-16D9-40BB-80E3-EDFFD20260B4
+UID:D97D5708-16D9-40BB-80E3-EDFFD20260B4
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130214T123435Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:38FF0B3D-097E-4551-AB16-44D3CE5409CE
+UID:38FF0B3D-097E-4551-AB16-44D3CE5409CE
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130130T170000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text - an Larissa
+DTSTART;TZID=Europe/Berlin:20130130T163000
+DTSTAMP:20130130T155028Z
+SEQUENCE:15
+RECURRENCE-ID;TZID=Europe/Berlin:20130131T141500
+BEGIN:VALARM
+X-WR-ALARMUID:112C14E3-231C-4804-A15E-AFCF487F150C
+UID:112C14E3-231C-4804-A15E-AFCF487F150C
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130130T155025Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:360FFB8F-DC19-4EF2-A0C3-088427668A8C
+UID:360FFB8F-DC19-4EF2-A0C3-088427668A8C
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130130T155028Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120712T150000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120712T143000
+DTSTAMP:20120619T151302Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120712T141500
+BEGIN:VALARM
+X-WR-ALARMUID:98D15702-BFC0-46A0-827A-543CFC79DBB6
+UID:98D15702-BFC0-46A0-827A-543CFC79DBB6
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:E802FF66-8CB4-425D-AD2E-26AF18073717
+UID:E802FF66-8CB4-425D-AD2E-26AF18073717
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110127T160000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110127T153000
+DTSTAMP:20110121T174357Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110127T141500
+BEGIN:VALARM
+X-WR-ALARMUID:D25C8901-5AED-4BD5-AFCA-E3C6EEB89F02
+UID:D25C8901-5AED-4BD5-AFCA-E3C6EEB89F02
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:E12396A0-8EEA-4394-93AD-0829C0A97364
+UID:E12396A0-8EEA-4394-93AD-0829C0A97364
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120621T093000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120621T090000
+DTSTAMP:20120620T162659Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120621T141500
+BEGIN:VALARM
+X-WR-ALARMUID:2D9F3793-A224-41E9-A786-A4E2DF13BABA
+UID:2D9F3793-A224-41E9-A786-A4E2DF13BABA
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:B0F87BA4-6844-499E-86E4-5B8B8955F0ED
+UID:B0F87BA4-6844-499E-86E4-5B8B8955F0ED
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130228T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130228T141500
+DTSTAMP:20130228T124013Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20130228T141500
+BEGIN:VALARM
+X-WR-ALARMUID:C898C589-3A1C-4655-B45D-030A7890D6A0
+UID:C898C589-3A1C-4655-B45D-030A7890D6A0
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130228T113200Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:BE3FC771-49EC-4CCA-8B23-7AC2D3C605A5
+UID:BE3FC771-49EC-4CCA-8B23-7AC2D3C605A5
+TRIGGER;VALUE=DATE-TIME:20130228T114700Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:C898C589-3A1C-4655-B45D-030A7890D6A0
+ACKNOWLEDGED:20130228T121958Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:BB629710-1CD4-4B0E-98AC-50CEBE923659
+UID:BB629710-1CD4-4B0E-98AC-50CEBE923659
+TRIGGER;VALUE=DATE-TIME:20130228T123621Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:099B777C-5C94-4E22-B23B-149BB810EE50
+ACKNOWLEDGED:20130228T124013Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:099B777C-5C94-4E22-B23B-149BB810EE50
+UID:099B777C-5C94-4E22-B23B-149BB810EE50
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130228T122121Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120126T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120126T130000
+DTSTAMP:20120126T171531Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20120126T141500
+BEGIN:VALARM
+X-WR-ALARMUID:348563AC-7EA1-4BB0-8E6E-2523C0AEDDF0
+UID:348563AC-7EA1-4BB0-8E6E-2523C0AEDDF0
+TRIGGER;VALUE=DATE-TIME:20120126T174531Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:AE8A36DE-4F7B-4528-B80C-66C31F9B9CCC
+UID:AE8A36DE-4F7B-4528-B80C-66C31F9B9CCC
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120919T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120919T130000
+DTSTAMP:20120919T161214Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20120920T141500
+BEGIN:VALARM
+X-WR-ALARMUID:B989D28F-305B-412D-9619-57F0F99EE338
+UID:B989D28F-305B-412D-9619-57F0F99EE338
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:438A44A9-E9C4-4798-92A6-F9C370045699
+UID:438A44A9-E9C4-4798-92A6-F9C370045699
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120209T113000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120209T110000
+DTSTAMP:20120209T150121Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20120209T141500
+BEGIN:VALARM
+X-WR-ALARMUID:767DC9A8-5B1E-412D-A529-486F289A2886
+UID:767DC9A8-5B1E-412D-A529-486F289A2886
+TRIGGER;VALUE=DATE-TIME:20120209T170121Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:4F7725E0-0AC2-41AF-9DA2-785B373B491D
+UID:4F7725E0-0AC2-41AF-9DA2-785B373B491D
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121122T093000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121122T090000
+DTSTAMP:20121122T072136Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20121122T141500
+BEGIN:VALARM
+X-WR-ALARMUID:4A9EEDC1-056D-4563-B0BF-6736640FF6E6
+UID:4A9EEDC1-056D-4563-B0BF-6736640FF6E6
+TRIGGER;VALUE=DATE-TIME:20121121T182211Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:A3A7A9AF-88BE-43EA-B763-D7C5317AB555
+ACKNOWLEDGED:20121122T072136Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:A3A7A9AF-88BE-43EA-B763-D7C5317AB555
+UID:A3A7A9AF-88BE-43EA-B763-D7C5317AB555
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121121T180711Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:B4EBFF5B-07FE-4AB2-807B-CF72A80F83AA
+UID:B4EBFF5B-07FE-4AB2-807B-CF72A80F83AA
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130207T100000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130207T093000
+DTSTAMP:20130207T104636Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20130207T141500
+BEGIN:VALARM
+X-WR-ALARMUID:DC43D026-719E-4865-893F-4304C8742597
+UID:DC43D026-719E-4865-893F-4304C8742597
+TRIGGER;VALUE=DATE-TIME:20130206T184531Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:9B00ACB5-7A96-49E2-AC4F-8CE574AA6994
+ACKNOWLEDGED:20130206T202958Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:9B00ACB5-7A96-49E2-AC4F-8CE574AA6994
+UID:9B00ACB5-7A96-49E2-AC4F-8CE574AA6994
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130206T183031Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:35E0D824-5925-43AB-AA15-3D3EA9AA7BA9
+UID:35E0D824-5925-43AB-AA15-3D3EA9AA7BA9
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111027T140000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111027T133000
+DTSTAMP:20111027T162045Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20111027T141500
+BEGIN:VALARM
+X-WR-ALARMUID:40DE7283-62F5-40D8-B543-7CBE51A2EE75
+UID:40DE7283-62F5-40D8-B543-7CBE51A2EE75
+TRIGGER;VALUE=DATE-TIME:20111027T163545Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:36320073-BF5E-45FA-90EB-CE9ECAAAA535
+UID:36320073-BF5E-45FA-90EB-CE9ECAAAA535
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120412T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120412T083000
+DTSTAMP:20120411T161945Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20120412T141500
+BEGIN:VALARM
+X-WR-ALARMUID:5E6BC453-9A6C-4809-AE26-31A7A5EE76CF
+UID:5E6BC453-9A6C-4809-AE26-31A7A5EE76CF
+TRIGGER;VALUE=DATE-TIME:20120411T181945Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:57BAD243-1006-4932-9A7F-FD1D967CBF0A
+UID:57BAD243-1006-4932-9A7F-FD1D967CBF0A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111013T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111013T141500
+DTSTAMP:20111013T152714Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20111013T141500
+BEGIN:VALARM
+X-WR-ALARMUID:D78FBEE7-69EC-45A3-A792-60549D9BA496
+UID:D78FBEE7-69EC-45A3-A792-60549D9BA496
+TRIGGER;VALUE=DATE-TIME:20111013T155714Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:ED5C0E02-5B57-40EB-AD81-CDEBB1253E9A
+UID:ED5C0E02-5B57-40EB-AD81-CDEBB1253E9A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110714T151500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110714T144500
+DTSTAMP:20110712T115622Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20110714T141500
+BEGIN:VALARM
+X-WR-ALARMUID:E649FEE1-1A7C-45F8-8F5C-29ED175D16DD
+UID:E649FEE1-1A7C-45F8-8F5C-29ED175D16DD
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:1928D987-8ABF-4391-9E09-C12CC2A02644
+UID:1928D987-8ABF-4391-9E09-C12CC2A02644
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110721T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110721T083000
+DTSTAMP:20110721T075713Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20110721T141500
+BEGIN:VALARM
+X-WR-ALARMUID:A6B91575-C300-49E7-AB91-2EE24064D31E
+UID:A6B91575-C300-49E7-AB91-2EE24064D31E
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:3757C6D3-3B80-4253-8112-90E67D727E6A
+UID:3757C6D3-3B80-4253-8112-90E67D727E6A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110526T130000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110526T123000
+DTSTAMP:20110526T144315Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110526T141500
+BEGIN:VALARM
+X-WR-ALARMUID:B3549C2F-B7C1-4FDE-9B76-60C6FC3DB75E
+UID:B3549C2F-B7C1-4FDE-9B76-60C6FC3DB75E
+TRIGGER;VALUE=DATE-TIME:20110526T145815Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:50EBF98A-B18E-4A29-A2CB-F780B3411127
+UID:50EBF98A-B18E-4A29-A2CB-F780B3411127
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110701T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110701T080000
+DTSTAMP:20110630T202250Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110630T141500
+BEGIN:VALARM
+X-WR-ALARMUID:1B4E7CC3-F394-408D-AA0C-748A9671ABD7
+UID:1B4E7CC3-F394-408D-AA0C-748A9671ABD7
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:43D37664-7F5A-4CBC-AE90-D0EDCA250AAB
+UID:43D37664-7F5A-4CBC-AE90-D0EDCA250AAB
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110217T173000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110217T170000
+DTSTAMP:20110126T155135Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110217T141500
+BEGIN:VALARM
+X-WR-ALARMUID:4ECC119A-1675-489F-A9FC-48BC4F6505A5
+UID:4ECC119A-1675-489F-A9FC-48BC4F6505A5
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:34C7FBD4-F23E-43A0-8C86-9BD4694A6629
+UID:34C7FBD4-F23E-43A0-8C86-9BD4694A6629
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121213T080000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121213T073000
+DTSTAMP:20121213T063300Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20121213T141500
+BEGIN:VALARM
+X-WR-ALARMUID:C35F4DFE-3545-4D93-89C3-E22A8B0134FE
+UID:C35F4DFE-3545-4D93-89C3-E22A8B0134FE
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121212T203703Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:CA0D00B7-84CF-4E6F-8930-C5CAD701E993
+UID:CA0D00B7-84CF-4E6F-8930-C5CAD701E993
+TRIGGER;VALUE=DATE-TIME:20121212T205203Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:C35F4DFE-3545-4D93-89C3-E22A8B0134FE
+ACKNOWLEDGED:20121213T063300Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:9E910776-7591-40F7-A54B-3B94F15CB6EF
+UID:9E910776-7591-40F7-A54B-3B94F15CB6EF
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121206T094500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121206T091500
+DTSTAMP:20121202T172255Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20121206T141500
+BEGIN:VALARM
+X-WR-ALARMUID:48B9CB0E-22D2-4E5D-966B-CAD984696785
+UID:48B9CB0E-22D2-4E5D-966B-CAD984696785
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:890F6EF7-7678-4551-8E3E-AA17F21273FE
+UID:890F6EF7-7678-4551-8E3E-AA17F21273FE
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110113T090000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110113T083000
+DTSTAMP:20110107T134902Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110113T141500
+BEGIN:VALARM
+X-WR-ALARMUID:A696208F-5750-476D-B671-6D19B51AC921
+UID:A696208F-5750-476D-B671-6D19B51AC921
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:DACDDD8B-E650-4375-9A02-C53F919082F0
+UID:DACDDD8B-E650-4375-9A02-C53F919082F0
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120822T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120822T080000
+DTSTAMP:20120821T202347Z
+SEQUENCE:11
+RECURRENCE-ID;TZID=Europe/Berlin:20120823T141500
+BEGIN:VALARM
+X-WR-ALARMUID:B3318982-953B-4D7E-ACDF-7EAF4E4537DE
+UID:B3318982-953B-4D7E-ACDF-7EAF4E4537DE
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:BFC78C1C-9BED-4C69-833D-2DB8C2625FFA
+UID:BFC78C1C-9BED-4C69-833D-2DB8C2625FFA
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20130124T083000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20130124T080000
+DTSTAMP:20130124T085834Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20130124T141500
+BEGIN:VALARM
+X-WR-ALARMUID:7B836EC2-F856-42FB-9026-EF0E099BE2E6
+UID:7B836EC2-F856-42FB-9026-EF0E099BE2E6
+TRIGGER:-PT15H
+ACKNOWLEDGED:20130123T211549Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:8BD8CEA5-085C-4556-AA63-2707B401ABC6
+UID:8BD8CEA5-085C-4556-AA63-2707B401ABC6
+TRIGGER;VALUE=DATE-TIME:20130124T085255Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:4190274E-3DCF-4396-B62F-E041CD7DB423
+ACKNOWLEDGED:20130124T085834Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:73ED5EB8-DF22-4D6B-A550-748D61347B5B
+UID:73ED5EB8-DF22-4D6B-A550-748D61347B5B
+TRIGGER;VALUE=DATE-TIME:20130123T213049Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:7B836EC2-F856-42FB-9026-EF0E099BE2E6
+ACKNOWLEDGED:20130124T072238Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:4190274E-3DCF-4396-B62F-E041CD7DB423
+UID:4190274E-3DCF-4396-B62F-E041CD7DB423
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20130124T083755Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110908T093000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110908T090000
+DTSTAMP:20110908T143855Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20110908T141500
+BEGIN:VALARM
+X-WR-ALARMUID:0F9554C6-70FA-4889-8D90-98ABBD7B27BC
+UID:0F9554C6-70FA-4889-8D90-98ABBD7B27BC
+TRIGGER;VALUE=DATE-TIME:20110908T145355Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:4C9CDC5D-1B9B-488C-A839-1017171B0A85
+UID:4C9CDC5D-1B9B-488C-A839-1017171B0A85
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110224T130000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20110224T123000
+DTSTAMP:20110224T112809Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20110224T141500
+BEGIN:VALARM
+X-WR-ALARMUID:FDC3E3D2-D8C9-4A85-8479-B3EB399A168C
+UID:FDC3E3D2-D8C9-4A85-8479-B3EB399A168C
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:D390A1A3-A12B-4979-AFEC-B384AAF6E3F9
+UID:D390A1A3-A12B-4979-AFEC-B384AAF6E3F9
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20120403T081500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20120403T074500
+DTSTAMP:20120403T055455Z
+SEQUENCE:10
+RECURRENCE-ID;TZID=Europe/Berlin:20120405T141500
+BEGIN:VALARM
+X-WR-ALARMUID:AA8E201C-AA8F-4D15-8257-B87FE17FFF1A
+UID:AA8E201C-AA8F-4D15-8257-B87FE17FFF1A
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:DF60D609-5BBB-4E88-8AD5-708EA496891C
+UID:DF60D609-5BBB-4E88-8AD5-708EA496891C
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121004T081500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121004T074500
+DTSTAMP:20121004T055245Z
+SEQUENCE:14
+RECURRENCE-ID;TZID=Europe/Berlin:20121004T141500
+BEGIN:VALARM
+X-WR-ALARMUID:687C7DF9-EDC0-45AF-8A1B-271A035F8777
+UID:687C7DF9-EDC0-45AF-8A1B-271A035F8777
+TRIGGER:-PT1H
+ACKNOWLEDGED:20121004T053402Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:7193E72D-FFBA-4978-A674-7894E783BF3D
+UID:7193E72D-FFBA-4978-A674-7894E783BF3D
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20121004T055245Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111006T133000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111006T130000
+DTSTAMP:20110818T170134Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20111006T141500
+BEGIN:VALARM
+X-WR-ALARMUID:AE37ED97-46D8-4E80-8168-CBAD8CD545CB
+UID:AE37ED97-46D8-4E80-8168-CBAD8CD545CB
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:55ABEC26-9BE0-4DD1-9F8F-0A1DA8C91611
+UID:55ABEC26-9BE0-4DD1-9F8F-0A1DA8C91611
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121025T144500
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121025T141500
+DTSTAMP:20121025T171304Z
+SEQUENCE:8
+RECURRENCE-ID;TZID=Europe/Berlin:20121025T141500
+BEGIN:VALARM
+X-WR-ALARMUID:80236712-3408-4974-9840-548CDF405F82
+UID:80236712-3408-4974-9840-548CDF405F82
+TRIGGER;VALUE=DATE-TIME:20121025T150703Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:0F33360F-AB15-4A03-85F3-BA28C331468B
+ACKNOWLEDGED:20121025T171304Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:2AB89C48-F96C-40D9-BE5D-1A1294193325
+UID:2AB89C48-F96C-40D9-BE5D-1A1294193325
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121025T055638Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F1CC450F-0019-4502-ACBF-E783D3DEB127
+UID:F1CC450F-0019-4502-ACBF-E783D3DEB127
+TRIGGER;VALUE=DATE-TIME:20121025T061138Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+RELATED-TO:2AB89C48-F96C-40D9-BE5D-1A1294193325
+ACKNOWLEDGED:20121025T112259Z
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:0F33360F-AB15-4A03-85F3-BA28C331468B
+UID:0F33360F-AB15-4A03-85F3-BA28C331468B
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20121025T145203Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20110421T140000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text (Mareike)
+DTSTART;TZID=Europe/Berlin:20110421T133000
+DTSTAMP:20110415T120936Z
+SEQUENCE:12
+RECURRENCE-ID;TZID=Europe/Berlin:20110421T141500
+BEGIN:VALARM
+X-WR-ALARMUID:F034F47A-3314-4C1A-BC20-78FCAFB580B1
+UID:F034F47A-3314-4C1A-BC20-78FCAFB580B1
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:3428CF96-4671-497B-9E33-8774A7A8524A
+UID:3428CF96-4671-497B-9E33-8774A7A8524A
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20121031T163000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20121031T160000
+DTSTAMP:20121031T144317Z
+SEQUENCE:13
+RECURRENCE-ID;TZID=Europe/Berlin:20121101T141500
+BEGIN:VALARM
+X-WR-ALARMUID:4339FFAE-3B36-45A2-A52D-C32209214036
+UID:4339FFAE-3B36-45A2-A52D-C32209214036
+TRIGGER;VALUE=DATE-TIME:20121031T145817Z
+RELATED-TO:F57ED3D5-FBE6-4AD7-8257-00A51E5406B7
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F57ED3D5-FBE6-4AD7-8257-00A51E5406B7
+UID:F57ED3D5-FBE6-4AD7-8257-00A51E5406B7
+TRIGGER:-PT15H
+ACKNOWLEDGED:20121031T144317Z
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:34367D7E-00D5-4756-902D-B8C9F552C178
+UID:34367D7E-00D5-4756-902D-B8C9F552C178
+TRIGGER:-PT1H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+X-APPLE-DEFAULT-ALARM:TRUE
+ACKNOWLEDGED:20121031T140359Z
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+CREATED:20100906T073844Z
+UID:17C7E27B-1C51-44C5-AAE4-74A4A598CDB3
+DTEND;TZID=Europe/Berlin:20111222T120000
+TRANSP:OPAQUE
+SUMMARY:Friday News - Text
+DTSTART;TZID=Europe/Berlin:20111222T113000
+DTSTAMP:20111221T174043Z
+SEQUENCE:9
+RECURRENCE-ID;TZID=Europe/Berlin:20111222T141500
+BEGIN:VALARM
+X-WR-ALARMUID:CCD0EECC-73BE-4497-9981-9B764CFD329B
+UID:CCD0EECC-73BE-4497-9981-9B764CFD329B
+TRIGGER:-PT15H
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+BEGIN:VALARM
+X-WR-ALARMUID:F310CB42-0BAA-49BD-B517-079165D45D19
+UID:F310CB42-0BAA-49BD-B517-079165D45D19
+TRIGGER:-PT1H
+X-APPLE-DEFAULT-ALARM:TRUE
+ATTACH;VALUE=URI:Basso
+ACTION:AUDIO
+END:VALARM
+END:VEVENT
+END:VCALENDAR
\ No newline at end of file
index 758e3f6..4b69d0e 100644 (file)
@@ -912,15 +912,18 @@ class Calendar_Controller_Event extends Tinebase_Controller_Record_Abstract impl
         $originalEvent = Calendar_Model_Rrule::computeNextOccurrence($baseEvent, new Tinebase_Record_RecordSet('Calendar_Model_Event'), $originalDtstart);
         
         if ($_allFollowing != TRUE) {
-            if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . " adding exdate for: '{$_event->recurid}'");
+            if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ 
+                . " Adding exdate for: '{$_event->recurid}'");
             
             array_push($exdates, $exdate);
             $baseEvent->exdate = $exdates;
             $updatedBaseEvent = $this->update($baseEvent, FALSE);
             
             if ($_deleteInstance == FALSE) {
-                if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . " Creating persistent exception for: '{$_event->recurid}'");
-                if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ . " Recur exception: " . print_r($_event->toArray(), TRUE));
+                if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ 
+                    . " Creating persistent exception for: '{$_event->recurid}'");
+                if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ 
+                    . " Recur exception: " . print_r($_event->toArray(), TRUE));
                 
                 $_event->setId(NULL);
                 unset($_event->rrule);
@@ -1271,7 +1274,7 @@ class Calendar_Controller_Event extends Tinebase_Controller_Record_Abstract impl
             $_alarm->sent_status = $nextOccurrence ? Tinebase_Model_Alarm::STATUS_PENDING : Tinebase_Model_Alarm::STATUS_SUCCESS;
             $_alarm->sent_message = $nextOccurrence ?  '' : 'Nothing to send, series is over';
             
-            $eventStart = $nextOccurrence ? clone $nextOccurrence->dtstart : $_record->dtstart;
+            $eventStart = $nextOccurrence ? clone $nextOccurrence->dtstart : clone $_record->dtstart;
         } else {
             $eventStart = clone $_record->dtstart;
         }
@@ -1288,6 +1291,9 @@ class Calendar_Controller_Event extends Tinebase_Controller_Record_Abstract impl
         if ($_record->rrule && $_alarm->sent_status == Tinebase_Model_Alarm::STATUS_PENDING && $_alarm->alarm_time < $_alarm->sent_time) {
             $this->adoptAlarmTime($_record, $_alarm, 'instance');
         }
+        
+        if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ .
+            ' alarm: ' . print_r($_alarm->toArray(), true));
     }
     
     /****************************** overwritten functions ************************/
index 7e76b88..791bddc 100644 (file)
@@ -258,7 +258,10 @@ class Calendar_Controller_MSEventFacade implements Tinebase_Controller_Record_In
         $savedEvent = $this->_eventController->create($_event);
         
         if ($exceptions instanceof Tinebase_Record_RecordSet) {
-            foreach($exceptions as $exception) {
+            if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__
+                . ' About to create ' . count($exceptions) . ' exdates for event ' . $_event->summary . ' (' . $_event->dtstart . ')');
+            
+            foreach ($exceptions as $exception) {
                 $exception->assertCurrentUserAsAttendee();
                 $this->_prepareException($savedEvent, $exception);
                 $this->_eventController->createRecurException($exception, !!$exception->is_deleted);
index 3bd86c0..6f41f98 100644 (file)
@@ -912,73 +912,7 @@ class Calendar_Convert_Event_VCalendar_Abstract implements Tinebase_Convert_Inte
                     break;
                     
                 case 'VALARM':
-                    foreach ($property as $valarm) {
-                        
-                        if ($valarm->ACTION == 'NONE') {
-                            if (Tinebase_Core::isLogLevel(Zend_Log::INFO)) Tinebase_Core::getLogger()->info(__METHOD__ . '::' . __LINE__ 
-                                . ' We can\'t cope with action NONE: iCal 6.0 sends default alarms in the year 1976 with action NONE. Skipping alarm.');
-                            continue;
-                        }
-                        
-                        # TRIGGER:-PT15M
-                        if (is_string($valarm->TRIGGER->getValue()) && $valarm->TRIGGER instanceof Sabre\VObject\Property\ICalendar\Duration) {
-                            $valarm->TRIGGER->add('VALUE', 'DURATION');
-                        }
-                        
-                        $trigger = is_object($valarm->TRIGGER['VALUE']) ? $valarm->TRIGGER['VALUE'] : (is_object($valarm->TRIGGER['RELATED']) ? $valarm->TRIGGER['RELATED'] : NULL);
-                        
-                        if ($trigger === NULL) {
-                            // added Trigger/Related for eM Client alarms
-                            // 2014-01-03 - Bullshit, why don't we have testdata for emclient alarms?
-                            //              this alarm handling should be refactored, the logic is scrambled
-                            // @see 0006110: handle iMIP messages from outlook
-                            // @todo fix 0007446: handle broken alarm in outlook invitation message
-                            if (Tinebase_Core::isLogLevel(Zend_Log::INFO)) Tinebase_Core::getLogger()->info(__METHOD__ . '::' . __LINE__ 
-                                . ' Alarm has no TRIGGER value. Skipping it.');
-                            continue;
-                        }
-                        
-                        switch (strtoupper($trigger->getValue())) {
-                            # TRIGGER;VALUE=DATE-TIME:20111031T130000Z
-                            case 'DATE-TIME':
-                                $alarmTime = new Tinebase_DateTime($valarm->TRIGGER->getValue());
-                                $alarmTime->setTimezone('UTC');
-                                
-                                $alarm = new Tinebase_Model_Alarm(array(
-                                    'alarm_time'        => $alarmTime,
-                                    'minutes_before'    => 'custom',
-                                    'model'             => 'Calendar_Model_Event'
-                                ));
-                                
-                                break;
-                                
-                            # TRIGGER;VALUE=DURATION:-PT1H15M
-                            case 'DURATION':
-                            default:
-                                $alarmTime = $this->_convertToTinebaseDateTime($vevent->DTSTART);
-                                $alarmTime->setTimezone('UTC');
-                                
-                                preg_match('/(?P<invert>[+-]?)(?P<spec>P.*)/', $valarm->TRIGGER->getValue(), $matches);
-                                $duration = new DateInterval($matches['spec']);
-                                $duration->invert = !!($matches['invert'] === '-');
-
-                                $alarm = new Tinebase_Model_Alarm(array(
-                                    'alarm_time'        => $alarmTime->add($duration),
-                                    'minutes_before'    => ($duration->format('%d') * 60 * 24) + ($duration->format('%h') * 60) + ($duration->format('%i')),
-                                    'model'             => 'Calendar_Model_Event'
-                                ));
-                                
-                                break;
-                        }
-                        
-                        if ($valarm->ACKNOWLEDGED) {
-                            $dtack = $valarm->ACKNOWLEDGED->getDateTime();
-                            Calendar_Controller_Alarm::setAcknowledgeTime($alarm, $dtack);
-                        }
-                        
-                        $event->alarms->addRecord($alarm);
-                    }
-                    
+                    $this->_parseAlarm($event, $property, $vevent);
                     break;
                     
                 case 'CATEGORIES':
@@ -1033,6 +967,85 @@ class Calendar_Convert_Event_VCalendar_Abstract implements Tinebase_Convert_Inte
     }
     
     /**
+     * parse valarm properties
+     * 
+     * @param Calendar_Model_Event $event
+     * @param unknown $valarms
+     * @param \Sabre\VObject\Component\VEvent $vevent
+     */
+    protected function _parseAlarm(Calendar_Model_Event $event, $valarms, \Sabre\VObject\Component\VEvent $vevent)
+    {
+        foreach ($valarms as $valarm) {
+            
+            if ($valarm->ACTION == 'NONE') {
+                if (Tinebase_Core::isLogLevel(Zend_Log::INFO)) Tinebase_Core::getLogger()->info(__METHOD__ . '::' . __LINE__
+                        . ' We can\'t cope with action NONE: iCal 6.0 sends default alarms in the year 1976 with action NONE. Skipping alarm.');
+                continue;
+            }
+        
+            # TRIGGER:-PT15M
+            if (is_string($valarm->TRIGGER->getValue()) && $valarm->TRIGGER instanceof Sabre\VObject\Property\ICalendar\Duration) {
+                if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__
+                . ' Adding DURATION trigger value for ' . $valarm->TRIGGER->getValue());
+                $valarm->TRIGGER->add('VALUE', 'DURATION');
+            }
+            
+            $trigger = is_object($valarm->TRIGGER['VALUE']) ? $valarm->TRIGGER['VALUE'] : (is_object($valarm->TRIGGER['RELATED']) ? $valarm->TRIGGER['RELATED'] : NULL);
+            
+            if ($trigger === NULL) {
+                // added Trigger/Related for eM Client alarms
+                // 2014-01-03 - Bullshit, why don't we have testdata for emclient alarms?
+                        //              this alarm handling should be refactored, the logic is scrambled
+                // @see 0006110: handle iMIP messages from outlook
+                // @todo fix 0007446: handle broken alarm in outlook invitation message
+                if (Tinebase_Core::isLogLevel(Zend_Log::INFO)) Tinebase_Core::getLogger()->info(__METHOD__ . '::' . __LINE__
+                . ' Alarm has no TRIGGER value. Skipping it.');
+                continue;
+            }
+            
+            switch (strtoupper($trigger->getValue())) {
+                # TRIGGER;VALUE=DATE-TIME:20111031T130000Z
+                case 'DATE-TIME':
+                    $alarmTime = new Tinebase_DateTime($valarm->TRIGGER->getValue());
+                    $alarmTime->setTimezone('UTC');
+                    
+                    $alarm = new Tinebase_Model_Alarm(array(
+                        'alarm_time'        => $alarmTime,
+                        'minutes_before'    => 'custom',
+                        'model'             => 'Calendar_Model_Event'
+                    ));
+                    
+                    break;
+                
+                # TRIGGER;VALUE=DURATION:-PT1H15M
+                case 'DURATION':
+                default:
+                    $alarmTime = $this->_convertToTinebaseDateTime($vevent->DTSTART);
+                    $alarmTime->setTimezone('UTC');
+                    
+                    preg_match('/(?P<invert>[+-]?)(?P<spec>P.*)/', $valarm->TRIGGER->getValue(), $matches);
+                    $duration = new DateInterval($matches['spec']);
+                    $duration->invert = !!($matches['invert'] === '-');
+                    
+                    $alarm = new Tinebase_Model_Alarm(array(
+                        'alarm_time'        => $alarmTime->add($duration),
+                        'minutes_before'    => ($duration->format('%d') * 60 * 24) + ($duration->format('%h') * 60) + ($duration->format('%i')),
+                        'model'             => 'Calendar_Model_Event'
+                    ));
+                    if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__
+                        . ' Adding DURATION alarm ' . print_r($alarm->toArray(), true));
+            }
+            
+            if ($valarm->ACKNOWLEDGED) {
+                $dtack = $valarm->ACKNOWLEDGED->getDateTime();
+                Calendar_Controller_Alarm::setAcknowledgeTime($alarm, $dtack);
+            }
+            
+            $event->alarms->addRecord($alarm);
+        }
+    }
+    
+    /**
      * get datetime from sabredav datetime property (user TZ is fallback)
      * 
      * @param  Sabre\VObject\Property  $dateTimeProperty
@@ -1061,4 +1074,4 @@ class Calendar_Convert_Event_VCalendar_Abstract implements Tinebase_Convert_Inte
         
         return $result;
     }
-}
+}
\ No newline at end of file
index c894264..76d5989 100644 (file)
@@ -121,19 +121,22 @@ class Tinebase_Model_Alarm extends Tinebase_Record_Abstract
      */
     public function setMinutesBefore(DateTime $_date)
     {
-        if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ . ' ' . print_r($this->toArray(), TRUE));
+        if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__
+            . ' Current alarm: ' . print_r($this->toArray(), TRUE));
+        if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__
+            . ' Date: ' . $_date);
         
         if ($this->getOption(self::OPTION_CUSTOM) !== TRUE) {
             $dtStartTS = $_date->getTimestamp();
             $alarmTimeTS = $this->alarm_time->getTimestamp();
-            
             $this->minutes_before = $dtStartTS < $alarmTimeTS ? 0 : round(($dtStartTS - $alarmTimeTS) / 60);
+            
         } else {
             $this->minutes_before = self::OPTION_CUSTOM;
         }
         
         if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ 
-            . ' Result: ' . $this->minutes_before);
+            . ' Resulting minutes_before: ' . $this->minutes_before);
     }
     
     /**