Mercurial > p > roundup > code
view detectors/emailauditor.py @ 4878:f6e76a03b502
HTML* classes for cgi are now all new-style
Add regression test for old behaviour: Lookup of a value of a
HTMLProperty was possibly via getitem -- for old-style classes this
worked because __getattr__ returned the __getitem__ of a newly created
HTMLItem object, this does no longer work for new-style classes as these
look up special method only on the class not the instance.
| author | Ralf Schlatterbeck <rsc@runtux.com> |
|---|---|
| date | Sat, 29 Mar 2014 10:52:20 +0100 |
| parents | 6b32e9dac625 |
| children | 0942fe89e82e |
line wrap: on
line source
def eml_to_mht(db, cl, nodeid, newvalues): '''This auditor fires whenever a new file entity is created. If the file is of type message/rfc822, we tack onthe extension .eml. The reason for this is that Microsoft Internet Explorer will not open things with a .eml attachment, as they deem it 'unsafe'. Worse yet, they'll just give you an incomprehensible error message. For more information, please see: http://support.microsoft.com/default.aspx?scid=kb;EN-US;825803 Their suggested work around is (excerpt): WORKAROUND To work around this behavior, rename the .EML file that the URL links to so that it has a .MHT file name extension, and then update the URL to reflect the change to the file name. To do this: 1. In Windows Explorer, locate and then select the .EML file that the URL links. 2. Right-click the .EML file, and then click Rename. 3. Change the file name so that the .EML file uses a .MHT file name extension, and then press ENTER. 4. Updated the URL that links to the file to reflect the new file name extension. So... we do that. :)''' if newvalues.get('type', '').lower() == "message/rfc822": if not newvalues.has_key('name'): newvalues['name'] = 'email.mht' return name = newvalues['name'] if name.endswith('.eml'): name = name[:-4] newvalues['name'] = name + '.mht' def init(db): db.file.audit('create', eml_to_mht)
