* * For the full copyright and license information, please view * the LICENSE file that was distributed with this source code. */ namespace Da\User\Query; use yii\db\ActiveQuery; class UserQuery extends ActiveQuery { /** * @param $idOrUsernameOrEmail * * @return $this */ public function whereIdOrUsernameOrEmail($idOrUsernameOrEmail) { return filter_var($idOrUsernameOrEmail, FILTER_VALIDATE_INT) ? $this->whereId($idOrUsernameOrEmail) : $this->whereUsernameOrEmail($idOrUsernameOrEmail); } /** * @param $usernameOrEmail * * @return $this */ public function whereUsernameOrEmail($usernameOrEmail) { return filter_var($usernameOrEmail, FILTER_VALIDATE_EMAIL) ? $this->whereEmail($usernameOrEmail) : $this->whereUsername($usernameOrEmail); } /** * @param $email * * @return $this */ public function whereEmail($email) { return $this->andWhere(['email' => $email]); } /** * @param $username * * @return $this */ public function whereUsername($username) { return $this->andWhere(['username' => $username]); } /** * @param $id * * @return $this */ public function whereId($id) { return $this->andWhere(['id' => $id]); } /** * @param $id * * @return $this */ public function whereNotId($id) { return $this->andWhere(['<>', 'id', $id]); } }