Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.10.x will end 8 November 2021 (12 months).
  • Bug fixes for security issues in 3.10.x will end 9 May 2022 (18 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.

Differences Between: [Versions 310 and 311] [Versions 310 and 400] [Versions 310 and 401] [Versions 310 and 402] [Versions 310 and 403]

Copyright 2012-2017 Horde LLC (http://www.horde.org/) See the enclosed file LICENSE for license information (LGPL). If you did not receive this file, see http://www.horde.org/licenses/lgpl21.

Copyright: 2012-2017 Horde LLC
License: http://www.horde.org/licenses/lgpl21 LGPL 2.1
File Size: 373 lines (12 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class

Horde_Imap_Client_Socket_ClientSort:: (7 methods):
  __construct()
  clientSort()
  threadOrderedSubject()
  _clientSortProcess()
  _getSentDates()
  _stableAsort()
  _sortString()


Class: Horde_Imap_Client_Socket_ClientSort  - X-Ref

Client sorting methods for the Socket driver.

NOTE: This class is NOT intended to be accessed outside of a Base object.
There is NO guarantees that the API of this class will not change across
versions.

__construct(Horde_Imap_Client_Socket $socket)   X-Ref
Constructor.

param: Horde_Imap_Client_Socket $socket  Socket object.

clientSort($res, $opts)   X-Ref
Sort search results client side if the server does not support the SORT
IMAP extension (RFC 5256).

param: Horde_Imap_Client_Ids $res  The search results.
param: array $opts                 The options to _search().
return: array  The sort results.

threadOrderedSubject(Horde_Imap_Client_Fetch_Results $data,$uids)   X-Ref
If server does not support the THREAD IMAP extension (RFC 5256), do
ORDEREDSUBJECT threading on the client side.

param: Horde_Imap_Client_Fetch_Results $data  Fetch results.
param: boolean $uids                          Are IDs UIDs?
return: array  The thread sort results.

_clientSortProcess($res, $fetch_res, $sort)   X-Ref
No description

_getSentDates(Horde_Imap_Client_Fetch_Results $data,$ids, $internal = false)   X-Ref
Get the sent dates for purposes of SORT/THREAD sorting under RFC 5256
[2.2].

param: Horde_Imap_Client_Fetch_Results $data  Data returned from
param: array $ids                             The IDs to process.
param: boolean $internal                      Only use internal date?
return: array  A mapping of IDs -> UNIX timestamps.

_stableAsort(&$a)   X-Ref
Stable asort() function.

PHP's asort() (BWT) is not a stable sort - identical values have no
guarantee of key order. Use Schwartzian Transform instead. See:
http://notmysock.org/blog/php/schwartzian-transform.html

param: array &$a  Array to sort.

_sortString(&$sorted)   X-Ref
Sort an array of strings based on current locale.

param: array &$sorted  Array of strings.