From 1e5ec2bdca7188af57e1d14ed292ee82348a7bdb Mon Sep 17 00:00:00 2001 From: richard Date: Thu, 25 Mar 2004 23:11:36 +0000 Subject: [PATCH] make the reactor an auditor, clean up docstring git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@2193 57a73879-2fb5-44c3-a270-3262357dd7e2 --- detectors/fileauditor.py | 41 ++++++++++++++++++++++++++++++++++++++++ detectors/filereactor.py | 39 -------------------------------------- 2 files changed, 41 insertions(+), 39 deletions(-) create mode 100644 detectors/fileauditor.py delete mode 100755 detectors/filereactor.py diff --git a/detectors/fileauditor.py b/detectors/fileauditor.py new file mode 100644 index 0000000..606b89c --- /dev/null +++ b/detectors/fileauditor.py @@ -0,0 +1,41 @@ + +def eml_to_mht(db, cl, nodeid, newvalues): + '''This reactor 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 newalues.get('type', '').lower() == "message/rfc822": + if newvalues.has_key('name'): + newvalues['name'] = 'email.mht' + name = newvalues['name'] + if name.endswith('.eml'): + name = name[:-4] + newvalues['name'] = name + '.mht' + +def init(db): + db.file.react('create', eml_to_mht) + diff --git a/detectors/filereactor.py b/detectors/filereactor.py deleted file mode 100755 index 357d6dd..0000000 --- a/detectors/filereactor.py +++ /dev/null @@ -1,39 +0,0 @@ - -def eml_to_mht(db, cl, nodeid, oldvalues): - ''' - This reactor 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. :) ''' - - name = cl.get(nodeid, 'name') - type = cl.get(nodeid, 'type') - - if type.lower() == "message/rfc822": - name += '.mht' - cl.set(nodeid, name=name) - - - -def init(db): - db.file.react('create', eml_to_mht) - -- 2.30.2