.
require_once("../inc/boinc_db.inc");
require_once("../inc/util.inc");
require_once("../inc/host.inc");
function fail($msg) {
echo "Error: $msg";
page_tail();
exit();
}
function get_host($hostid, $user) {
$host = BoincHost::lookup_id($hostid);
if (!$host || $host->userid != $user->id) {
fail("We have no record of that computer");
}
return $host;
}
$user = get_logged_in_user();
page_head("Merge computer records");
$nhosts = get_int("nhosts");
$hostid = get_int("id_0");
$latest_host = get_host($hostid, $user);
for ($i=1; $i<$nhosts; $i++) {
$var = "id_$i";
$hostid = get_int($var, true);
if (!$hostid) continue;
$host = get_host($hostid, $user);
if ($host->create_time > $latest_host->create_time) {
$error = merge_hosts($latest_host, $host);
if ($error) {
echo "
$error\n";
continue;
}
$latest_host = $host;
} else {
merge_hosts($host, $latest_host);
}
// reread latest_host from database since we just
// updated its credits
//
$latest_host = BoincHost::lookup_id($latest_host->id);
}
echo "
Return to list of your computers "; page_tail(); //Header("Location: show_host_detail.php?hostid=$latest_host->id"); ?>