FEATURE: add widgets for assigning into area into edit form

This commit is contained in:
Michal Kváček
2016-09-27 23:13:21 +02:00
parent 5ee403ab28
commit 9039334138
3 changed files with 27 additions and 4 deletions
@@ -4,9 +4,12 @@ namespace App\Http\Controllers\Admin\Widgets\Areas;
use App\Http\Controllers\Admin\Controller; use App\Http\Controllers\Admin\Controller;
use App\Http\Requests\EditWidgetAreaRequest; use App\Http\Requests\EditWidgetAreaRequest;
use App\Models\Widget;
use App\Models\WidgetArea; use App\Models\WidgetArea;
use App\Models\WidgetInWidgetArea;
use Illuminate\Database\Eloquent\ModelNotFoundException; use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Event;
use Mcamara\LaravelLocalization\Facades\LaravelLocalization;
class EditWidgetArea extends Controller class EditWidgetArea extends Controller
{ {
@@ -20,8 +23,15 @@ class EditWidgetArea extends Controller
public function getEdit($id) public function getEdit($id)
{ {
$area = WidgetArea::findOrFail($id); $area = WidgetArea::findOrFail($id);
$associatedWidgetIds = WidgetInWidgetArea::getWidgetIdsFromArea($area->id);
$widgets = Widget::where('language', LaravelLocalization::getCurrentLocale())
->paginate(25);
return view('admin.widgets.area.edit', ['area' => $area]); return view('admin.widgets.area.edit', [
'area' => $area,
'widgets' => $widgets,
'associatedWidgetIds' => $associatedWidgetIds
]);
} }
/** /**
@@ -45,7 +45,7 @@ class AssociateWidget extends Controller
Event::fire(new AssignWidget($widget, $widgetArea)); Event::fire(new AssignWidget($widget, $widgetArea));
return redirect() return redirect()
->route('widgets.associate', ['widgetArea' => $widgetAreaId]) ->back()
->with('success', trans('admin/widgets.successfullyAssociated')); ->with('success', trans('admin/widgets.successfullyAssociated'));
} }
@@ -3,6 +3,19 @@
@section('pageHeading', @trans('admin/widgetAreas.edit', ['name' => $area->name])) @section('pageHeading', @trans('admin/widgetAreas.edit', ['name' => $area->name]))
@section('content') @section('content')
@include('admin.widgets.area.form', ['action' => route('widgetareas.postEdit', ['id' => $area->id])]) <div class="row">
@stop <div class="col-lg-8">
@include('admin.widgets.area.form', ['action' => route('widgetareas.postEdit', ['id' => $area->id])])
<h2 class="m-t-15">@lang('admin/widgets.overview')</h2>
@include('admin.widgets.widgetsToAssociate', ['tileClass' => 'col-md-4 col-sm-6 col-xs-12', 'widgetArea' => $area])
</div>
<div class="col-lg-4">
<h3>@lang('admin/widgets.preview')</h3>
@widgetArea($area->code)
</div>
</div>
@endsection