Merge branch '2015.11' into 2015.11-develop
[tine20] / scripts / testimapserver.php
1 <?php
2 /**
3  * Tine 2.0 IMAP server test script
4  * - This script is doing some tests against your imap server.
5  * - Copy this to your tine20 root dir and open it in your browser.
6  *
7  * @package     HelperScripts
8  * @subpackage  Felamimail
9  * @license     http://www.gnu.org/licenses/agpl.html AGPL Version 3
10  * @author      Philipp Schuele <p.schuele@metaways.de>
11  * @copyright   Copyright (c) 2009 Metaways Infosystems GmbH (http://www.metaways.de)
12  * @version     $Id$
13  * 
14  * @todo        check acl
15  * @todo        check subscriptions
16  * @todo        check quota
17  * @todo        try to delete/move/append messages?
18  */
19
20 die("<center>THIS SCRIPT IS DISABLED FOR SECURITY REASONS.<br><br><b>PLEASE COMMENT OUT LINE ". __LINE__ ." TO ENABLE THIS SCRIPT</b>.</center>");
21
22 /*********** IMAP config ***********/
23
24 $imapConfig =  array (
25     'host' => 'xxx',
26     'user' => 'xxx',
27     'password' => 'xxx',
28     'port' => 143,
29     'ssl' => 'tls',
30 );
31
32 $subfoldersOf = 'INBOX';
33
34 /*********** environment ***********/
35
36 set_include_path('.' . PATH_SEPARATOR . dirname(__FILE__) . '/library' . PATH_SEPARATOR . get_include_path());
37
38 require_once 'Zend/Loader/Autoloader.php';
39 $autoloader = Zend_Loader_Autoloader::getInstance();
40 $autoloader->setFallbackAutoloader(true);
41
42 /*********** start ***********/
43
44 $startTime = microtime(true);
45
46 print "<pre>";
47
48 print "<h1><span style='color:red;'>ATTENTION: THIS OUTPUT CONTAINS YOUR USERNAME AND PASSWORD!!!</span></h1>";
49
50 /*********** login and select INBOX ***********/
51
52 $elapsedTime = microtime(true) - $startTime;
53 print "<h1> $elapsedTime :: Login with config: </h1>" . print_r($imapConfig, TRUE);
54
55 $imapBackend = new Felamimail_Backend_Imap($imapConfig);
56
57 /*********** show capabilities and namespace **/
58
59 $capabilities = $imapBackend->getCapabilityAndNamespace();
60
61 $elapsedTime = microtime(true) - $startTime;
62 print "<h1> $elapsedTime :: get capabilities + namespace: </h1>" . print_r($capabilities, TRUE);
63
64 /*********** get all folders *****************/
65
66 $folders = $imapBackend->getFolders();
67
68 $elapsedTime = microtime(true) - $startTime;
69 print "<h1> $elapsedTime :: get folders: </h1>" . print_r($folders, TRUE);
70
71 /*********** get subfolders *****************/
72
73 $delimiter = $folders[$subfoldersOf]['delimiter'];
74 $subfolders = $imapBackend->getFolders($subfoldersOf . $delimiter, '%');
75
76 $elapsedTime = microtime(true) - $startTime;
77 print "<h1> $elapsedTime :: get subfolders of $subfoldersOf : </h1>" . print_r($subfolders, TRUE);
78
79 /*********** logout ************/
80
81 $elapsedTime = microtime(true) - $startTime;
82 print "<h1> $elapsedTime :: Logout</h1>";
83
84 print "</pre>";