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:
parent
be6619d9c0
commit
59a2057fa0
@ -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();
|
||||
|
@ -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)
|
||||
);
|
||||
|
||||
|
@ -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.
|
||||
|
@ -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 {
|
||||
|
Reference in New Issue
Block a user