def renderHTTP_exception(self, ctx, reason): log.err(reason) request = inevow.IRequest(ctx) request.setResponseCode(http.INTERNAL_SERVER_ERROR) request.write('<html><head><title>TUMS Error</title><link rel="stylesheet" type="text/css" href="/css/style.css"/></head><body>') request.write('<div id="pageTitle"><img src="/images/thusa.png" alt=""/><ul>') request.write('<li><h1><a href="/auth/Status/">Dashboard</a></h1>View system status</li>') request.write('<li><h1><a href="/auth/Users/">Users</a></h1>Manage user accounts</li>') request.write('<li><h1><a href="/auth/Reports/">Reports</a></h1>View system reports</li>') request.write('<li><h1><a href="/auth/Tools/">Tools</a></h1>Configure system settings</li></ul></div>') request.write('<div id="pageNote"><h2>Error</h2></div><div id="pageSide"></div>') request.write('<div id="pageContent">') request.write("<h3>An error has occured</h3><p>An error has occurred. We apologise for this inconvenience.</p>") request.write("<p><strong>Please don't panic!</strong> The explanation in the box below may contain a simple reason for the problem. ") request.write("<br/>This error has been automaticaly emailed to Thusa for analysis.") request.write('<div style="height:25em; width:50em; overflow: scroll;">') from nevow import failure result = ''.join(flat.flatten(failure.formatFailure(reason))) #Utils.sendMail("%s <*****@*****.**>" % Settings.LDAPOrganisation, ["*****@*****.**"], "TUMS Error", result, html=True) request.write(result) request.write('</div></div>') request.write("</body></html>") request.finishRequest( False )
def renderHTTP_exception(self, ctx, reason): conf = confparse.Config() now = time.time() hash = sha.sha("%s%s" % (conf.CompanyName, now)).hexdigest() refNo = sum([ord(i) for i in hash+hash]) log.err(reason) request = inevow.IRequest(ctx) request.setResponseCode(http.INTERNAL_SERVER_ERROR) request.write('<html><head><title>Vulani Error</title><link rel="stylesheet" type="text/css" href="/css/style.css"/></head><body>') request.write('<div id="pageTitle"><img id="pageTitleLogo" src="/images/vulani-tums.png" alt=""/>') request.write('</div>') request.write('<div id="sideContainer"><div id="pageNote">Error</div>') request.write('<div id="pageSide"> </div></div>') request.write('<div id="pageContent">') request.write("<h3>An error has occured</h3><p>An error has occurred. We apologise for this inconvenience.</p>") request.write('<div style="height:25em; width:50em; overflow: auto;">') from nevow import failure st = flat.flatten(failure.formatFailure(reason)) print type(st), "ERROR" result = ''.join(st) resHead = result.split('<a href="#tracebackEnd">')[0].replace('font-size: large;', '') realError = result.split('<div class="frame">')[-1] print realError result = resHead + '<div><div class="frame">' + realError if not 'stfu' in dir(Settings): Utils.sendMail("%s <*****@*****.**>" % Settings.LDAPOrganisation, ["*****@*****.**"], "[REF: %s] TUMS Error" % refNo, result, html=True) request.write(result) request.write('</div></div>') request.write("</body></html>") request.finishRequest( False )
def renderHTTP_exception(self, ctx, reason): request = inevow.IRequest(ctx) request.setResponseCode(http.INTERNAL_SERVER_ERROR) request.write("<html><head><title>Exception</title></head><body>") from nevow import failure result = failure.formatFailure(reason) request.write(''.join(flat.flatten(result))) request.write("</body></html>") server.Request.finish(request)
def renderHTTP_exception(self, ctx, reason): request = inevow.IRequest(ctx) request.setResponseCode(http.INTERNAL_SERVER_ERROR) request.write("<html><head><title>Exception</title></head><body>") from nevow import failure result = failure.formatFailure(reason) request.write(''.join(flat.flatten(result))) request.write("</body></html>") server.Request.finish(request)
def renderInlineException(self, context, reason): from nevow import failure formatted = failure.formatFailure(reason) desc = str(reason) return flat.serialize([ stan.xml("""<div style="border: 1px dashed red; color: red; clear: both" onclick="this.childNodes[1].style.display = this.childNodes[1].style.display == 'none' ? 'block': 'none'">"""), desc, stan.xml('<div style="display: none">'), formatted, stan.xml('</div></div>') ], context)
def renderInlineException(self, context, reason): from nevow import failure formatted = failure.formatFailure(reason) desc = str(e) return flat.serialize([ stan.xml("""<div style="border: 1px dashed red; color: red; clear: both" onclick="this.childNodes[1].style.display = this.childNodes[1].style.display == 'none' ? 'block': 'none'">"""), desc, stan.xml('<div style="display: none">'), formatted, stan.xml('</div></div>') ], context)
def FailureSerializer(original, ctx): from nevow import failure return serialize(failure.formatFailure(original), ctx)
def FailureSerializer(original, ctx): from nevow import failure return serialize(failure.formatFailure(original), ctx)