[evolvis-commits] r6764: merge bm:taramir/patches/development-error-display
mirabilos at evolvis.org
mirabilos at evolvis.org
Fri Jun 25 15:56:12 CEST 2010
Author: mirabilos
Date: 2010-06-25 15:56:12 +0200 (Fri, 25 Jun 2010)
New Revision: 6764
Added:
trunk/gforge_base/evolvisforge/gforge/common/include/extras-debug.php
Modified:
trunk/gforge_base/evolvisforge/gforge/debian/changelog
trunk/gforge_base/evolvisforge/gforge/etc/local.d/01begin
trunk/gforge_base/evolvisforge/gforge/setup
trunk/gforge_base/evolvisforge/gforge/www/include/pre.php
trunk/gforge_base/evolvisforge/gforge/www/themes/css/gforge.css
Log:
merge bm:taramir/patches/development-error-display
Added: trunk/gforge_base/evolvisforge/gforge/common/include/extras-debug.php
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/common/include/extras-debug.php (rev 0)
+++ trunk/gforge_base/evolvisforge/gforge/common/include/extras-debug.php 2010-06-25 13:56:12 UTC (rev 6764)
@@ -0,0 +1,58 @@
+<?php
+
+// error handler function
+function ffErrorHandler($errno, $errstr, $errfile, $errline)
+{
+ global $ffErrors;
+
+ if (!isset($ffErrors))
+ $ffErrors = array();
+
+ $msg = "[$errno] $errstr ($errfile at $errline)";
+
+ // Display messages only once.
+ foreach ($ffErrors as $m) {
+ if ($m['message'] == $msg)
+ return true;
+ }
+
+ switch ($errno) {
+ case E_USER_ERROR:
+ $type = 'error';
+ break;
+
+ case E_USER_WARNING:
+ $type = 'warning';
+ break;
+
+ case E_USER_NOTICE:
+ $type = 'notice';
+ break;
+
+ default:
+ $type = 'unknown';
+ break;
+ }
+
+ $ffErrors[] = array('type' => $type, 'message' => $msg);
+ /* Don't execute PHP internal error handler */
+ return true;
+}
+
+
+function ffErrorDisplay() {
+ global $ffErrors;
+
+ if (isset($ffErrors) && $ffErrors) {
+ echo '<div id="ffErrors">';
+ foreach ($ffErrors as $msg) {
+ echo '<div class="'.$msg['type'].'">'.$msg['message'].'</div>'."\n";
+ }
+ echo '</div>';
+ }
+}
+
+// set to the user defined error handler
+set_error_handler("ffErrorHandler");
+
+register_shutdown_function('ffErrorDisplay');
Modified: trunk/gforge_base/evolvisforge/gforge/debian/changelog
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/debian/changelog 2010-06-25 13:56:09 UTC (rev 6763)
+++ trunk/gforge_base/evolvisforge/gforge/debian/changelog 2010-06-25 13:56:12 UTC (rev 6764)
@@ -43,8 +43,12 @@
* Merged new branch copy-task-to-other-subproject: feature to copy a
task to another subproject.
- -- Thorsten Glaser <t.glaser at tarent.de> Fri, 25 Jun 2010 12:02:28 +0200
+ [ Alain Peyrat ]
+ * Display all errors directly on the page for development or integration
+ environments (using $sys_install_type which defaults to production)
+ -- Thorsten Glaser <t.glaser at tarent.de> Fri, 25 Jun 2010 14:01:17 +0200
+
gforge (4.8.3+evolvis20) unstable; urgency=low
* class SVNPlugin: new method getURI, for papel’s Hudson plugin
Modified: trunk/gforge_base/evolvisforge/gforge/etc/local.d/01begin
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/etc/local.d/01begin 2010-06-25 13:56:09 UTC (rev 6763)
+++ trunk/gforge_base/evolvisforge/gforge/etc/local.d/01begin 2010-06-25 13:56:12 UTC (rev 6764)
@@ -54,3 +54,9 @@
// the mail host if you have enough horsepower & bandwidth)
$sys_lists_host = '{lists_host}';
+// Define the type of installation
+// * development:
+// * integration:
+// * staging:
+// * production: normal mode.
+$sys_install_type = '{sys_install_type}';
Modified: trunk/gforge_base/evolvisforge/gforge/setup
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/setup 2010-06-25 13:56:09 UTC (rev 6763)
+++ trunk/gforge_base/evolvisforge/gforge/setup 2010-06-25 13:56:12 UTC (rev 6764)
@@ -69,6 +69,7 @@
DEFAULTusr_lib_gforge=$LIBDIR
DEFAULTvar_lib_gforge=$GFGDIR/var/lib/gforge
DEFAULTvar_log_gforge=$GFGDIR/var/log/gforge
+ DEFAULTsys_install_type=production
DEFAULTsys_show_source=0
DEFAULTsys_force_login=0
DEFAULTsys_session_key=$(dd if=/dev/urandom count=1 bs=8 2> /dev/null | md5sum | cut -b1-32)
Modified: trunk/gforge_base/evolvisforge/gforge/www/include/pre.php
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/www/include/pre.php 2010-06-25 13:56:09 UTC (rev 6763)
+++ trunk/gforge_base/evolvisforge/gforge/www/include/pre.php 2010-06-25 13:56:12 UTC (rev 6764)
@@ -33,6 +33,11 @@
require $gfcgfile;
+// Load extra func to add extras func like debug
+if ($sys_install_type == 'development' || $sys_install_type == 'integration') {
+ require $gfcommon.'include/extras-debug.php';
+}
+
// get constants used for flags or status
require $gfcommon.'include/constants.php';
Modified: trunk/gforge_base/evolvisforge/gforge/www/themes/css/gforge.css
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/www/themes/css/gforge.css 2010-06-25 13:56:09 UTC (rev 6763)
+++ trunk/gforge_base/evolvisforge/gforge/www/themes/css/gforge.css 2010-06-25 13:56:12 UTC (rev 6764)
@@ -416,3 +416,24 @@
font-weight: bold;
}
+#ffErrors {
+ z-index: 10;
+ position: absolute;
+ top: 10px;
+ left: 10px;
+ right: 10px;
+ opacity: 0.9;
+ color: black;
+ font-weight: bold;
+ border-width: 2px;
+ border-style: solid;
+ background-color: #ffc0cb; /* pink */
+ border-color: red;
+ padding: 0.5em;
+}
+
+#ffErrors .error {
+ border-width: 0px;
+ padding: 0px;
+ color: red;
+}
More information about the evolvis-commits
mailing list