use Friendica\Util\Network;
use Friendica\Util\Strings;
-require_once 'include/dba.php';
-
/**
* @brief This class handles GlobalContact related functions
*/
* @param string $mode Search mode (e.g. "community")
*
* @return array with search results
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function searchByName($search, $mode = '')
{
* @param integer $cid Contact ID
* @param integer $zcid Global Contact ID
* @return void
+ * @throws Exception
*/
public static function link($gcid, $uid = 0, $cid = 0, $zcid = 0)
{
/**
* @brief Sanitize the given gcontact data
*
- * @param array $gcontact array with gcontact data
- * @throw Exception
- *
* Generation:
* 0: No definition
* 1: Profiles on this server
* 2: Contacts of profiles on this server
* 3: Contacts of contacts of profiles on this server
* 4: ...
+ *
+ * @param array $gcontact array with gcontact data
* @return array $gcontact
+ * @throws Exception
*/
public static function sanitize($gcontact)
{
* @param integer $uid id
* @param integer $cid id
* @return integer
+ * @throws Exception
*/
public static function countCommonFriends($uid, $cid)
{
* @param integer $uid id
* @param integer $zcid zcid
* @return integer
+ * @throws Exception
*/
public static function countCommonFriendsZcid($uid, $zcid)
{
* @param integer $limit optional, default 9999
* @param boolean $shuffle optional, default false
* @return object
+ * @throws Exception
*/
public static function commonFriends($uid, $cid, $start = 0, $limit = 9999, $shuffle = false)
{
* @param integer $limit optional, default 9999
* @param boolean $shuffle optional, default false
* @return object
+ * @throws Exception
*/
public static function commonFriendsZcid($uid, $zcid, $start = 0, $limit = 9999, $shuffle = false)
{
* @param integer $uid user
* @param integer $cid cid
* @return integer
+ * @throws Exception
*/
public static function countAllFriends($uid, $cid)
{
* @param integer $start optional, default 0
* @param integer $limit optional, default 80
* @return array
+ * @throws Exception
*/
public static function allFriends($uid, $cid, $start = 0, $limit = 80)
{
}
/**
- * @param object $uid user
+ * @param int $uid user
* @param integer $start optional, default 0
* @param integer $limit optional, default 80
* @return array
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function suggestionQuery($uid, $start = 0, $limit = 80)
{
// return $list;
//}
- $network = [Protocol::DFRN];
+ $network = [Protocol::DFRN, Protocol::ACTIVITYPUB];
if (Config::get('system', 'diaspora_enabled')) {
$network[] = Protocol::DIASPORA;
where uid = %d and not gcontact.nurl in ( select nurl from contact where uid = %d )
AND NOT `gcontact`.`name` IN (SELECT `name` FROM `contact` WHERE `uid` = %d)
AND NOT `gcontact`.`id` IN (SELECT `gcid` FROM `gcign` WHERE `uid` = %d)
- AND `gcontact`.`updated` >= '%s'
+ AND `gcontact`.`updated` >= '%s' AND NOT `gcontact`.`hide`
AND `gcontact`.`last_contact` >= `gcontact`.`last_failure`
AND `gcontact`.`network` IN (%s)
GROUP BY `glink`.`gcid` ORDER BY `gcontact`.`updated` DESC,`total` DESC LIMIT %d, %d",
/**
* @return void
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function updateSuggestions()
{
- $a = get_app();
-
$done = [];
/// @TODO Check if it is really neccessary to poll the own server
* @param string $url Contact url
*
* @return string Contact url with the wanted parts
+ * @throws Exception
*/
public static function cleanContactUrl($url)
{
*
* @param array $contact contact array (called by reference)
* @return void
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function fixAlternateContactAddress(&$contact)
{
* @param array $contact contact array
*
* @return bool|int Returns false if not found, integer if contact was found
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function getId($contact)
{
* @param array $contact contact array
*
* @return bool|int Returns false if not found, integer if contact was found
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function update($contact)
{
'location' => $contact['location'], 'about' => $contact['about']];
// Don't update the birthday field if not set or invalid
- if (empty($contact['birthday']) || ($contact['birthday'] < '0001-01-01')) {
+ if (empty($contact['birthday']) || ($contact['birthday'] <= DBA::NULL_DATE)) {
unset($fields['bd']);
}
*
* @param string $url profile link
* @return void
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function updateFromProbe($url)
{
* @brief Update the gcontact entry for a given user id
*
* @param int $uid User ID
- * @return void
+ * @return bool
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function updateForUser($uid)
{
* If the "Statistics" addon is enabled (See http://gstools.org/ for details) we query user data with this.
*
* @param string $server Server address
- * @return void
+ * @return bool
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function fetchGsUsers($server)
{
$statistics = json_decode($curlResult->getBody());
- if (!empty($statistics->config)) {
- if ($statistics->config->instance_with_ssl) {
+ if (!empty($statistics->config->instance_address)) {
+ if (!empty($statistics->config->instance_with_ssl)) {
$server = "https://";
} else {
$server = "http://";
$server .= $statistics->config->instance_address;
$hostname = $statistics->config->instance_address;
- } elseif (!empty($statistics)) {
- if ($statistics->instance_with_ssl) {
+ } elseif (!empty($statistics->instance_address)) {
+ if (!empty($statistics->instance_with_ssl)) {
$server = "https://";
} else {
$server = "http://";
/**
* @brief Asking GNU Social server on a regular base for their user data
* @return void
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws \ImagickException
*/
public static function discoverGsUsers()
{
/**
* @return string
+ * @throws Exception
*/
public static function getRandomUrl()
{