public function save($input) { $bankAccount = BankAccount::createNew(); $bankAccount->bank_id = $input['bank_id']; $bankAccount->username = Crypt::encrypt(trim($input['bank_username'])); $account = \Auth::user()->account; $account->bank_accounts()->save($bankAccount); foreach ($input['bank_accounts'] as $data) { if (!isset($data['include']) || !filter_var($data['include'], FILTER_VALIDATE_BOOLEAN)) { continue; } $subaccount = BankSubaccount::createNew(); $subaccount->account_name = trim($data['account_name']); $subaccount->account_number = trim($data['hashed_account_number']); $bankAccount->bank_subaccounts()->save($subaccount); } return $bankAccount; }
/** * Stores new account * */ public function save($bankAccountPublicId = false) { $account = Auth::user()->account; $bankId = Input::get('bank_id'); $username = Input::get('bank_username'); $rules = ['bank_id' => $bankAccountPublicId ? '' : 'required', 'bank_username' => 'required']; $validator = Validator::make(Input::all(), $rules); if ($validator->fails()) { return Redirect::to('bank_accounts/create')->withErrors($validator)->withInput(); } else { if ($bankAccountPublicId) { $bankAccount = BankAccount::scope($bankAccountPublicId)->firstOrFail(); } else { $bankAccount = BankAccount::createNew(); $bankAccount->bank_id = $bankId; } if ($username != str_repeat('*', strlen($username))) { $bankAccount->username = Crypt::encrypt(trim($username)); } if ($bankAccountPublicId) { $bankAccount->save(); $message = trans('texts.updated_bank_account'); } else { $account->bank_accounts()->save($bankAccount); $message = trans('texts.created_bank_account'); } Session::flash('message', $message); return Redirect::to("bank_accounts/{$bankAccount->public_id}/edit"); } }