From f6974add6878b95b592865c3ad640bdc48cc78ec Mon Sep 17 00:00:00 2001 From: Benjamin Kellermann Date: Thu, 28 Jan 2010 13:47:30 +0100 Subject: Page included for error reporting --- error.cgi | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100755 error.cgi (limited to 'error.cgi') diff --git a/error.cgi b/error.cgi new file mode 100755 index 0000000..c74e80b --- /dev/null +++ b/error.cgi @@ -0,0 +1,81 @@ +#!/usr/bin/env ruby + +############################################################################ +# Copyright 2009,2010 Benjamin Kellermann # +# # +# This file is part of dudle. # +# # +# Dudle is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Affero General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# Dudle is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public # +# License for more details. # +# # +# You should have received a copy of the GNU Affero General Public License # +# along with dudle. If not, see . # +############################################################################ + +require "dudle" + +$d = Dudle.new + +def urlescape(str) + CGI.escapeHTML(CGI.escape(str).gsub("+","%20")) +end + +errormessagebody = < + + +I am using +MESSAGE + +if defined?(ERRORLOG) + begin + a = File.open(ERRORLOG,"r").to_a + rescue Exception => e + errorstr = "Exception while opening #{ERRORLOG}:\n#{e}" + else + s = [a.pop] + s << a.pop while s.last.scan(/^\[([^\]]*)\] \[/).flatten[0] == a.last.scan(/^\[([^\]]*)\] \[/).flatten[0] + errorstr = s.reverse.join + end + + errormessagebody += < +Please report you browser, operating system, and what you did to +#{BUGREPORTMAIL}. +ERROR + +if (errorstr) + + $d << < +Please include the following as well: +
#{errorstr}
+ERROR +end + +$d.out -- cgit v1.2.3