ify">} add ()
{(! isset ($ _POST ['name'])) return;
$ name = $ _POST ['name'];
$ registry = $ this-> registry; (! $ registry ['access'] -> get_privilege ('edit_facults_priv')) $ registry ['access'] -> restrict () ;
$ DB = $ registry ['DB'];
$ res = $ DB-> query ('INSERT INTO `facults` (name) VALUES (?)', $ name); (! $ res)
{
$ registry ['message'] = 'Помилка додавання';;
} :: redirect (site_url. 'facults');
}
}
?>
Клас Router:
phpRouter {$ registry; $ path; $ args = array (); __construct () {
$ this-> registry = Registry :: getInstance ();
} setPath ($ path) {
$ path = trim ($ path, '/ ');
$ path. = DIRSEP;
if (is_dir ($ path) == false) {
throw new Exception ('Invalid controller path: `'. $ path. '`');
}
$ this-> path = $ path;
}
/**
* Отримує дані про контроллер
*
* @ param string $ file Файл контролера
* @ param string $ controller Ім'я контролера, за замовчуванням 'index'
* @ param string $ action Ім'я дії, за замовчуванням 'index'
* @ param array $ args Масив аргументів, переданих через URL
* @ return void
*/function getController (& $ file, & $ controller, & $ action, & $ args) {
$ route = (empty ($ _GET ['route']))? '': $ _GET ['Route'];
if (empty ($ route)) {$ route = 'index';}
// Хак! Якщо користувач не увійшов кидаємо на вхід
if (! @ $ _SESSION ['auth']) $ route = 'user/login';
// Отримуємо роздільні частини
$ route = trim ($ route, '/ ');
$ parts = explode ('/', $ route);
// Знаходимо правильний контролер
$ cmd_path = $ this-> path;
foreach ($ parts as $ part) {
$ fullpath = $ cmd_path. $ Part;
// Чи є папка з таким шляхом?
if (is_dir ($ fullpath)) {
$ cmd_path. = $ part. DIRSEP;
array_shift ($ parts);
co...