all(); parse_str($data['data'], $form_data); parse_str($data['env_data'], $env_data); if (! empty($form_data) && ! empty($data['section_key'])) { unset($form_data['_method']); unset($form_data['_token']); Settings::resetSection($data['section_key']); if (! empty($env_data)) { setEnvironmentValue($env_data); } foreach ($form_data as $field => $value) { if (isset($value) && ! is_null($value)) { Settings::set($data['section_key'], $field, $value); } } return response()->json(['success' => [ 'title' => __('larabuilder::option_builder.success_title'), 'type' => 'success', 'message' => __('larabuilder::option_builder.setting_updated'), ]]); } } /** * reset section settings * * @return \Illuminate\Http\JsonResponse */ public function resetSettings(Request $request) { $data = $request->all(); if (! empty($data) && ! empty($data['section_key'])) { if (! empty($data['reset_all'])) { Settings::resetSection(); } else { Settings::resetSection($data['section_key']); } return response()->json(['success' => [ 'type' => 'success', 'title' => __('larabuilder::option_builder.success_title'), 'message' => __('larabuilder::option_builder.reset_settings'), ]]); } } /** * Update file upload * * @param int $id * @return \Illuminate\Http\JsonResponse */ public function uploadFiles(Request $request) { $arr = []; $data = $request->all(); $extensions = ! empty($data['extensions']) ? $data['extensions'] : '.*'; if ($extensions != '*') { $validator = Validator::make($request->all(), [ 'files.*' => 'mimes:'.$extensions, ]); if ($validator->fails()) { return response()->json([ 'title' => __('larabuilder::option_builder.error_title'), 'type' => 'error', 'message' => $validator->errors()->all(), ]); } } if (! empty($data['files'])) { foreach ($data['files'] as $file) { if (is_file($file)) { $ext = $file->guessExtension(); $type = 'file'; $thumbnail = $ext == 'mp4' ? 'modules/larabuilder/vendor/optionbuilder/images/mp4-placeholder.jpg' : 'modules/larabuilder/vendor/optionbuilder/images/file-preview.png'; $orgName = $file->getClientOriginalName(); $size = filesize($file); $fileName = rand(1, 9999).date('m-d-Y_hia').$file->getClientOriginalName(); $filepath = $file->storeAs('optionbuilder/uploads', $fileName, 'public'); if (str_starts_with($file->getMimeType(), 'image')) { $type = 'image'; $thumbnail = 'storage/'.$filepath; } $arr[] = [ 'type' => $type, 'name' => $orgName, 'path' => $filepath, 'mime' => $ext, 'size' => $size, 'thumbnail' => asset($thumbnail), ]; } } } return response()->json([ 'type' => 'success', 'files' => $arr, ]); } /** * Show the form for creating a new resource. * * @return Renderable */ public function create() { return view('optionbuilder::create'); } /** * Store a newly created resource in storage. * * @return Renderable */ public function store(Request $request) { // } /** * Show the specified resource. * * @param int $id * @return Renderable */ public function show($id) { return view('optionbuilder::show'); } /** * Show the form for editing the specified resource. * * @param int $id * @return Renderable */ public function edit($id) { return view('optionbuilder::edit'); } /** * Update the specified resource in storage. * * @param int $id * @return Renderable */ public function update(Request $request, $id) { // } /** * Remove the specified resource from storage. * * @param int $id * @return Renderable */ public function destroy($id) { // } }