/** * @param String $campaignId * * @return Gpf_Data_RecordSet */ public function getAllCommissionGroups($campaignId) { $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add(self::ID, 'commissiongroupid'); $selectBuilder->select->add(self::NAME, 'name'); $selectBuilder->select->add(self::IS_DEFAULT, 'isdefault'); $selectBuilder->from->add(self::getName()); $selectBuilder->where->add(self::CAMPAIGN_ID, '=', $campaignId); return $selectBuilder->getAllRows(); }
public static function getUserChannels($userId) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add(self::ID); $select->select->add(self::NAME); $select->select->add(self::VALUE); $select->from->add(self::getName()); $select->where->add(self::USER_ID, "=", $userId); return $select->getAllRows(); }
/** * Return all mail attachments for given mail id * * @param int $mailId * @return Gpf_Data_RecordSet */ public static function getMailAttachments($mailId) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add('f.*'); $select->select->add('ma.is_included_image', 'is_included_image'); $select->from->add(Gpf_Db_Table_MailAttachments::getName(), 'ma'); $select->from->addInnerJoin(Gpf_Db_Table_Files::getName(), 'f', 'f.fileid=ma.fileid'); $select->where->add('mailid', '=', $mailId); return $select->getAllRows(); }
/** * @return Gpf_Data_RecordSet */ protected function getMatchingCampaignsRecordSet($productId) { $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add(Pap_Db_Table_Campaigns::ID); $selectBuilder->select->add(Pap_Db_Table_Campaigns::PRODUCT_ID); $selectBuilder->from->add(Pap_Db_Table_Campaigns::getName()); $selectBuilder->where->add(Pap_Db_Table_Campaigns::PRODUCT_ID, 'REGEXP', '[,[:space:]]'.$productId.'[,[:space:]]', 'OR'); $selectBuilder->where->add(Pap_Db_Table_Campaigns::PRODUCT_ID, 'REGEXP', '^'.$productId.'$', 'OR'); $selectBuilder->where->add(Pap_Db_Table_Campaigns::PRODUCT_ID, 'REGEXP', '^'.$productId.'[,[:space:]]', 'OR'); $selectBuilder->where->add(Pap_Db_Table_Campaigns::PRODUCT_ID, 'REGEXP', '[,[:space:]]'.$productId.'$', 'OR'); return $selectBuilder->getAllRows(); }
public function __construct() { for ($i = 0; $i < 10; $i++) { $this->groupId = substr(md5(uniqid(rand(), true)), 0, 16); $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add(Gpf_Db_Table_QuickTasks::GROUPID); $selectBuilder->from->add(Gpf_Db_Table_QuickTasks::getName()); $selectBuilder->where->add(Gpf_Db_Table_QuickTasks::GROUPID, '=', $this->groupId); if ($selectBuilder->getAllRows()->getSize() == 0) { break; } } }
public function execute() { $templatesSelect = new Gpf_SqlBuilder_SelectBuilder(); $templatesSelect->select->addAll(Gpf_Db_Table_MailTemplates::getInstance()); $templatesSelect->from->add(Gpf_Db_Table_MailTemplates::getName()); $templatesSelect->where->add(Gpf_Db_Table_MailTemplates::CLASS_NAME, 'IN', array('Pap_Mail_Reports_AffDailyReport', 'Pap_Mail_Reports_AffMonthlyReport', 'Pap_Mail_Reports_AffWeeklyReport')); $t = new Gpf_Db_MailTemplate(); $templates = $t->loadCollectionFromRecordset($templatesSelect->getAllRows()); foreach ($templates as $template) { $this->processTemplate($template); } }
public function getAllNoRpc() { $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add(self::ID, 'id'); $selectBuilder->select->add(self::CODE, 'code'); $selectBuilder->select->add(self::PARAMS, 'params'); $selectBuilder->select->add(self::TITLE, 'title'); $selectBuilder->select->add(self::ICON, 'icon'); $selectBuilder->select->add(self::DESCRIPTION, 'description'); $selectBuilder->select->add(self::SHOWHEADER, 'showheader'); $selectBuilder->from->add(self::getName()); return $this->replaceUserVariablesInParams($selectBuilder->getAllRows()); }
/** * * @service * @anonym * @return Gpf_Rpc_Data */ public function ping(Gpf_Rpc_Params $params) { $sql = new Gpf_SqlBuilder_SelectBuilder(); $sql->select->addAll(Gpf_Db_Table_AuthUsers::getInstance()); $sql->from->add(Gpf_Db_Table_AuthUsers::getName()); $count = $sql->getAllRows()->getSize(); if ($count == 0) { throw new Gpf_Exception($this->_('Ping failed')); } $data = new Gpf_Rpc_Data(); $data->setValue('status', 'OK'); return $data; }
public function getPendingAffiliatesCount() { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add(Gpf_Db_Table_Users::ID); $select->from->add(Gpf_Db_Table_Users::getName()); $select->where->add(Gpf_Db_Table_Users::STATUS, "=", self::PENDING); $select->where->add(Gpf_Db_Table_Users::ROLEID, "=", Pap_Application::DEFAULT_ROLE_AFFILIATE); Gpf_Plugins_Engine::extensionPoint('AffiliateNetwork.modifyWhere', new Gpf_Common_SelectBuilderCompoundRecord($select, new Gpf_Data_Record(array()))); $result = $select->getAllRows(); return $result->getSize(); }
/** * Return count of online users per role * * @service online_user read * @param Gpf_Rpc_Params $params */ public function getOnlineRolesCount(Gpf_Rpc_Params $params) { $sql = new Gpf_SqlBuilder_SelectBuilder(); $sql->from->add(Gpf_Db_Table_Roles::getName(), 'r'); $sql->from->addInnerJoin(Gpf_Db_Table_Users::getName(), 'u', 'u.roleid=r.roleid'); $sql->from->addInnerJoin(Gpf_Db_Table_LoginsHistory::getName(), 'l', 'l.accountuserid=u.accountuserid'); $sql->select->add(Gpf_Db_Table_Roles::NAME, Gpf_Db_Table_Roles::NAME, 'r'); $sql->select->add('count(*)', 'usersCount'); $sql->where->add(Gpf_Db_Table_LoginsHistory::LOGOUT, 'is', 'NULL', 'AND', false); $sql->where->add(Gpf_Db_Table_LoginsHistory::LAST_REQUEST, '>', "('" . $this->createDatabase()->getDateString() . "' - INTERVAL 1800 SECOND)", 'AND', false); Gpf_Plugins_Engine::extensionPoint('Gpf_Report_OnlineUsersGadget.getOnlineRolesCount', $sql->where); $sql->groupBy->add('r.' . Gpf_Db_Table_Roles::ID); return $this->translateRoleNames($sql->getAllRows()); }
/** * Return file content from database * * @param string $fileId * @return string */ public static function getFileContent($fileId) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add('content', 'content'); $select->from->add(Gpf_Db_Table_FileContents::getName()); $select->where->add('fileid', '=', $fileId); $select->orderBy->add('contentid'); $resultSet = $select->getAllRows(); $content = ''; foreach ($resultSet as $result) { $content .= $result->get('content'); } return $content; }
private function updateNullValidTo() { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add('campaignid'); $select->select->add('cookielifetime'); $select->from->add(Pap_Db_Table_Campaigns::getName()); $recordSet = $select->getAllRows(); foreach ($recordSet as $record) { $campaign = new Pap_Common_Campaign(); $campaign->setId($record->get('campaignid')); $campaign->setCookieLifetime($record->get('cookielifetime')); $this->updateValidityFor($campaign); } }
public function execute() { $q = new Gpf_SqlBuilder_SelectBuilder(); $q->select->add('fixedcost'); $q->from->add(Pap_Db_Table_Transactions::getName()); $q->limit->set(0,1); try { $q->getAllRows(); return; } catch(Exception $e) { } $db = Gpf_DbEngine_Database::getDatabase(); $db->execute("ALTER TABLE qu_pap_transactions ADD fixedcost FLOAT NOT NULL DEFAULT '0'"); }
private function isSetRow() { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add(Pap_Db_Table_UserPayoutOptions::VALUE, "payoutDataValue"); $select->from->add(Pap_Db_Table_UserPayoutOptions::getName()); $select->where->add(Pap_Db_Table_Users::ID, "=", $this->get(Pap_Db_Table_Users::ID)); $select->where->add(Gpf_Db_Table_FormFields::ID, "=", $this->get(Gpf_Db_Table_FormFields::ID)); $recordSet = $select->getAllRows(); if ($recordSet->getSize() > 0) { return true; } return false; }
/** * Return list of files assigned to mail template * @service mail_template read * @param Gpf_Rpc_Params $params * @return Gpf_Data_RecordSet */ public function getUploadedFiles(Gpf_Rpc_Params $params) { $templateId = $params->get("templateId"); $dbRow = $this->loadMailTemplate($templateId); $sql = new Gpf_SqlBuilder_SelectBuilder(); $sql->select->add(Gpf_Db_Table_Files::ID, Gpf_Db_Table_Files::ID, 'f'); $sql->select->add(Gpf_Db_Table_Files::FILE_NAME); $sql->select->add(Gpf_Db_Table_Files::FILE_TYPE); $sql->select->add(Gpf_Db_Table_Files::FILE_SIZE); $sql->select->add(Gpf_Db_Table_MailTemplateAttachments::IS_INCLUDED_IMAGE); $sql->from->add(Gpf_Db_Table_MailTemplateAttachments::getName(), 'ma'); $sql->from->addInnerJoin(Gpf_Db_Table_Files::getName(), 'f', 'f.fileid=ma.fileid'); $sql->where->add(Gpf_Db_Table_MailTemplates::ID, '=', $templateId); return $sql->getAllRows(); }
private function initActionCampaignNames() { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add('c.'.Pap_Db_Table_Campaigns::NAME); $select->select->add('ct.'.Pap_Db_Table_CommissionTypes::ID); $select->from->add(Pap_Db_Table_Campaigns::getName(), 'c'); $select->from->addInnerJoin(Pap_Db_Table_CommissionTypes::getName(), 'ct', 'ct.'.Pap_Db_Table_CommissionTypes::CAMPAIGNID.'='.'c.'.Pap_Db_Table_Campaigns::ID); $select->where->add('ct.'.Pap_Db_Table_CommissionTypes::NAME, '!=', ''); $select->where->add('ct.'.Pap_Db_Table_CommissionTypes::NAME, '!=', null); $this->campaignNamesCache = array(); foreach ($select->getAllRows() as $row) { $this->campaignNamesCache[$row->get(Pap_Db_Table_CommissionTypes::ID)] = $row->get(Pap_Db_Table_Campaigns::NAME); } }
/** * returns recordset of given attribute values for given array of users * * @param unknown_type $settingsNames * @param unknown_type $accountUserIds */ public static function getSettingsForGroupOfUsers($settingsNames, $accountUserIds) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add(Gpf_Db_Table_UserAttributes::ACCOUNT_USER_ID, "accountuserid"); $select->select->add(Gpf_Db_Table_UserAttributes::NAME, "name"); $select->select->add(Gpf_Db_Table_UserAttributes::VALUE, "value"); $select->from->add(Gpf_Db_Table_UserAttributes::getName()); $select->where->add(Gpf_Db_Table_UserAttributes::NAME, "IN", $settingsNames); $select->where->add(Gpf_Db_Table_UserAttributes::ACCOUNT_USER_ID, "IN", $accountUserIds); $recordSet = $select->getAllRows(); $results = array(); foreach ($recordSet as $record) { $results[$record->get('accountuserid')][$record->get('name')] = $record->get('value'); } return $results; }
/** * * @param string $accountUserId * @return Gpf_Data_RecordSet */ public function getWindows($accountUserId) { $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add('content'); $selectBuilder->select->add('positiontop'); $selectBuilder->select->add('positionleft'); $selectBuilder->select->add('width'); $selectBuilder->select->add('height'); $selectBuilder->select->add('closed'); $selectBuilder->select->add('minimized'); $selectBuilder->select->add('autorefreshtime'); $selectBuilder->from->add(self::getName()); $selectBuilder->where->add('accountuserid', '=', $accountUserId); $selectBuilder->orderBy->add('zindex'); /**** Load only top window ****/ //$selectBuilder->orderBy->add('zindex', false); //$selectBuilder->limit->set(0, 1); return $selectBuilder->getAllRows(); }
public function getLatestVersion($application) { if (!is_array($application)) { $application = array($application); } $sql = new Gpf_SqlBuilder_SelectBuilder(); $sql->select->add('name'); $sql->from->add(self::getName(), 'v'); $sql->where->add('application', 'IN', $application); $sql->where->add('done', '!=', null); $sql->orderBy->add('done', false); $sql->orderBy->add('versionid', false); $sql->limit->set(0, 1); $rows = $sql->getAllRows(); if ($rows->getSize() == 0) { return false; } return $rows->getRecord(0)->get('name'); }
protected function getTransactionsList() { $types = array(Pap_Common_Constants::TYPE_SALE, Pap_Common_Constants::TYPE_ACTION, Pap_Common_Constants::TYPE_LEAD, Pap_Common_Constants::TYPE_RECURRING); $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->addAll(Pap_Db_Table_Transactions::getInstance(), 't'); $select->from->add(Pap_Db_Table_Transactions::getName(), 't'); $select->from->addInnerJoin(Pap_Db_Table_CommissionTypeAttributes::getName(), 'cta', 'cta.'.Pap_Db_Table_CommissionTypeAttributes::COMMISSION_TYPE_ID.'=t.'.Pap_Db_Table_Transactions::COMMISSIONTYPEID. ' and (cta.'.Pap_Db_Table_CommissionTypeAttributes::NAME."='".AutoApprovalCommissions_Main::AUTO_APPROVAL_COMMISSIONS_DAYS."' and ".Pap_Db_Table_CommissionTypeAttributes::VALUE . '<>0) and (unix_timestamp(t.dateinserted) + (cta.'.Pap_Db_Table_CommissionTypeAttributes::VALUE.' * 86400)) <= unix_timestamp() '); $select->where->add(Pap_Db_Table_Transactions::R_TYPE, "IN", $types); $select->where->add(Pap_Db_Table_Transactions::R_STATUS, "=", Pap_Common_Constants::STATUS_PENDING); $transaction = new Pap_Common_Transaction(); return $transaction->loadCollectionFromRecordset($select->getAllRows()); }
/** * Get list of roles * * @service * @anonym * @param Gpf_Rpc_Params $parmas */ public function getRolesList(Gpf_Rpc_Params $params) { if (!Gpf_Session::getAuthUser()->hasPrivilege(Gpf_Privileges::ROLE, Gpf_Privileges::P_READ) && !Gpf_Session::getAuthUser()->hasPrivilege(Gpf_Privileges::ROLE, Pap_Privileges::P_READ_OWN)) { throw new Gpf_Rpc_PermissionDeniedException('Gpf_Db_Table_Roles', 'getRolesList'); } $sql = new Gpf_SqlBuilder_SelectBuilder(); $sql->from->add(Gpf_Db_Table_Roles::getName()); $sql->select->addAll(Gpf_Db_Table_Roles::getInstance()); $accountCondition = new Gpf_SqlBuilder_CompoundWhereCondition(); if (Gpf_Session::getAuthUser()->hasPrivilege(Gpf_Privileges::ROLE, Gpf_Privileges::P_READ)) { $accountCondition->add(Gpf_Db_Table_Accounts::ID, '!=', '', 'OR'); } else { $accountCondition->add(Gpf_Db_Table_Accounts::ID, '=', Gpf_Session::getInstance()->getAuthUser()->getAccountId(), 'OR'); } $accountCondition->add(Gpf_Db_Table_Accounts::ID, '=', null, 'OR'); $sql->where->addCondition($accountCondition); if ($params->exists('roleTypes') && $params->get('roleTypes') !== '') { $sql->where->add(Gpf_Db_Table_Roles::TYPE, 'IN', explode(',', $params->get('roleTypes'))); } $sql->orderBy->add(Gpf_Db_Table_Accounts::ID); $sql->orderBy->add(Gpf_Db_Table_Roles::NAME); return $sql->getAllRows(); }
private function migratePayoutOptionFields() { echo " Migrating payout option fields....."; $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add('*'); $selectBuilder->from->add('wd_pa_payoutfields'); $result = $selectBuilder->getAllRows(); $count = 0; foreach($result as $record) { $obj = new Gpf_Db_FormField(); $obj->setAccountId(Pap3Compatibility_Migration_Pap3Constants::DEFAULT_ACCOUNT_ID); $obj->setFormId('payout_option_'.$record->get('payoptid')); $obj->setCode($record->get('code')); $obj->setName($record->get('name')); $obj->setType(($record->get('rtype') == 1 ? 'T' : 'L')); $obj->setStatus(($record->get('mandatory') == 1 ? 'M' : 'O')); $obj->save(); $count++; } echo " ($count) ..... DONE<br/>"; }
public function scheduleTasks($inclusion_type, $inclusion_tasks) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->addAll(Gpf_Db_Table_PlannedTasks::getInstance()); $select->from->add(Gpf_Db_Table_PlannedTasks::getName()); $condition = new Gpf_SqlBuilder_CompoundWhereCondition(); $condition->add(Gpf_Db_Table_PlannedTasks::LASTPLANDATE, '<', Gpf_Common_DateUtils::now(), 'OR'); $condition->add(Gpf_Db_Table_PlannedTasks::LASTPLANDATE, 'is', 'NULL', 'OR', false); $select->where->addCondition($condition); if ($inclusion_type == Gpf_Tasks_Runner::INCLUDE_TASKS) { $select->where->add(Gpf_Db_Table_PlannedTasks::CLASSNAME, 'IN', $inclusion_tasks); } else { if ($inclusion_type == Gpf_Tasks_Runner::EXCLUDE_TASKS) { $select->where->add(Gpf_Db_Table_PlannedTasks::CLASSNAME, 'NOT IN', $inclusion_tasks); } } foreach ($select->getAllRows() as $plannedTaskRow) { $plannedTask = new Gpf_Db_PlannedTask(); $plannedTask->fillFromRecord($plannedTaskRow); if ($plannedTask->getLastPlanDate() == null) { $plannedTask->setLastPlanDate(Gpf_Common_DateUtils::now()); } $task = new Gpf_Db_Task(); $task->setClassName($plannedTask->getClassName()); $task->setParams($plannedTask->getParams()); $task->setAccountId($plannedTask->getAccountId()); $task->save(); $preset = new Gpf_Recurrence_Preset(); $preset->setId($plannedTask->getRecurrencePresetId()); $preset->load(); $nextDate = $preset->getNextDate(Gpf_Common_DateUtils::mysqlDateTime2Timestamp($plannedTask->getLastPlanDate())); if ($nextDate != null && $nextDate > 0) { $plannedTask->setLastPlanDate(Gpf_Common_DateUtils::getDateTime($nextDate)); $plannedTask->update(); } } }
/** * @service country read * @anonym * @return Gpf_Data_RecordSet */ public function loadCountries() { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add(Gpf_Db_Table_Countries::COUNTRY_CODE, 'id'); $select->select->add(Gpf_Db_Table_Countries::COUNTRY, 'name'); $select->from->add(Gpf_Db_Table_Countries::getName()); $select->where->add(Gpf_Db_Table_Countries::ACCOUNTID, '=', Gpf_Application::getInstance()->getAccountId()); $select->where->add(Gpf_Db_Table_Countries::STATUS, '=', Gpf_Db_Country::STATUS_ENABLED); $select->orderBy->add(Gpf_Db_Table_Countries::COUNTRY); return $select->getAllRows(); }
/** * * Pap alert application handle, do not modify this source! * * @param String $dateFrom * @param String $dateTo * @param String $userId * @return Gpf_Data_RecordSet */ public static function getTransactions(Pap_Stats_Params $statsParams) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add('tr.'.Pap_Db_Table_Transactions::USER_ID, 'userid'); $select->select->add('au.'.Gpf_Db_Table_AuthUsers::FIRSTNAME, 'name'); $select->select->add('au.'.Gpf_Db_Table_AuthUsers::LASTNAME, 'surname'); $select->select->add('au.'.Gpf_Db_Table_AuthUsers::USERNAME, 'username'); $select->select->add('pu.data1', 'weburl'); $select->select->add('tr.'.Pap_Db_Table_Transactions::TRANSACTION_ID, 'transid'); $select->select->add('tr.'.Pap_Db_Table_Transactions::TOTAL_COST, 'totalcost'); $select->select->add('tr.'.Pap_Db_Table_Transactions::FIXED_COST, 'fixedcost'); $select->select->add('tr.'.Pap_Db_Table_Transactions::ORDER_ID, 'orderid'); $select->select->add('tr.'.Pap_Db_Table_Transactions::PRODUCT_ID, 'productid'); $select->select->add('tr.'.Pap_Db_Table_Transactions::DATE_INSERTED, 'dateinserted'); $select->select->add('tr.'.Pap_Db_Table_Transactions::R_STATUS, 'rstatus'); $select->select->add('tr.'.Pap_Db_Table_Transactions::R_TYPE, 'transtype'); $select->select->add('tr.'.Pap_Db_Table_Transactions::PARRENT_TRANSACTION_ID, 'transkind'); $select->select->add('tr.'.Pap_Db_Table_Transactions::PAYOUT_STATUS, 'payoutstatus'); $select->select->add('tr.'.Pap_Db_Table_Transactions::DATE_APPROVED, 'dateapproved'); $select->select->add('tr.'.Pap_Db_Table_Transactions::COMMISSION, 'commission'); $select->select->add('tr.'.Pap_Db_Table_Transactions::REFERER_URL, 'refererurl'); $select->select->add('c.'.Pap_Db_Table_Campaigns::ID, 'campcategoryid'); $select->select->add('c.'.Pap_Db_Table_Campaigns::NAME, 'campaign'); $select->select->add('tr.data1', 'data1'); $select->select->add('tr.data2', 'data2'); $select->select->add('tr.data3', 'data3'); $select->select->add('tr.'.Pap_Db_Table_Transactions::COUNTRY_CODE, 'countrycode'); $select->from->add(Pap_Db_Table_Transactions::getName(), 'tr'); $select->from->addInnerJoin(Pap_Db_Table_Campaigns::getName(), 'c', 'tr.'.Pap_Db_Table_Transactions::CAMPAIGN_ID.'=c.'.Pap_Db_Table_Campaigns::ID); $select->from->addInnerJoin(Pap_Db_Table_Users::getName(), 'pu', 'tr.'.Pap_Db_Table_Transactions::USER_ID.'=pu.'.Pap_Db_Table_Users::ID); $select->from->addInnerJoin(Gpf_Db_Table_Users::getName(), 'gu', 'gu.'.Gpf_Db_Table_Users::ID.'=pu.'.Pap_Db_Table_Users::ACCOUNTUSERID); $select->from->addInnerJoin(Gpf_Db_Table_AuthUsers::getName(), 'au', 'gu.'.Gpf_Db_Table_Users::AUTHID.'=au.'.Gpf_Db_Table_AuthUsers::ID); if ($statsParams->isDateFromDefined()) { $select->where->add('tr.'.Pap_Db_Table_Transactions::DATE_INSERTED, '>=', $statsParams->getDateFrom()->toDateTime()); } if ($statsParams->isDateToDefined()) { $select->where->add('tr.'.Pap_Db_Table_Transactions::DATE_INSERTED, '<=', $statsParams->getDateTo()->toDateTime()); } if ($statsParams->getAffiliateId() != '') { $select->where->add('tr.'.Pap_Db_Table_Transactions::USER_ID, '=', $statsParams->getAffiliateId()); } return $select->getAllRows(); }
/** * * @return Gpf_Data_RecordSet */ private function getPendingEmail($outboxids) { $this->debug('Getting pending email...'); $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add('o.' . Gpf_Db_Table_MailOutbox::ID, Gpf_Db_Table_MailOutbox::ID); $select->select->add('o.' . Gpf_Db_Table_MailOutbox::RETRY_NR, Gpf_Db_Table_MailOutbox::RETRY_NR); $select->select->add('m.*'); $select->select->add('ma.*'); $select->from->add(Gpf_Db_Table_MailOutbox::getName(), 'o'); $select->from->addInnerJoin(Gpf_Db_Table_MailAccounts::getName(), 'ma', 'o.' . Gpf_Db_Table_MailOutbox::MAILACCOUNTID . ' = ma.' . Gpf_Db_Table_MailAccounts::ID); $select->from->addInnerJoin(Gpf_Db_Table_Mails::getName(), 'm', 'o.' . Gpf_Db_Table_MailOutbox::MAIL_ID . ' = m.' . Gpf_Db_Table_Mails::ID); if (!empty($outboxids)) { $select->where->add('o.' . Gpf_Db_Table_MailOutbox::ID, 'IN', $outboxids); } else { $select->where->add('o.' . Gpf_Db_Table_MailOutbox::ID, 'BETWEEN', $this->task->getWorkingAreaFrom() . ' AND ' . $this->task->getWorkingAreaTo(), 'AND', false); } //load just mails with status pending $select->where->add('o.' . Gpf_Db_Table_MailOutbox::STATUS, '=', Gpf_Db_Table_MailOutbox::STATUS_PENDING); // load just mails, which are already scheduled $select->where->add('o.' . Gpf_Db_Table_MailOutbox::SCHNEDULET_AT, '<=', $this->createDatabase()->getDateString()); //if retry number is too high, don't repeat sending $select->where->add('o.' . Gpf_Db_Table_MailOutbox::RETRY_NR, '<', Gpf_Db_Table_MailOutbox::MAX_RETRY_NR); $this->debug('email select: ' . $select->toString()); $select->limit->set(0, 1); return $select->getAllRows(); }
protected function migrateGroupsTypesCommissions() { Pap3Compatibility_Migration_OutputWriter::log(" Migrating groups, types, commissions....."); $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add('cc.*'); $selectBuilder->select->add('c.commtype', 'commtype'); $selectBuilder->select->add('c.campaignid', 'campaignid'); $selectBuilder->from->add('wd_pa_campaigncategories', 'cc'); $selectBuilder->from->addInnerJoin('wd_pa_campaigns', 'c', 'c.campaignid=cc.campaignid'); $selectBuilder->where->add('c.deleted', '=', '0'); $selectBuilder->where->add('cc.deleted', '=', '0'); $result = $selectBuilder->getAllRows(); // save normal commissions foreach($result as $record) { $groupId = $this->insertGroup($record); for($tier = 1; $tier<=10; $tier++) { $this->insertCommission( Pap3Compatibility_Migration_Pap3Constants::TRANSTYPE_CPM, Pap_Common_Constants::TYPE_CPM, $record, $groupId, $tier); $this->insertCommission( Pap3Compatibility_Migration_Pap3Constants::TRANSTYPE_CLICK, Pap_Common_Constants::TYPE_CLICK, $record, $groupId, $tier); $this->insertCommission( Pap3Compatibility_Migration_Pap3Constants::TRANSTYPE_SALE, Pap_Common_Constants::TYPE_SALE, $record, $groupId, $tier); $this->insertCommission( Pap3Compatibility_Migration_Pap3Constants::TRANSTYPE_LEAD, Pap_Common_Constants::TYPE_ACTION, $record, $groupId, $tier); } } Pap3Compatibility_Migration_OutputWriter::log(" (Groups:".$this->countGroups.", Types:".$this->countCommTypes.", Commissions:".$this->countCommissions.") ..... DONE<br/>"); }
public function getCommissionType(Pap_Contexts_Action $context) { $context->debug("Begin recognizing country specific commission type"); if(!strlen($context->getTransactionObject()->getCountryCode())) { $context->debug("STOPPING recognizing country specific commission type eneded: country code not recognized or empty"); return; } $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->addAll(Pap_Db_Table_CommissionTypes::getInstance()); $select->from->add(Pap_Db_Table_CommissionTypes::getName()); $select->where->add(Pap_Db_Table_CommissionTypes::PARENT_COMMISSIONTYPE_ID, '=', $context->getCommissionTypeObject()->getId()); $compoundContext = new Gpf_Data_Record(array(Pap_Db_Table_RawImpressions::IP, Pap_Db_Table_Impressions::COUNTRYCODE), array($context->getVisit()->getIp(), '')); $this->getCountryCode($compoundContext); $countryCode = $compoundContext->get(Pap_Db_Table_Impressions::COUNTRYCODE); if (!strlen($countryCode)) { $context->debug("STOPPING recognizing country specific commission type eneded: country code not recognized or empty"); return; } $select->where->add(Pap_Db_Table_CommissionTypes::COUNTRYCODES, 'LIKE', '%'.$countryCode.'%'); try { $commType = new Pap_Db_CommissionType(); $collection = $commType->loadCollectionFromRecordset($select->getAllRows()); $context->setCommissionTypeObject($collection->get(0)); } catch (Gpf_DbEngine_NoRowException $e) { $context->debug("Recognizing country specific commission type eneded - no country secpific commission defined"); return; } catch (Gpf_DbEngine_TooManyRowsException $e) { $context->debug("STOPPING ecognizing country specific commission type eneded: more than one commision type is defined for country " . $context->getTransactionObject()->getCountryCode()); return; } catch (Gpf_Exception $e) { $context->debug("STOPPING recognizing country specific commission type eneded: " . $e->getMessage()); } }
private function getCustomFields(Pap_Common_User $user) { $customFields = explode(',', Gpf_Settings::get(GetResponseSignup_Config::CUSTOM_DATA_FIELDS)); $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->add(Gpf_Db_Table_FormFields::NAME); $select->select->add(Gpf_Db_Table_FormFields::CODE); $select->from->add(Gpf_Db_Table_FormFields::getName()); array_walk($customFields, create_function('&$val', '$val = trim(strtolower($val));')); $select->where->add(Gpf_Db_Table_FormFields::CODE, 'IN', $customFields); $select->where->add(Gpf_Db_Table_FormFields::FORMID, '=', Pap_Merchants_Config_AffiliateFormDefinition::FORMID); $customs = array(); $x = $select->toString(); foreach($select->getAllRows() as $row) { $customs[] = array( 'name' => str_replace(' ', '_', Gpf_Lang::_localizeRuntime($row->get(Gpf_Db_Table_FormFields::NAME))), 'content' => $user->getData(str_replace('data', '', $row->get(Gpf_Db_Table_FormFields::CODE))) ); } return $customs; }
/** * Get recordset of merchants recipients * * @param $from * @return Gpf_Data_RecordSet */ private function getMerchantsRecipients($from) { $select = new Gpf_SqlBuilder_SelectBuilder(); $select->select->addAll(Gpf_Db_Table_AuthUsers::getInstance(), 'au'); $select->select->addAll(Gpf_Db_Table_Accounts::getInstance(), 'a'); $select->select->addAll(Gpf_Db_Table_Users::getInstance(), 'gu'); $select->select->addAll(Pap_Db_Table_Users::getInstance(), 'u'); $select->from->add(Pap_Db_Table_Users::getName(), 'u'); $select->from->addInnerJoin(Gpf_Db_Table_Users::getName(), 'gu', 'u.'.Pap_Db_Table_Users::ACCOUNTUSERID.'=gu.'.Gpf_Db_Table_Users::ID. ' AND u.'.Pap_Db_Table_Users::DELETED . ' = \'' . Gpf::NO . '\''. ' AND u.' .Pap_Db_Table_Users::TYPE . ' = \'' . Pap_Application::ROLETYPE_MERCHANT . '\''); $select->from->addInnerJoin(Gpf_Db_Table_AuthUsers::getName(), 'au', 'au.'.Gpf_Db_Table_AuthUsers::ID.'=gu.'.Gpf_Db_Table_Users::AUTHID); $select->from->addInnerJoin(Gpf_Db_Table_Accounts::getName(), 'a', 'a.'.Gpf_Db_Table_Accounts::ID.'=gu.'.Gpf_Db_Table_Users::ACCOUNTID); $select->limit->set($from, Pap_Mail_MassMailAffiliatesGrid::MAX_ROWS_PER_SQL); return $select->getAllRows(); }