/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = BankAccount::find(); // add conditions that should always apply here $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } // grid filtering conditions $query->andFilterWhere(['ID' => $this->ID, 'ID_Bank' => $this->ID_Bank]); $query->andFilterWhere(['like', 'Account', $this->Account]); return $dataProvider; }
public function validateAccount() { $publicId = Input::get('public_id'); $username = trim(Input::get('bank_username')); $password = trim(Input::get('bank_password')); if ($publicId) { $bankAccount = BankAccount::scope($publicId)->firstOrFail(); if ($username != $bankAccount->username) { // TODO update username } $username = Crypt::decrypt($username); $bankId = $bankAccount->bank_id; } else { $bankId = Input::get('bank_id'); } return json_encode($this->bankAccountService->loadBankAccounts($bankId, $username, $password, $publicId)); }
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; }
/** * @return \yii\db\ActiveQuery */ public function getBankAccounts() { return $this->hasMany(BankAccount::className(), ['ID_Bank' => 'ID']); }
/** * 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"); } }