FEATURE: add permissions into widgets and fix few bugs
This commit is contained in:
@@ -71,13 +71,14 @@ abstract class BaseHandler implements BaseModuleHandler
|
||||
}
|
||||
}, 10, ['icon' => 'fa fa-fw fa-plus']);
|
||||
}
|
||||
|
||||
$sub->route('widgets.overview', trans('admin/mainMenu.widgetsOverview'), [], 20, ['icon' => 'fa fa-fw fa-list']);
|
||||
if ($user->can('manage', Widget::class)) {
|
||||
$sub->route('widgets.overview', trans('admin/mainMenu.widgetsOverview'), [], 20, ['icon' => 'fa fa-fw fa-list']);
|
||||
}
|
||||
|
||||
// menu for widget areas
|
||||
if ($user->can('manage', WidgetArea::class)) {
|
||||
$sub->dropdown(trans('admin/mainMenu.widgetAreas'), function ($sub) use ($user) {
|
||||
if ($user->can('create-widgetareas', WidgetArea::class)) {
|
||||
if ($user->can('create', WidgetArea::class)) {
|
||||
$sub->route('widgetareas.new', trans('admin/mainMenu.newWidgetArea'), [], 1, ['icon' => 'fa fa-fw fa-plus']);
|
||||
}
|
||||
$sub->route('widgetareas.overview', trans('admin/mainMenu.widgetAreaOverview'), [], 2, ['icon' => 'fa fa-fw fa-list']);
|
||||
@@ -126,7 +127,7 @@ abstract class BaseHandler implements BaseModuleHandler
|
||||
|
||||
if ($user->can('manage', Settings::class)) {
|
||||
$sub->route('settings.overview', trans('admin/mainMenu.settings'), [], 80, ['icon' => 'fa fa-fw fa-gear']);
|
||||
$sub->route('permissions.index', trans('admin/mainMenu.permissions'), [], 90, ['icon' => 'fa fa-fw fa-gear']);
|
||||
$sub->route('permissions.index', trans('admin/mainMenu.permissions'), [], 90, ['icon' => 'fa fa-fw fa-key']);
|
||||
}
|
||||
}, 10000, ['icon' => 'fa fa-fw fa-gears']);
|
||||
});
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\CMS\Handlers\Search;
|
||||
|
||||
use App\Models\Content\Content as ContentModel;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class Content extends Search
|
||||
{
|
||||
@@ -10,10 +13,15 @@ class Content extends Search
|
||||
*
|
||||
* @param string $term searched word
|
||||
*
|
||||
* @return array list of found objects
|
||||
* @return array|\Illuminate\Database\Eloquent\Collection|Collection|static[]
|
||||
*/
|
||||
public function search($term)
|
||||
{
|
||||
if (Auth::user()
|
||||
->cannot('manage', ContentModel::class)) {
|
||||
return new Collection();
|
||||
}
|
||||
|
||||
$token = $this->tokenize($term);
|
||||
|
||||
return ContentModel::where('pageContent', 'LIKE', $token)
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
<?php
|
||||
|
||||
namespace App\CMS\Handlers\Search;
|
||||
|
||||
use App\Models\FileManager\File;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
class Files extends Search
|
||||
{
|
||||
@@ -24,6 +26,11 @@ class Files extends Search
|
||||
*/
|
||||
public function search($term)
|
||||
{
|
||||
if (\Auth::user()
|
||||
->cannot('manage', File::class)) {
|
||||
return new Collection();
|
||||
}
|
||||
|
||||
$token = $this->tokenize($term);
|
||||
|
||||
return File::where('original_filename', 'LIKE', $token)
|
||||
|
||||
@@ -3,11 +3,17 @@ namespace App\CMS\Handlers\Search\Presenters;
|
||||
|
||||
use App\CMS\Enumerations\ContentStatuses;
|
||||
use App\CMS\Handlers\Contracts\SearchPresenterHandler;
|
||||
use App\Models\Content\Content;
|
||||
|
||||
class AdminContent implements SearchPresenterHandler
|
||||
{
|
||||
public function render($foundItems)
|
||||
{
|
||||
if (\Auth::user()
|
||||
->cannot('manage', Content::class)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return view('admin.search.results.content', [
|
||||
'pages' => $foundItems,
|
||||
'statuses' => ContentStatuses::getWithTranslations(),
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
namespace App\CMS\Handlers\Search\Presenters;
|
||||
|
||||
use App\CMS\Handlers\Contracts\SearchPresenterHandler;
|
||||
use App\Models\FileManager\File;
|
||||
|
||||
class AdminFiles implements SearchPresenterHandler
|
||||
{
|
||||
@@ -14,6 +15,11 @@ class AdminFiles implements SearchPresenterHandler
|
||||
*/
|
||||
public function render($foundItems)
|
||||
{
|
||||
if (\Auth::user()
|
||||
->cannot('manage', File::class)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return view('admin.fileManager.filesTiles', ['files' => $foundItems, 'hideDelete' => true]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user