FEATURE #1421: add widget area overview
This commit is contained in:
@@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Admin;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Http\Requests;
|
||||||
|
use App\Models\WidgetArea;
|
||||||
|
|
||||||
|
class WidgetAreaOverview extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* List of all widget area. Displayed paginated
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||||
|
*/
|
||||||
|
public function getOverview()
|
||||||
|
{
|
||||||
|
// get widget areas ordered by created_at
|
||||||
|
$areas = WidgetArea::orderBy('created_at', 'DESC')
|
||||||
|
->paginate(25);
|
||||||
|
|
||||||
|
return view('admin.widgets.area.overview', ['areas' => $areas]);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -60,6 +60,11 @@ class FoundationDrilldownMenuPresenter extends Presenter
|
|||||||
return '<li class="divider"></li>' . PHP_EOL;
|
return '<li class="divider"></li>' . PHP_EOL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getMultiLevelDropdownWrapper($item)
|
||||||
|
{
|
||||||
|
return $this->getMenuWithDropDownWrapper($item);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc }
|
* {@inheritdoc }
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -37,6 +37,13 @@ class AdminMenusProvider extends ServiceProvider
|
|||||||
$sub->route('upload.image', trans('admin/mainMenu.uploadImage'), [], 50, ['icon' => 'fa fa-image']);
|
$sub->route('upload.image', trans('admin/mainMenu.uploadImage'), [], 50, ['icon' => 'fa fa-image']);
|
||||||
$sub->route('upload.overview', trans('admin/mainMenu.uploadedFiles'), [], 150, ['icon' => 'fa fa-files-o']);
|
$sub->route('upload.overview', trans('admin/mainMenu.uploadedFiles'), [], 150, ['icon' => 'fa fa-files-o']);
|
||||||
}, 25, ['icon' => 'fa fa-film']);
|
}, 25, ['icon' => 'fa fa-film']);
|
||||||
|
$menu->dropdown(trans('admin/mainMenu.widgets'), function ($sub) {
|
||||||
|
// menu for widget areas
|
||||||
|
$sub->dropdown(trans('admin/mainMenu.widgetAreas'), function ($sub) {
|
||||||
|
$sub->route('widgetareas.new', trans('admin/mainMenu.newWidgetArea'), [], 1, ['icon' => 'fa fa-plus']);
|
||||||
|
$sub->route('widgetareas.overview', trans('admin/mainMenu.widgetAreaOverview'), [], 2, ['icon' => 'fa fa-list']);
|
||||||
|
}, 50, ['icon' => 'fa fa-object-group']);
|
||||||
|
}, 28, ['icon' => 'fa fa-gears']);
|
||||||
$menu->dropdown(trans('admin/mainMenu.customFields'), function ($sub) {
|
$menu->dropdown(trans('admin/mainMenu.customFields'), function ($sub) {
|
||||||
$sub->route('customfields.new', trans('admin/mainMenu.customFieldsNew'), [], 10, ['icon' => 'fa fa-code']);
|
$sub->route('customfields.new', trans('admin/mainMenu.customFieldsNew'), [], 10, ['icon' => 'fa fa-code']);
|
||||||
$sub->route('customfields.overview', trans('admin/mainMenu.customFieldsOverview'), [], 50, ['icon' => 'fa fa-code-fork']);
|
$sub->route('customfields.overview', trans('admin/mainMenu.customFieldsOverview'), [], 50, ['icon' => 'fa fa-code-fork']);
|
||||||
|
|||||||
@@ -17,4 +17,9 @@ return [
|
|||||||
'actionLog' => 'Log',
|
'actionLog' => 'Log',
|
||||||
'widgets' => 'Widgets',
|
'widgets' => 'Widgets',
|
||||||
'newWidgetArea' => 'New area',
|
'newWidgetArea' => 'New area',
|
||||||
|
'widgetAreaOverview' => 'List of all areas',
|
||||||
|
'newWidget' => 'New widget',
|
||||||
|
'widgetAreas' => 'Widget areas',
|
||||||
|
'widgetsOverview' => 'All widgets',
|
||||||
|
'assignWidgets' => 'Assign widgets'
|
||||||
];
|
];
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
@extends('admin.layout')
|
||||||
|
|
||||||
|
@section('pageName', @trans('admin/widgetAreas.overview'))
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<h2>@lang('admin/widgetAreas.overview')</h2>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
@if (session('success'))
|
||||||
|
<div class="callout success">
|
||||||
|
{{ session('success') }}
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if (session('error'))
|
||||||
|
<div class="callout alert">
|
||||||
|
{{ session('error') }}
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<div class="column large-8">
|
||||||
|
@if (count($areas) > 0)
|
||||||
|
<table class="full-width">
|
||||||
|
<tr>
|
||||||
|
<th>@lang('admin/widgetAreas.name')</th>
|
||||||
|
<th>@lang('admin/widgetAreas.code')</th>
|
||||||
|
<th>@lang('admin/widgetAreas.description')</th>
|
||||||
|
<th>@lang('admin/widgetAreas.actions')</th>
|
||||||
|
</tr>
|
||||||
|
@foreach($areas as $area)
|
||||||
|
<tr>
|
||||||
|
<td>{{$area->name}}</td>
|
||||||
|
<td>{{$area->code}}</td>
|
||||||
|
<td>{{str_limit($area->description, 100)}}</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<a href="{{route('widgets.associate', ['widgetArea' => $area->id])}}"><i class="fa fa-plus"></i></a>
|
||||||
|
<a href="{{route('widgetareas.edit', ['id' => $area->id])}}"><i class="fa fa-edit"></i></a>
|
||||||
|
<a href="{{route('widgetareas.delete', ['id' => $area->id])}}"><i
|
||||||
|
class="fa fa-remove confirm"></i></a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</table>
|
||||||
|
@else
|
||||||
|
<em>@lang('admin/widgetAreas.noEntries')</em>
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
<div class="column large-4">
|
||||||
|
<h3>@lang('admin/widgetAreas.new')</h3>
|
||||||
|
|
||||||
|
@include('admin.widgets.area.newForm', ['hideMessages' => true])
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row pagination">
|
||||||
|
{!! $areas->render() !!}
|
||||||
|
</div>
|
||||||
|
@stop
|
||||||
Reference in New Issue
Block a user