Exemplo n.º 1
0
/**
 * Prints server state General information
 *
 * @param ServerStatusData $ServerStatusData Server status data
 *
 * @return string
 */
function PMA_getHtmlForServerStateGeneralInfo($ServerStatusData)
{
    $start_time = $GLOBALS['dbi']->fetchValue('SELECT UNIX_TIMESTAMP() - ' . $ServerStatusData->status['Uptime']);
    $retval = '<h3>';
    $bytes_received = $ServerStatusData->status['Bytes_received'];
    $bytes_sent = $ServerStatusData->status['Bytes_sent'];
    $retval .= sprintf(__('Network traffic since startup: %s'), implode(' ', PMA\libraries\Util::formatByteDown($bytes_received + $bytes_sent, 3, 1)));
    $retval .= '</h3>';
    $retval .= '<p>';
    $retval .= sprintf(__('This MySQL server has been running for %1$s. It started up on %2$s.'), PMA\libraries\Util::timespanFormat($ServerStatusData->status['Uptime']), PMA\libraries\Util::localisedDate($start_time)) . "\n";
    $retval .= '</p>';
    return $retval;
}
/**
 * Returns HTML for render variables list
 *
 * @param ServerStatusData $ServerStatusData Server status data
 * @param array            $alerts           Alert Array
 * @param array            $strShowStatus    Status Array
 *
 * @return string
 */
function PMA_getHtmlForRenderVariables($ServerStatusData, $alerts, $strShowStatus)
{
    $retval = '<table class="data noclick" id="serverstatusvariables">';
    $retval .= '<col class="namecol" />';
    $retval .= '<col class="valuecol" />';
    $retval .= '<col class="descrcol" />';
    $retval .= '<thead>';
    $retval .= '<tr>';
    $retval .= '<th>' . __('Variable') . '</th>';
    $retval .= '<th>' . __('Value') . '</th>';
    $retval .= '<th>' . __('Description') . '</th>';
    $retval .= '</tr>';
    $retval .= '</thead>';
    $retval .= '<tbody>';
    foreach ($ServerStatusData->status as $name => $value) {
        $retval .= '<tr class="' . (isset($ServerStatusData->allocationMap[$name]) ? ' s_' . $ServerStatusData->allocationMap[$name] : '') . '">';
        $retval .= '<th class="name">';
        $retval .= htmlspecialchars(str_replace('_', ' ', $name));
        // Fields containing % are calculated,
        // they can not be described in MySQL documentation
        if (mb_strpos($name, '%') === false) {
            $retval .= PMA\libraries\Util::showMySQLDocu('server-status-variables', false, 'statvar_' . $name);
        }
        $retval .= '</th>';
        $retval .= '<td class="value"><span class="formatted">';
        if (isset($alerts[$name])) {
            if ($value > $alerts[$name]) {
                $retval .= '<span class="attention">';
            } else {
                $retval .= '<span class="allfine">';
            }
        }
        if (substr($name, -1) === '%') {
            $retval .= htmlspecialchars(PMA\libraries\Util::formatNumber($value, 0, 2)) . ' %';
        } elseif (strpos($name, 'Uptime') !== false) {
            $retval .= htmlspecialchars(PMA\libraries\Util::timespanFormat($value));
        } elseif (is_numeric($value) && $value > 1000) {
            $retval .= '<abbr title="' . htmlspecialchars(PMA\libraries\Util::formatNumber($value, 0)) . '">' . htmlspecialchars(PMA\libraries\Util::formatNumber($value, 3, 1)) . '</abbr>';
        } elseif (is_numeric($value)) {
            $retval .= htmlspecialchars(PMA\libraries\Util::formatNumber($value, 3, 1));
        } else {
            $retval .= htmlspecialchars($value);
        }
        if (isset($alerts[$name])) {
            $retval .= '</span>';
        }
        $retval .= '</span>';
        $retval .= '<span style="display:none;" class="original">';
        if (isset($alerts[$name])) {
            if ($value > $alerts[$name]) {
                $retval .= '<span class="attention">';
            } else {
                $retval .= '<span class="allfine">';
            }
        }
        $retval .= htmlspecialchars($value);
        if (isset($alerts[$name])) {
            $retval .= '</span>';
        }
        $retval .= '</span>';
        $retval .= '</td>';
        $retval .= '<td class="descr">';
        if (isset($strShowStatus[$name])) {
            $retval .= $strShowStatus[$name];
        }
        if (isset($ServerStatusData->links[$name])) {
            foreach ($ServerStatusData->links[$name] as $link_name => $link_url) {
                if ('doc' == $link_name) {
                    $retval .= PMA\libraries\Util::showMySQLDocu($link_url);
                } else {
                    $retval .= ' <a href="' . $link_url . '">' . $link_name . '</a>';
                }
            }
            unset($link_url, $link_name);
        }
        $retval .= '</td>';
        $retval .= '</tr>';
    }
    $retval .= '</tbody>';
    $retval .= '</table>';
    return $retval;
}
 /**
  * localised timestamp test, globals are defined
  *
  * @param int    $a Timespan in seconds
  * @param string $e Expected output
  *
  * @return void
  *
  * @dataProvider timespanFormatDataProvider
  */
 public function testTimespanFormat($a, $e)
 {
     $GLOBALS['timespanfmt'] = '%s days, %s hours, %s minutes and %s seconds';
     $this->assertEquals($e, PMA\libraries\Util::timespanFormat($a));
 }
Exemplo n.º 4
0
/**
 * Wrapper for PMA\libraries\Util::timespanFormat
 *
 * This function is used when evaluating advisory_rules.txt
 *
 * @param int $seconds the timespan
 *
 * @return string  the formatted value
 */
function ADVISOR_timespanFormat($seconds)
{
    return PMA\libraries\Util::timespanFormat($seconds);
}