Centralize owner data fetch
This commit is contained in:
parent
e37cf8fea2
commit
df02238659
|
@ -33,6 +33,37 @@ require_once 'include/text.php';
|
||||||
*/
|
*/
|
||||||
class User
|
class User
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @brief Get owner data by user id
|
||||||
|
*
|
||||||
|
* @param int $uid
|
||||||
|
* @return boolean|array
|
||||||
|
*/
|
||||||
|
public static function getOwnerDataById($uid) {
|
||||||
|
$r = dba::p("SELECT
|
||||||
|
`contact`.*,
|
||||||
|
`user`.`prvkey` AS `uprvkey`,
|
||||||
|
`user`.`timezone`,
|
||||||
|
`user`.`nickname`,
|
||||||
|
`user`.`sprvkey`,
|
||||||
|
`user`.`spubkey`,
|
||||||
|
`user`.`page-flags`,
|
||||||
|
`user`.`account-type`,
|
||||||
|
`user`.`prvnets`
|
||||||
|
FROM `contact`
|
||||||
|
INNER JOIN `user`
|
||||||
|
ON `user`.`uid` = `contact`.`uid`
|
||||||
|
WHERE `contact`.`uid` = ?
|
||||||
|
AND `contact`.`self` = 1
|
||||||
|
LIMIT 1",
|
||||||
|
$uid
|
||||||
|
);
|
||||||
|
if (!DBM::is_result($r)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return $r[0];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Returns the default group for a given user and network
|
* @brief Returns the default group for a given user and network
|
||||||
*
|
*
|
||||||
|
|
|
@ -4051,28 +4051,10 @@ class Diaspora
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$r = dba::p("SELECT
|
$owner = User::getOwnerDataById($uid);
|
||||||
`contact`.*,
|
if (!$owner) {
|
||||||
`user`.`prvkey` AS `uprvkey`,
|
|
||||||
`user`.`timezone`,
|
|
||||||
`user`.`nickname`,
|
|
||||||
`user`.`sprvkey`,
|
|
||||||
`user`.`spubkey`,
|
|
||||||
`user`.`page-flags`,
|
|
||||||
`user`.`account-type`,
|
|
||||||
`user`.`prvnets`
|
|
||||||
FROM `contact`
|
|
||||||
INNER JOIN `user`
|
|
||||||
ON `user`.`uid` = `contact`.`uid`
|
|
||||||
WHERE `contact`.`uid` = ?
|
|
||||||
AND `contact`.`self` = 1
|
|
||||||
LIMIT 1",
|
|
||||||
$uid
|
|
||||||
);
|
|
||||||
if (!DBM::is_result($r)) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$owner = $r[0];
|
|
||||||
|
|
||||||
if (!$recips) {
|
if (!$recips) {
|
||||||
$recips = q(
|
$recips = q(
|
||||||
|
|
|
@ -10,6 +10,7 @@ use Friendica\Core\System;
|
||||||
use Friendica\Core\Config;
|
use Friendica\Core\Config;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
|
use Friendica\Model\User;
|
||||||
use Friendica\Protocol\Diaspora;
|
use Friendica\Protocol\Diaspora;
|
||||||
use Friendica\Protocol\DFRN;
|
use Friendica\Protocol\DFRN;
|
||||||
use Friendica\Protocol\Email;
|
use Friendica\Protocol\Email;
|
||||||
|
@ -140,20 +141,11 @@ class Delivery {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$r = q("SELECT `contact`.*, `user`.`prvkey` AS `uprvkey`,
|
$owner = User::getOwnerDataById($uid);
|
||||||
`user`.`timezone`, `user`.`nickname`, `user`.`sprvkey`, `user`.`spubkey`,
|
if (!$owner) {
|
||||||
`user`.`page-flags`, `user`.`account-type`, `user`.`prvnets`
|
|
||||||
FROM `contact` INNER JOIN `user` ON `user`.`uid` = `contact`.`uid`
|
|
||||||
WHERE `contact`.`uid` = %d AND `contact`.`self` = 1 LIMIT 1",
|
|
||||||
intval($uid)
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!DBM::is_result($r)) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$owner = $r[0];
|
|
||||||
|
|
||||||
$walltowall = (($top_level && ($owner['id'] != $items[0]['contact-id'])) ? true : false);
|
$walltowall = (($top_level && ($owner['id'] != $items[0]['contact-id'])) ? true : false);
|
||||||
|
|
||||||
$public_message = true;
|
$public_message = true;
|
||||||
|
|
Loading…
Reference in a new issue