public function update(Request $request, WidgetBoxHandler $handler, $id)
{
if (\Gate::denies('edit', new Instance('widgetbox.' . $id))) {
throw new AccessDeniedHttpException();
}
$this->validate($request, ['content' => 'required']);
$data = [];
$data['content'] = $request->originInput('content');
if ($request->has('options')) {
$data['options'] = $request->get('options');
}
XeDB::beginTransaction();
try {
$handler->update($id, $data);
} catch (\Exception $e) {
XeDB::rollback();
throw $e;
}
XeDB::commit();
return XePresenter::makeApi(['type' => 'success', 'message' => '위젯박스를 저장했습니다.']);
}