[Tickets #11626] Re: ActiveSync : auto detection of special folders (trash, sent, etc...) and hierarchy fails

bugs at horde.org bugs at horde.org
Mon Nov 5 19:16:35 UTC 2012


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: http://bugs.horde.org/ticket/11626
------------------------------------------------------------------------------
  Ticket             | 11626
  Updated By         | Michael Rubinsky <mrubinsk at horde.org>
  Summary            | ActiveSync : auto detection of special folders (trash,
                     | sent, etc...) and hierarchy fails
  Queue              | Synchronization
  Version            | Git master
  Type               | Bug
  State              | Assigned
  Priority           | 2. Medium
  Milestone          |
  Patch              |
  Owners             | Michael Rubinsky
------------------------------------------------------------------------------


Michael Rubinsky <mrubinsk at horde.org> (2012-11-05 19:16) wrote:

> Ok, finally, I found a cleaner fix for the hierarchy problem.
>
> Juste replace line 1827 by :
>
> $parts = explode($f['d'], $sid);

So, in your case $f['label'] doesn't contain the full name with the  
delimiters? What *does* it contain?


>
> and forget the block
>
> if (!empty($fl["INBOX." . implode($f['d'], $parts)])) {
>     $folder->parentid = "INBOX." . implode($f['d'], $parts);
>     $folder->displayname = $displayname;
> }
>
> Ryu
>
>> Ouch ! I forgot a change...
>>
>> I replaced the "split" function, line 1827 (which seems to return an
>> empty array) by "explode". Futhermore, split is deprecated since php
>> 5.3.0
>>
>> Ryu
>>
>>> Ok, I think I have the solution...
>>>
>>> For the first problem => bad type for special folders
>>>
>>> in Horde Framework / Core/ActiveSync/Driver.php, ~ line 1862 :
>>> replace mailbox property from "basename" to "value" for each special
>>> folders.
>>>
>>> INBOX prefix was missing with basename...
>>>
>>> With this fix, types are ok in ActiveSync
>>>
>>> ============================================
>>>
>>> Next, for the hierarchy problem.
>>> Always the same file (Core/ActiveSync/Driver.php), just above, ~ line 1829
>>>
>>> Add INBOX prefix
>>>
>>> if (!empty($fl["INBOX." . implode($f['d'], $parts)])) {
>>>     $folder->parentid = "INBOX." . implode($f['d'], $parts);
>>>     $folder->displayname = $displayname;
>>> }
>>>
>>> ============================================
>>>
>>> I don't know if it is the good fix... Maybe there is a cleaner
>>> solution ! But this works...
>>>
>>> Ryu
>>
>






More information about the bugs mailing list