/** * Get ALL references from IRIS that have been paid for. * * @Route() * @Template() * @Method({"GET"}) * @param Request $request * @return array */ public function indexAction(Request $request) { // Firstly, get all references for this user, regardless of application status and payment status. $resultSet = $this->referenceRetriever->getReferencesByStatus(null, true); if (!$resultSet instanceof ReferencingApplicationSummaryCollection) { return array('landlord' => $this->irisEntityManager->find(new DirectLandlord()), 'results' => array(), 'viewMore' => false); } // Now filter out all references that haven't had a successful payment $filteredResults = $this->referenceRetriever->filterByPaymentStatus($resultSet, array(PaymentStatusCodes::SUCCESS)); // Update the result with the filtered out results. $resultSet->setRecords((array) $filteredResults); // Only show the 5 most recent results on the dashboard. // Break results into 5 per page... if (0 < count($resultSet->getRecords())) { $resultPages = array_chunk($resultSet->getRecords(), 5); // ...then only return the 1st page $resultSet->setRecords(reset($resultPages)); // Do we have more than 1 page? $viewMore = 1 < count($resultPages); } else { // We filtered down to an empty result set. $viewMore = false; $resultSet = array(); } return array('landlord' => $this->irisEntityManager->find(new DirectLandlord()), 'results' => $resultSet, 'viewMore' => $viewMore); }
/** * @Route() * @Method({"GET", "POST"}) * @Template() * * @return \Symfony\Component\HttpFoundation\Response */ public function indexAction() { // get references from IRIS $results = $this->referenceRetriever->getReferencesByStatus(null, true); // Now filter out all references that haven't had a successful payment $filteredResults = $this->referenceRetriever->filterByPaymentStatus($results, array(PaymentStatusCodes::SUCCESS)); // Update the result with the filtered out results. $results->setRecords($filteredResults); $results->setTotalRecords(count($filteredResults)); return array('results' => $results); }
/** * @Route() * @Method({"GET", "POST"}) * @Template() * * @return \Symfony\Component\HttpFoundation\Response */ public function indexAction() { // get references from IRIS $results = $this->referenceRetriever->getReferencesByStatus(); // only process if results are found if ($results instanceof ReferencingApplicationSummaryCollection) { // grab the status labels from IRIS $statuses = $this->applicationStatusLookup->getLabels(); // and apply to the appropriate label to each record $references = $results->getRecords(); foreach ($references as &$reference) { $reference['statusText'] = $statuses[$reference['statusId']]; } // update $results with the new $references $results->setRecords($references); } return array('results' => $results); }