fix some issues with friend suggestions on standalone sites with no 'suggestme' volunteers. This wrongly pulled up a site directory suggesting everybody on the site. While a better outcome than finding nobody, this does not fit with our ethical design goals. If there are no friends of friends, we will only suggest those who volunteer to be on the default suggestion list. Also do not attempt to load poco data from dead sites.

This commit is contained in:
zotlabs 2018-03-04 17:36:52 -08:00 committed by Mario Vavti
parent af46c192bf
commit f02314dfd8
4 changed files with 16 additions and 9 deletions

View File

@ -101,6 +101,11 @@ class Directory extends \Zotlabs\Web\Controller {
if($suggest) {
$r = suggestion_query(local_channel(),get_observer_hash());
if(! $r) {
notice( t('No default suggestions were found.') . EOL);
return;
}
// Remember in which order the suggestions were
$addresses = array();

View File

@ -32,7 +32,7 @@ class Sitelist extends \Zotlabs\Web\Controller {
$result = array('success' => false);
$r = q("select count(site_url) as total from site where site_type = %d $sql_extra ",
$r = q("select count(site_url) as total from site where site_type = %d and site_dead = 0 $sql_extra ",
intval(SITE_TYPE_ZOT)
);
@ -42,7 +42,7 @@ class Sitelist extends \Zotlabs\Web\Controller {
$result['start'] = $start;
$result['limit'] = $limit;
$r = q("select * from site where site_type = %d $sql_extra $sql_order $sql_limit",
$r = q("select * from site where site_type = %d and site_dead = 0 $sql_extra $sql_order $sql_limit",
intval(SITE_TYPE_ZOT)
);

View File

@ -1126,8 +1126,7 @@ function channel_export_items($channel_id, $start, $finish) {
/**
* @brief Loads a profile into the App structure.
*
* The function requires a writeable copy of the main App structure, and the
* nickname of a valid channel.
* The function requires the nickname of a valid channel.
*
* Permissions of the current observer are checked. If a restricted profile is available
* to the current observer, that will be loaded instead of the channel default profile.

View File

@ -52,7 +52,7 @@ function poco_load($xchan = '', $url = null) {
elseif($s['return_code'] == 404)
logger('poco_load: nothing found');
else
logger('poco_load: returns ' . print_r($s,true));
logger('poco_load: returns ' . print_r($s,true), LOGGER_DATA);
return;
}
@ -288,11 +288,14 @@ function suggestion_query($uid, $myxchan, $start = 0, $limit = 80) {
function update_suggestions() {
$dirmode = get_config('system', 'directory_mode');
if($dirmode === false)
$dirmode = DIRECTORY_MODE_NORMAL;
$dirmode = get_config('system', 'directory_mode', DIRECTORY_MODE_NORMAL);
if(($dirmode == DIRECTORY_MODE_PRIMARY) || ($dirmode == DIRECTORY_MODE_STANDALONE)) {
if($dirmode == DIRECTORY_MODE_STANDALONE) {
poco_load('', z_root() . '/poco');
return;
}
if($dirmode == DIRECTORY_MODE_PRIMARY) {
$url = z_root() . '/sitelist';
}
else {