public function getTransactionList($merchantList = null, \DateTime $dStartDate = null, \DateTime $dEndDate = null)
{
$totalTransactions = array();
$merchantMap = \Oara\Utilities::getMerchantNameMapFromMerchantList($merchantList);
$statusArray = array(0, 1, 2);
foreach ($statusArray as $status) {
$valuesFromExport = array(new \Oara\Curl\Parameter('AfID', '0'), new \Oara\Curl\Parameter('S', ''), new \Oara\Curl\Parameter('ST', '2'), new \Oara\Curl\Parameter('Period', '6'), new \Oara\Curl\Parameter('AdID', '0'), new \Oara\Curl\Parameter('B', '2'));
$valuesFromExport[] = new \Oara\Curl\Parameter('SD', $dStartDate->format("Y-m-d"));
$valuesFromExport[] = new \Oara\Curl\Parameter('ED', $dEndDate->format("Y-m-d"));
$valuesFromExport[] = new \Oara\Curl\Parameter('Status', $status);
$urls = array();
$urls[] = new \Oara\Curl\Request('http://www.clixgalore.co.uk/AffiliateTransactionSentReport_Excel.aspx?', $valuesFromExport);
$exportReport = $this->_client->get($urls);
$exportData = \Oara\Utilities::htmlToCsv($exportReport[0]);
$num = \count($exportData);
for ($i = 1; $i < $num; $i++) {
$transactionExportArray = \str_getcsv($exportData[$i], ";");
if (isset($merchantMap[$transactionExportArray[2]])) {
$transaction = array();
$merchantId = (int) $merchantMap[$transactionExportArray[2]];
$transaction['merchantId'] = $merchantId;
$transactionDate = \DateTime::createFromFormat("d M Y H:m", $transactionExportArray[0]);
$transaction['date'] = $transactionDate->format("Y-m-d H:i:s");
if ($transactionExportArray[6] != null) {
$transaction['custom_id'] = $transactionExportArray[6];
}
if ($status == 1) {
$transaction['status'] = \Oara\Utilities::STATUS_CONFIRMED;
} else {
if ($status == 2) {
$transaction['status'] = \Oara\Utilities::STATUS_PENDING;
} else {
if ($status == 0) {
$transaction['status'] = \Oara\Utilities::STATUS_DECLINED;
}
}
}
$transaction['amount'] = \Oara\Utilities::parseDouble($transactionExportArray[4]);
$transaction['commission'] = \Oara\Utilities::parseDouble($transactionExportArray[5]);
$totalTransactions[] = $transaction;
}
}
}
return $totalTransactions;
}