diff options
| author | cotton | 1998-11-23 10:07:19 +0000 |
|---|---|---|
| committer | cotton | 1998-11-23 10:07:19 +0000 |
| commit | cebb04b4f23f9915e750d16a71b7fc2d24672173 (patch) | |
| tree | f95299ff2d090c3b3578542beb65dfead4c86a7a | |
| parent | 3571c21b68ed73b24ac344f0600246dedd98e61a (diff) | |
| download | mailman-cebb04b4f23f9915e750d16a71b7fc2d24672173.tar.gz mailman-cebb04b4f23f9915e750d16a71b7fc2d24672173.tar.zst mailman-cebb04b4f23f9915e750d16a71b7fc2d24672173.zip | |
This is a simple change that limits the extremely expensive
calculation of html user lists to the roster cgi program.
HTMLFormatter: added a .GetAllReplacements() method that does the same
thing as GetStandardRepplacements() but also calculates all the html
for users lists. Removed the calculation of all the html for the user
lists from GetStandardReplacements().
Cgi/roster.py replaced call of GetStandardReplacements() with
GetAllReplacements().
scott
| -rw-r--r-- | Mailman/Cgi/roster.py | 10 | ||||
| -rw-r--r-- | Mailman/HTMLFormatter.py | 14 |
2 files changed, 19 insertions, 5 deletions
diff --git a/Mailman/Cgi/roster.py b/Mailman/Cgi/roster.py index fc408c47c..28ca8e059 100644 --- a/Mailman/Cgi/roster.py +++ b/Mailman/Cgi/roster.py @@ -74,8 +74,7 @@ def main(): print doc.Format() sys.exit(0) - replacements = list.GetStandardReplacements() - + replacements = list.GetAllReplacements() doc.AddItem(list.ParseTags('roster.html', replacements)) print doc.Format() @@ -109,3 +108,10 @@ def error_page_doc(errmsg, *args): doc.AddItem(htmlformat.Header(2, "Error")) doc.AddItem(htmlformat.Bold(errmsg % args)) return doc + + + + + + + diff --git a/Mailman/HTMLFormatter.py b/Mailman/HTMLFormatter.py index 69e1d610c..3635aed7c 100644 --- a/Mailman/HTMLFormatter.py +++ b/Mailman/HTMLFormatter.py @@ -353,12 +353,10 @@ class HTMLFormatter: '<mm-form-end>' : self.FormatFormEnd(), '<mm-archive>' : self.FormatArchiveAnchor(), '</mm-archive>' : '</a>', - '<mm-regular-users>' : self.FormatUsers(0), '<mm-list-subscription-msg>' : self.FormatSubscriptionMsg(), '<mm-restricted-list-message>' : \ self.RestrictedListMessage('current archive', self.archive_private), - '<mm-digest-users>' : self.FormatUsers(1), '<mm-num-reg-users>' : `member_len`, '<mm-num-digesters>' : `dmember_len`, '<mm-num-members>' : (`member_len + dmember_len`), @@ -367,7 +365,17 @@ class HTMLFormatter: '<mm-owner>' : self.GetAdminEmail(), '<mm-reminder>' : self.FormatReminder(), } - + + def GetAllReplacements(self): + """ + returns standard replaces plus formatted user lists in + a dict just like GetStandardReplacements. + """ + d = self.GetStandardReplacements() + d.update({"<mm-regular-users>": self.FormatUsers(0), + "<mm-digest-users>": self.FormatUsers(1)}) + return d + def InitTemplates(self): def ExtensionFilter(item): return item[-5:] == '.html' |
