Files
monpas/application/models/shared/Autorisatienivos_model.php
2022-10-25 13:43:24 +02:00

66 lines
1.9 KiB
PHP

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/** Autorisatienivos_model januari 2015 */
class Autorisatienivos_model extends MY_Model{
protected $tablename = 'tb_autorisatienivos';
function __construct(){
parent::__construct();
$models = array();
$this->load->model($models);
}
function check_level($role, $level){
$this->sql = "SELECT (".$role." & ".$level.") AS checker";
$query = $this->db->query($this->sql);
$row = $query->row();
return $row->checker;
}
function getnivos($hierarchie){
$this->sql="SELECT id, naam
FROM tb_autorisatienivos
WHERE hierarchie <= {$hierarchie}
ORDER BY hierarchie DESC";
return $this->get_query_result();
}
function getusernivo($userid){
$this->sql="SELECT nivo
FROM tb_autorisatienivos AN
JOIN tb_autorisaties A ON A.nivo_id = AN.id
JOIN tb_orgusers OU ON OU.id = A.orguser_id
JOIN tb_users U ON U.id = OU.user_id
WHERE U.id = 1
ORDER BY AN.nivo DESC
LIMIT 0,1";
$result= $this->get_query_row();
if ($result) {return $result->nivo;}
else {return null ;};
}
function checknivo($userid, $orgid){
$this->sql=" SELECT nivo
FROM tb_autorisatienivos AN
JOIN tb_autorisaties A ON A.nivo_id = AN.id
JOIN tb_orgusers OU ON OU.id = A.orguser_id
WHERE OU.user_id = {$userid}
AND OU.organisatie_id = {$orgid} ";
return $this->get_query_row('nivo');
}
function checkmanage($userid, $orgid){
$this->sql=" SELECT nivo
FROM tb_autorisatienivos AN
JOIN tb_autorisaties A ON A.nivo_id = AN.id
JOIN tb_orgusers OU ON OU.id = A.orguser_id
WHERE OU.user_id = {$userid}
AND OU.organisatie_id = {$orgid}
AND AN.nivo IN (1, 4, 16, 64, 256) ";
return $this->get_query_row('nivo');
}
}