More joins replaced by view calls
This commit is contained in:
parent
02aed490e2
commit
4181eb37f5
|
@ -81,10 +81,7 @@ function poco_init(App $a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$system_mode && !$global) {
|
if (!$system_mode && !$global) {
|
||||||
$user = DBA::fetchFirst("SELECT `user`.`uid`, `user`.`nickname` FROM `user`
|
$user = DBA::selectFirst('owner-view', ['uid', 'nickname'], ['nickname' => $nickname, 'hide-friends' => false]);
|
||||||
INNER JOIN `profile` ON `user`.`uid` = `profile`.`uid`
|
|
||||||
WHERE `user`.`nickname` = ? AND NOT `profile`.`hide-friends`",
|
|
||||||
$nickname);
|
|
||||||
if (!DBA::isResult($user)) {
|
if (!DBA::isResult($user)) {
|
||||||
throw new \Friendica\Network\HTTPException\NotFoundException();
|
throw new \Friendica\Network\HTTPException\NotFoundException();
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,16 +61,10 @@ class Directory
|
||||||
}
|
}
|
||||||
|
|
||||||
private static function updateAll() {
|
private static function updateAll() {
|
||||||
$r = q("SELECT `url` FROM `contact`
|
$users = DBA::select('owner-view', ['url'], ['net-publish' => true, 'account_expired' => false, 'verified' => true]);
|
||||||
INNER JOIN `profile` ON `profile`.`uid` = `contact`.`uid`
|
while ($user = DBA::fetch($users)) {
|
||||||
INNER JOIN `user` ON `user`.`uid` = `contact`.`uid`
|
|
||||||
WHERE `contact`.`self` AND `profile`.`net-publish` AND
|
|
||||||
NOT `user`.`account_expired` AND `user`.`verified`");
|
|
||||||
|
|
||||||
if (DBA::isResult($r)) {
|
|
||||||
foreach ($r AS $user) {
|
|
||||||
Worker::add(PRIORITY_LOW, 'Directory', $user['url']);
|
Worker::add(PRIORITY_LOW, 'Directory', $user['url']);
|
||||||
}
|
}
|
||||||
}
|
DBA::close($users);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -105,9 +105,9 @@ return [
|
||||||
"avatar-date" => ["contact", "avatar-date"],
|
"avatar-date" => ["contact", "avatar-date"],
|
||||||
"term-date" => ["contact", "term-date"],
|
"term-date" => ["contact", "term-date"],
|
||||||
"last-item" => ["contact", "last-item"],
|
"last-item" => ["contact", "last-item"],
|
||||||
"lastitem_date" => ["contact", "last-item"],
|
"lastitem_date" => ["contact", "last-item"], /// @todo Replaces all uses of "lastitem_date" with "last-item"
|
||||||
"priority" => ["contact", "priority"],
|
"priority" => ["contact", "priority"],
|
||||||
"blocked" => ["contact", "blocked"],
|
"blocked" => ["contact", "blocked"], /// @todo Check if "blocked" from contact or from the users table
|
||||||
"block_reason" => ["contact", "block_reason"],
|
"block_reason" => ["contact", "block_reason"],
|
||||||
"readonly" => ["contact", "readonly"],
|
"readonly" => ["contact", "readonly"],
|
||||||
"writable" => ["contact", "writable"],
|
"writable" => ["contact", "writable"],
|
||||||
|
@ -133,8 +133,9 @@ return [
|
||||||
"ffi_keyword_blacklist" => ["ffi_keyword_blacklist"],
|
"ffi_keyword_blacklist" => ["ffi_keyword_blacklist"],
|
||||||
"email" => ["user", "email"],
|
"email" => ["user", "email"],
|
||||||
"uprvkey" => ["user", "prvkey"],
|
"uprvkey" => ["user", "prvkey"],
|
||||||
|
"upubkey" => ["user", "pubkey"],
|
||||||
"timezone" => ["user", "timezone"],
|
"timezone" => ["user", "timezone"],
|
||||||
"nickname" => ["user", "nickname"],
|
"nickname" => ["user", "nickname"], /// @todo Remove duplicate
|
||||||
"sprvkey" => ["user", "sprvkey"],
|
"sprvkey" => ["user", "sprvkey"],
|
||||||
"spubkey" => ["user", "spubkey"],
|
"spubkey" => ["user", "spubkey"],
|
||||||
"page-flags" => ["user", "page-flags"],
|
"page-flags" => ["user", "page-flags"],
|
||||||
|
@ -145,12 +146,28 @@ return [
|
||||||
"login_date" => ["user", "login_date"],
|
"login_date" => ["user", "login_date"],
|
||||||
"register_date" => ["user", "register_date"],
|
"register_date" => ["user", "register_date"],
|
||||||
"verified" => ["user", "verified"],
|
"verified" => ["user", "verified"],
|
||||||
|
"expire" => ["user", "expire"],
|
||||||
|
"expire_notification_sent" => ["user", "expire_notification_sent"],
|
||||||
"account_removed" => ["user", "account_removed"],
|
"account_removed" => ["user", "account_removed"],
|
||||||
"account_expired" => ["user", "account_expired"],
|
"account_expired" => ["user", "account_expired"],
|
||||||
"account_expires_on" => ["user", "account_expires_on"],
|
"account_expires_on" => ["user", "account_expires_on"],
|
||||||
|
"publish" => ["profile", "publish"],
|
||||||
|
"net-publish" => ["profile", "net-publish"],
|
||||||
|
"hide-friends" => ["profile", "hide-friends"],
|
||||||
|
"prv_keywords" => ["profile", "prv_keywords"],
|
||||||
|
"pub_keywords" => ["profile", "pub_keywords"],
|
||||||
|
"address" => ["profile", "address"],
|
||||||
|
"locality" => ["profile", "locality"],
|
||||||
|
"region" => ["profile", "region"],
|
||||||
|
"postal-code" => ["profile", "postal-code"],
|
||||||
|
"country-name" => ["profile", "country-name"],
|
||||||
|
"homepage" => ["profile", "homepage"],
|
||||||
|
"xmpp" => ["profile", "xmpp"],
|
||||||
|
"dob" => ["profile", "dob"],
|
||||||
],
|
],
|
||||||
"query" => "FROM `user`
|
"query" => "FROM `user`
|
||||||
INNER JOIN `contact` ON `contact`.`uid` = `user`.`uid` AND `contact`.`self`"
|
INNER JOIN `contact` ON `contact`.`uid` = `user`.`uid` AND `contact`.`self`
|
||||||
|
INNER JOIN `profile` ON `profile`.`uid` = `user`.`uid`"
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user