ACC SHELL
<?php
/**
*
*
* @version $Id$
* @copyright 2010
*/
class Role {
function __construct() {
}
function fetchAll() {
$query = 'SELECT * FROM role ORDER BY id';
$result = dibi::query($query);
if ($result) {
return $result->fetchAll();
} else {
throw new exception('No roles');
}
}
function fetchAllModules() {
$query = 'SELECT * FROM moduly WHERE stav = 1 ORDER BY id';
$result = dibi::query($query);
if ($result) {
return $result->fetchAll();
} else {
throw new exception('No roles');
}
}
/**
*
* @param int $id id role pro kterou ziskavam prirazeni
* @return array
*/
function fetchPovoleneModuly($id = false) {
$result = dibi::query('SELECT id_modulu FROM role a LEFT JOIN role_prirazeni b ON a.id=b.id_role WHERE stav=1 AND id_role = %i', $id);
if ($result) {
return $result->fetchAll();
} else {
return false;
}
}
function fetchSingle($id = false) {
$query[] = 'SELECT * FROM role';
if ($id) {
array_push($query, 'WHERE [id] = %i', $id);
}
$query[] = ' LIMIT 1';
$result = dibi::query($query);
if ($result) {
return $result->fetch();
} else {
return false;
}
}
function delete($id = false) {
if ($id) {
$qry = dibi::query('DELETE FROM role WHERE id = %i', $id);
if ($qry) {
Tools::message('Záznam byl úspěšně vymazán.', 'OK');
} else {
Tools::message('Záznam se nepodařilo vymazat.', 'ERR');
}
}
}
}
?>
ACC SHELL 2018