1--TEST-- 2SIF tests. 3--FILE-- 4<?php 5 6// Setup stubs. 7class BackendStub { 8 function logMessage() {} 9} 10$backend = new BackendStub(); 11 12// Load device handler. 13require_once __DIR__ . '/../SyncML/Device.php'; 14$device = Horde_SyncMl_Device::factory('Sync4j'); 15 16$data = <<<EVENT 17BEGIN:VCALENDAR 18VERSION:2.0 19X-WR-CALNAME:cdillon's Calendar 20PRODID:-//The Horde Project//Horde iCalendar Library//EN 21METHOD:PUBLISH 22BEGIN:VEVENT 23DTSTART:20080630T110000Z 24DTEND:20080630T120000Z 25DTSTAMP:20080630T201939Z 26UID:20080630151854.190949aaovgixvhq@www.wolves.k12.mo.us 27CREATED:20080630T201854Z 28LAST-MODIFIED:20080630T201854Z 29SUMMARY:Server02 30ORGANIZER;CN=Chris Dillon:mailto:cdillon@wolves.k12.mo.us 31CLASS:PUBLIC 32STATUS:CONFIRMED 33TRANSP:OPAQUE 34ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN="Dillon, 35 Chris":mailto:cdillon@wolves.k12.mo.us 36BEGIN:VALARM 37ACTION:DISPLAY 38TRIGGER;VALUE=DURATION:-PT15M 39END:VALARM 40END:VEVENT 41END:VCALENDAR 42EVENT; 43 44echo $device->vevent2sif($data); 45echo "\n\n"; 46 47$data = <<<EVENT 48BEGIN:VCALENDAR 49VERSION:2.0 50X-WR-CALNAME:cdillon's Calendar 51PRODID:-//The Horde Project//Horde_iCalendar Library//EN 52METHOD:PUBLISH 53BEGIN:VEVENT 54DTSTART;VALUE=DATE:20080630 55DTEND;VALUE=DATE:20080631 56DTSTAMP:20080630T201939Z 57UID:20080630151854.190949aaovgixvhq@www.wolves.k12.mo.us 58CREATED:20080630T201854Z 59LAST-MODIFIED:20080630T201854Z 60SUMMARY:Server02 61ORGANIZER;CN=Chris Dillon:mailto:cdillon@wolves.k12.mo.us 62CLASS:PUBLIC 63STATUS:CONFIRMED 64TRANSP:OPAQUE 65ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN="Dillon, 66 Chris":mailto:cdillon@wolves.k12.mo.us 67BEGIN:VALARM 68ACTION:DISPLAY 69TRIGGER;VALUE=DURATION:-PT15M 70END:VALARM 71END:VEVENT 72END:VCALENDAR 73EVENT; 74 75echo $device->vevent2sif($data); 76echo "\n\n"; 77 78$data = <<<EVENT 79BEGIN:VCALENDAR 80VERSION:2.0 81X-WR-CALNAME:Agenda de Pruebas 82PRODID:-//The Horde Project//Horde_iCalendar Library\, Horde 3.3.8//EN 83METHOD:PUBLISH 84BEGIN:VEVENT 85DTSTART:20101101T090000Z 86DTEND:20101101T100000Z 87DTSTAMP:20101025T104946Z 88UID:20101025124222.12755wqg94msihvy@example.com 89CREATED:20101025T104222Z 90LAST-MODIFIED:20101025T104846Z 91SUMMARY:Cinco-Lunes 92ORGANIZER;CN=Pruebas:mailto:pruebas@example.com 93CATEGORIES:Trabajo 94LOCATION:Korta 95CLASS:PUBLIC 96STATUS:CONFIRMED 97TRANSP:OPAQUE 98RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO;UNTIL=20101130T225959Z 99EXDATE:20101108T090000Z 100EXDATE:20101122T090000Z 101EXDATE:20101129T090000Z 102EXDATE:20101115T090000Z 103BEGIN:VALARM 104ACTION:DISPLAY 105TRIGGER;VALUE=DURATION:-PT15M 106END:VALARM 107END:VEVENT 108END:VCALENDAR 109EVENT; 110 111echo $device->vevent2sif($data); 112echo "\n\n"; 113 114$data = <<<CONTACT 115<?xml version="1.0" encoding="UTF-8"?> 116<contact> 117<Anniversary/> 118<AssistantName/> 119<AssistantTelephoneNumber/> 120<BillingInformation/> 121<Birthday>2008-10-18</Birthday> 122<Body>Comments 123More comments 124And just a couple more</Body> 125<Business2TelephoneNumber/> 126<BusinessAddressCity>Golden Hills</BusinessAddressCity> 127<BusinessAddressCountry>Australia</BusinessAddressCountry> 128<BusinessAddressPostOfficeBox/> 129<BusinessAddressPostalCode>4009</BusinessAddressPostalCode> 130<BusinessAddressState>Qld</BusinessAddressState> 131<BusinessAddressStreet>Company 132Unit 2, 123 St Freds Tce</BusinessAddressStreet> 133<BusinessFaxNumber/> 134<BusinessTelephoneNumber>+61 712341234</BusinessTelephoneNumber> 135<CallbackTelephoneNumber/> 136<CarTelephoneNumber/> 137<Categories/> 138<Children/> 139<Companies/> 140<CompanyMainTelephoneNumber/> 141<CompanyName>Company</CompanyName> 142<ComputerNetworkName/> 143<Department/> 144<Email1Address>test@domain.com</Email1Address> 145<Email1AddressType>SMTP</Email1AddressType> 146<Email2Address>user@seconddomain.com</Email2Address> 147<Email2AddressType>SMTP</Email2AddressType> 148<Email3Address/> 149<Email3AddressType/> 150<FileAs>Lastname, Firstname</FileAs> 151<FirstName>Firstname</FirstName> 152<Folder>DEFAULT_FOLDER</Folder> 153<Gender>0</Gender> 154<Hobby/> 155<Home2TelephoneNumber/> 156<HomeAddressCity/> 157<HomeAddressCountry/> 158<HomeAddressPostOfficeBox/> 159<HomeAddressPostalCode/> 160<HomeAddressState/> 161<HomeAddressStreet/> 162<HomeFaxNumber/> 163<HomeTelephoneNumber/> 164<HomeWebPage/> 165<IMAddress/> 166<Importance>1</Importance> 167<Initials>F.L.</Initials> 168<JobTitle/> 169<Language/> 170<LastName>Lastname</LastName> 171<MailingAddress>Company 172Unit 2, 123 St Freds Tce 173Golden Hills Qld 4009 174Australia</MailingAddress> 175<ManagerName/> 176<MiddleName/> 177<Mileage/> 178<MobileTelephoneNumber>+61 123123123</MobileTelephoneNumber> 179<NickName/> 180<OfficeLocation/> 181<OrganizationalIDNumber/> 182<OtherAddressCity/> 183<OtherAddressCountry/> 184<OtherAddressPostOfficeBox/> 185<OtherAddressPostalCode/> 186<OtherAddressState/> 187<OtherAddressStreet/> 188<OtherFaxNumber/> 189<OtherTelephoneNumber/> 190<PagerNumber/> 191<Photo/> 192<PrimaryTelephoneNumber/> 193<Profession/> 194<RadioTelephoneNumber/> 195<Sensitivity>0</Sensitivity> 196<Spouse/> 197<Subject>Firstname Lastname</Subject> 198<Suffix/> 199<TelexNumber/> 200<Title/> 201<WebPage/> 202<YomiCompanyName/> 203<YomiFirstName/> 204<YomiLastName/> 205</contact> 206CONTACT; 207 208echo $device->sif2vcard($data); 209 210?> 211--EXPECT-- 212<?xml version="1.0"?><appointment><ReminderSet>1</ReminderSet><IsRecurring>0</IsRecurring><BusyStatus>2</BusyStatus><AllDayEvent>0</AllDayEvent><Start>20080630T110000Z</Start><End>20080630T120000Z</End><Subject>Server02</Subject><Sensitivity>0</Sensitivity><ReminderMinutesBeforeStart>15</ReminderMinutesBeforeStart><Duration>60</Duration></appointment> 213 214<?xml version="1.0"?><appointment><ReminderSet>1</ReminderSet><IsRecurring>0</IsRecurring><BusyStatus>2</BusyStatus><AllDayEvent>1</AllDayEvent><Start>2008-06-30</Start><End>2008-06-30</End><Subject>Server02</Subject><Sensitivity>0</Sensitivity><ReminderMinutesBeforeStart>15</ReminderMinutesBeforeStart></appointment> 215 216<?xml version="1.0"?><appointment><ReminderSet>1</ReminderSet><IsRecurring>1</IsRecurring><BusyStatus>2</BusyStatus><AllDayEvent>0</AllDayEvent><Start>20101101T090000Z</Start><End>20101101T100000Z</End><Subject>Cinco-Lunes</Subject><Categories>Trabajo</Categories><Location>Korta</Location><Sensitivity>0</Sensitivity><Interval>1</Interval><RecurrenceType>1</RecurrenceType><DayOfWeekMask>2</DayOfWeekMask><NoEndDate>0</NoEndDate><PatternEndDate>20101130T225959Z</PatternEndDate><ReminderMinutesBeforeStart>15</ReminderMinutesBeforeStart><Duration>60</Duration></appointment> 217 218BEGIN:VCARD 219VERSION:3.0 220FN:Lastname\, Firstname 221TEL;TYPE=WORK:+61 712341234 222TEL;TYPE=CELL:+61 123123123 223EMAIL:test@domain.com 224EMAIL;TYPE=HOME:user@seconddomain.com 225NOTE:Comments\nMore comments\nAnd just a couple more 226BDAY:2008-10-18 227N:Lastname;Firstname;;; 228ADR;TYPE=WORK:;;Company\nUnit 2\, 123 St Freds Tce;Golden 229 Hills;Qld;4009;Australia 230ORG:Company 231END:VCARD 232