Repository URL to install this package:
|
Version:
1.0.0 ▾
|
<?php
namespace Modules\Core\Http\Controllers;
use App\Http\Controllers\Controller;
use Maatwebsite\Sidebar\Presentation\SidebarRenderer;
use Modules\Core\Sidebar\AdminSidebar;
use Modules\Core\Sidebar\AdminTopbar;
class AdminController extends Controller
{
/**
* @var AdminSidebar
*/
protected $sidebar;
/**
* @var AdminTopbar
*/
protected $topbar;
/**
* @var SidebarRenderer
*/
protected $renderer;
/** @var \Illuminate\Auth\Guard $auth */
protected $auth;
/**
* Create a new authentication controller instance.
*
* @return void
*/
public function __construct()
{
$this->auth = auth();
$this->sidebar = app('Modules\Core\Sidebar\AdminSidebar');
$this->topbar = app('Modules\Core\Sidebar\AdminTopbar');
$this->renderer = app('Maatwebsite\Sidebar\Presentation\SidebarRenderer');
\Themes::activate(config('core.theme.admin-theme'));
\Asset::add(config('core.assets.admin-theme'));
view()->share('customWidgets', '');
if (auth()->check()) {
view()->share('user', [
'gravatar' => "//www.gravatar.com/avatar/" . auth()->user()->email . "?s=90",
'name' => auth()->user()->name,
'id' => auth()->user()->id
]);
}
$this->bootControls();
}
/**
* Boot widgets for all enabled modules
*/
private function bootControls()
{
$modules = \Module::enabled();
foreach ($modules as $module) {
$name = studly_case($module->getName());
$class = 'Modules\\' . $name . '\\Sidebar\\ControlsExtender';
if (class_exists($class)) {
app($class)->boot();
}
}
}
protected function getResponse($alertMsg, $statucCode = 200, $redirectRoute = null)
{
$redirectParams = [];
if (is_array($redirectRoute)) {
$route = array_shift($redirectRoute);
$redirectParams = $redirectRoute;
$redirectRoute = $route;
}
if (request()->ajax()) {
$json = [
'msg' => $alertMsg
];
if (!is_null($redirectRoute)) {
$json['redirectTo'] = route($redirectRoute, $redirectParams);
}
return response()->json($json, $statucCode);
}
if (!is_null($redirectRoute)) {
\Flash::success($alertMsg);
return redirect()->route($redirectRoute, $redirectParams);
}
\Flash::error($alertMsg);
return redirect()->back();
}
}