| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- require_once 'telemetry_db.php';
- /**
- * @param int|float $d
- *
- * @return string
- */
- function format($d)
- {
- if ($d < 10) {
- return number_format($d, 2, '.', '');
- }
- if ($d < 100) {
- return number_format($d, 1, '.', '');
- }
- return number_format($d, 0, '.', '');
- }
- /**
- * @param array $speedtest
- *
- * @return array
- */
- function formatSpeedtestData($speedtest)
- {
- // format values for the image
- $speedtest['dl'] = format($speedtest['dl']);
- $speedtest['ul'] = format($speedtest['ul']);
- $speedtest['ping'] = format($speedtest['ping']);
- $speedtest['jitter'] = format($speedtest['jitter']);
- $speedtest['timestamp'] = $speedtest['timestamp'];
- $ispinfo = json_decode($speedtest['ispinfo'], true)['processedString'];
- $dash = strpos($ispinfo, '-');
- if ($dash !== false) {
- $ispinfo = substr($ispinfo, $dash + 2);
- $par = strrpos($ispinfo, '(');
- if ($par !== false) {
- $ispinfo = substr($ispinfo, 0, $par);
- }
- } else {
- $ispinfo = '';
- }
- $speedtest['ispinfo'] = $ispinfo;
- return $speedtest;
- }
- $speedtest = getSpeedtestUserById($_GET['id']);
- if (!is_array($speedtest)) {
- echo '{}';
- }
- $speedtest = formatSpeedtestData($speedtest);
-
- echo json_encode(array('timestamp'=>$speedtest['timestamp'],'download'=>$speedtest['dl'],'upload'=>$speedtest['ul'],'ping'=>$speedtest['ping'],'jitter'=>$speedtest['jitter'],'ispinfo'=>$speedtest['ispinfo']));
|