toShalowRecordSet() public method

Creates shalow copy of recordset containing only headers
public toShalowRecordSet ( ) : Gpf_Data_RecordSet
return Gpf_Data_RecordSet
    protected function afterExecute(Gpf_Data_RecordSet $inputResult) {
        $inputResult->addColumn(Pap_Db_Table_Payouts::AMOUNT);
        $inputResult->addColumn('users');

        $payoutHistoryIds = array();
        foreach ($inputResult as $record) {
            $payoutHistoryIds[] = $record->get('id');
        }

        $outputResult = $inputResult->toShalowRecordSet();

        $payeeData = $this->getPayeeData($payoutHistoryIds);

        foreach ($inputResult as $record) {
            $payoutHistoryId = $record->get('id');
            if(!isset($payeeData[$payoutHistoryId])) {
                $record->set(Pap_Db_Table_Payouts::AMOUNT, 0);
                $record->set("users", "");
            } else {
                if (!$this->matchesSearchCriteria($record, $payeeData[$payoutHistoryId])) {
                    $this->_count--;
                    continue;
                }
                $record->set("amount", $payeeData[$payoutHistoryId]['amount']);
                $record->set("users", $payeeData[$payoutHistoryId]['usersCount'].' '.
                ($payeeData[$payoutHistoryId]['usersCount'] > 1 ? $this->_("payees") : $this->_("payee")));
            }
            $outputResult->addRecord($record);
        }
        return $outputResult;
    }
Esempio n. 2
0
 public function getBanners(Gpf_Data_RecordSet $recordSet) {
     $result = $recordSet->toShalowRecordSet();
     foreach ($recordSet as $record) {
         try {
             try {
                 Pap_Db_Table_UserInCommissionGroup::getStatus($record->get('campaignid'), Gpf_Session::getAuthUser()->getPapUserId());
             } catch (Gpf_DbEngine_NoRowException $e) {
                 if ($record->get('ctype') == Pap_Db_Campaign::CAMPAIGN_TYPE_ON_INVITATION) {
                     throw new Gpf_Exception($this->_('Private campaign'));
                 }
             }
             $result->addRecord($record);
         } catch (Gpf_Exception $e) {
         }
     }
     $recordSet->clear();
     $recordSet->loadFromObject($result->toObject());
 }
    private function getCachedRecordSet(Gpf_Data_RecordSet $recordSet) {
        $from = $this->params->get(Gpf_Ui_RichListBox::FROM);
        $rowsPerPage = $this->params->get(Gpf_Ui_RichListBox::ROWS_PER_PAGE);
        $this->count = $recordSet->getSize();
            
        if ($this->count > $this->params->get(Gpf_Ui_RichListBox::MAX_CACHED_COUNT)) {
            $cachedRecordSet = $recordSet->toShalowRecordSet();
            
            if ($from + $rowsPerPage > $this->count) {
                $to = $this->count;
            } else {
                $to = $from + $rowsPerPage;
            }

            for ($from; $from < $to; $from++) {
                $cachedRecordSet->add($recordSet->getRecord($from));
            }
            return $cachedRecordSet;
        }
        return $recordSet;
    }