Files
core/app/Widgets/Menu/Presenters/Menu.php
T

60 lines
1.3 KiB
PHP

<?php
namespace App\Widgets\Menu\Presenters;
use App\Models\Widget;
use App\Models\WidgetType;
use App\Widgets\Contracts\WidgetRenderer;
use Illuminate\Support\Facades\App;
class Menu implements WidgetRenderer
{
/**
* Method used for displaying widget.
*
* This method renders some HTML code for displaying.
*
* @param object $settings
*
* @return mixed
*/
public static function render($settings)
{
return json_encode($settings);
}
/**
* Display form for creating new instance of widget
*
* @param WidgetType $type
*
* @return mixed
*/
public static function renderAddForm(WidgetType $type)
{
$extensions = App::make('registerMenuExtension')
->get();
$widget = new Widget();
return view('admin.widgets.menu.new', [
'type' => $type,
'widget' => $widget,
'extensions' => $extensions
]);
}
/**
* Display form for editing already existing widget
*
* @param Widget $widget
*
* @return mixed
*/
public static function renderEditForm(Widget $widget)
{
$extensions = App::make('registerMenuExtension')
->get();
return view('admin.widgets.menu.edit', ['widget' => $widget]);
}
}