Subversion Repositories Applications.papyrus

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
448 ddelon 1
ezmlm-php 2.0
2
Nov 13, 2002
3
http://www.unixpimps.org/software/ezmlm-php
4
 
5
ezmlm-php is a group of files written in php that allow you to fetch messages
6
from a ezmlm mailing list archive via a web page. It is fully customizable so
7
it can fit into an existing layout design very well, it is also self contained
8
so that you can run it with no existing site setup.
9
 
10
The new version has been rewritten from the ground up to exclude all external
11
dependancies (except one which comes with the source, see makehash later on)
12
and now implements RFC2045 MIME parsing in pure PHP.
13
The system is now also object based to allow greater flexibility within the
14
code itself, it also makes the code much more managable and readable.
15
 
16
 
17
INSTALLATION
18
~~~~~~~~~~~~
19
*NOTE*
20
The installation of ezmlm-php now requires access to a compiler to build the
21
included makehash program. See the MAKEHASH section at the end.
22
 
23
1. Unpack the tarball and copy the files to your webroot in the directory you
24
   want the list to be accessed from. For example using /home/www/mailinglist
25
 
26
   gzip -d ezmlm-php-2.0.tar.gz
27
   tar xvf ezmlm-php.2.0.tar
28
   cd /home/www/mailinglist
29
   cp ~/ezmlm-php-2.0/*.php .
30
   cp ~/ezmlm-php-2.0/*.def .
31
 
32
2. Build the included makehash program.
33
 
34
   cd ~/ezmlm-php-2.0
35
   gzip -d makehash.tar.gz
36
   tar xvf makehash.tar
37
   cd makehash
38
   make
39
 
40
   If you do not have compiler access check the binaries directory in the
41
   makehash.tar file as there are some common binaries there. If you build
42
   makehash on a new platform please feel free to submit the binary for
43
   inclusion.
44
 
45
3. Move the resulting binary to your webroot.
46
 
47
4. Edit ezmlm.php and change the user configurable options. Search for
48
   USER-CONFIG to find where to edit. See CONFIGURATION below.
49
 
50
5. Access www.yoursite.com/mailinglist to test the installation.
51
 
52
 
53
CONFIGURATION
54
~~~~~~~~~~~~~
55
This section will explain each variable. If you used the last version most
56
of these are the exact same.
57
 
58
Name		Meaning
59
~~~~~~~~~~	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
60
listdir		This variable should be pointed at the root of the ezmlm
61
		archive. For instance /usr/home/lists/ragga-jungle
62
 
63
listname	The name of the list (everything before the @)
64
 
65
listdomain	The domain name of the list
66
 
67
tempdir		Where to store the cache files. /var/tmp should be fine
68
		for most installations. /tmp is another choice.
69
 
70
sendheaders	If set to TRUE then ezmlm will generate the nessesary
71
		page headers. If set to FALSE your header file needs to
72
		generate them. See 'includebefore'
73
 
74
sendbody	If set to TRUE then ezmlm will generate the <body></body>
75
		tags.
76
 
77
sendfooters	If set to TRUE then ezmlm will generate the tage needed
78
		to finish the document. If set to FALSE your footer file
79
		needs to generate them. See 'includeafter'
80
 
81
includebefore	This is a file that will be included before ezmlm-php
82
		generates any output. You can have ezmlm-php generate
83
		the nessesary headers (sendheaders = TRUE) and still
84
		include a file of your own. The file is included by the
85
		include_once function.
86
 
87
includeafter	This is the exact same as includebefore except the file
88
		is included after ezmlm-php has sent all of it's data.
89
 
90
href		This is a string to prepend to the path whenever an
91
		<a href= tag is generated. This option was added to fix
92
		the problem of using a <base href= tag.
93
 
94
prefertype	This is the mime type that you wish to send if the
95
		current message is a multipart message. If this type isn't
96
		found it defaults to the first part.
97
 		Some examples are: text/html, text/plain, etc...
98
 
99
showheaders	This is an array of the headers to show. You can add or
100
		remove any valid RFC822 header you wish to this array.
101
		Some examples: X-Mailer, Message-ID
102
		(This is case-insensitive)
103
 
104
msgtemplate	This is a file to use as the message template, if blank
105
		the internal one is used. See the file MSGTEMPLATE for
106
		more information as it is to much to describe here.
107
 
108
tablescolours	This is an array of colour hex triplets for use when a
109
		table is generated. For each row that is generated the
110
		next colour is used, just use a single element if you
111
		don't want alternating colours.
112
		(Yes there is a U in colours, the software was written
113
		in Canada ;)
114
 
115
thread_subjlen	This is an integer that tells the software how many
116
		characters to allow the subjects when displayed in
117
		threads or on the info page. This is useful if you
118
		want to limit subjects to a certain length so that no
119
		line wrapping occurs.
120
 
121
 
122
MAKEHASH
123
~~~~~~~~
124
So what is this little binary you need to build? Simply put it is a small
125
little C program to generate the nessesary ezmlm-idx hashes for cross
126
referencing authors. In the last version this was done by recursivley doing
127
a grep on the /authors directory which isn't very efficient when the list
128
subscriber base grows above 1000 or so. This program computes the hash by
129
using the same algorithim the software does and speeds things up a lot.
130
 
131
-FIN-