diff options
author | Brion Vibber <brion@pobox.com> | 2010-03-04 17:33:56 +0000 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-03-04 17:33:56 +0000 |
commit | a6a056026d645154e7172b47a046d7ba91d74d65 (patch) | |
tree | 29328f46266ec358f38a9c296cd3948f2499e820 /plugins/PubSubHubBub/publisher.php | |
parent | 8f1762cb9580c3f444ff5fd53bcefcbab6b54980 (diff) |
Dropping the earlier PubSubHubbub plugin; OStatus plugin is taking that portion over (with both internal and external hub options for user and group feeds).
Todo: add support for other feeds to OStatus PuSH hub implementation.
Diffstat (limited to 'plugins/PubSubHubBub/publisher.php')
-rw-r--r-- | plugins/PubSubHubBub/publisher.php | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/plugins/PubSubHubBub/publisher.php b/plugins/PubSubHubBub/publisher.php deleted file mode 100644 index f176a9b8a..000000000 --- a/plugins/PubSubHubBub/publisher.php +++ /dev/null @@ -1,86 +0,0 @@ -<?php - -// a PHP client library for pubsubhubbub -// as defined at http://code.google.com/p/pubsubhubbub/ -// written by Josh Fraser | joshfraser.com | josh@eventvue.com -// Released under Apache License 2.0 - -class Publisher { - - protected $hub_url; - protected $last_response; - - // create a new Publisher - public function __construct($hub_url) { - - if (!isset($hub_url)) - throw new Exception('Please specify a hub url'); - - if (!preg_match("|^https?://|i",$hub_url)) - throw new Exception('The specified hub url does not appear to be valid: '.$hub_url); - - $this->hub_url = $hub_url; - } - - // accepts either a single url or an array of urls - public function publish_update($topic_urls, $http_function = false) { - if (!isset($topic_urls)) - throw new Exception('Please specify a topic url'); - - // check that we're working with an array - if (!is_array($topic_urls)) { - $topic_urls = array($topic_urls); - } - - // set the mode to publish - $post_string = "hub.mode=publish"; - // loop through each topic url - foreach ($topic_urls as $topic_url) { - - // lightweight check that we're actually working w/ a valid url - if (!preg_match("|^https?://|i",$topic_url)) - throw new Exception('The specified topic url does not appear to be valid: '.$topic_url); - - // append the topic url parameters - $post_string .= "&hub.url=".urlencode($topic_url); - } - - // make the http post request and return true/false - // easy to over-write to use your own http function - if ($http_function) - return $http_function($this->hub_url,$post_string); - else - return $this->http_post($this->hub_url,$post_string); - } - - // returns any error message from the latest request - public function last_response() { - return $this->last_response; - } - - // default http function that uses curl to post to the hub endpoint - private function http_post($url, $post_string) { - - // add any additional curl options here - $options = array(CURLOPT_URL => $url, - CURLOPT_POST => true, - CURLOPT_POSTFIELDS => $post_string, - CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0"); - - $ch = curl_init(); - curl_setopt_array($ch, $options); - - $response = curl_exec($ch); - $this->last_response = $response; - $info = curl_getinfo($ch); - - curl_close($ch); - - // all good - if ($info['http_code'] == 204) - return true; - return false; - } -} - -?>
\ No newline at end of file |