Penguin

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

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

Newer page: version 7 Last edited on Friday, March 4, 2005 11:33:52 am by JohnMcPherson
Older page: version 3 Last edited on Tuesday, October 14, 2003 5:49:06 pm by CraigBox Revert
@@ -1,36 +1,46 @@
 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  
  
-!Using multiple servers in imp  
+!! Notes  
  
-Based on vhost, you can log into multiple servers.. flesh me out, but basically edit the array in /etc/imp3/servers.conf  
+! Using multiple servers in [IMP]  
  
-!Adding a prefix based on the domain  
+AddToMe: you can log into multiple servers based on vhost: edit the array in <tt>/etc/imp3/servers.conf</tt>  
  
-Set  
- $conf[['hooks'][['vinfo'] = 'imp_get_vinfo';  
+! Adding a prefix based on the domain  
  
-And create a function like so (NOTE : new syntax for 3.2.2) 
+Set <tt>$conf~['hooks']~['vinfo'] = 'imp_get_vinfo';</tt> and create a function like so (__note :__ new syntax for 3.2.2) 
  
- if (!function_exists('imp_get_vinfo')) {  
- function imp_get_vinfo ($type = 'username') {  
- global $conf, $imp; 
+<verbatim>  
+ 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);  
- }  
- }  
-
+ if ($type == 'username') {  
+ return strtolower($_SESSION['imp']['user'] . '@' . $vdomain);  
+ } elseif ($type == "vdomain") {  
+ return $vdomain;  
+ } else {  
+ return new PEAR_Error('invalid type: ' . $type);  
+ }  
+ }  
+}  
+</verbatim>  
  
-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.