6.0.0-git
2024-04-30

Diff for ImpImapConfig between 9 and 10

+ The imap_server parameter in IMP 4.1+'s {{servers.php}} file



##red|//**As mentioned in ther {{servers.php}} file, the Horde Project does not officialy support this parameter.  Use at your own risk.**//##



##red|**This documentation is also valid for [http://www.horde.org/mimp/ MIMP 1.0].**##



----



+++ Why use this parameter?



# The IMAP_Client:: library does not currently support logins for your IMAP authentication type (i.e. kerberos, NTLM).

# You **both** know what you are doing **and** you want to save a single login to the server at the beginning of a session.  (i.e. you are implementing IMP in a large environment, know what these IMAP configuration items are, and want to save a bit of bandwith/CPU cycles for each session by eliminating a server access needed to obtain the IMAP server information).  Quite honestly, if the auto-detect method of IMP - the default - correctly detects the IMAP server information, you really shouldn't be messing with this configuration option.



----



+++ Why is IMAP_Client needed at all?  Or, why don't you guys just use the c-client library to get this information?



Simple.  The php ``imap_*()`` functions don't provide a way for us to get this information.  //Trust us//, we would gladly use those functions if they existed.



----



+++ What is the format of the 'namespace' parameter?



Please see the documentation for the {{namespace}} function in {{imp/lib/IMAP/Client.php}}.  Or you can try going to our [http://dev.horde.org/api/imp/IMP/IMP_IMAPClient.html#methodnamespace API Documentation]. (No guarantees this link will remain correct).



----



+++ What does an example 'imap_server' entry in {{servers.php}} look like for IMP?



Thanks for asking.  It looks like the following (this is an example of a dovecot-1.0 IMAP server):



<code>

'imap_config' => array(

    'children' => true,

    'namespace' => array(

        '' => array(

            'name' => '',

            'delimiter' => '.',

            'type' => 'personal',

            'hidden' => false

        ),

        '#foo.' => array(

            'name' => '#foo.',

            'delimiter' => '.',

            'type' => 'shared',

            'hidden' => false

        )

    ),

    'search_charset' => array(

        'UTF-8' => true

    )

)

</code>

'imap_config' => array(

    'children' => false,

    'namespace' => array(

        'INBOX/' => array(

            'name' => 'INBOX/',

            'delimiter' => '/',

            'type' => 'personal',

            'hidden' => false,

        ),

    ),

    'search_charset' =>

        'UTF-8' => true

    )

)

</code>



Obviously, //don't copy this code directly into servers.php and expect it to work!//  This is merely an example.  Your IMAP server configuration is almost certainly different.  **Note:** MIMP does not require the 'search_charset' value.