fixing requests

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
pull/51/head
Maxence Lange 2018-11-22 11:21:47 -01:00
rodzic ab9d9fdd37
commit 783c736870
2 zmienionych plików z 38 dodań i 8 usunięć

Wyświetl plik

@ -139,8 +139,7 @@ class CoreRequestBuilder {
* @param string $alias
*/
protected function limitToActorId(IQueryBuilder &$qb, string $actorId, string $alias = '') {
$pf = ($alias === '') ? $this->defaultSelectAlias : $alias;
$this->limitToDBField($qb, $pf . '.' . 'actor_id', $actorId);
$this->limitToDBField($qb, 'actor_id', $actorId, true, $alias);
}
@ -278,12 +277,17 @@ class CoreRequestBuilder {
* @param string $field
* @param string $value
* @param bool $cs - case sensitive
* @param string $alias
*/
private function limitToDBField(
IQueryBuilder &$qb, string $field, string $value, bool $cs = true
IQueryBuilder &$qb, string $field, string $value, bool $cs = true, string $alias = ''
) {
$expr = $qb->expr();
$pf = ($qb->getType() === QueryBuilder::SELECT) ? $this->defaultSelectAlias . '.' : '';
$pf = '';
if ($qb->getType() === QueryBuilder::SELECT) {
$pf = (($alias === '') ? $this->defaultSelectAlias : $alias) . '.';
}
$field = $pf . $field;
if ($cs) {

Wyświetl plik

@ -114,12 +114,38 @@ class NotesRequestBuilder extends CoreRequestBuilder {
}
$expr = $qb->expr();
$pf = $this->defaultSelectAlias;
$func = $qb->func();
$dbConn = $this->dbConnection;
$pf = $this->defaultSelectAlias . '.';
$orX = $expr->orX();
$orX->add($expr->eq($pf . 'to', 'f.follow_id'));
// $orX->add($expr->like($pf.'to_array', $qb->createNamedParameter('%"' . $recipient . '"%')));
// $orX->add($expr->like($pf.'cc', $qb->createNamedParameter('%"' . $recipient . '"%')));
// $orX->add($expr->like($pf.'bcc', $qb->createNamedParameter('%"' . $recipient . '"%')));
$orX->add(
$expr->like(
$pf . 'to_array', $func->concat(
$expr->literal('%'), $func->concat('f.follow_id', $expr->literal('%'))
)
)
);
$orX->add(
$expr->like(
$pf . 'cc', $func->concat(
$expr->literal('%'), $func->concat('f.follow_id', $expr->literal('%'))
)
)
);
$orX->add(
$expr->like(
$pf . 'bcc', $func->concat(
$expr->literal('%'), $func->concat('f.follow_id', $expr->literal('%'))
)
)
);
//
// $qb->createNamedParameter('%"' . $recipient . '"%')));
//// $orX->add($expr->like($pf.'cc', $qb->createNamedParameter('%"' . $recipient . '"%')));
//// $orX->add($expr->like($pf.'bcc', $qb->createNamedParameter('%"' . $recipient . '"%')));
$qb->rightJoin(
$this->defaultSelectAlias, CoreRequestBuilder::TABLE_SERVER_FOLLOWS, 'f',