/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { if ($event->get('visitor_id')) { $v = owa_coreAPI::entityFactory('base.visitor'); $v->load($event->get('visitor_id')); if (!$v->wasPersisted()) { $v->setProperties($event->getProperties()); // Set Primary Key $v->set('id', $event->get('visitor_id')); $v->set('first_session_id', $event->get('session_id')); $v->set('first_session_year', $event->get('year')); $v->set('first_session_month', $event->get('month')); $v->set('first_session_day', $event->get('day')); $v->set('first_session_dayofyear', $event->get('dayofyear')); $v->set('first_session_timestamp', $event->get('timestamp')); $v->set('first_session_yyyymmdd', $event->get('yyyymmdd')); $ret = $v->save(); if ($ret) { return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug("Not updating... Visitor already exists."); return OWA_EHS_EVENT_HANDLED; } } else { owa_coreAPI::debug("No visitor_id part of event..."); return OWA_EHS_EVENT_HANDLED; } }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { if ($event->get('source')) { $s = owa_coreAPI::entityFactory('base.source_dim'); $new_id = $s->generateId(trim(strtolower($event->get('source')))); $s->getByPk('id', $new_id); $id = $s->get('id'); if (!$id) { $s->set('id', $new_id); $s->set('source_domain', $event->get('source')); $ret = $s->create(); if ($ret) { return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug('Not Persisting. Source already exists.'); return OWA_EHS_EVENT_HANDLED; } } else { owa_coreAPI::debug('Noting to handle. No source properties found on event.'); return OWA_EHS_EVENT_HANDLED; } }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $totalTransactions = array(); $urls = array(); $url = "http://www.foxtransfer.eu/index.php?q=prices.en.html&page=affiliate_orders&language=1&basedir=theme2&what=record_time&what=record_time&fy={$dStartDate->toString("yyyy")}&fm={$dStartDate->toString("M")}&fd={$dStartDate->toString("d")}&ty={$dEndDate->toString("yyyy")}&tm={$dEndDate->toString("M")}&td={$dEndDate->toString("d")}"; $urls[] = new Oara_Curl_Request($url, array()); $exportReport = array(); $exportReport = $this->_client->get($urls); $exportReport = str_replace("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "", $exportReport); $dom = new Zend_Dom_Query($exportReport[0]); $tableList = $dom->query('#tartalom-hatter table[cellspacing="0"][cellpadding="3"][border="0"]'); $exportData = self::htmlToCsv(self::DOMinnerHTML($tableList->current())); $num = count($exportData); for ($i = 3; $i < $num; $i++) { $transactionExportArray = str_getcsv($exportData[$i], ";"); $transaction = array(); $transaction['merchantId'] = 1; $transaction['unique_id'] = $transactionExportArray[0]; $transaction['date'] = "{$dStartDate->toString("yyyy")}-{$dStartDate->toString("MM")}-01 00:00:00"; if ($transactionExportArray[7] == "Confirmed") { $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; } else { if ($transactionExportArray[7] == "Cancelled") { $transaction['status'] = Oara_Utilities::STATUS_DECLINED; } else { throw new Exception("New status found"); } } $transaction['amount'] = Oara_Utilities::parseDouble(preg_replace("/[^0-9\\.,]/", "", $transactionExportArray[10])); $transaction['commission'] = Oara_Utilities::parseDouble(preg_replace("/[^0-9\\.,]/", "", $transactionExportArray[13])); $totalTransactions[] = $transaction; } return $totalTransactions; }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { if ($event->get('ad')) { $d = owa_coreAPI::entityFactory('base.ad_dim'); $new_id = $d->generateId(trim(strtolower($event->get('ad')))); $d->getByPk('id', $new_id); $id = $d->get('id'); if (!$id) { $d->set('id', $new_id); $d->set('name', trim(strtolower($event->get('ad')))); $d->set('type', trim(strtolower($event->get('ad_type')))); $ret = $d->create(); if ($ret) { return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug('Not Persisting. Ad already exists.'); return OWA_EHS_EVENT_HANDLED; } } else { owa_coreAPI::debug('Noting to handle. No Ad properties found on event.'); return OWA_EHS_EVENT_HANDLED; } }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $totalTransactions = array(); $valuesFromExport = array(); $valuesFromExport[] = new Oara_Curl_Parameter('FromDate', $dStartDate->toString("dd/MM/yyyy")); $valuesFromExport[] = new Oara_Curl_Parameter('ToDate', $dEndDate->toString("dd/MM/yyyy")); $valuesFromExport[] = new Oara_Curl_Parameter('ReportType', 'dailyReport'); $valuesFromExport[] = new Oara_Curl_Parameter('Link', '-1'); $urls = array(); $urls[] = new Oara_Curl_Request('https://www.bet365affiliates.com/Members/Members/Statistics/Print.aspx?', $valuesFromExport); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $tableList = $dom->query('#Results'); if (!preg_match("/No results exist/", $exportReport[0])) { $exportData = self::htmlToCsv(self::DOMinnerHTML($tableList->current())); $num = count($exportData); for ($i = 2; $i < $num - 1; $i++) { $transactionExportArray = str_getcsv($exportData[$i], ";"); $transaction = array(); $transaction['merchantId'] = 1; $transactionDate = new Zend_Date($transactionExportArray[1], 'dd-MM-yyyy', 'en'); $transaction['date'] = $transactionDate->toString("yyyy-MM-dd HH:mm:ss"); $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; $transaction['amount'] = Oara_Utilities::parseDouble($transactionExportArray[27]); $transaction['commission'] = Oara_Utilities::parseDouble($transactionExportArray[32]); if ($transaction['amount'] != 0 && $transaction['commission'] != 0) { $totalTransactions[] = $transaction; } } } return $totalTransactions; }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { // create entity $d = owa_coreAPI::entityFactory('base.document'); // get document id from event $id = $event->get('document_id'); // if no document_id present attempt to make one from the page_url property if (!$id) { $page_url = $event->get('page_url'); if ($page_url) { $id = $d->generateId($page_url); } else { owa_coreAPI::debug('Not persisting Document, no page_url or document_id event property found.'); return OWA_EHS_EVENT_HANDLED; } } $d->load($id); if (!$d->wasPersisted()) { $d->setProperties($event->getProperties()); $d->set('url', $event->get('page_url')); $d->set('uri', $event->get('page_uri')); $d->set('id', $id); $ret = $d->create(); if ($ret) { return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug('Not logging Document, already exists'); return OWA_EHS_EVENT_HANDLED; } }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $totalTransactions = array(); $urls = array(); $url = 'http://business.skyscanner.net/apiservices/reporting/v1.0/reportdata/' . $dStartDate->toString("yyyy-MM-dd") . '/' . $dEndDate->toString("yyyy-MM-dd") . '?encryptedApiKey=' . $this->_apiKey . "&type=csv"; $urls[] = new Oara_Curl_Request($url, array()); $exportReport = array(); $exportReport = $this->_client->get($urls); $dump = var_export($exportReport[0], true); $dump = preg_replace("/ \\. /", "", $dump); $dump = preg_replace("/\"\\\\0\"/", "", $dump); $dump = preg_replace("/'/", "", $dump); $exportData = str_getcsv($dump, "\n"); $num = count($exportData); for ($i = 1; $i < $num; $i++) { $transactionExportArray = str_getcsv($exportData[$i], ","); $transaction = array(); $transaction['merchantId'] = 1; $transactionDate = new Zend_Date($transactionExportArray[0], 'dd/MM/yyyy HH:mm:ss', 'en'); $transaction['date'] = $transactionDate->toString("yyyy-MM-dd HH:mm:ss"); //unset($transactionDate); $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; $transaction['amount'] = (double) $transactionExportArray[9]; $transaction['commission'] = (double) $transaction['amount'] * 0.6; if ($transaction['amount'] != 0) { $totalTransactions[] = $transaction; } } return $totalTransactions; }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $folder = realpath(dirname(__FILE__)) . '/../../data/pdf/'; $totalTransactions = array(); $valuesFromExport = array(); $valuesFromExport[] = new Oara_Curl_Parameter('id', "-1"); $valuesFromExport[] = new Oara_Curl_Parameter('yearStart', $dStartDate->toString("yyyy")); $valuesFromExport[] = new Oara_Curl_Parameter('monthStart', $dStartDate->toString("MM")); $valuesFromExport[] = new Oara_Curl_Parameter('dayStart', $dStartDate->toString("dd")); $valuesFromExport[] = new Oara_Curl_Parameter('yearEnd', $dEndDate->toString("yyyy")); $valuesFromExport[] = new Oara_Curl_Parameter('monthEnd', $dEndDate->toString("MM")); $valuesFromExport[] = new Oara_Curl_Parameter('dayEnd', $dEndDate->toString("dd")); $urls = array(); $urls[] = new Oara_Curl_Request('https://partnerprogramma.bol.com/partner/s/excelReport/orders?', $valuesFromExport); $exportReport = $this->_client->get($urls); $my_file = $folder . mt_rand() . '.xlsx'; $handle = fopen($my_file, 'w') or die('Cannot open file: ' . $my_file); $data = $exportReport[0]; fwrite($handle, $data); fclose($handle); $objReader = PHPExcel_IOFactory::createReader('Excel2007'); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load($my_file); $objWorksheet = $objPHPExcel->getActiveSheet(); $highestRow = $objWorksheet->getHighestRow(); $highestColumn = $objWorksheet->getHighestColumn(); $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn); for ($row = 2; $row <= $highestRow; ++$row) { $transaction = array(); $transaction['unique_id'] = $objWorksheet->getCellByColumnAndRow(0, $row)->getValue() . "_" . $objWorksheet->getCellByColumnAndRow(1, $row)->getValue(); $transaction['merchantId'] = "1"; $transactionDate = new Zend_Date($objWorksheet->getCellByColumnAndRow(2, $row)->getValue(), 'dd-MM-yyyy'); $transaction['date'] = $transactionDate->toString("yyyy-MM-dd 00:00:00"); $transaction['custom_id'] = $objWorksheet->getCellByColumnAndRow(8, $row)->getValue(); if ($objWorksheet->getCellByColumnAndRow(14, $row)->getValue() == 'geaccepteerd') { $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; } else { if ($objWorksheet->getCellByColumnAndRow(14, $row)->getValue() == 'in behandeling') { $transaction['status'] = Oara_Utilities::STATUS_PENDING; } else { if ($objWorksheet->getCellByColumnAndRow(14, $row)->getValue() == 'geweigerd: klik te oud' || $objWorksheet->getCellByColumnAndRow(14, $row)->getValue() == 'geweigerd') { $transaction['status'] = Oara_Utilities::STATUS_DECLINED; } else { echo "new status " . $objWorksheet->getCellByColumnAndRow(14, $row)->getValue(); } } } $transaction['amount'] = $objWorksheet->getCellByColumnAndRow(11, $row)->getValue(); $transaction['commission'] = $objWorksheet->getCellByColumnAndRow(12, $row)->getValue(); $totalTransactions[] = $transaction; } unlink($my_file); return $totalTransactions; }
/** * Check the connection */ public function checkConnection() { //If not login properly the construct launch an exception $connection = false; $urls = array(); $urls[] = new Oara_Curl_Request('https://portal.ladbrokespartners.com/portal/dashboard.jhtm?currentLanguage=en', array()); $exportReport = $this->_client->get($urls); if (preg_match("/Logout/", $exportReport[0])) { $connection = true; } return $connection; }
/** * Check the connection */ public function checkConnection() { // If not login properly the construct launch an exception $connection = false; $urls = array(); $urls[] = new Oara_Curl_Request('https://etrader.kalahari.com/view/affiliate/home', array()); $exportReport = $this->_client->get($urls); if (preg_match("/signout/", $exportReport[0])) { $connection = true; } return $connection; }
/** * Check the connection */ public function checkConnection() { //If not login properly the construct launch an exception $connection = false; $urls = array(); $urls[] = new Oara_Curl_Request('https://affiliates.affutd.com/affiliates/Dashboard.aspx', array()); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $results = $dom->query('.lnkLogOut'); if (count($results) > 0) { $connection = true; } return $connection; }
/** * Check the connection */ public function checkConnection() { // If not login properly the construct launch an exception $connection = false; $urls = array(); $urls[] = new Oara_Curl_Request('https://secure.rentalcars.com/affiliates/?master=1', array()); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $results = $dom->query('#header_logout'); if (count($results) > 0) { $connection = true; } return $connection; }
/** * Check the connection */ public function checkConnection() { //If not login properly the construct launch an exception $connection = true; $urls = array(); $urls[] = new Oara_Curl_Request('https://www.winneraffiliates.com/', array()); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $results = $dom->query('#lgUsername'); if (count($results) > 0) { $connection = false; } return $connection; }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Publisher_Base#getPaymentHistory() */ public function getPaymentHistory() { $paymentHistory = array(); $urls = array(); $urls[] = new Oara_Curl_Request('http://affiliates.mypcbackup.com/paychecks', array()); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $tableList = $dom->query('.transtable'); if ($tableList->current() != null) { $exportData = self::htmlToCsv(self::DOMinnerHTML($tableList->current())); $num = count($exportData); for ($i = 1; $i < $num; $i++) { $paymentExportArray = str_getcsv($exportData[$i], ";"); try { $obj = array(); $date = new Zend_Date($paymentExportArray[14], "MM/dd/yyyy"); $obj['date'] = $date->toString("yyyy-MM-dd HH:mm:ss"); $obj['pid'] = preg_replace("/[^0-9\\.,]/", "", $paymentExportArray[14]); $obj['method'] = $paymentExportArray[16]; $value = preg_replace("/[^0-9\\.,]/", "", $paymentExportArray[12]); $obj['value'] = Oara_Utilities::parseDouble($value); $paymentHistory[] = $obj; } catch (Exception $e) { echo "Payment failed\n"; } } } return $paymentHistory; }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Base#getPaymentHistory() */ public function getPaymentHistory() { $paymentHistory = array(); $urls = array(); $urls[] = new Oara_Curl_Request('https://publisher.ebaypartnernetwork.com/PublisherAccountPaymentHistory', array()); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $results = $dom->query('table .aruba_report_table'); if (count($results) > 0) { $exportData = self::htmlToCsv(self::DOMinnerHTML($results->current())); for ($j = 1; $j < count($exportData); $j++) { $paymentExportArray = str_getcsv($exportData[$j], ";"); $obj = array(); $paymentDate = new Zend_Date($paymentExportArray[0], "dd/MM/yy", "en"); $obj['date'] = $paymentDate->toString("yyyy-MM-dd HH:mm:ss"); $obj['pid'] = $paymentDate->toString("yyyyMMdd"); $obj['method'] = 'BACS'; if (preg_match("/[-+]?[0-9]*,?[0-9]*\\.?[0-9]+/", $paymentExportArray[2], $matches)) { $obj['value'] = Oara_Utilities::parseDouble($matches[0]); } else { throw new Exception("Problem reading payments"); } $paymentHistory[] = $obj; } } return $paymentHistory; }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Publisher_Base#getPaymentHistory() */ public function getPaymentHistory() { $paymentHistory = array(); foreach ($this->_idBox as $id) { $urls = array(); $paymentExport = array(); $paymentExport[] = new Oara_Curl_Parameter('idbox_store_id', $id); $urls[] = new Oara_Curl_Request($this->_networkServer . "/gp/associates/network/your-account/payment-history.html?", $paymentExport); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $results = $dom->query('.paymenthistory'); $count = count($results); $yearArray = array(); if ($count == 1) { $paymentTable = $results->current(); $paymentReport = self::htmlToCsv(self::DOMinnerHTML($paymentTable)); for ($i = 2; $i < count($paymentReport) - 1; $i++) { $paymentExportArray = str_getcsv($paymentReport[$i], ";"); $obj = array(); $paymentDate = new Zend_Date($paymentExportArray[0], "M d yyyy", "en"); $obj['date'] = $paymentDate->toString("yyyy-MM-dd HH:mm:ss"); $obj['pid'] = $paymentDate->toString("yyyyMMdd") . substr((string) base_convert(md5($id), 16, 10), 0, 5); $obj['method'] = 'BACS'; if (preg_match("/[0-9]*,?[0-9]*\\.?[0-9]+/", $paymentExportArray[4], $matches)) { $obj['value'] = Oara_Utilities::parseDouble($matches[0]); $paymentHistory[] = $obj; } } } else { //throw new Exception('Problem getting the payments'); } } return $paymentHistory; }
/** * Sets up the merchant list and the program list. */ private function getExportUser() { $exporUser = null; $urls = array(); $urls[] = new Oara_Curl_Request($this->_serverUrl . 'Reports/Default.aspx?', array(new Oara_Curl_Parameter('report', 'Performance'))); $result = $this->_client->get($urls); $urls = array(); $urls[] = new Oara_Curl_Request($this->_serverUrl . '/Reports/RemoteHelp.aspx?', array()); $result = $this->_client->get($urls); /*** load the html into the object ***/ $doc = new DOMDocument(); libxml_use_internal_errors(true); $doc->validateOnParse = true; $doc->loadHTML($result[0]); $textareaList = $doc->getElementsByTagName('textarea'); $messageNode = $textareaList->item(0); if (!isset($messageNode->firstChild)) { throw new Exception('Error getting the User'); } $messageStr = $messageNode->firstChild->nodeValue; $parseUrl = parse_url(trim($messageStr)); $parameters = explode('&', $parseUrl['query']); foreach ($parameters as $parameter) { $parameterValue = explode('=', $parameter); if ($parameterValue[0] == 'user') { $exporUser = $parameterValue[1]; } } return $exporUser; }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Base#getCreatives() */ public function getCreatives() { $creativesMap = array(); $merchantList = self::getMerchantList(); foreach ($merchantList as $merchant) { $urls = array(); $valuesFormExport = array(); $valuesFormExport[] = new Oara_Curl_Parameter('pageType', 'isCreativeGraphics'); $valuesFormExport[] = new Oara_Curl_Parameter('prog_id', $merchant['cid']); $valuesFormExport[] = new Oara_Curl_Parameter('creative_type_id', '1'); $valuesFormExport[] = new Oara_Curl_Parameter('creativegroup', '0'); $valuesFormExport[] = new Oara_Curl_Parameter('dimension', '0'); $valuesFormExport[] = new Oara_Curl_Parameter('customise', 'Go'); $urls[] = new Oara_Curl_Request('https://users.buy.at/ma/index.php/affiliateCreative/creativeGraphics?', $valuesFormExport); $exportReport = $this->_client->get($urls); $urls = array(); $valuesFormExport = array(); $valuesFormExport[] = new Oara_Curl_Parameter('format', 'csv'); $urls[] = new Oara_Curl_Request('https://users.buy.at/ma/index.php/affiliateCreative/creativeGraphics?', $valuesFormExport); $exportReport = $this->_client->get($urls); $exportData = str_getcsv($exportReport[0], "\r\n"); $num = count($exportData); for ($j = 1; $j < $num; $j++) { $creativeData = str_getcsv($exportData[$j], ","); $creativesMap[$merchant['cid']][] = $creativeData[5]; } } return $creativesMap; }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { $terms = trim(strtolower($event->get('search_terms'))); if ($terms) { $st = owa_coreAPI::entityFactory('base.search_term_dim'); $st_id = owa_lib::setStringGuid($terms); $st->getByPk('id', $st_id); $id = $st->get('id'); if (!$id) { $st->set('id', $st_id); $st->set('terms', $terms); $ret = str_replace("", "", $terms, $count); $st->set('term_count', $count); $ret = $st->create(); if ($ret) { return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug('Not Logging. Search term already exists.'); return OWA_EHS_EVENT_HANDLED; } } else { return OWA_EHS_EVENT_HANDLED; } }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Publisher_Base#getPaymentHistory() */ public function getPaymentHistory() { $paymentHistory = array(); $urls = array(); $urls[] = new Oara_Curl_Request("{$this->_extension}/affiliate_invoice.html?", array()); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $tableList = $dom->query('.bluetable'); $exportData = self::htmlToCsv(self::DOMinnerHTML($tableList->current())); $num = count($exportData); for ($i = 4; $i < $num; $i++) { $paymentExportArray = str_getcsv($exportData[$i], ";"); if (count($paymentExportArray) > 7) { $obj = array(); $date = new Zend_Date($paymentExportArray[1], "dd/MM/yyyy"); $obj['date'] = $date->toString("yyyy-MM-dd HH:mm:ss"); $obj['pid'] = preg_replace('/[^0-9\\.,]/', "", $paymentExportArray[0]); $obj['method'] = 'BACS'; $value = preg_replace('/[^0-9\\.,]/', "", $paymentExportArray[8]); $obj['value'] = Oara_Utilities::parseDouble($value); $paymentHistory[] = $obj; } } return $paymentHistory; }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $totalTransactions = array(); $urls = array(); $urls[] = new Oara_Curl_Request('http://affiliates.paddypartners.com/affiliates/DataServiceWrapper/DataService.svc/Export/CSV/Affiliates_Reports_Earnings_GetMonthlyBreakDown', array()); $exportReport = array(); $exportReport = $this->_client->get($urls); $exportData = str_getcsv($exportReport[0], "\n"); $num = count($exportData); for ($i = 1; $i < $num - 1; $i++) { $transactionExportArray = str_getcsv($exportData[$i], ","); $transaction = array(); $transaction['merchantId'] = 1; $transactionDate = new Zend_Date($transactionExportArray[0], 'yyyy-MM-dd HH:mm:ss', 'en'); $transaction['date'] = $transactionDate->toString("yyyy-MM-dd HH:mm:ss"); unset($transactionDate); $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; $transaction['amount'] = (double) $transactionExportArray[2]; $transaction['commission'] = (double) $transactionExportArray[6]; if ($transaction['amount'] != 0 && $transaction['commission'] != 0) { $totalTransactions[] = $transaction; } } return $totalTransactions; }
/** * (non-PHPdoc) * * @see library/Oara/Network/Oara_Network_Publisher_Interface#getMerchantList() */ public function getMerchantList() { $merchants = array(); $merchantIdMap = array(); foreach ($this->_siteList as $site) { $urls = array(); $urls[] = new Oara_Curl_Request($site->url, array()); $result = $this->_client->get($urls); $urls = array(); $urls[] = new Oara_Curl_Request('http://cli.linksynergy.com/cli/publisher/programs/carDownload.php', array()); $result = $this->_client->get($urls); $result[0] = str_replace("Baseline TrueLock\"\n", "Baseline TrueLock\",\n", $result[0]); $exportData = explode(",\n", $result[0]); $num = count($exportData); for ($i = 1; $i < $num - 1; $i++) { $merchantArray = str_getcsv($exportData[$i], ",", '"'); if (!in_array($merchantArray[2], $merchantIdMap)) { $obj = array(); if (!isset($merchantArray[2])) { throw new Exception("Error getting merchants"); } $obj['cid'] = (int) $merchantArray[2]; $obj['name'] = $merchantArray[0]; $obj['description'] = $merchantArray[3]; $obj['url'] = $merchantArray[1]; $merchants[] = $obj; $merchantIdMap[] = $obj['cid']; } } } return $merchants; }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Publisher_Base#getPaymentHistory() */ public function getPaymentHistory() { self::__construct($this->_credentials); $paymentHistory = array(); $filter = new Zend_Filter_LocalizedToNormalized(array('precision' => 2)); $urls = array(); $urls[] = new Oara_Curl_Request('http://affiliates.affiliatefuture.com/myaccount/invoices.aspx', array()); $exportReport = $this->_client->get($urls); /*** load the html into the object ***/ $doc = new DOMDocument(); libxml_use_internal_errors(true); $doc->validateOnParse = true; $doc->loadHTML($exportReport[0]); $tableList = $doc->getElementsByTagName('table'); $registerTable = $tableList->item(12); if ($registerTable == null) { throw new Exception('Fail getting the payment History'); } $registerLines = $registerTable->childNodes; for ($i = 1; $i < $registerLines->length; $i++) { $registerLine = $registerLines->item($i)->childNodes; $obj = array(); $date = new Zend_Date(trim($registerLine->item(1)->nodeValue), "dd/MM/yyyy"); $obj['date'] = $date->toString("yyyy-MM-dd HH:mm:ss"); $obj['pid'] = trim($registerLine->item(0)->nodeValue); $value = trim(substr(trim($registerLine->item(4)->nodeValue), 4)); $obj['value'] = $filter->filter($value); $obj['method'] = 'BACS'; $paymentHistory[] = $obj; } return $paymentHistory; }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $totalTransactions = array(); $urls = array(); $urls[] = new Oara_Curl_Request("https://publisher.ebaypartnernetwork.com/PublisherReportsTx?pt=2&start_date={$dStartDate->toSTring("M/d/yyyy")}&end_date={$dEndDate->toSTring("M/d/yyyy")}&user_name={$this->_credentials['user']}&user_password={$this->_credentials['password']}&advIdProgIdCombo=&tx_fmt=3&submit_tx=Download", array()); $exportData = array(); try { $exportReport = $this->_client->get($urls, 'content', 5); $exportData = str_getcsv($exportReport[0], "\n"); } catch (Exception $e) { } $num = count($exportData); for ($i = 1; $i < $num; $i++) { $transactionExportArray = str_getcsv($exportData[$i], "\t"); if ($transactionExportArray[2] == "Winning Bid (Revenue)" && (empty($this->_sitesAllowed) || in_array($transactionExportArray[5], $this->_sitesAllowed))) { $transaction = array(); $transaction['merchantId'] = 1; $transactionDate = new Zend_Date($transactionExportArray[1], 'yyyy-MM-dd', 'en'); $transaction['date'] = $transactionDate->toString("yyyy-MM-dd HH:mm:ss"); unset($transactionDate); if ($transactionExportArray[12] != null) { $transaction['custom_id'] = $transactionExportArray[12]; } $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; $transaction['amount'] = Oara_Utilities::parseDouble($transactionExportArray[3]); $transaction['commission'] = Oara_Utilities::parseDouble($transactionExportArray[20]); $totalTransactions[] = $transaction; } } return $totalTransactions; }
/** * (non-PHPdoc) * @see Oara/Network/Oara_Network_Publisher_Base#getPaymentHistory() */ public function getPaymentHistory() { $paymentHistory = array(); $urls = array(); $urls[] = new Oara_Curl_Request('https://members.cj.com/member/cj/publisher/paymentStatus', array()); $exportReport = $this->_client->get($urls); if (preg_match("/\\/publisher\\/getpublisherpaymenthistory\\.do/", $exportReport[0], $matches)) { $urls = array(); $valuesFromExport = $this->_exportPaymentParameters; $urls[] = new Oara_Curl_Request('https://members.cj.com/member/' . $this->_memberId . '/publisher/getpublisherpaymenthistory.do?', $valuesFromExport); $exportReport = $this->_client->get($urls); $exportData = str_getcsv($exportReport[0], "\n"); $num = count($exportData); for ($j = 1; $j < $num; $j++) { $paymentData = str_getcsv($exportData[$j], ","); $obj = array(); $date = new Zend_Date($paymentData[0], "dd-MMM-yyyy HH:mm", 'en_US'); $obj['date'] = $date->toString("yyyy-MM-dd HH:mm:ss"); $obj['value'] = Oara_Utilities::parseDouble($paymentData[1]); $obj['method'] = $paymentData[2]; $obj['pid'] = $paymentData[6]; $paymentHistory[] = $obj; } } return $paymentHistory; }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Base#getOverviewList($merchantId, $dStartDate, $dEndDate) */ public function getOverviewList($transactionList = null, $merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null) { $overviewArray = array(); $transactionArray = Oara_Utilities::transactionMapPerDay($transactionList); $mothOverviewUrls = array(); $dateArray = Oara_Utilities::daysOfDifference($dStartDate, $dEndDate); $dateArraySize = sizeof($dateArray); for ($i = 0; $i < $dateArraySize; $i++) { $valuesFormExport = Oara_Utilities::cloneArray($this->_exportTransactionParameters); $valuesFormExport[] = new Oara_Curl_Parameter('datefrom', $dateArray[$i]->toString("yyyy-MM-dd")); $valuesFormExport[] = new Oara_Curl_Parameter('dateto', $dateArray[$i]->toString("yyyy-MM-dd")); $mothUrls[] = new Oara_Curl_Request('https://accounts.skimlinks.com/reports_export.php?', $valuesFormExport); } $exportReport = $this->_client->get($mothUrls); $exportReportNumber = count($exportReport); for ($i = 0; $i < $exportReportNumber; $i++) { $exportData = str_getcsv($exportReport[$i], "\n"); $num = count($exportData); for ($j = 1; $j < $num - 5; $j++) { $overviewExportArray = str_getcsv($exportData[$j], ","); if (Oara_Utilities::parseDouble($overviewExportArray[2]) != 0 && isset($this->_merchantMap[$overviewExportArray[0]]) && in_array($this->_merchantMap[$overviewExportArray[0]], $merchantList)) { $overview = array(); $overview['merchantId'] = $this->_merchantMap[$overviewExportArray[0]]; $overviewDate = new Zend_Date($mothUrls[$i]->getParameter(5)->getValue(), 'yyyy-MM-dd', 'en'); $overview['date'] = $overviewDate->toString("yyyy-MM-dd HH:mm:ss"); $overview['click_number'] = (int) $overviewExportArray[1]; $overview['impression_number'] = 0; $overview['transaction_number'] = 0; $overview['transaction_confirmed_value'] = 0; $overview['transaction_confirmed_commission'] = 0; $overview['transaction_pending_value'] = 0; $overview['transaction_pending_commission'] = 0; $overview['transaction_declined_value'] = 0; $overview['transaction_declined_commission'] = 0; $transactionDateArray = Oara_Utilities::getDayFromArray($overview['merchantId'], $transactionArray, $overviewDate); foreach ($transactionDateArray as $transaction) { $overview['transaction_number']++; if ($transaction['status'] == Oara_Utilities::STATUS_CONFIRMED) { $overview['transaction_confirmed_value'] += $transaction['amount']; $overview['transaction_confirmed_commission'] += $transaction['commission']; } else { if ($transaction['status'] == Oara_Utilities::STATUS_PENDING) { $overview['transaction_pending_value'] += $transaction['amount']; $overview['transaction_pending_commission'] += $transaction['commission']; } else { if ($transaction['status'] == Oara_Utilities::STATUS_DECLINED) { $overview['transaction_declined_value'] += $transaction['amount']; $overview['transaction_declined_commission'] += $transaction['commission']; } } } } if (Oara_Utilities::checkRegister($overview)) { $overviewArray[] = $overview; } } } } return $overviewArray; }
/** * (non-PHPdoc) * @see library/Oara/Network/Oara_Network_Publisher_Interface#getTransactionList($aMerchantIds, $dStartDate, $dEndDate, $sTransactionStatus) */ public function getTransactionList($merchantList = null, Zend_Date $dStartDate = null, Zend_Date $dEndDate = null, $merchantMap = null) { $totalTransactions = array(); $dateArray = Oara_Utilities::daysOfDifference($dStartDate, $dEndDate); $dateArraySize = sizeof($dateArray); for ($j = 0; $j < $dateArraySize; $j++) { $valuesFormExport = array(); $valuesFormExport[] = new Oara_Curl_Parameter('date', $dateArray[$j]->toString("yyyy-MM-dd")); $valuesFormExport[] = new Oara_Curl_Parameter('period', 'day'); $urls = array(); $urls[] = new Oara_Curl_Request('https://www.privateinternetaccess.com/affiliates/affiliate_dashboard?', $valuesFormExport); $exportReport = $this->_client->get($urls); $dom = new Zend_Dom_Query($exportReport[0]); $results = $dom->query('.coupon_code table'); if (count($results) > 0) { $exportData = self::htmlToCsv(self::DOMinnerHTML($results->current())); for ($z = 1; $z < count($exportData) - 2; $z++) { $transactionLineArray = str_getcsv($exportData[$z], ";"); $numberTransactions = (int) $transactionLineArray[1]; $commission = preg_replace("/[^0-9\\.,]/", "", $transactionLineArray[2]); $commission = (double) $commission / $numberTransactions; for ($y = 0; $y < $numberTransactions; $y++) { $transaction = array(); $transaction['merchantId'] = "1"; $transaction['date'] = $dateArray[$j]->toString("yyyy-MM-dd HH:mm:ss"); $transaction['status'] = Oara_Utilities::STATUS_CONFIRMED; $transaction['amount'] = $commission; $transaction['commission'] = $commission; $totalTransactions[] = $transaction; } } } } return $totalTransactions; }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { if ($event->get('is_new_session')) { return $this->logSession($event); } else { return $this->logSessionUpdate($event); } }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { // Make entity $f = owa_coreAPI::entityFactory('base.feed_request'); $f->load($event->get('guid')); if (!$f->wasPersisted()) { $f->setProperties($event->getProperties()); // Set Primary Key $f->set('id', $event->get('guid')); // Make ua id $f->set('ua_id', owa_lib::setStringGuid($event->get('HTTP_USER_AGENT'))); // Make OS id $f->set('os_id', owa_lib::setStringGuid($event->get('os'))); // Make document id $f->set('document_id', owa_lib::setStringGuid($event->get('page_url'))); // Generate Host id $f->set('host_id', owa_lib::setStringGuid($event->get('host'))); $f->set('subscription_id', $event->get('feed_subscription_id')); // Persist to database $ret = $f->create(); if ($ret) { $eq = owa_coreAPI::getEventDispatch(); $nevent = $eq->makeEvent($event->getEventType() . '_persisted'); $nevent->setProperties($event->getProperties()); $eq->notify($nevent); return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug('Not persisting. Feed request already exists.'); return OWA_EHS_EVENT_HANDLED; } }
/** * Notify Event Handler * * @param unknown_type $event * @access public */ function notify($event) { $os = owa_coreAPI::entityFactory('base.os'); $os->getByColumn('id', owa_lib::setStringGuid($event->get('os'))); if (!$os->get('id')) { $os->set('name', $event->get('os')); $os->set('id', owa_lib::setStringGuid($event->get('os'))); $ret = $os->create(); if ($ret) { return OWA_EHS_EVENT_HANDLED; } else { return OWA_EHS_EVENT_FAILED; } } else { owa_coreAPI::debug('Not persistig. Operating system already exists.'); return OWA_EHS_EVENT_HANDLED; } }