1
0
Fork 0

Merge branch 'pull'

This commit is contained in:
friendica 2012-02-20 18:07:16 -08:00
commit 6edd6d8ae1
27 changed files with 50 additions and 51 deletions

View file

@ -1,14 +1,14 @@
Friendika Installation Friendica Installation
We've tried very hard to ensure that Friendika will run on commodity hosting We've tried very hard to ensure that Friendica will run on commodity hosting
platforms - such as those used to host Wordpress blogs and Drupal websites. platforms - such as those used to host Wordpress blogs and Drupal websites.
But be aware that Friendika is more than a simple web application. It is a But be aware that Friendica is more than a simple web application. It is a
complex communications system which more closely resembles an email server complex communications system which more closely resembles an email server
than a web server. For reliability and performance, messages are delivered in than a web server. For reliability and performance, messages are delivered in
the background and are queued for later delivery when sites are down. This the background and are queued for later delivery when sites are down. This
kind of functionality requires a bit more of the host system than the typical kind of functionality requires a bit more of the host system than the typical
blog. Not every PHP/MySQL hosting provider will be able to support Friendika. blog. Not every PHP/MySQL hosting provider will be able to support Friendica.
Many will. But please review the requirements and confirm these with your Many will. But please review the requirements and confirm these with your
hosting provider prior to installation. hosting provider prior to installation.
@ -21,9 +21,9 @@ impact the installation requirements.
Decide if you will use SSL and obtain an SSL cert. Communications with the Decide if you will use SSL and obtain an SSL cert. Communications with the
Diaspora network MAY require both SSL AND an SSL cert signed by a CA which is Diaspora network MAY require both SSL AND an SSL cert signed by a CA which is
recognised by the major browsers. Friendika will work with self-signed certs recognised by the major browsers. Friendica will work with self-signed certs
but Diaspora communication may not. For best results, install your cert PRIOR but Diaspora communication may not. For best results, install your cert PRIOR
to installing Friendika and when visiting your site for the initial to installing Friendica and when visiting your site for the initial
installation in step 5, please use the https: link. (Use the http: or non-SSL installation in step 5, please use the https: link. (Use the http: or non-SSL
link if your cert is self-signed). link if your cert is self-signed).
@ -51,7 +51,7 @@ php.ini file [or see 'poormancron' in section 8]
directory/path component in the URL) is preferred. This is REQUIRED if directory/path component in the URL) is preferred. This is REQUIRED if
you wish to communicate with the Diaspora network. you wish to communicate with the Diaspora network.
2. Unpack the Friendika files into the root of your web server document area. 2. Unpack the Friendica files into the root of your web server document area.
- If you copy the directory tree to your webserver, make sure - If you copy the directory tree to your webserver, make sure
that you also copy .htaccess - as "dot" files are often hidden that you also copy .htaccess - as "dot" files are often hidden
@ -106,7 +106,7 @@ one shown, substituting for your unique paths and settings:
You can generally find the location of PHP by executing "which php". If you You can generally find the location of PHP by executing "which php". If you
have troubles with this section please contact your hosting provider for have troubles with this section please contact your hosting provider for
assistance. Friendika will not work correctly if you cannot perform this step. assistance. Friendica will not work correctly if you cannot perform this step.
You should also be sure that $a->config['php_path'] is set correctly, it should You should also be sure that $a->config['php_path'] is set correctly, it should
look like (changing it to the correct PHP location) look like (changing it to the correct PHP location)
@ -114,7 +114,7 @@ look like (changing it to the correct PHP location)
$a->config['php_path'] = '/usr/local/php53/bin/php' $a->config['php_path'] = '/usr/local/php53/bin/php'
Alternative: You may be able to use the 'poormancron' plugin to perform this Alternative: You may be able to use the 'poormancron' plugin to perform this
step if you are using a recent Friendika release. 'poormancron' may result in step if you are using a recent Friendica release. 'poormancron' may result in
perfomance and memory issues and is only suitable for small sites with one or perfomance and memory issues and is only suitable for small sites with one or
two users and a handful of contacts. To do this, edit the file two users and a handful of contacts. To do this, edit the file
".htconfig.php" and look for a line describing your plugins. On a fresh ".htconfig.php" and look for a line describing your plugins. On a fresh
@ -173,7 +173,7 @@ generally be world-readable.
Ensure that mod-rewite is installed and working, and that your Ensure that mod-rewite is installed and working, and that your
.htaccess file is being used. To verify the latter, create a file test.out .htaccess file is being used. To verify the latter, create a file test.out
containing the word "test" in the top directory of Friendika, make it world containing the word "test" in the top directory of Friendica, make it world
readable and point your web browser to readable and point your web browser to
http://yoursitenamehere.com/test.out http://yoursitenamehere.com/test.out

View file

@ -23,7 +23,7 @@ $default_timezone = 'America/Los_Angeles';
// What is your site name? // What is your site name?
$a->config['sitename'] = "Friendika Social Network"; $a->config['sitename'] = "Friendica Social Network";
// Your choices are REGISTER_OPEN, REGISTER_APPROVE, or REGISTER_CLOSED. // Your choices are REGISTER_OPEN, REGISTER_APPROVE, or REGISTER_CLOSED.
// Be certain to create your own personal account before setting // Be certain to create your own personal account before setting

View file

@ -15,8 +15,8 @@
id="svg2" id="svg2"
version="1.1" version="1.1"
inkscape:version="0.48.0 r9654" inkscape:version="0.48.0 r9654"
sodipodi:docname="friendika.svg" sodipodi:docname="friendica.svg"
inkscape:export-filename="/home/meta/Documents/My random images/friendika.png" inkscape:export-filename="/home/meta/Documents/My random images/friendica.png"
inkscape:export-xdpi="80.552788" inkscape:export-xdpi="80.552788"
inkscape:export-ydpi="80.552788"> inkscape:export-ydpi="80.552788">
<defs <defs

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 7.2 KiB

View file

@ -314,7 +314,7 @@ function scrape_feed($url) {
* *
* PROBE_DIASPORA has a bias towards returning Diaspora information * PROBE_DIASPORA has a bias towards returning Diaspora information
* while PROBE_NORMAL has a bias towards dfrn/zot - in the case where * while PROBE_NORMAL has a bias towards dfrn/zot - in the case where
* an address (such as a Friendika address) supports more than one type * an address (such as a Friendica address) supports more than one type
* of network. * of network.
* *
*/ */

View file

@ -157,7 +157,7 @@ function contact_select($selname, $selclass, $preselected = false, $size = 4, $p
$o = ''; $o = '';
// When used for private messages, we limit correspondence to mutual DFRN/Friendika friends and the selector // When used for private messages, we limit correspondence to mutual DFRN/Friendica friends and the selector
// to one recipient. By default our selector allows multiple selects amongst all contacts. // to one recipient. By default our selector allows multiple selects amongst all contacts.
$sql_extra = ''; $sql_extra = '';

View file

@ -179,7 +179,7 @@
'updated' => api_date(null), 'updated' => api_date(null),
'atom_updated' => datetime_convert('UTC','UTC','now',ATOM_TIME), 'atom_updated' => datetime_convert('UTC','UTC','now',ATOM_TIME),
'language' => $user_info['language'], 'language' => $user_info['language'],
'logo' => $a->get_baseurl()."/images/friendika-32.png", 'logo' => $a->get_baseurl()."/images/friendica-32.png",
); );
return $arr; return $arr;
@ -739,7 +739,7 @@
if (local_user()===false) return false; if (local_user()===false) return false;
$user_info = api_get_user($a); $user_info = api_get_user($a);
// in friendika starred item are private // in friendica starred item are private
// return favorites only for self // return favorites only for self
logger('api_favorites: self:' . $user_info['self']); logger('api_favorites: self:' . $user_info['self']);
@ -912,7 +912,7 @@
function api_statusnet_config(&$a,$type) { function api_statusnet_config(&$a,$type) {
$name = $a->config['sitename']; $name = $a->config['sitename'];
$server = $a->get_hostname(); $server = $a->get_hostname();
$logo = $a->get_baseurl() . '/images/friendika-64.png'; $logo = $a->get_baseurl() . '/images/friendica-64.png';
$email = $a->config['admin_email']; $email = $a->config['admin_email'];
$closed = (($a->config['register_policy'] == REGISTER_CLOSED) ? 'true' : 'false'); $closed = (($a->config['register_policy'] == REGISTER_CLOSED) ? 'true' : 'false');
$private = (($a->config['system']['block_public']) ? 'true' : 'false'); $private = (($a->config['system']['block_public']) ? 'true' : 'false');

View file

@ -148,7 +148,7 @@ function nav(&$a) {
$banner = get_config('system','banner'); $banner = get_config('system','banner');
if($banner === false) if($banner === false)
$banner .= '<a href="http://friendica.com"><img id="logo-img" src="images/friendika-32.png" alt="logo" /></a><span id="logo-text"><a href="http://friendica.com">Friendica</a></span>'; $banner .= '<a href="http://friendica.com"><img id="logo-img" src="images/friendica-32.png" alt="logo" /></a><span id="logo-text"><a href="http://friendica.com">Friendica</a></span>';
$tpl = get_markup_template('nav.tpl'); $tpl = get_markup_template('nav.tpl');

View file

@ -349,7 +349,7 @@ function poller_run($argv, $argc){
|| ($contact['network'] === NETWORK_DIASPORA) || ($contact['network'] === NETWORK_DIASPORA)
|| ($contact['network'] === NETWORK_FEED) ) { || ($contact['network'] === NETWORK_FEED) ) {
// Upgrading DB fields from an older Friendika version // Upgrading DB fields from an older Friendica version
// Will only do this once per notify-enabled OStatus contact // Will only do this once per notify-enabled OStatus contact
// or if relationship changes // or if relationship changes

View file

@ -759,7 +759,7 @@ function smilies($s, $sample = false) {
'<img src="' . $a->get_baseurl() . '/images/smiley-facepalm.gif" alt=":facepalm" />', '<img src="' . $a->get_baseurl() . '/images/smiley-facepalm.gif" alt=":facepalm" />',
'<img src="' . $a->get_baseurl() . '/images/smiley-bangheaddesk.gif" alt=":headdesk" />', '<img src="' . $a->get_baseurl() . '/images/smiley-bangheaddesk.gif" alt=":headdesk" />',
'<a href="http://project.friendika.com">~friendika <img src="' . $a->get_baseurl() . '/images/friendika-16.png" alt="~friendika" /></a>', '<a href="http://project.friendika.com">~friendika <img src="' . $a->get_baseurl() . '/images/friendika-16.png" alt="~friendika" /></a>',
'<a href="http://friendica.com">~friendica <img src="' . $a->get_baseurl() . '/images/friendika-16.png" alt="~friendica" /></a>', '<a href="http://friendica.com">~friendica <img src="' . $a->get_baseurl() . '/images/friendica-16.png" alt="~friendica" /></a>',
'<a href="http://diasporafoundation.org">Diaspora<img src="' . $a->get_baseurl() . '/images/diaspora.png" alt="Diaspora*" /></a>', '<a href="http://diasporafoundation.org">Diaspora<img src="' . $a->get_baseurl() . '/images/diaspora.png" alt="Diaspora*" /></a>',
); );

View file

@ -1,5 +1,5 @@
/** /**
* Friendika people autocomplete * Friendica people autocomplete
* *
* require jQuery, jquery.textareas * require jQuery, jquery.textareas
*/ */

View file

@ -289,7 +289,7 @@ class OAuthRequest {
} }
} }
// fix for friendika redirect system // fix for friendica redirect system
$http_url = substr($http_url, 0, strpos($http_url,$parameters['q'])+strlen($parameters['q'])); $http_url = substr($http_url, 0, strpos($http_url,$parameters['q'])+strlen($parameters['q']));
unset( $parameters['q'] ); unset( $parameters['q'] );

2
mod/dfrn_confirm.php Executable file → Normal file
View file

@ -252,7 +252,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
$message = unxmlify($xml->message); // human readable text of what may have gone wrong. $message = unxmlify($xml->message); // human readable text of what may have gone wrong.
switch($status) { switch($status) {
case 0: case 0:
notice( t("Confirmation completed successfully.") . EOL); info( t("Confirmation completed successfully.") . EOL);
if(strlen($message)) if(strlen($message))
notice( t('Remote site reported: ') . $message . EOL); notice( t('Remote site reported: ') . $message . EOL);
break; break;

View file

@ -677,7 +677,7 @@ function dfrn_request_content(&$a) {
'$no' => t('No'), '$no' => t('No'),
'$add_note' => t('Add a personal note:'), '$add_note' => t('Add a personal note:'),
'$page_desc' => $page_desc, '$page_desc' => $page_desc,
'$friendika' => t('Friendica'), '$friendica' => t('Friendica'),
'$statusnet' => t('StatusNet/Federated Social Web'), '$statusnet' => t('StatusNet/Federated Social Web'),
'$diaspora' => t('Diaspora'), '$diaspora' => t('Diaspora'),
'$diasnote' => t('- please share from your own site as noted above'), '$diasnote' => t('- please share from your own site as noted above'),

View file

@ -27,7 +27,7 @@ function dirfind_content(&$a) {
$p = (($a->pager['page'] != 1) ? '&p=' . $a->pager['page'] : ''); $p = (($a->pager['page'] != 1) ? '&p=' . $a->pager['page'] : '');
if(strlen(get_config('system','directory_submit_url'))) if(strlen(get_config('system','directory_submit_url')))
$x = fetch_url('http://dir.friendika.com/lsearch?f=' . $p . '&search=' . urlencode($search)); $x = fetch_url('http://dir.friendica.com/lsearch?f=' . $p . '&search=' . urlencode($search));
//TODO fallback local search if global dir not available. //TODO fallback local search if global dir not available.
// else // else

View file

@ -31,7 +31,7 @@ function match_content(&$a) {
$params['p'] = $a->pager['page']; $params['p'] = $a->pager['page'];
if(strlen(get_config('system','directory_submit_url'))) if(strlen(get_config('system','directory_submit_url')))
$x = post_url('http://dir.friendika.com/msearch', $params); $x = post_url('http://dir.friendica.com/msearch', $params);
else else
$x = post_url($a->get_baseurl() . '/msearch', $params); $x = post_url($a->get_baseurl() . '/msearch', $params);

9
mod/ping.php Executable file → Normal file
View file

@ -5,6 +5,7 @@ require_once("include/datetime.php");
function ping_init(&$a) { function ping_init(&$a) {
header("Content-type: text/xml"); header("Content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\" ?> echo "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>
<result>"; <result>";
@ -90,22 +91,20 @@ function ping_init(&$a) {
} }
$intros1 = q("SELECT COUNT(`intro`.`id`) AS `total`, `intro`.`id`, `intro`.`datetime`, $intros1 = q("SELECT `intro`.`id`, `intro`.`datetime`,
`fcontact`.`name`, `fcontact`.`url`, `fcontact`.`photo` `fcontact`.`name`, `fcontact`.`url`, `fcontact`.`photo`
FROM `intro` LEFT JOIN `fcontact` ON `intro`.`fid` = `fcontact`.`id` FROM `intro` LEFT JOIN `fcontact` ON `intro`.`fid` = `fcontact`.`id`
WHERE `intro`.`uid` = %d AND `intro`.`blocked` = 0 AND `intro`.`ignore` = 0 AND `intro`.`fid`!=0", WHERE `intro`.`uid` = %d AND `intro`.`blocked` = 0 AND `intro`.`ignore` = 0 AND `intro`.`fid`!=0",
intval(local_user()) intval(local_user())
); );
$intros2 = q("SELECT COUNT(`intro`.`id`) AS `total`, `intro`.`id`, `intro`.`datetime`, $intros2 = q("SELECT `intro`.`id`, `intro`.`datetime`,
`contact`.`name`, `contact`.`url`, `contact`.`photo` `contact`.`name`, `contact`.`url`, `contact`.`photo`
FROM `intro` LEFT JOIN `contact` ON `intro`.`contact-id` = `contact`.`id` FROM `intro` LEFT JOIN `contact` ON `intro`.`contact-id` = `contact`.`id`
WHERE `intro`.`uid` = %d AND `intro`.`blocked` = 0 AND `intro`.`ignore` = 0 AND `intro`.`contact-id`!=0", WHERE `intro`.`uid` = %d AND `intro`.`blocked` = 0 AND `intro`.`ignore` = 0 AND `intro`.`contact-id`!=0",
intval(local_user()) intval(local_user())
); );
$intro = $intros1[0]['total'] + $intros2[0]['total']; $intro = count($intros1) + count($intros2);
if ($intros1[0]['total']==0) $intros1=Array();
if ($intros2[0]['total']==0) $intros2=Array();
$intros = $intros1+$intros2; $intros = $intros1+$intros2;

View file

@ -115,7 +115,7 @@ When strings are added or modified in source, you could run
to extract strings from source files and join them with the existing .po file: to extract strings from source files and join them with the existing .po file:
new strings are added, the existing are not overwritten. new strings are added, the existing are not overwritten.
If you already translated Friendika using strings.php, you could import your old If you already translated Friendica using strings.php, you could import your old
translation to messages.po. Run: translation to messages.po. Run:
$ php util/php2po.php view/<language>/strings.php $ php util/php2po.php view/<language>/strings.php

View file

@ -62,7 +62,7 @@
<div class="background"></div> <div class="background"></div>
<div class="panel"> <div class="panel">
<div class="panel_in"> <div class="panel_in">
<h1>Friendika Update</h1> <h1>Friendica Update</h1>
<div class="panel_text"></div> <div class="panel_text"></div>
<div class="panel_actions"> <div class="panel_actions">
<input type="button" value="$close" class="panel_action_close"> <input type="button" value="$close" class="panel_action_close">
@ -81,7 +81,7 @@
{{ if $canwrite }} {{ if $canwrite }}
<div class="submit"><input type="submit" name="remoteupdate" value="$submit" /></div> <div class="submit"><input type="submit" name="remoteupdate" value="$submit" /></div>
{{ else }} {{ else }}
<h3>Your friendika installation is not writable by web server.</h3> <h3>Your friendica installation is not writable by web server.</h3>
{{ if $canftp }} {{ if $canftp }}
<p>You can try to update via FTP</p> <p>You can try to update via FTP</p>
{{ inc field_input.tpl with $field=$ftphost }}{{ endinc }} {{ inc field_input.tpl with $field=$ftphost }}{{ endinc }}

View file

@ -4,7 +4,7 @@
<p id="dfrn-request-intro"> <p id="dfrn-request-intro">
$page_desc<br /> $page_desc<br />
<ul id="dfrn-request-networks"> <ul id="dfrn-request-networks">
<li><a href="http://friendika.com" title="$friendika">$friendika</a></li> <li><a href="http://friendica.com" title="$friendica">$friendica</a></li>
<li><a href="http://joindiaspora.com" title="$diaspora">$diaspora</a> $diasnote</li> <li><a href="http://joindiaspora.com" title="$diaspora">$diaspora</a> $diasnote</li>
<li><a href="http://ostatus.org" title="$public_net" >$statusnet</a></li> <li><a href="http://ostatus.org" title="$public_net" >$statusnet</a></li>
</ul> </ul>

View file

@ -53,8 +53,8 @@ $a->config['php_path'] = '$phpath';
// URL adresy globálního adresáře. // URL adresy globálního adresáře.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - také zvaný jako pubsubhubbub URL. Tímto zajistíte doručování veřejných přízpěvků stejně rychle jako těch soukromých // PuSH - také zvaný jako pubsubhubbub URL. Tímto zajistíte doručování veřejných přízpěvků stejně rychle jako těch soukromých

View file

@ -49,8 +49,8 @@ $a->config['php_path'] = '$phpath';
// Location of global directory submission page. // Location of global directory submission page.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts // PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts

View file

@ -4,7 +4,7 @@
<p id="dfrn-request-intro"> <p id="dfrn-request-intro">
$page_desc<br /> $page_desc<br />
<ul id="dfrn-request-networks"> <ul id="dfrn-request-networks">
<li><a href="http://friendika.com" title="$friendika">$friendika</a></li> <li><a href="http://friendica.com" title="$friendica">$friendica</a></li>
<li><a href="http://joindiaspora.com" title="$diaspora">$diaspora</a> $diasnote</li> <li><a href="http://joindiaspora.com" title="$diaspora">$diaspora</a> $diasnote</li>
<li><a href="http://ostatus.org" title="$public_net" >$statusnet</a></li> <li><a href="http://ostatus.org" title="$public_net" >$statusnet</a></li>
</ul> </ul>

View file

@ -49,8 +49,8 @@ $a->config['php_path'] = '$phpath';
// Location of global directory submission page. // Location of global directory submission page.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts // PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts

View file

@ -49,8 +49,8 @@ $a->config['php_path'] = '$phpath';
// Location of global directory submission page. // Location of global directory submission page.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts // PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts

View file

@ -49,8 +49,8 @@ $a->config['php_path'] = '$phpath';
// Location of global directory submission page. // Location of global directory submission page.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts // PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts

View file

@ -49,8 +49,8 @@ $a->config['php_path'] = '$phpath';
// Location of global directory submission page. // Location of global directory submission page.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts // PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts

View file

@ -49,8 +49,8 @@ $a->config['php_path'] = '$phpath';
// Location of global directory submission page. // Location of global directory submission page.
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit'; $a->config['system']['directory_submit_url'] = 'http://dir.friendica.com/submit';
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search='; $a->config['system']['directory_search_url'] = 'http://dir.friendica.com/directory?search=';
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts // PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts