Friendica Communications Platform
(please note that this is a clone of the repository at github, issues are handled there)
https://friendi.ca
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
942 B
44 lines
942 B
<?php |
|
|
|
use Friendica\Core\Config; |
|
use Friendica\Core\Worker; |
|
|
|
function directory_run(&$argv, &$argc){ |
|
$dir = Config::get('system', 'directory'); |
|
|
|
if (!strlen($dir)) { |
|
return; |
|
} |
|
|
|
if ($argc < 2) { |
|
directory_update_all(); |
|
return; |
|
} |
|
|
|
$dir .= "/submit"; |
|
|
|
$arr = array('url' => $argv[1]); |
|
|
|
call_hooks('globaldir_update', $arr); |
|
|
|
logger('Updating directory: ' . $arr['url'], LOGGER_DEBUG); |
|
if (strlen($arr['url'])) { |
|
fetch_url($dir . '?url=' . bin2hex($arr['url'])); |
|
} |
|
|
|
return; |
|
} |
|
|
|
function directory_update_all() { |
|
$r = q("SELECT `url` FROM `contact` |
|
INNER JOIN `profile` ON `profile`.`uid` = `contact`.`uid` |
|
INNER JOIN `user` ON `user`.`uid` = `contact`.`uid` |
|
WHERE `contact`.`self` AND `profile`.`net-publish` AND `profile`.`is-default` AND |
|
NOT `user`.`account_expired` AND `user`.`verified`"); |
|
|
|
if (dbm::is_result($r)) { |
|
foreach ($r AS $user) { |
|
Worker::add(PRIORITY_LOW, 'directory', $user['url']); |
|
} |
|
} |
|
}
|
|
|