public function form(Request $request, WidgetHandler $widgetHandler, SkinHandler $skinHandler)
{
$this->validate($request, ['widget' => 'required']);
$widget = $request->get('widget');
$skin = $request->get('skin');
// widget form
$widgetForm = $widgetHandler->setup($widget);
// skin form
$skinForm = null;
if ($skin !== null) {
$skin = $skinHandler->get($skin);
$skinForm = $skin->renderSetting();
}
return apiRender('widget.form', compact('widget', 'skin', 'widgetForm', 'skinForm'));
}