Magnus Hagander [Sun, 18 Aug 2013 15:21:07 +0000 (17:21 +0200)]
Include list of attachments in API results, not just a boolean
Cédric Villemain [Sat, 17 Aug 2013 16:09:15 +0000 (18:09 +0200)]
Fix typo
Cédric Villemain [Sat, 17 Aug 2013 16:08:06 +0000 (18:08 +0200)]
Properly recurse into multipart/sign:ed email parts
Previously we'd only recurse into multipart/mixed, but this would
miss PGP-signed attachments sent by some MUAs.
Magnus Hagander [Tue, 9 Jul 2013 16:40:55 +0000 (18:40 +0200)]
Add some basic API functionality
Ability to view latest messages on a list, and the contents of a thread
Magnus Hagander [Wed, 10 Jul 2013 11:58:17 +0000 (13:58 +0200)]
Revert patch to deal with special messageids
This was already reverted in production, but never made it back into the
repository.
Magnus Hagander [Wed, 10 Jul 2013 11:49:39 +0000 (13:49 +0200)]
Set last-modified header on messages
This should at least hint Google and others about how often our pages
really do change. Only set it for messages for now, since other pages
are excluded from cache anyway.
Last modified is set to the lasat modified entr in the database, we don't
make any provisions for changes in the templates or the rendering itself.
We might want to consider this in the future, maybe looking at the datestamp
of the template file and the view.py, or something along that line.
Implement simple If-Modified-Since checks, even though that's not going
to work anyway with the current version of Varnish - but hopefully it
will with the next one.
Magnus Hagander [Wed, 10 Jul 2013 10:59:54 +0000 (12:59 +0200)]
Remove unused local variables
Magnus Hagander [Tue, 9 Jul 2013 16:43:59 +0000 (18:43 +0200)]
Don't show attachments if the email they contain has been hidden
If we hide an email because it has a virus, it's kind of pointless to
still serve up the attachment. It's only reachable if you have the direct
URL, of course, but still.
Heikki Linnakangas [Mon, 17 Jun 2013 20:39:00 +0000 (22:39 +0200)]
Don't rewrite email addresses when used in archive links
Applying the "antispam" rewriting broke links to the archives, which is a
fairly common thing to do
Jonathan S. Katz [Mon, 17 Jun 2013 20:35:40 +0000 (22:35 +0200)]
Overflow the thread dropdown with a scrollbar for long threads
Dave Page [Sat, 15 Jun 2013 19:56:44 +0000 (20:56 +0100)]
Add a simple API for hiding messages containing viruses etc.
Magnus Hagander [Thu, 13 Jun 2013 13:17:44 +0000 (15:17 +0200)]
Add support for hiding messages in the archives
Messages are hidden by setting hiddenstatus to one of the values documented
in models.py. We don't currently have a foreign key tracking them, just the
numbers to make things easy.
A secondary table named message_hide_reasons with a log of operations is also
created, but this is maintained completely manually.
We should probably consider creating functions to do the hiding as well as a
nicer API, but that's for another commit.
Magnus Hagander [Sat, 13 Apr 2013 15:17:56 +0000 (17:17 +0200)]
Add missing import
Magnus Hagander [Sat, 13 Apr 2013 15:11:52 +0000 (17:11 +0200)]
Support for messageids that contain slashes
Requires changing the order of regexp matching to work, but other than
that it seems safe given the type of URLs we have now.
Magnus Hagander [Sat, 13 Apr 2013 15:10:02 +0000 (17:10 +0200)]
Don't generate mbox links for months where there is no mbox file
This can happen because some emails are in the wrong mbox file based
on their date, so just generating the mbox linked based on which dates
are present in the database can generate extra links.
Magnus Hagander [Sun, 10 Mar 2013 15:34:42 +0000 (16:34 +0100)]
Show the size of an attachment next to the description
Magnus Hagander [Wed, 6 Feb 2013 14:00:41 +0000 (15:00 +0100)]
Also don't index the list of messages
We index the contents. In particular since the URLs for the list of messages
are very dynamic, it turns into huge amounts of pages being indexed.
Magnus Hagander [Tue, 5 Feb 2013 18:47:14 +0000 (19:47 +0100)]
Add tag to flat message view to exclude from search engines
We don't want double hits for all pages, and we already get hits in the main
message page.
Magnus Hagander [Thu, 17 Jan 2013 09:47:47 +0000 (10:47 +0100)]
Majordomo requires https these days - update *both* URLs for it...
Magnus Hagander [Wed, 16 Jan 2013 15:19:17 +0000 (16:19 +0100)]
For error messages to work, you need to import certain default urls
Magnus Hagander [Wed, 16 Jan 2013 13:16:55 +0000 (14:16 +0100)]
Add error templates
Shows some nicer messages when there is a 404 or internal server error
Magnus Hagander [Mon, 14 Jan 2013 20:44:47 +0000 (21:44 +0100)]
Add spacing
Magnus Hagander [Mon, 14 Jan 2013 20:44:31 +0000 (21:44 +0100)]
Include Prev/Next links and date list at top of lists as well
Magnus Hagander [Mon, 14 Jan 2013 20:38:19 +0000 (21:38 +0100)]
Add links for next and previous per date on individual messages
This was a bit more complicated than before due to the fact that a single
thread can be on multiple lists, but this should solve the main problem.
Magnus Hagander [Mon, 14 Jan 2013 15:53:23 +0000 (16:53 +0100)]
Remove another instance of an extra tr tag
Magnus Hagander [Mon, 14 Jan 2013 14:33:40 +0000 (15:33 +0100)]
Remove print statements from old debugging
Magnus Hagander [Sat, 12 Jan 2013 18:18:17 +0000 (19:18 +0100)]
Don't include list name in all search hits
It makes no sense, since an email can exist on multiple lists, which
would show up as multiple hits. And it made the queries slower...
Magnus Hagander [Sat, 12 Jan 2013 17:59:21 +0000 (18:59 +0100)]
Support messageid-only searches
Magnus Hagander [Sat, 12 Jan 2013 17:34:16 +0000 (18:34 +0100)]
Make searches using the correct full text config
Magnus Hagander [Sat, 12 Jan 2013 17:28:00 +0000 (18:28 +0100)]
Set a gin fuzzy search limit on all searches
Magnus Hagander [Wed, 9 Jan 2013 17:06:57 +0000 (18:06 +0100)]
Turn any non-first text/plain parts into attachments
Instead of ignoring them because they're text/plain, only
ignore the first one and specifically the one matching our
footers. This should deal with the case when there is a textfile
attached that has no name.
Magnus Hagander [Sun, 6 Jan 2013 21:42:19 +0000 (22:42 +0100)]
Inline (some) images attached to emails
Inline images if they're <75kb in size. Also use a CSS rule to make
sure that they don't overflow the display.
Magnus Hagander [Sat, 5 Jan 2013 14:00:07 +0000 (15:00 +0100)]
Add tool to reparse a message
Read back the rawtxt stored in the database and reapply our parsing rules.
This is used when the code/rules for parsing a message has changed,
such as attachment or body parsing rules. Does not attempt to rethread
a message in any way.
Magnus Hagander [Sat, 5 Jan 2013 13:57:59 +0000 (14:57 +0100)]
Centralize varnish purging in the loader
Magnus Hagander [Sat, 5 Jan 2013 13:49:42 +0000 (14:49 +0100)]
Add support for in-place overwriting of a message
Magnus Hagander [Sat, 5 Jan 2013 13:49:19 +0000 (14:49 +0100)]
Fix comment
Magnus Hagander [Sat, 5 Jan 2013 13:11:57 +0000 (14:11 +0100)]
Properly parse attachments of type=text/plain, content-disposition=attachment
Previously we'd only parse them if they were given an explicit name,
which is not required - instead, they can have a filename...
Magnus Hagander [Mon, 31 Dec 2012 11:00:34 +0000 (12:00 +0100)]
Use archives google analytics
Use the google analytics code from the pg archives, not the one from the
main website, so we can keep separating them in the statistics.
Magnus Hagander [Fri, 28 Dec 2012 15:46:49 +0000 (16:46 +0100)]
Change URL for listgroups to be /list/group/<nn>/
Using the minus<nn> was really just a temporary thing, now fixed.
Magnus Hagander [Fri, 28 Dec 2012 14:44:19 +0000 (15:44 +0100)]
Expand the list of lists in a group when listing the group contents
Previously, we would show all list groups unexpanded, even if we knew
which group we were in.
Magnus Hagander [Fri, 28 Dec 2012 14:07:23 +0000 (15:07 +0100)]
Make all entries in dropdown black again
Magnus Hagander [Fri, 28 Dec 2012 14:03:41 +0000 (15:03 +0100)]
Ensure the archives.css stylesheet is loaded last
This is to make sure it overrides whatever defaults come from the others.
Fixes the styling of the dropdown box that was broken when styles were moved
from the page into the stylesheet.
Magnus Hagander [Fri, 28 Dec 2012 13:59:26 +0000 (14:59 +0100)]
Redirect messageid urls with slashes in them
Instead of showing an error, redirect the user back to the correct URL.
These should never be linked, but can show up if you navigate via a 404
page, as shown by Jonathan Katz.
Magnus Hagander [Fri, 28 Dec 2012 13:47:10 +0000 (14:47 +0100)]
Trap invalid dates, showing a better error message
Magnus Hagander [Thu, 27 Dec 2012 18:15:06 +0000 (19:15 +0100)]
Bring back the search box.
Magnus Hagander [Thu, 27 Dec 2012 17:51:20 +0000 (18:51 +0100)]
Remove test file not used in a long time...
Magnus Hagander [Wed, 26 Dec 2012 21:21:17 +0000 (22:21 +0100)]
Remove duplicate table
We already had a table called legacymap...
Magnus Hagander [Wed, 26 Dec 2012 20:54:37 +0000 (21:54 +0100)]
Do HTML de-escaping on the messageids
Magnus Hagander [Wed, 26 Dec 2012 20:46:16 +0000 (21:46 +0100)]
Quite messageids in legacy load
Turns out some emails have semicolons in their message ids..
Magnus Hagander [Wed, 26 Dec 2012 19:23:58 +0000 (20:23 +0100)]
Update list-of-lists for legacy loader
Magnus Hagander [Wed, 26 Dec 2012 19:23:50 +0000 (20:23 +0100)]
Remove comment
Magnus Hagander [Wed, 26 Dec 2012 19:15:31 +0000 (20:15 +0100)]
case-fix for callback attribute
Magnus Hagander [Wed, 26 Dec 2012 19:13:18 +0000 (20:13 +0100)]
Show 404 instead of empty list when specifying invalid list group
Magnus Hagander [Wed, 26 Dec 2012 18:59:38 +0000 (19:59 +0100)]
Even more markup fixes
Magnus Hagander [Wed, 26 Dec 2012 18:56:44 +0000 (19:56 +0100)]
Apply markup fixes to flat messages as well
Magnus Hagander [Wed, 26 Dec 2012 18:39:58 +0000 (19:39 +0100)]
Don't crash when specifying a date with zero messages
Magnus Hagander [Wed, 26 Dec 2012 18:30:08 +0000 (19:30 +0100)]
Move styles over to the CSS files
The inlining was supposed to be temporary. As a bonus, this removes
a HTML validator error...
Magnus Hagander [Wed, 26 Dec 2012 18:26:56 +0000 (19:26 +0100)]
Some markup fixes
Spotted by Stefan
Magnus Hagander [Sun, 16 Dec 2012 18:39:02 +0000 (19:39 +0100)]
Oops, forgot to commit the latest change. Fix url for mbox files.
Magnus Hagander [Sun, 16 Dec 2012 18:17:44 +0000 (19:17 +0100)]
Add URLs for mbox downloads
Magnus Hagander [Fri, 30 Nov 2012 04:52:33 +0000 (13:52 +0900)]
Make majordomo sync work properly with output redirected
With output redirected, always try to do the syncing without
prompting the user.
Magnus Hagander [Mon, 26 Nov 2012 11:37:19 +0000 (12:37 +0100)]
Include day links when "browsing backwards" as well
This fixes the fact that the date links were lost when clicking the
Prev link on any index page.
Magnus Hagander [Mon, 26 Nov 2012 10:10:07 +0000 (11:10 +0100)]
Include date links for the whole month, not just from date until end
Magnus Hagander [Sun, 25 Nov 2012 16:37:34 +0000 (17:37 +0100)]
Generate list of subsection lists when subsection is clicked
It was really confusing to send people to the first list in a
group instead of a list of groups...
Magnus Hagander [Sun, 25 Nov 2012 16:29:48 +0000 (17:29 +0100)]
Fix root link for mailinglists in menu
Magnus Hagander [Sun, 25 Nov 2012 16:24:51 +0000 (17:24 +0100)]
Only show date links to dates that have any actuall messages on them
Magnus Hagander [Sun, 25 Nov 2012 16:24:44 +0000 (17:24 +0100)]
Add index for looking up threads by lists
Magnus Hagander [Sun, 25 Nov 2012 15:39:31 +0000 (16:39 +0100)]
More CSS works for dropdown, to make it look more like the rest of the site
Including updating to a new version of jqueryui and jquery
Magnus Hagander [Sun, 25 Nov 2012 15:18:12 +0000 (16:18 +0100)]
Remove underline of entries in dropdown list
Magnus Hagander [Sun, 25 Nov 2012 15:18:06 +0000 (16:18 +0100)]
Remove unused CSS
Magnus Hagander [Sun, 25 Nov 2012 15:15:52 +0000 (16:15 +0100)]
Escape HTML in thread dropdown when using javascript
Magnus Hagander [Wed, 3 Oct 2012 16:15:45 +0000 (18:15 +0200)]
Add support for legacy urls, turn them into redirects to messageid
Magnus Hagander [Wed, 3 Oct 2012 15:29:03 +0000 (17:29 +0200)]
Use https, not http
Magnus Hagander [Wed, 3 Oct 2012 13:16:03 +0000 (15:16 +0200)]
Generate month links even if the page is empty, so the user can get off it
Magnus Hagander [Wed, 3 Oct 2012 13:15:53 +0000 (15:15 +0200)]
Don't generate empty next/prev links when there are no messages
Magnus Hagander [Wed, 3 Oct 2012 13:10:04 +0000 (15:10 +0200)]
Require authentication on raw messages
Magnus Hagander [Wed, 3 Oct 2012 12:49:34 +0000 (14:49 +0200)]
Need to set host header
Magnus Hagander [Wed, 3 Oct 2012 12:31:22 +0000 (14:31 +0200)]
Ugh, ugly typo
Magnus Hagander [Wed, 3 Oct 2012 12:25:37 +0000 (14:25 +0200)]
Attempt to do the purging from API instead of direct db
Magnus Hagander [Wed, 3 Oct 2012 10:44:04 +0000 (12:44 +0200)]
Add support for proper varnish purging when loading messages
Magnus Hagander [Wed, 3 Oct 2012 10:15:34 +0000 (12:15 +0200)]
Set cache times on all requests
Magnus Hagander [Wed, 3 Oct 2012 10:03:45 +0000 (12:03 +0200)]
Keep archives specific stylesheets in /media-archive/
this allows us to fallback on the main website stylesheets
Magnus Hagander [Wed, 3 Oct 2012 09:37:20 +0000 (11:37 +0200)]
Add web_sync_timestamp, for varnish polling
Magnus Hagander [Wed, 3 Oct 2012 08:48:48 +0000 (10:48 +0200)]
Merge remote-tracking branch 'arkaria/master'
Magnus Hagander [Wed, 3 Oct 2012 08:47:48 +0000 (10:47 +0200)]
Switch to new namespace, preparing for site integration
Thom Brown [Mon, 13 Aug 2012 09:56:29 +0000 (10:56 +0100)]
Stop underlining links in simulated drop-downs, and refactor highly-duplicated anchor link styles while we are at it.
Magnus Hagander [Sun, 12 Aug 2012 16:12:02 +0000 (18:12 +0200)]
Start transaction, and give info about it
Magnus Hagander [Sun, 12 Aug 2012 16:02:47 +0000 (18:02 +0200)]
Another typo, i think
Magnus Hagander [Sun, 12 Aug 2012 16:00:42 +0000 (18:00 +0200)]
Fix missing field in table
Magnus Hagander [Sun, 12 Aug 2012 15:58:24 +0000 (17:58 +0200)]
Here's one for my memory missing that there was already a custom sql file
Magnus Hagander [Sun, 12 Aug 2012 15:56:25 +0000 (17:56 +0200)]
Missing object reference
Magnus Hagander [Sun, 12 Aug 2012 15:54:55 +0000 (17:54 +0200)]
Create a date index
Magnus Hagander [Sun, 12 Aug 2012 15:53:17 +0000 (17:53 +0200)]
django can't handle functions properly, so do a manual sql scrpit instead
Magnus Hagander [Sun, 12 Aug 2012 15:42:59 +0000 (17:42 +0200)]
Only silence importerrors..
Magnus Hagander [Sun, 12 Aug 2012 15:30:58 +0000 (17:30 +0200)]
Use our custom tsearch dictionaries
These could probably do with some tuning as well...
Magnus Hagander [Sun, 12 Aug 2012 14:57:37 +0000 (16:57 +0200)]
Don't crash when settings_local.py is missing
Magnus Hagander [Sun, 12 Aug 2012 14:56:00 +0000 (16:56 +0200)]
Add SQL initializer for fields not part of model
Magnus Hagander [Sun, 12 Aug 2012 14:55:43 +0000 (16:55 +0200)]
Add a REST-like API for searching
Magnus Hagander [Fri, 10 Aug 2012 14:06:26 +0000 (16:06 +0200)]
Indexes will never expire based on threadids - since we don't have thread indexes
Instead, expire them based on listid/year/month.
Magnus Hagander [Thu, 9 Aug 2012 13:08:29 +0000 (15:08 +0200)]
More forgiving parsing of emails with broken header encoding