diff options
author | Mike Macgirvin <mike@macgirvin.com> | 2010-10-01 02:28:06 -0700 |
---|---|---|
committer | Mike Macgirvin <mike@macgirvin.com> | 2010-10-01 02:28:06 -0700 |
commit | f5615068ca338153ab7dacf5c9ce46c6ed7b1ab4 (patch) | |
tree | 3a115617468d12b11877d38ce3f3c415c59981d7 | |
parent | 2ae38e3fbffe2f51fc1dc56e398625e3cebb667c (diff) | |
download | volse-hubzilla-f5615068ca338153ab7dacf5c9ce46c6ed7b1ab4.tar.gz volse-hubzilla-f5615068ca338153ab7dacf5c9ce46c6ed7b1ab4.tar.bz2 volse-hubzilla-f5615068ca338153ab7dacf5c9ce46c6ed7b1ab4.zip |
trialing pubsubhubbub - operational tweaks
-rw-r--r-- | include/items.php | 6 | ||||
-rw-r--r-- | include/notifier.php | 2 | ||||
-rw-r--r-- | mod/contacts.php | 22 | ||||
-rw-r--r-- | mod/pubsub.php | 20 | ||||
-rw-r--r-- | view/contact_edit.tpl | 1 |
5 files changed, 42 insertions, 9 deletions
diff --git a/include/items.php b/include/items.php index 2c4b77014..221a8a65c 100644 --- a/include/items.php +++ b/include/items.php @@ -153,10 +153,12 @@ function get_feed_for(&$a, $dfrn_id, $owner_id, $last_update, $direction = 0) { // public feeds get html, our own nodes use bbcode if($dfrn_id === '*') { + $allow = (($item['last-child']) ? 1 : 0); $item['body'] = bbcode($item['body']); $type = 'html'; } else { + $allow = ((($item['last-child']) && ($contact['rel']) && ($contact['rel'] != REL_FAN)) ? 1 : 0); $type = 'text'; } @@ -188,7 +190,7 @@ function get_feed_for(&$a, $dfrn_id, $owner_id, $last_update, $direction = 0) { '$content' => xmlify($item['body']), '$verb' => xmlify($verb), '$actobj' => $actobj, // do not xmlify - '$comment_allow' => ((($item['last-child']) && ($contact['rel']) && ($contact['rel'] != REL_FAN)) ? 1 : 0) + '$comment_allow' => $allow )); } else { @@ -206,7 +208,7 @@ function get_feed_for(&$a, $dfrn_id, $owner_id, $last_update, $direction = 0) { '$verb' => xmlify($verb), '$actobj' => $actobj, // do not xmlify '$parent_id' => xmlify($item['parent-uri']), - '$comment_allow' => (($item['last-child']) ? 1 : 0) + '$comment_allow' => $allow )); } } diff --git a/include/notifier.php b/include/notifier.php index ee2b22ca3..0166d0b37 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -302,7 +302,7 @@ } } - if((strlen($hub)) && ($cmd !== 'mail') && (followup == false)) { + if((strlen($hub)) && ($cmd !== 'mail') && ($followup == false)) { $params = 'hub.mode=publish&hub.url=' . urlencode($a->get_baseurl() . '/dfrn_poll/' . $owner['nickname'] ); post_url($hub,$params); } diff --git a/mod/contacts.php b/mod/contacts.php index 438b37aaf..8c2446979 100644 --- a/mod/contacts.php +++ b/mod/contacts.php @@ -41,7 +41,15 @@ function contacts_post(&$a) { return; } } + + $usehub = ((intval($_POST['usehub'])) ? 1 : 0); + if($orig_record[0]['usehub'] && (! $usehub)) { + // remove hub subscription + } + $priority = intval($_POST['priority']); + if($priority == (-1)) + if($priority > 5 || $priority < 0) $priority = 0; @@ -51,9 +59,10 @@ function contacts_post(&$a) { $reason = notags(trim($_POST['reason'])); - $r = q("UPDATE `contact` SET `profile-id` = %d, `priority` = %d , `rating` = %d, `reason` = '%s' + $r = q("UPDATE `contact` SET `profile-id` = %d, `usehub` = %d, `priority` = %d , `rating` = %d, `reason` = '%s' WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($profile_id), + intval($usehub), intval($priority), intval($rating), dbesc($reason), @@ -176,8 +185,19 @@ function contacts_content(&$a) { $url = $r[0]['url']; $sparkle = ''; } + + $huburl = get_config('system','huburl'); + if($huburl) { + // finish selector + $hubenable = ''; + } + else + $hubenable = ''; + + $o .= replace_macros($tpl,array( '$poll_interval' => contact_poll_interval($r[0]['priority']), + '$hubenable' => $hubenable, '$last_update' => (($r[0]['last-update'] == '0000-00-00 00:00:00') ? t('Never') : datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A')), diff --git a/mod/pubsub.php b/mod/pubsub.php index fa092049f..1feb80031 100644 --- a/mod/pubsub.php +++ b/mod/pubsub.php @@ -33,11 +33,13 @@ function pubsub_init(&$a) { if($_SERVER['REQUEST_METHOD'] === 'GET') { - $hub_mode = notags(trim($_GET['hub.mode'])); - $hub_topic = notags(trim($_GET['hub.topic'])); - $hub_challenge = notags(trim($_GET['hub.challenge'])); - $hub_lease = notags(trim($_GET['hub.lease_seconds'])); - $hub_verify = notags(trim($_GET['hub.verify_token'])); + $hub_mode = notags(trim($_GET['hub_mode'])); + $hub_topic = notags(trim($_GET['hub_topic'])); + $hub_challenge = notags(trim($_GET['hub_challenge'])); + $hub_lease = notags(trim($_GET['hub_lease_seconds'])); + $hub_verify = notags(trim($_GET['hub_verify_token'])); + + $subscribe = (($hub_mode === 'subscribe') ? 1 : 0); @@ -47,6 +49,7 @@ function pubsub_init(&$a) { if(! count($r)) hub_return(false, ''); + $owner = $r[0]; $sql_extra = ((strlen($hub_verify)) ? sprintf(" AND `hub-verify` = '%s' ", dbesc($hub_verify)) : ''); @@ -82,6 +85,10 @@ function pubsub_post(&$a) { $xml = file_get_contents('php://input'); + $debugging = get_config('system','debugging'); + if($debugging) + file_put_contents('pubsub.out',$xml); + $nick = (($a->argc > 1) ? notags(trim($a->argv[1])) : ''); $contact_id = (($a->argc > 2) ? intval($a->argv[2]) : 0); @@ -103,6 +110,9 @@ function pubsub_post(&$a) { $contact = $r[0]; $feedhub = ''; + + require_once('include/items.php'); + consume_feed($xml,$importer,$contact,$feedhub); hub_post_return(); diff --git a/view/contact_edit.tpl b/view/contact_edit.tpl index acea1da4e..0771849de 100644 --- a/view/contact_edit.tpl +++ b/view/contact_edit.tpl @@ -27,6 +27,7 @@ <div id="contact-edit-last-update-text">Last updated: <span id="contact-edit-last-updated">$last_update</span</div> <div id="contact-edit-poll-text">Update public posts: </div> $poll_interval + $hubenable </div> </div> <div id="contact-edit-end" ></div> |