summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Updated location of Chris Kolar's documentation.bwarsaw2001-08-292-5/+5
|
* GetConfigInfo(): Added missing </ul> tag. Caught by Daniel Buchmann.bwarsaw2001-08-291-0/+1
|
* decorate(): String interpolation can throw either a ValueError /or/ abwarsaw2001-08-291-2/+2
| | | | | | | | TypeError, but only ValueError was being caught. This means stray %'s can still crash Mailman. Also, when interpolation fails, instead of using [INVALID FOOTER], return the raw footer text template.
* Add a namebwarsaw2001-08-293-3/+4
|
* setMemberOption(): Stupid typo preventing users from setting anybwarsaw2001-08-291-3/+3
| | | | options. Caught by Ben Gertzfield.
* distclean: Remove the generated mailman script (courtesy of Benbwarsaw2001-08-291-1/+2
| | | | Gertzfield).
* change_options(): Give some feedback on who's been removed.bwarsaw2001-08-291-0/+6
|
* GetMailmanFooter(): Don't hyperlink each individual list owner with abwarsaw2001-08-291-8/+5
| | | | | | | mailto: to their personal email address. Instead, hyperlink the lot of them with a mailto: to the list's -owner address. That let's us do a spam detect on the message before forwarding on the owners.
* KNOWN_SPAMMERS: Move this here from Mailman/Handlers/SpamDetect.pybwarsaw2001-08-291-0/+17
|
* Move KNOWN_SPAMMERS out of this file and into Defaults.py.in so it canbwarsaw2001-08-291-17/+9
| | | | | | | be properly configured in mm_cfg.py. process(): Don't support the header == None semantics (it was broken anyway). We may have to add this back later.
* _dispose(): Factor out common code paths to _toadmins().bwarsaw2001-08-291-25/+36
| | | | | | | | | | | | | | | | _toadmins(): Run the message through SpamDetect to filter out known spam patterns in messages to the list owners/moderators. Log such detected spam to logs/spam and discard the message. Also, for every message to a list's -owner or -admin address, we always send it on to the list owners and moderators, even though the moderators can't access the admin pages (only the admindb pages). Note 1: this makes the `tomoderators' key in the message metadata obsolete. Note 2: this may not be the Right Thing To Do.
* run(): Add a note about a minor bogosity in the calls tobwarsaw2001-08-291-1/+3
| | | | _doperiodic().
* checkpointjensv2001-08-281-96/+141
|
* checkpointjensv2001-08-241-13/+15
|
* checkpointjensv2001-08-211-34/+55
|
* addlang is retired (noticed by Ron Jarrell).bwarsaw2001-08-201-1/+1
|
* Change the semantics for creating a list in a virtual domain differentbwarsaw2001-08-201-44/+40
| | | | | | | | | | | | | | | than the default. Now, the syntax mylist@mydom.ain:www.mydom.ain is no longer supported; to set a different email host_name from the web_page_url host, you must first set up VIRTUAL_HOSTS, in which mydom.ain will be looked up. main(): No longer split the domain argument on `:' Calculate host_name and web_page_url as described above. Also, we're now always responsible for saving the list, so do that, then unlock the list and perform the rest of the task outside the try/finally.
* process_request(): Don't use WebAuthenticate() here because that willbwarsaw2001-08-201-5/+7
| | | | | | | allow deletion of list by anybody with a valid cookie authentication. We /want/ to force the admin to enter the password explicitly, as an extra confirmation step, so use Authenticate() instead.
* process_request(): After the list is created, set the web_page_url andbwarsaw2001-08-201-45/+51
| | | | | | | | | | | | host_name attributes based on the calculated values. web_page_url's host name comes from get_domain() interpolated into DEFAULT_URL_PATTERN, while host_name comes from a lookup in the VIRTUAL_HOSTS table, defaulting to get_domain() if not found. Also, we're now responsible for saving the list, and once we've done so, we can unlock it and do the rest of the task (which doesn't require the lock, so can be done outside the try/finally).
* admin_overview(): Use get_domain() instead of hardcodedbwarsaw2001-08-201-2/+11
| | | | | | | | | DEFAULT_HOST_NAME to get the hostname. Also, do the same kind of virtual host filtering for the admin overview as we do in the listinfo overview. This more clearly separates the virtual domains (there perhaps should be a site overview).
* ScriptURL(): Instead of using DEFAULT_URL directly, usebwarsaw2001-08-201-2/+2
| | | | | | | | | | DEFAULT_URL_PATTERN and interpolate in the calculated web-request based host name (via get_domain()). This should improve vhost support. get_site_email(): Calculate hostname by looking up get_domain() results in VIRTUAL_HOSTS, defaulting to get_domain() if no vhost information was set.
* Create(): Let any exceptions in the os.makedirs() call percolate up.bwarsaw2001-08-201-5/+2
| | | | | | | I.e. don't catch and transform OSErrors to MMUnknownListErrors. Also, don't do a Save() here. The caller is now responsible for saving the list.
* Some improvements for virtual host support.bwarsaw2001-08-201-13/+38
| | | | | | | | | | | | | | | | | | | | | | | VIRTUAL_HOSTS is a dictionary mapping url base hostnames to email base hostnames. E.g. "mail.python.org" -> "python.org". When a new list is created, we attempt to ascertain the web host from the web request. We use that for web_page_url and then we look it up in VIRTUAL_HOSTS to find host_name. If not found, we use the same host for web_page_url and host_name. DEAFULT_EMAIL_HOST is now the preferred way to specify the default email host_name. It is set by configure to @FQDN@. DEFAULT_URL_HOST is now the preferred way to specify the default host for web_page_url. It is set by configure to @URL@. DEFAULT_URL_PATTERN is how to convert DEFAULT_URL_HOST to web_page_url. It must contain a single %s expansion. For backwards compatibility, DEFAULT_HOST_NAME = DEFAULT_EMAIL_HOST and DEFAULT_URL = DEFAULT_URL_PATTERN % DEFAULT_URL_HOST. Also, added another commented out MAILMAN_URL mirror.
* Couple of minor stylistic nits:bwarsaw2001-08-200-0/+0
| | | | | | | | | | - wrap to 70 characters - "Mailman" instead of "MailMan" - added ubiquitous Emacs turd - bumping to revision 2.0
* intermediatebwarsaw2001-08-201-4/+14
|
* Morsel.set(): Add optional argument `strict', defaulting to 1, whichbwarsaw2001-08-181-3/+4
| | | | | | | | | | | | | | controls whether reserved key checking is done. Cookie.__ParseString(): When calling Morsel.set(), set strict=0 so no reserved key checking will be done. This makes sense because normally, the input data is coming from the web and we should be liberal in what we accept here. E.g. if a browser is setting "Version=1" we shouldn't crap out on the whole cookie just because of that. We /do/ want to be more strict when we're setting individual keys programmatically (but that will never call __ParseString()).
* Creating the skeleton under messages/dejensv2001-08-182-0/+5841
|
* Japanese updates from Tokio Kikuchi.bwarsaw2001-08-186-29/+79
|
* Japanese updates from Tokio Kikuchi.bwarsaw2001-08-189-658/+578
|
* Readme file from Tokio Kikuchi.bwarsaw2001-08-180-0/+0
|
* intermediatebwarsaw2001-08-181-0/+67
|
* Generate misc/mailman.in -> misc/mailmanbwarsaw2001-08-172-5/+5
| | | | (instead of misc/S98mailman.in -> misc/S98mailman)
* S98mailman.in is renamed to mailman.inbwarsaw2001-08-172-23/+1
| | | | Update .cvsignore accordingly.
* Update installation instructions to describe chkconfig for OSes thatbwarsaw2001-08-171-5/+21
| | | | support this.
* Renamed from S98mailman.inbwarsaw2001-08-171-0/+48
|
* addlang is removed. Lists can enable individual language supportbwarsaw2001-08-171-122/+0
| | | | through the web.
* Updated Norwegian templates from Daniel Buchmannbwarsaw2001-08-176-26/+73
|
* Updated catalogsbwarsaw2001-08-179-5967/+10516
|
* Big5 binary catalog (with which there are still some problems)bwarsaw2001-08-171-0/+0
|
* .po.mo rule: Don't crap out if the msgfmt conversion failed. I'mbwarsaw2001-08-171-1/+1
| | | | | still having problems with the big5 catalog, but I don't have time to fix it. :(
* The usualbwarsaw2001-08-173-26/+296
|
* A bunch of new language champions.bwarsaw2001-08-171-22/+38
|
* Process(): When personalizing regular deliveries, set the To: headerbwarsaw2001-08-171-0/+13
| | | | to point at the recipient instead of the list.
* GetConfigInfo(): Rewrite the `personalize' details to describe the To:bwarsaw2001-08-171-10/+16
| | | | header munging.
* FormatSubscriptionMsg(): Use triple quoted strings instead ofbwarsaw2001-08-171-36/+25
| | | | multiline individual strings.
* Updated some instructions on how to get i18n working. Most notably,bwarsaw2001-08-171-37/+28
| | | | | | | | | | the addlang script is being removed since lists can now enable any site-available language thru-the-web. "ha" => "xx" Also update the list of supported languages and a list of promised languages.
* Improve instructions for initializing the aliases.db file, but usingbwarsaw2001-08-171-13/+17
| | | | bin/genaliases instead of touch.
* main(): When opening the DBFILE for locking, use the `w' flag so thatbwarsaw2001-08-171-1/+1
| | | | | | | we don't bomb out if the file doesn't exist yet. This lets us recommend bin/genaliases as the way to initialize things instead of `touch data/aliases.db' which seems to not work for some people.
* hold_for_approval(): dont_respond_to_post_requests =>bwarsaw2001-08-171-1/+1
| | | | respond_to_post_requests
* GetConfigInfo(): Typo. Also, say "list moderator" instead ofbwarsaw2001-08-171-4/+5
| | | | | "administrator". Add a VARHELP link to member_posting_only when describing "Restrict..." in the posters option