VerifyPassword($_GET['password']) === true) { $return_object = array( 'correct' => true, 'userid' => $sUser->sId ); $return_success = true; } else { $return_object = array( 'correct' => false, 'userid' => 0 ); $return_success = true; } } else { $return_object = array( 'correct' => false, 'userid' => 0 ); } break; case "list_vps": if(!empty($_GET['userid'])) { $sUserId = (is_numeric($_GET['userid'])) ? $_GET['userid'] : 0; $query = "SELECT * FROM containers WHERE `UserId` = '{$sUserId}'"; } else { $query = "SELECT * FROM containers"; } if($result = mysql_query_cached($query)) { $sVpses = array(); foreach($result->data as $row) { $sVps = new Vps($row); $sVpses[] = array( 'hostname' => $sVps->sHostname, 'internal_id' => $sVps->sInternalId, 'node_id' => $sVps->sNodeId, 'status' => $sVps->sStatus ); } $return_object = $sVpses; $return_success = true; } break; case "vps_info": // TODO: return VPS info break; case "node_info": try { $sNode = new Node($_GET['nodeid']); $return_object = array( 'name' => $sNode->sName, 'hostname' => $sNode->sHostname, 'port' => $sNode->sPort, 'user' => $sNode->sUser, 'physical_location' => $sNode->sPhysicalLocation, 'private_key' => $sNode->sPrivateKey, 'public_key' => $sNode->sPublicKey, 'has_custom_key' => $sNode->sHasCustomKey ); } catch (NotFoundException $e) { // Silently pass. } break; } } else { $return_object = "Authentication failure."; } echo(json_encode(array( 'status' => $return_success, 'data' => $return_object )));