' . t('Public Sites') . '';
$o .= '
' .
t('The listed sites allow public registration into the Hubzilla. All sites in the matrix are interlinked so membership on any of them conveys membership in the matrix as a whole. Some sites may require subscription or provide tiered service plans. The provider links may provide additional details.') . '
' . EOL;
$ret = z_fetch_url($url);
if($ret['success']) {
$j = json_decode($ret['body'],true);
if($j) {
$rate_meta = ((local_channel()) ? '' . t('Rate this hub') . ' | ' : '');
$o .= '' . t('Site URL') . ' | ' . t('Access Type') . ' | ' . t('Registration Policy') . ' | ' . t('Location') . ' | ' . t('View hub ratings') . ' | ' . $rate_meta . '
';
if($j['sites']) {
foreach($j['sites'] as $jj) {
$host = strtolower(substr($jj['url'],strpos($jj['url'],'://')+3));
$rate_links = ((local_channel()) ? ' ' . t('Rate') . ' | ' : '');
$o .= '' . '' . $jj['url'] . '' . ' | ' . $jj['access'] . ' | ' . $jj['register'] . ' | ' . $jj['location'] . ' | ' . t('View ratings') . ' | ' . $rate_links . '
';
}
}
$o .= '
';
}
}
return $o;
}