public function save(Request $request) { $options = ContractSearchCriteria::where('user_id', Auth::user()->id)->first(); $criterias = $options ? json_decode($options->criterias, true) : []; $criterias['regions'] = $request->regions; $criterias['match'] = $request->match; $criterias['exclude'] = $request->exclude; $criterias['match_org'] = $request->match_org; $criterias['exclude_org'] = $request->exclude_org; if (!$options) { $options = new ContractSearchCriteria(); $options->user_id = Auth::user()->id; } $options->criterias = json_encode($criterias); $options->save(); flash()->success('Изменения сохранены'); return redirect()->route('admin.contracts.setup'); }