5 * Copyright (C) 2017 Matthew Vita <matthewvita48@gmail.com>
7 * LICENSE: This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://opensource.org/licenses/gpl-license.php>;.
19 * @author Matthew Vita <matthewvita48@gmail.com>
20 * @author Victor Kofia <victor.kofia@gmail.com>
21 * @link http://www.open-emr.org
24 namespace OpenEMR\Repositories
;
26 use Doctrine\ORM\EntityRepository
;
27 use Doctrine\Common\Collections\Criteria
;
29 class UserRepository
extends EntityRepository
32 * Finds the user associated with the local session id.
36 public function getCurrentlyLoggedInUser()
38 $results = $this->_em
->getRepository($this->_entityName
)->findOneBy(array("username" => $_SESSION["authUser"]));
43 * Finds the user associated with the specified id
47 public function getUser($userId)
49 $results = $this->_em
->getRepository($this->_entityName
)->findOneBy(array("id" => $userId));
54 * Returns all active users
58 public function getActiveUsers()
60 $criteria = Criteria
::create();
61 $criteria->where(Criteria
::expr()->neq("username", ""));
62 $criteria->andWhere(Criteria
::expr()->eq("active", 1));
63 $criteria->orderBy(array("lname" => "ASC", "fname" => "ASC", "mname" => "ASC"));
64 $results = $this->_em
->getRepository($this->_entityName
)->matching($criteria);