diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index ac6555dc..3ac836c7 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -3,6 +3,7 @@ namespace App\Providers; use App\Handlers\Registrators\WidgetRegistrator; +use App\Widgets\HtmlCode\HtmlCode; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider @@ -50,5 +51,6 @@ class AppServiceProvider extends ServiceProvider $registrator = $this->app->make('registerWidget'); // register all available widgets + $registrator->register(HtmlCode::class); } } diff --git a/app/Widgets/HtmlCode/HtmlCode.php b/app/Widgets/HtmlCode/HtmlCode.php new file mode 100644 index 00000000..0f35e4df --- /dev/null +++ b/app/Widgets/HtmlCode/HtmlCode.php @@ -0,0 +1,64 @@ +code) || empty($request->code)) { + throw new MissingParameterException('code'); + } + + $widgetSettings = [ + 'code' => $request->code, + 'containerClass' => isset($request->containerClass) ? $request->containerClass : '' + ]; + + $widget->settings = json_encode($widgetSettings); + + return $widget; + } +} \ No newline at end of file diff --git a/app/Widgets/HtmlCode/Presenters/CreateNewCode.php b/app/Widgets/HtmlCode/Presenters/CreateNewCode.php new file mode 100644 index 00000000..e69de29b diff --git a/app/Widgets/HtmlCode/Presenters/EditCode.php b/app/Widgets/HtmlCode/Presenters/EditCode.php new file mode 100644 index 00000000..e69de29b diff --git a/app/Widgets/HtmlCode/Presenters/HtmlCode.php b/app/Widgets/HtmlCode/Presenters/HtmlCode.php new file mode 100644 index 00000000..71040ddf --- /dev/null +++ b/app/Widgets/HtmlCode/Presenters/HtmlCode.php @@ -0,0 +1,52 @@ +containerClass . '"> + ' . $settings->code . ' + '; + + return $code; + } + + /** + * Display form for creating new instance of widget + * + * @param WidgetType $type + * + * @return mixed + */ + public static function renderAddForm(WidgetType $type) + { + return view('admin.widgets.htmlCode.new', ['type' => $type]); + } + + /** + * Display form for editing already existing widget + * + * @param Widget $widget + * + * @return mixed + */ + public static function renderEditForm(Widget $widget) + { + return view('admin.widgets.htmlCode.edit', ['widget' => $widget]); + } +} \ No newline at end of file diff --git a/resources/views/admin/widgets/htmlCode/edit.blade.php b/resources/views/admin/widgets/htmlCode/edit.blade.php new file mode 100644 index 00000000..d0cda88c --- /dev/null +++ b/resources/views/admin/widgets/htmlCode/edit.blade.php @@ -0,0 +1,20 @@ +@extends('admin.layout') + +@section('pageName', @trans('widgets/htmlCode.edit', ['name' => $widget->name])) + +@section('content') +