<?php # function no_api($json = "") { if (nuem($json)) echo 'nil'; else echo '{"nil":"0"}'; exit(0); } # function show_api($info, $page, $menu, $name, $user) { global $fld_sep; $u = getparam('username', true); if (nutem($u)) no_api(); $api = getparam('api', true); if (nutem($api)) no_api(); $jfu = getparam('json', true); $work = getparam('work', true); $ans = getAtts($u, 'KAPIKey.str'); if ($ans['STATUS'] != 'ok') no_api($jfu); # TODO: pass $api to ckdb to produce an invalid Key event if (!isset($ans['KAPIKey.str'])) no_api($jfu); if ($ans['KAPIKey.str'] != $api) no_api($jfu); if (nuem($work)) { $info = homeInfo($u); if ($info === false) no_api($jfu); $rep = fldEncode($info, 'STAMP', true); $rep .= fldEncode($info, 'lastbc', false); $rep .= fldEncode($info, 'lastheight', false); $rep .= fldEncode($info, 'currndiff', false); $rep .= fldEncode($info, 'lastblock', false); $rep .= fldEncode($info, 'lastblockheight', false); $rep .= fldEncode($info, 'blockacc', false); $rep .= fldEncode($info, 'blockerr', false); $rep .= fldEncode($info, 'p_hashrate5m', false); $rep .= fldEncode($info, 'p_hashrate1hr', false); $rep .= fldEncode($info, 'u_hashrate5m', false); $rep .= fldEncode($info, 'u_hashrate1hr', false); } else { $info = homeInfo($u); if ($info === false) no_api($jfu); $per = false; if (is_array($info) && isset($info['u_multiaddr'])) { $percent = getparam('percent', true); if (!nuem($percent)) $per = true; } if ($per === true) $ans = getPercents($u); else $ans = getWorkers($u); if ($ans === false) no_api($jfu); $rep = fldEncode($ans, 'STAMP', true); $rep .= fldEncode($ans, 'rows', false); $rows = $ans['rows']; $flds = explode(',', $ans['flds']); $zeflds = ''; for ($i = 0; $i < $rows; $i++) foreach ($flds as $fld) if (substr($fld, 0, 7) != 'idlenot') { $rep .= fldEncode($ans, $fld.':'.$i, false); if ($i == 0) $zeflds .= "$fld,"; } $rep .= fldEncode($ans, 'arn', false); $rep .= fldEncode($ans, 'arp', false); $rep .= fldEncode(array(), 'flds', false); $rep .= substr($zeflds, 0, -1); } if (nuem($jfu)) echo $rep; else { $j = preg_replace("/([^=]+)=([^$fld_sep]*)$fld_sep/", '"$1":"$2",', $rep.$fld_sep); echo '{'.substr($j, 0, -1).'}'; } exit(0); } # ?>