mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
74 lines
1.4 KiB
PHP
74 lines
1.4 KiB
PHP
<?php
|
|
|
|
class Benutzerrolle_model extends DB_Model
|
|
{
|
|
/**
|
|
* Constructor
|
|
*/
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->dbTable = 'system.tbl_benutzerrolle';
|
|
$this->pk = 'benutzerberechtigung_id';
|
|
}
|
|
|
|
/**
|
|
* Checks if the given user is an admin
|
|
*/
|
|
public function isAdminByPersonId($person_id)
|
|
{
|
|
// Join with the table tbl_benutzer
|
|
$this->addJoin('public.tbl_benutzer', 'uid');
|
|
|
|
$result = $this->loadWhere(array('person_id' => $person_id, 'rolle_kurzbz' => 'admin'));
|
|
|
|
if (!isError($result))
|
|
{
|
|
if (hasData($result))
|
|
{
|
|
$result = success(true);
|
|
}
|
|
else if (!hasData($result))
|
|
{
|
|
$result = success(false);
|
|
}
|
|
}
|
|
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* Get user who are authorized with berechtigung and, if given, authorized for the specific organisational unit.
|
|
* @param $berechtigung_kurzbz
|
|
* @param null $oe_kurzbz
|
|
* @return array
|
|
*/
|
|
public function getBenutzerByBerechtigung($berechtigung_kurzbz, $oe_kurzbz = null, $art = null)
|
|
{
|
|
$params = array();
|
|
$query = '
|
|
SELECT
|
|
*
|
|
FROM
|
|
system.vw_berechtigung_nichtrekursiv
|
|
WHERE
|
|
berechtigung_kurzbz = ?';
|
|
|
|
$params[] = $berechtigung_kurzbz;
|
|
|
|
if (!is_null($oe_kurzbz))
|
|
{
|
|
$query .= ' AND oe_kurzbz = ?';
|
|
$params[] = $oe_kurzbz;
|
|
}
|
|
|
|
if (!is_null($art))
|
|
{
|
|
$query .= ' AND art = ?';
|
|
$params[] = $art;
|
|
}
|
|
|
|
return $this->execQuery($query, $params);
|
|
}
|
|
}
|