public function getRules($data) { $rules = ['firstName' => 'required', 'lastName' => 'required', 'email' => 'required|email|uniqueEmail:' . $this->borrower->getId(), 'phoneNumber' => 'required|numeric|digits:' . $this->getPhoneNumberLength() . '|UniqueNumber:' . $this->borrower->getId() . '|MutualUniqueNumber', 'alternatePhoneNumber' => 'numeric|digits:' . $this->getPhoneNumberLength() . '|UniqueNumber:' . $this->borrower->getId() . '|MutualUniqueNumber', 'address' => 'required', 'addressInstructions' => 'required', 'city' => 'required', 'countryId' => 'required', 'communityLeader_firstName' => 'required', 'communityLeader_lastName' => 'required', 'communityLeader_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'communityLeader_description' => 'required', 'familyMember_1_firstName' => 'required', 'familyMember_1_lastName' => 'required', 'familyMember_1_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'familyMember_1_description' => 'required', 'familyMember_2_firstName' => 'required', 'familyMember_2_lastName' => 'required', 'familyMember_2_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'familyMember_2_description' => 'required', 'familyMember_3_firstName' => 'required', 'familyMember_3_lastName' => 'required', 'familyMember_3_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'familyMember_3_description' => 'required', 'neighbor_1_firstName' => 'required', 'neighbor_1_lastName' => 'required', 'neighbor_1_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'neighbor_1_description' => 'required', 'neighbor_2_firstName' => 'required', 'neighbor_2_lastName' => 'required', 'neighbor_2_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'neighbor_2_description' => 'required', 'neighbor_3_firstName' => 'required', 'neighbor_3_lastName' => 'required', 'neighbor_3_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'neighbor_3_description' => 'required']; if (!empty($data['password'])) { $rules = $rules + ['password' => 'required']; } return $rules; }
public function sendBorrowerDeclinedEvent(Borrower $borrower) { $userId = $borrower->getId(); $data = array('$type' => 'decline', '$api_key' => $this->siftScienceKey, '$user_id' => $userId, '$is_bad' => true, 'reasons' => 'Declined', '$description' => 'Borrower application declined', '$time' => time()); $siftScienceUrl = "https://api.siftscience.com/v203/users/" . $userId . "/labels"; $this->sendEvent($siftScienceUrl, json_encode($data)); }
public function getPaginatedComments(Borrower $borrower, $page, $maxPerPage) { $roots = CommentQuery::create()->filterByBorrowerId($borrower->getId())->filterByLevel(0)->orderById('desc')->paginate($page, $maxPerPage); $comments = CommentQuery::create()->filterByRootId($roots->toKeyValue('id', 'id'))->filterByLevel(['min' => 1])->orderById('asc')->find(); $idToComments = []; foreach ($roots as $root) { $idToComments[$root->getId()] = $root; } foreach ($comments as $comment) { $idToComments[$comment->getId()] = $comment; } foreach ($comments as $comment) { if (!$comment->isRoot()) { $parentComment = $idToComments[$comment->getParentId()]; $parentComment->addChild($comment); } } return $roots; }
public function getAllRules() { return ['address' => 'required', 'addressInstruction' => 'required', 'city' => 'required', 'nationalIdNumber' => 'required|unique:borrower_profiles,national_id_number,' . $this->borrower->getId() . ',borrower_id', 'phoneNumber' => 'required|numeric|digits:' . $this->getPhoneNumberLength() . '|UniqueNumber:' . $this->borrower->getId() . '|MutualUniqueNumber', 'alternatePhoneNumber' => 'numeric|digits:' . $this->getPhoneNumberLength() . '|UniqueNumber:' . $this->borrower->getId() . '|MutualUniqueNumber', 'communityLeader_firstName' => 'required', 'communityLeader_lastName' => 'required', 'communityLeader_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'communityLeader_description' => 'required', 'familyMember_1_firstName' => 'required', 'familyMember_1_lastName' => 'required', 'familyMember_1_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'familyMember_1_description' => 'required', 'familyMember_2_firstName' => 'required', 'familyMember_2_lastName' => 'required', 'familyMember_2_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'familyMember_2_description' => 'required', 'familyMember_3_firstName' => 'required', 'familyMember_3_lastName' => 'required', 'familyMember_3_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'familyMember_3_description' => 'required', 'neighbor_1_firstName' => 'required', 'neighbor_1_lastName' => 'required', 'neighbor_1_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'neighbor_1_description' => 'required', 'neighbor_2_firstName' => 'required', 'neighbor_2_lastName' => 'required', 'neighbor_2_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'neighbor_2_description' => 'required', 'neighbor_3_firstName' => 'required', 'neighbor_3_lastName' => 'required', 'neighbor_3_phoneNumber' => 'required|numeric|ContactUniqueNumber|digits:' . $this->getPhoneNumberLength(), 'neighbor_3_description' => 'required']; }