/** * returns all commission types for a campaign * * @service commission read * @param $fields */ public function loadAllCommissionSettings(Gpf_Rpc_Params $params) { $commissionGroupId = $params->get("commissiongroupid"); $campaignId = $params->get("campaignid"); $rtype = $params->get("rtype"); if($campaignId != '') { if($commissionGroupId == '') { $commissionGroupId = $this->getDefaultCommissionGroupId($campaignId); } return Pap_Db_Table_Commissions::getInstance()->getAllCommissions('', $commissionGroupId); } if($rtype != '') { return Pap_Db_Table_Commissions::getInstance()->getAllCommissions('', $commissionGroupId); } throw new Exception($this->_("Campaign ID cannot be empty!")); }
/** * * @param Gpf_Data_RecordSet $inputResult * @return Gpf_Data_RecordSet */ protected function afterExecute(Gpf_Data_RecordSet $inputResult) { $inputResult->addColumn('commissionOverview', 'N'); $cTable = Pap_Db_Table_Commissions::getInstance(); $rsCommissions = $cTable->getAllCommissionsInCampaign(); foreach ($inputResult as $record) { if($cTable->findCampaignInCommExistsRecords($record->get(Pap_Db_Table_Campaigns::ID), $rsCommissions)) { $record->set('commissionOverview', $cTable->getCommissionsDescription($record->get(Pap_Db_Table_Campaigns::ID), $rsCommissions, $record->get('id'))); } } return $inputResult; }
private function addCommissions(Gpf_Data_RecordSet $rs ) { $cTable = Pap_Db_Table_Commissions::getInstance(); $rsCommissions = $cTable->getAllCommissionsInCampaign('', ''); $rs->addColumn('commissions', 'N'); $newRs = new Gpf_Data_RecordSet(); $newRs->setHeader($rs->getHeader()); foreach ($rs as $record) { if($cTable->findCampaignInCommExistsRecords($record->get("id"), $rsCommissions)) { $record->set('commissions', $this->getCommissionsDescription($record->get("id"), $rsCommissions)); $newRs->addRecord($record); } } return $newRs; }
/** * @return Gpf_Data_RecordSet */ public function getAffiliateCampaigns() { $cTable = Pap_Db_Table_Commissions::getInstance(); $rsCommissions = $cTable->getAllCommissionsInCampaign('', ''); foreach ($this->campaigns as $campaign) { $status = $campaign->get(Pap_Db_Table_Campaigns::STATUS); if(!in_array($status, Pap_Affiliates_Promo_Campaigns::getCampaignAllowedStatuses())) { continue; } if ($cTable->findCampaignInCommExistsRecords($campaign->get($this->campaignIDColumnName), $rsCommissions)) { if ($this->isAffiliateInCampaign($campaign)) { $this->affiliateCampaigns->addRecord($campaign); } } } return $this->affiliateCampaigns; }
/** * @service campaign read * * @param Gpf_Rpc_Params $params */ public function getPrivateAndManualCampaigns(Gpf_Rpc_Params $params) { $selectBuilder = $this->getCampaignsSelect(); $selectBuilder->select->add(self::TYPE, 'type'); $selectBuilder->where->add(self::TYPE, 'IN', array(Pap_Db_Campaign::CAMPAIGN_TYPE_ON_INVITATION, Pap_Db_Campaign::CAMPAIGN_TYPE_PUBLIC_MANUAL)); $selectBuilder->orderBy->add(self::NAME); $campaigns = $selectBuilder->getAllRows(); $cTable = Pap_Db_Table_Commissions::getInstance(); $rsCommissions = $cTable->getAllCommissionsInCampaign(); $campaigns->addColumn('commissions', ''); foreach ($campaigns as $campaign) { $campaign->set('type', Pap_Common_Constants::getCampaignTypeAsText($campaign->get('type'))); if ($cTable->findCampaignInCommExistsRecords($campaign->get('id'), $rsCommissions)) { $campaign->set('commissions', $cTable->getCommissionsDescription($campaign->get('id'), $rsCommissions)); } } return $campaigns; }
/** * function checks if for this campaigns some commission types are set * and if they have some commissions defined. * If not, it returns N, if yes it returns Y. * */ public function getCommissionStatus() { $cTable = Pap_Db_Table_Commissions::getInstance(); $commissionsExist = $cTable->checkCommissionsExistInCampaign($this->getId()); if($commissionsExist) { return self::CAMPAIGN_COMMISSION_STATUS_DEFINED; } return self::CAMPAIGN_COMMISSION_STATUS_NOTDEFINED; }
/** * @service user_comm_group add * * @param Gpf_Rpc_Params $params * @return Gpf_Rpc_Action */ public function addUser(Gpf_Rpc_Params $params) { $action = new Gpf_Rpc_Action($params); $action->setInfoMessage($this->_('%s successfully add', $this->getRowName())); $campaignId = $action->getParam('campaignId'); $cTable = Pap_Db_Table_Commissions::getInstance(); $commissionGroup = $cTable->getDefaultCommissionGroup($campaignId); $this->addUserNoRpc($action, $campaignId, Gpf_Session::getAuthUser()->getPapUserId(), $commissionGroup, 'P', $action->getParam('sendNotification') == Gpf::YES); return $action; }
private function disableRecurringCommissionInCampaigns() { Pap_Db_Table_Commissions::getInstance()->deleteAllSubtypeCommissions(Pap_Db_Table_Commissions::SUBTYPE_RECURRING); }
protected function loadResultData() { $this->commissionsGroupTable = Pap_Db_Table_CommissionGroups::getInstance(); $this->commissionsTable = Pap_Db_Table_Commissions::getInstance(); return parent::loadResultData(); }
public function init() { $this->setTable(Pap_Db_Table_Commissions::getInstance()); parent::init(); }
/** * @service commission_group read * * @param Gpf_Rpc_Params $params * @return Gpf_Rpc_Form */ public function getAllCommissionGroupsForCampaign(Gpf_Rpc_Params $params) { $form = new Gpf_Rpc_Form($params); $select = $this->getCommissionGroupsSelect($params->get('campaignid')); try { $commissionGroupsData = $select->getAllRows(); } catch (Gpf_DbEngine_NoRowException $e) { return $form; } $cTable = Pap_Db_Table_Commissions::getInstance(); $rsCommissions = $cTable->getAllCommissionsInCampaign(); $commissionGroups = new Gpf_Data_RecordSet(); $commissionGroups->setHeader(array('id', 'name', 'commissiongroupvalue')); foreach ($commissionGroupsData as $commissionGroupData) { $commissionGroups->add(array($commissionGroupData->get(Pap_Db_Table_CommissionGroups::ID), Pap_Db_Table_CommissionGroups::NAME, $commissionGroupData->set('commissiongroupvalue', $cTable->getCommissionsDescription($commissionGroupData->get(Pap_Db_Table_Campaigns::ID), $rsCommissions, $commissionGroupData->get(Pap_Db_Table_CommissionGroups::ID))))); } $form->setField('commissionGroups', '', $commissionGroupsData->toObject()); return $form; }
private function addCampaignDetails(Gpf_Data_RecordSet $inputResult) { $inputResult->addColumn('campaigndetails'); $commissionsTable = Pap_Db_Table_Commissions::getInstance(); $allCommissions = $commissionsTable->getAllCommissionsInCampaign(); $campaignCommissions = array(); foreach ($inputResult as $record) { $campaignId = $record->get('campaignid'); if (!array_key_exists($campaignId, $campaignCommissions)) { $campaign = new Pap_Db_Campaign(); $campaign->setId($campaignId); $commissionGroupId = $campaign->checkUserIsInCampaign(Gpf_Session::getAuthUser()->getPapUserId()); if ($commissionGroupId == false) { $commissionGroupId = null; } $campaignCommissions[$campaignId] = $commissionsTable->getCommissionsDescription($campaignId,$allCommissions,$commissionGroupId); } $record->set('campaigndetails', $campaignCommissions[$campaignId]); } return $inputResult; }
private function getAffiliateCommissionGroupId($campaignID) { $campaign = new Pap_Db_Campaign(); $campaign->setId($campaignID); $commissionGroupId = $campaign->checkUserIsInCampaign(Gpf_Session::getAuthUser()->getPapUserId()); if ($commissionGroupId != false) { return $commissionGroupId; } return Pap_Db_Table_Commissions::getInstance()->getDefaultCommissionGroup($campaignID); }
public function __construct() { parent::__construct(); $this->commissionsTable = Pap_Db_Table_Commissions::getInstance(); $this->commissions = $this->commissionsTable->getAllCommissionsInCampaign(); }