connection->getQueryBuilder(); $query->select('name') ->from('authtoken') ->where($query->expr()->eq('uid', $query->createNamedParameter($userId))); if ($maxAge !== 0) { $query->andWhere($query->expr()->gte( 'last_activity', $query->createNamedParameter($maxAge, IQueryBuilder::PARAM_INT) )); } $result = $query->executeQuery(); while ($row = $result->fetch()) { if (preg_match('/ \(Talk Desktop Client - [A-Za-z ]+\)$/', $row['name'])) { $result->closeCursor(); return true; } } $result->closeCursor(); return false; } }