public function index() { if (!Auth::check()) { return response()->json($this->notLoginJson, 401); } else { $user = Auth::user(); if (!$user->hasRole('admin')) { return response()->json($this->needPermissionsJson, 401); } } $logs = Logger::orderBy('created_at', 'desc')->get(); return response()->json($logs); }
function dump($expression, ...$params) { return \app\Logger::dump($expression, ...$params); }
} } if (empty($params[0])) { $params[0] = 'article'; } $action = isset($params[1]) ? $params[1] : 'index'; switch ($params[0]) { case 'article': $controller = new \App\Controllers\Article(); break; case 'admin': $controller = new \App\Controllers\Admin(); break; default: $controller = new \App\Controllers\Error(); $action = 'error404'; Logger::instance()->save('Ошибка 404: Введен не существующий адресс'); } try { $controller->action($action); exit; } catch (\App\Exception\DB $e) { $action = 'DBError'; \App\Mailer::instance()->send('Ошибка подключения к БД'); } catch (\App\Exception\Error404 $e) { $action = 'error404'; } finally { $controller = new \App\Controllers\Error(); $controller->action($action); Logger::instance()->save($e->getMessage()); }
<?php require __DIR__ . '/../autoload.php'; // При наличии одного поля в URI оно рассматривается как имя действия // Если их больше, то предшествующие поля рассматриваются как // имя контроллера preg_match('~^/?([\\w|/]+)?/(\\w+)/?(\\?.*)?$~', $_SERVER['REQUEST_URI'], $matches); $parsedControllerName = str_replace('/', '\\', ucwords($matches[1], '/')); $parsedActionName = ucfirst($matches[2]); $controllerName = '\\App\\Controllers\\' . ($parsedControllerName ?: 'News'); $actionName = $parsedActionName ?: 'Index'; try { PHP_Timer::start(); $controller = new $controllerName(); $controller->action($actionName); } catch (\App\Exceptions\DB $e) { switch ($e->getCode()) { case 1: \App\Logger::instance()->alert(null, ['exception' => $e]); break; case 2: \App\Logger::instance()->error(null, ['exception' => $e]); break; default: \App\Logger::instance()->error(null, ['exception' => $e]); } (new \App\View())->display('../App/Templates/Errors/Db.php', ['error' => $e->getCode()]); } catch (\App\Exceptions\NotFound $e) { \App\Logger::instance()->info(null, ['exception' => $e]); (new \App\View())->display('../App/Templates/Errors/NotFound.php', ['page' => $e->getMessage()]); }
/** * Bootstrap any application services. * * @return void */ public function boot() { Event::created(function ($event) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha registrado el evento id: ' . $event->id; Logger::create(['message' => $message]); }); Event::updating(function ($event) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha actualizado el evento id: ' . $event->id; Logger::create(['message' => $message]); }); Event::deleting(function ($event) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha eliminado el evento id: ' . $event->id; Logger::create(['message' => $message]); }); Member::created(function ($member) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha registrado al miembro id: ' . $member->id; Logger::create(['message' => $message]); }); Member::updating(function ($member) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha actualizado al miembro id: ' . $member->id; Logger::create(['message' => $message]); }); Member::deleting(function ($member) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha eliminado al miembro id: ' . $member->id; Logger::create(['message' => $message]); }); Resource::created(function ($resource) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha registrado el recurso id: ' . $resource->id; Logger::create(['message' => $message]); }); Resource::updating(function ($resource) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha actualizado el recurso id: ' . $resource->id; Logger::create(['message' => $message]); }); Resource::deleting(function ($resource) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha eliminado el recurso id: ' . $resource->id; Logger::create(['message' => $message]); }); User::created(function ($user) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha registrado al usuario id: ' . $user->id; Logger::create(['message' => $message]); }); User::updating(function ($user) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha actualizado al usuario id: ' . $user->id; Logger::create(['message' => $message]); }); User::deleting(function ($user) { $user = Auth::user(); $message = 'El usuario ' . $user->name . ' ha eliminado al usuario id: ' . $user->id; Logger::create(['message' => $message]); }); }