Penguin

Differences between version 5 and predecessor to the previous major change of IMP.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 5 Last edited on Thursday, August 5, 2004 12:20:28 pm by AristotlePagaltzis Revert
Older page: version 3 Last edited on Tuesday, October 14, 2003 5:49:06 pm by CraigBox Revert
@@ -1,36 +1,45 @@
 IMP is the Internet Messaging Program. It is written in [PHP] and provides WebMail access to [IMAP] and [POP3] accounts. Built on the [Horde] framework. 
  
-!!Notes 
+!! Notes 
  
-!Using multiple servers in imp  
+! Using multiple servers in [IMP]  
  
-Based on vhost, you can log into multiple servers.. flesh me out, but basically edit the array in /etc/imp3/servers.conf 
+AddToMe: you can log into multiple servers based on vhost: edit the array in <tt> /etc/imp3/servers.conf</tt>  
  
-!Adding a prefix based on the domain 
+! Adding a prefix based on the domain 
  
-Set  
- $conf[ ['hooks'][ ['vinfo'] = 'imp_get_vinfo'; 
+Set <tt> $conf~ ['hooks']~ ['vinfo'] = 'imp_get_vinfo';</tt> and create a function like so (__note:__ new syntax for 3.2.2)  
  
-And create a function like so (NOTE: new syntax for 3.2.2
+<verbatim>  
+if (!function_exists('imp_get_vinfo')) {  
+ function imp_get_vinfo ($type = 'username' ) {  
+ global $conf, $imp;  
  
- if (!function_exists ('imp _get_vinfo ')) {  
- function imp_get_vinfo ( $type = 'username ') {  
- global $conf, $imp
+ $vdomain = getenv ('HTTP _HOST ');  
+ $vdomain = preg_replace( '|^webmail\.|i ', '', $vdomain );  
+ $vdomain = strtolower( $vdomain)
  
- $vdomain = getenv( 'HTTP_HOST ');  
- $vdomain = preg _replace( '|^webmail\.|i ', '', $vdomain);  
- $vdomain = strtolower( $vdomain); 
+ if ( $type = = 'username ') {  
+ return strtolower( $_SESSION[[ 'imp '][[ 'user '] . '@' . $vdomain);  
+ } elseif ( $type == "vdomain") {  
+ return $vdomain;  
+ } else {  
+ return new PEAR_Error('invalid type: ' . $type );  
+ }  
+ }  
+}  
+</verbatim>  
  
- if ($type == 'username') {  
- return strtolower($_SESSION[['imp'][['user'] . '@' . $vdomain);  
- } elseif ($type == "vdomain") {  
- return $vdomain;  
- } else {  
- return new PEAR_Error('invalid type: ' . $type);  
- }  
- }  
- }  
-  
- This syntax is for Metanet Mail, where you log into [Cyrus] as user@domain.tld. It will remove webmail. from the vhost you connected from, and offer @the.rest.of.it as the suffix for the login, so you only have to enter ' user' into the webmail box. 
+This syntax is for MetaNet Mail, where you log into [Cyrus] as <tt> user@domain.tld</tt> . It will remove <tt> webmail.</tt> from the vhost you connected from, and offer <tt> @the.rest.of.it</tt> as the suffix for the login, so you only have to enter <tt> user</tt> into the webmail box. 
  
 Smarter people can make it domain by domain specific by editing the function. 
+  
+! Errors using the alpha version of IMP/Horde  
+  
+You need to upgrade your version of [PHP] if you're getting errors such as  
+  
+<verbatim>  
+Fatal error: Call to undefined function: is_a() in /var/www/webmail2/horde/lib/base.php on line 35  
+</verbatim>  
+  
+<tt>is_a()</tt> was introduced in [PHP] 4.2.0. You have to either revert to a really old version of [PEAR] (does [PEAR] even support pre-4.2.0 [PHP]?) or upgrade your [PHP] installation.