| | |
| | | $tmp = explode(",", $data['uptime'], 4); |
| | | $tmpUser = explode(" ", trim($tmp[2])); |
| | | $data['user_online'] = intval($tmpUser[0]); |
| | | |
| | | |
| | | /* Old Load Average Code |
| | | $loadTmp = explode(":" , trim($tmp[3])); |
| | | $load = explode(",", $loadTmp[1]); |
| | | $data['load_1'] = floatval(trim($load[0])); |
| | | $data['load_5'] = floatval(trim($load[1])); |
| | | $data['load_15'] = floatval(trim($load[2])); |
| | | $data['load_15'] = floatval(trim($load[2])); */ |
| | | |
| | | //* New Load Average code to fix "always zero" bug in non-english distros. NEEDS TESTING |
| | | $loadTmp = shell_exec("cat /proc/loadavg | cut -f1-3 -d' '"); |
| | | $load = explode(" ", $loadTmp); |
| | | $data['load_1'] = floatval(str_replace(',', '.', $load[0])); |
| | | $data['load_5'] = floatval(str_replace(',', '.', $load[1])); |
| | | $data['load_15'] = floatval(str_replace(',', '.', $load[2])); |
| | | |
| | | /** The state of the server-load. */ |
| | | $state = 'ok'; |
| | |
| | | /* |
| | | * first update the portage tree |
| | | */ |
| | | shell_exec('emerge --sync --quiet'); |
| | | |
| | | // In keeping with gentoo's rsync policy, don't update to frequently (every four hours - taken from http://www.gentoo.org/doc/en/source_mirrors.xml) |
| | | $do_update = true; |
| | | if (file_exists('/usr/portage/metadata/timestamp.chk')) |
| | | { |
| | | $datetime = file_get_contents('/usr/portage/metadata/timestamp.chk'); |
| | | $datetime = trim($datetime); |
| | | |
| | | $dstamp = strtotime($datetime); |
| | | if ($dstamp) |
| | | { |
| | | $checkat = $dstamp + 14400; // + 4hours |
| | | if (mktime() < $checkat) { |
| | | $do_update = false; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if ($do_update) { |
| | | shell_exec('emerge --sync --quiet'); |
| | | } |
| | | |
| | | /* |
| | | * Then test the upgrade. |