/**
     * @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();
    }
Example #2
0
 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;
         }
     }
 }
Example #6
0
    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;
 }
Example #12
0
    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);
        }
    }
Example #13
0
 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;
 }
Example #18
0
 /**
  *
  * @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();
 }
Example #19
0
 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');
 }
Example #20
0
    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());
    }
Example #21
0
 /**
  * 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 "&nbsp;&nbsp;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/>";
    }
Example #23
0
 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();
         }
     }
 }
Example #24
0
 /**
  * @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("&nbsp;&nbsp;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/>");
    }
Example #28
0
 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());
     }
 }
Example #29
0
    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();
    }