function (BeforeSheet $event) { DB::commit(); $this->backupImport->update([ 'message' => __('Importing configurations...'), ]); DB::beginTransaction(); }, ]; } public function collection(Collection $configs) { $user = auth()->user(); foreach ($configs as $config) { switch ($config['key']) { case 'name': $user->name = $config['value']; $user->save(); break; case 'locale': $user->setOption('locale', $config['value']); $user->save(); break; case 'display_currency': $user->setOption('display_currency', $config['value']); $user->save(); break; case 'reinvest_dividends': Holding::myHoldings()->where('id', $config['value'])->update([ 'reinvest_dividends' => true, ]); break; default: break; } } } public function rules(): array { return [ 'key' => ['required', 'string'], 'value' => ['required', 'string'], ]; } }