Bugfix: Public posts to Diaspora could fail
This commit is contained in:
parent
d7410f9e47
commit
8d9a905c80
2 changed files with 22 additions and 3 deletions
|
@ -559,10 +559,11 @@ function probe_url($url, $mode = PROBE_NORMAL, $level = 1) {
|
||||||
$pubkey = $hcard_key;
|
$pubkey = $hcard_key;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if($diaspora && $diaspora_base && $diaspora_guid) {
|
if($diaspora && $diaspora_base && $diaspora_guid) {
|
||||||
if($mode == PROBE_DIASPORA || ! $notify) {
|
$diaspora_notify = $diaspora_base.'receive/users/'.$diaspora_guid;
|
||||||
$notify = $diaspora_base . 'receive/users/' . $diaspora_guid;
|
|
||||||
|
if($mode == PROBE_DIASPORA || ! $notify || ($notify == $diaspora_notify)) {
|
||||||
|
$notify = $diaspora_notify;
|
||||||
$batch = $diaspora_base . 'receive/public' ;
|
$batch = $diaspora_base . 'receive/public' ;
|
||||||
}
|
}
|
||||||
if(strpos($url,'@'))
|
if(strpos($url,'@'))
|
||||||
|
|
|
@ -229,6 +229,24 @@ function cron_run(&$argv, &$argc){
|
||||||
set_config('system','cache_last_cleared', time());
|
set_config('system','cache_last_cleared', time());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Repair missing Diaspora settings
|
||||||
|
$r = q("SELECT `id`, `url` FROM `contact`
|
||||||
|
WHERE `uid` > 0 AND `network` = '%s' AND (`batch` = '' OR `notify` = '' OR `poll` = '' OR pubkey = '')
|
||||||
|
ORDER BY RAND() LIMIT 50", dbesc(NETWORK_DIASPORA));
|
||||||
|
if ($r) {
|
||||||
|
foreach ($r AS $contact) {
|
||||||
|
if (poco_reachable($contact["url"])) {
|
||||||
|
$data = probe_url($contact["url"]);
|
||||||
|
if ($data["network"] == NETWORK_DIASPORA) {
|
||||||
|
logger("Repair contact ".$contact["id"]." ".$contact["url"], LOGGER_DEBUG);
|
||||||
|
q("UPDATE `contact` SET `batch` = '%s', `notify` = '%s', `poll` = '%s', pubkey = '%s' WHERE `id` = %d",
|
||||||
|
dbesc($data["batch"]), dbesc($data["notify"]), dbesc($data["poll"]), dbesc($data["pubkey"]),
|
||||||
|
intval($contact["id"]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$manual_id = 0;
|
$manual_id = 0;
|
||||||
$generation = 0;
|
$generation = 0;
|
||||||
$force = false;
|
$force = false;
|
||||||
|
|
Loading…
Reference in a new issue