diff options
author | Evan Prodromou <evan@status.net> | 2009-11-02 18:13:04 -0500 |
---|---|---|
committer | Evan Prodromou <evan@status.net> | 2009-11-02 18:13:04 -0500 |
commit | a2b830392597d88c435baf54ad0df4ecda02dc41 (patch) | |
tree | 08f8ddcbcab63de9117ccf82e5477fa0d565bdc6 /plugins/LinkbackPlugin.php | |
parent | 61419038e5747886357964a7eb3f814761482891 (diff) | |
parent | 15d0055c6f2e3b7007a82df40502e15cf5c32a13 (diff) |
Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x
Conflicts:
classes/User.php
Diffstat (limited to 'plugins/LinkbackPlugin.php')
-rw-r--r-- | plugins/LinkbackPlugin.php | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/plugins/LinkbackPlugin.php b/plugins/LinkbackPlugin.php index 60f7a60c7..915d15c07 100644 --- a/plugins/LinkbackPlugin.php +++ b/plugins/LinkbackPlugin.php @@ -129,18 +129,12 @@ class LinkbackPlugin extends Plugin } } - $request = xmlrpc_encode_request('pingback.ping', $args); - $context = stream_context_create(array('http' => array('method' => "POST", - 'header' => - "Content-Type: text/xml\r\n". - "User-Agent: " . $this->userAgent(), - 'content' => $request))); - $file = file_get_contents($endpoint, false, $context); - if (!$file) { - common_log(LOG_WARNING, - "Pingback request failed for '$url' ($endpoint)"); - } else { - $response = xmlrpc_decode($file); + $request = HTTPClient::start(); + try { + $response = $request->post($endpoint, + array('Content-Type: text/xml'), + xmlrpc_encode_request('pingback.ping', $args)); + $response = xmlrpc_decode($response->getBody()); if (xmlrpc_is_fault($response)) { common_log(LOG_WARNING, "Pingback error for '$url' ($endpoint): ". @@ -150,6 +144,9 @@ class LinkbackPlugin extends Plugin "Pingback success for '$url' ($endpoint): ". "'$response'"); } + } catch (HTTP_Request2_Exception $e) { + common_log(LOG_WARNING, + "Pingback request failed for '$url' ($endpoint)"); } } |