[kronolith] Problem with import of meeting invitation to own calendar

Alexander Bruckner bruckner at universaledition.com
Wed Jan 16 10:53:59 UTC 2008


Hi,

I am testing these versions:

- Kronolith: H3 (2.2-RC1)
- Dimp: H3 (1.0-RC1)
- Horde: 3.2-RC1
- Imp: H3 (4.2-RC1)

with PHP 4.4.4-8+etch4.

When userA creates a calendar entry and sends an invitation to userB,  
userB cannot add the entry to his own calendar. The error message is:
"There was an error importing the event: Already Exists"

The problem seems to be that userA has already added the event to his  
calendar. When userB tries to import the event (function  
_kronolith_import in lib/api.php) an error is raised by the function  
getByUID in lib/Driver/sql.php, which finds an event in the database  
with the given uid (since userA has already added the event).

I have already tried to extend the getByUID function by passing the  
calendar_id so that an event is only returned, if uid and calendar_id  
already exist:

lib/api.php:
$existing_event = &$kronolith_driver->getByUID($uid,$calendar);

lib/Driver/sql.php:
$query = 'SELECT event_id, event_uid, calendar_id, event_description,' \
.
             ' event_location, event_private, event_status, event_attendees,' .
             ' event_keywords, event_title, event_category,  
event_recurcount,' .
             ' event_recurtype, event_recurenddate, event_recurinterval,' .
             ' event_recurdays, event_start, event_end, event_alarm,' .
             ' event_modified, event_exceptions, event_creator_id' .
             ' FROM ' . $this->_params['table'] . ' WHERE event_uid = ?' .
             ' AND calendar_id = ?';
         $values = array($uid,$calendar);

This seems to solve the import problem for userB, but now syncing the  
calendar with funambol doesn't work anymore, as the getByUID function  
is used in other places to with only the uid-parameter.

Is there a solution to this ?

thanks,
Alexander Bruckner

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.


More information about the kronolith mailing list