summaryrefslogtreecommitdiff
path: root/plugins/FirePHP/FirePHPPlugin.php
diff options
context:
space:
mode:
authorCraig Andrews <candrews@integralblue.com>2009-12-05 02:13:40 -0500
committerCraig Andrews <candrews@integralblue.com>2009-12-05 02:13:40 -0500
commit9349d823ee744f4f2f7b9f36c00fc605acb728fd (patch)
treeb35fb4635a619c495b156ad3191c195cc4b496e4 /plugins/FirePHP/FirePHPPlugin.php
parent2ab01e040e224943b1b15131a6e51fe6b5d6e580 (diff)
Add FirePHP plugin - uses FirePHP as an output method for logging
Diffstat (limited to 'plugins/FirePHP/FirePHPPlugin.php')
-rw-r--r--plugins/FirePHP/FirePHPPlugin.php59
1 files changed, 59 insertions, 0 deletions
diff --git a/plugins/FirePHP/FirePHPPlugin.php b/plugins/FirePHP/FirePHPPlugin.php
new file mode 100644
index 000000000..37b397796
--- /dev/null
+++ b/plugins/FirePHP/FirePHPPlugin.php
@@ -0,0 +1,59 @@
+<?php
+/*
+StatusNet Plugin: 0.9
+Plugin Name: FirePHP
+Description: Sends StatusNet log output to FirePHP
+Version: 0.1
+Author: Craig Andrews <candrews@integralblue.com>
+Author URI: http://candrews.integralblue.com/
+*/
+
+/*
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2009, StatusNet, Inc.
+ *
+ * This program 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.
+ *
+ * This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/**
+ * @package MinifyPlugin
+ * @maintainer Craig Andrews <candrews@integralblue.com>
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
+
+// We bundle the FirePHP library...
+set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/extlib/FirePHP/lib');
+
+class FirePHPPlugin extends Plugin
+{
+ private $firephp;
+
+ function onInitializePlugin()
+ {
+ //Output buffering has to be enabled so FirePHP can send the HTTP headers it needs
+ ob_start();
+ require_once('FirePHPCore/FirePHP.class.php');
+ $this->firephp = FirePHP::getInstance(true);
+ }
+
+ function onStartLog(&$priority, &$msg, &$filename)
+ {
+ static $firephp_priorities = array(FirePHP::ERROR, FirePHP::ERROR, FirePHP::ERROR, FirePHP::ERROR,
+ FirePHP::WARN, FirePHP::LOG, FirePHP::LOG, FirePHP::INFO);
+ $priority = $firephp_priorities[$priority];
+ $this->firephp->fb($msg, $priority);
+ }
+}
+