Summary | iCalendar can't parse GEO-vCard-Tags |
Queue | Synchronization |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | jan (at) horde (dot) org |
Requester | horde (at) ssn (dot) at |
Created | 04/03/2008 (6310 days ago) |
Due | |
Updated | 08/20/2008 (6171 days ago) |
Assigned | 04/04/2008 (6309 days ago) |
Resolved | 08/20/2008 (6171 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
http://cvs.horde.org/diff.php/framework/iCalendar/iCalendar.php?r1=1.57.4.65&r2=1.57.4.66&ty=u
http://cvs.horde.org/co.php/framework/iCalendar/tests/geo.phpt?r=1.1.2.1
http://cvs.horde.org/diff.php/horde/docs/CHANGES?r1=1.515.2.445&r2=1.515.2.446&ty=u
State ⇒ Resolved
completely different than vCard 3.0.
http://cvs.horde.org/diff.php/framework/iCalendar/iCalendar.php?r1=1.145&r2=1.146&ty=u
http://cvs.horde.org/co.php/framework/iCalendar/tests/geo.phpt?r=1.1
http://cvs.horde.org/diff.php/horde/docs/CHANGES?r1=1.1143&r2=1.1144&ty=u
New Attachment: Nokia_GEO_E90entry.vcf
This vCard is a bit long, but it has all fields the N90 offers filled.
The GEO-Tags are not vCard-RFC-compliant, as the are in wrong order
and with the wrong delimiter.
Additionally, the N90 doesn't understand a correctly formattet GEO-Tag
when sending it from the PC to the E90.
What we should do in any case is taking care of a wrong formatted
GEO-Tag in iCalendar.php. In case of a wrong format (as in my case)
the explode-function will return an array with just one element, so
'longitude' => floatval($floats[1]));
will fail, because there is no $floats[1].
State ⇒ Assigned
Assigned to Jan Schneider
Milestone ⇒ 3.2
The GEO-Implementation of Nokia seems to be buggy as they send
longitude before latitude using a comma as separator - the RFC says
LAT;LON...
Perhaps a bug to address in SyncML/Device/Nokia.php...
regards
Lukas
Milestone ⇒
State ⇒ Unconfirmed
Patch ⇒ No
Queue ⇒ Synchronization
Summary ⇒ iCalendar can't parse GEO-vCard-Tags
Type ⇒ Bug
Priority ⇒ 1. Low
correctly.
It expects a semicolon between latitude and longitude, but there is a comma.
So in iCalendar.php i suggest in line 724 (v1.31 2008-01-24):
if (!strpos($value, ';')) {
$floats = explode(',', $value);
} else {
$floats = explode(';', $value);
}
regards
Lukas