def error(op, username, fields, err, emsg, traceback):
"""Print an error page when a CodeError occurs"""
- send_error_mail('xvm error on %s for %s: %s' % (op, username, err),
- 'error on %s for %s: %s\n\n%s\n'
- % (op, username, err, emsg))
d = dict(op=op, user=username, fields=fields,
errorMessage=str(err), stderr=emsg, traceback=traceback)
+ details = templates.error_raw(searchList=[d])
+ send_error_mail('xvm error on %s for %s: %s' % (op, username, err),
+ details)
+ d['details'] = details
return templates.error(searchList=[d])
def invalidInput(op, username, fields, err, emsg):
-__all__ = 'info command error help invalid list unauth vnc'.split()
+__all__ = 'info command error error_raw help invalid list unauth vnc'.split()
for _name in __all__:
try:
_module = __import__(_name, globals(), {}, [_name])
<p>Feel free to poke us at <tt>xvm@mit.edu</tt> if this bug is
consistently biting you and we don't seem to be fixing it.</p>
-<p>In case you're curious, the gory details are here.</p>
+<p>In case you're curious, the gory details are below.</p>
<pre>
-Error on operation $op for user $user: $errorMessage
-
-Fields:
-#for $f in $fields:
-$f=$fields[$f].value
-#end for
-
-Error output:
-$stderr#slurp
----- end error output
-
-Traceback:
-$traceback
+$details
</pre>
#end def