private static function send_xml() { // Cover old and new format $api_server = Config::Get('VACENTRAL_API_SERVER'); if ($api_server == '') { $api_server = Config::Get('PHPVMS_API_SERVER'); } ob_start(); $web_service = new CodonWebService(); $options = array(CURLOPT_USERAGENT => 'phpVMS (' . PHPVMS_VERSION . ')'); $web_service->setOptions($options); self::$xml_response = $web_service->post($api_server . '/update', self::$xml->asXML()); if (!self::$xml_response) { if (Config::Get('VACENTRAL_DEBUG_MODE') == true) { Debug::log(self::$method . ' - ' . date('h:i:s A - m/d/Y'), 'vacentral'); Debug::log(print_r($web_service->errors, true), 'vacentral'); } self::$last_error = 'No response from API server'; return false; } self::$response = @simplexml_load_string(self::$xml_response); ob_end_clean(); if (!is_object(self::$response)) { if (Config::Get('VACENTRAL_DEBUG_MODE') == true) { Debug::log(self::$method . ' - ' . date('h:i:s A - m/d/Y'), 'vacentral'); Debug::log(' - no response from server', 'vacentral'); } self::$last_error = 'No response from API server'; return false; } if (Config::Get('VACENTRAL_DEBUG_MODE') == true) { Debug::log(self::$method . ' - ' . date('h:i:s A - m/d/Y'), 'vacentral'); Debug::log(' - ' . (string) self::$response->detail, 'vacentral'); Debug::log(' - ' . (string) self::$response->dbg, 'vacentral'); # Extra detail if (Config::Get('VACENTRAL_DEBUG_DETAIL') == '2') { Debug::log('SENT XML: ', 'vacentral'); Debug::log(self::$xml->asXML(), 'vacentral'); Debug::log('RECIEVED XML: ', 'vacentral'); Debug::log(self::$response->asXML(), 'vacentral'); Debug::log('', 'vacentral'); } } if ((int) self::$response->responsecode != 200) { if (Config::Get('VACENTRAL_DEBUG_MODE') == true) { Debug::log(self::$method . ' - ', 'vacentral'); Debug::log(' - ' . (string) self::$response->message->detail, 'vacentral'); } self::$last_error = self::$response->message->detail; return false; } return true; }