mirror of
https://github.com/friendica/friendica
synced 2024-12-23 08:00:16 +00:00
New function for fetching contact data
This commit is contained in:
parent
fb4adc83dc
commit
f3ce812a9e
2 changed files with 88 additions and 2 deletions
|
@ -191,6 +191,92 @@ function unmark_for_death($contact) {
|
|||
);
|
||||
}}
|
||||
|
||||
function contact_data($url, $uid = -1) {
|
||||
require_once("mod/proxy.php");
|
||||
require_once("include/bbcode.php");
|
||||
|
||||
if ($uid == -1)
|
||||
$uid = local_user();
|
||||
|
||||
$r = q("SELECT `url`, `name`, `nick`, `photo`, `location`, `about`, `keywords`, `gender`, `community`, `network` FROM `gcontact` WHERE `nurl` = '%s' LIMIT 1",
|
||||
dbesc(normalise_link($url)));
|
||||
|
||||
if ($r)
|
||||
$profile = $r[0];
|
||||
else {
|
||||
$r = q("SELECT `url`, `name`, `nick`, `avatar` AS `photo`, `location`, `about` FROM `unique_contacts` WHERE `url` = '%s'",
|
||||
dbesc(normalise_link($url)));
|
||||
|
||||
if (count($r)) {
|
||||
$profile = $r[0];
|
||||
$profile["keywords"] = "";
|
||||
$profile["gender"] = "";
|
||||
$profile["community"] = false;
|
||||
$profile["network"] = "";
|
||||
}
|
||||
}
|
||||
|
||||
// Fetching further contact data from the contact table
|
||||
$r = q("SELECT `id`, `uid`, `url`, `network`, `name`, `nick`, `location`, `about`, `keywords`, `gender`, `photo`, `addr`, `forum`, `prv`, `bd` FROM `contact` WHERE `nurl` = '%s' AND `uid` = %d AND `network` = '%s'",
|
||||
dbesc(normalise_link($url)), intval($uid), dbesc($profile["network"]));
|
||||
|
||||
if (!count($r))
|
||||
$r = q("SELECT `id`, `uid`, `url`, `network`, `name`, `nick`, `location`, `about`, `keywords`, `gender`, `photo`, `addr`, `forum`, `prv`, `bd` FROM `contact` WHERE `nurl` = '%s' AND `uid` = %d",
|
||||
dbesc(normalise_link($url)), intval($uid));
|
||||
|
||||
if (!count($r))
|
||||
$r = q("SELECT `id`, `uid`, `url`, `network`, `name`, `nick`, `location`, `about`, `keywords`, `gender`, `photo`, `addr`, `forum`, `prv`, `bd` FROM `contact` WHERE `nurl` = '%s' AND `uid` = 0",
|
||||
dbesc(normalise_link($url)));
|
||||
|
||||
if ($r) {
|
||||
if (isset($r[0]["url"]) AND $r[0]["url"])
|
||||
$profile["url"] = $r[0]["url"];
|
||||
if (isset($r[0]["name"]) AND $r[0]["name"])
|
||||
$profile["name"] = $r[0]["name"];
|
||||
if (isset($r[0]["nick"]) AND $r[0]["nick"] AND ($profile["nick"] == ""))
|
||||
$profile["nick"] = $r[0]["nick"];
|
||||
if (isset($r[0]["photo"]) AND $r[0]["photo"])
|
||||
$profile["photo"] = $r[0]["photo"];
|
||||
if (isset($r[0]["location"]) AND $r[0]["location"])
|
||||
$profile["location"] = $r[0]["location"];
|
||||
if (isset($r[0]["about"]) AND $r[0]["about"])
|
||||
$profile["about"] = $r[0]["about"];
|
||||
if (isset($r[0]["keywords"]) AND $r[0]["keywords"])
|
||||
$profile["keywords"] = $r[0]["keywords"];
|
||||
if (isset($r[0]["gender"]) AND $r[0]["gender"])
|
||||
$profile["gender"] = $r[0]["gender"];
|
||||
if (isset($r[0]["forum"]) AND isset($r[0]["prv"]))
|
||||
$profile["community"] = ($r[0]["forum"] OR $r[0]["prv"]);
|
||||
if (isset($r[0]["network"]) AND $r[0]["network"])
|
||||
$profile["network"] = $r[0]["network"];
|
||||
if (isset($r[0]["addr"]) AND $r[0]["addr"])
|
||||
$profile["addr"] = $r[0]["addr"];
|
||||
if (isset($r[0]["bd"]) AND $r[0]["bd"])
|
||||
$profile["bd"] = $r[0]["bd"];
|
||||
if ($r[0]["uid"] == 0)
|
||||
$profile["cid"] = 0;
|
||||
else
|
||||
$profile["cid"] = $r[0]["id"];
|
||||
} else
|
||||
$profile["cid"] = 0;
|
||||
|
||||
if (isset($profile["photo"]))
|
||||
$profile["photo"] = proxy_url($profile["photo"], false, PROXY_SIZE_SMALL);
|
||||
|
||||
if (isset($profile["location"]))
|
||||
$profile["location"] = bbcode($profile["location"]);
|
||||
|
||||
if (isset($profile["about"]))
|
||||
$profile["about"] = bbcode($profile["about"]);
|
||||
|
||||
if (($profile["cid"] == 0) AND ($profile["network"] == NETWORK_DIASPORA)) {
|
||||
$profile["location"] = "";
|
||||
$profile["about"] = "";
|
||||
}
|
||||
|
||||
return($profile);
|
||||
}
|
||||
|
||||
if(! function_exists('contact_photo_menu')){
|
||||
function contact_photo_menu($contact) {
|
||||
|
||||
|
|
|
@ -151,11 +151,11 @@ function network_init(&$a) {
|
|||
$a->page['aside'] .= fileas_widget($a->get_baseurl(true) . '/network',(x($_GET, 'file') ? $_GET['file'] : ''));
|
||||
|
||||
if(x($_GET['cid']) && intval($_GET['cid']) != 0) {
|
||||
$r = q("SELECT * FROM `contact` WHERE `id` = %d",
|
||||
$r = q("SELECT `url` FROM `contact` WHERE `id` = %d",
|
||||
intval($_GET['cid']));
|
||||
if ($r) {
|
||||
$a->page['aside'] = "";
|
||||
profile_load($a, "", 0, $r[0]);
|
||||
profile_load($a, "", 0, contact_data($r[0]["url"]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue