private function createApproveDeclineTask(Gpf_Tasks_QuickTaskGroup $quickTaskGroup, $newStatus) {               
        $actionRequest = new Gpf_Rpc_ActionRequest('Pap_Features_Common_AffiliateGroupForm', 'changeStatus');
       
        $commissionGroup = Pap_Db_Table_CommissionGroups::getInstance();

        $userInCommissionGroupId = $commissionGroup->getUserInCommissionGroup($this->campaign->getId(), $this->user->getId());

        $actionRequest->addParam('status', $newStatus);
        $actionRequest->addParam('ids', new Gpf_Rpc_Array(array($userInCommissionGroupId)));   
        
        $quickTask = new Gpf_Tasks_QuickTask($actionRequest);
        $quickTaskGroup->add($quickTask);
        return $quickTask->getUrl();
    }
 /**
  * @service commission read
  * 
  * @param $campaignid
  * @return Gpf_Data_RecordSet <commissiongroupid, name, isdefault>
  */
 public function loadCommissionGroups(Gpf_Rpc_Params $params) {
     $campaignId = $params->get("campaignid"); 
     if($campaignId == "") {
       throw new Gpf_Exception($this->_("loadCommissionGroups: campaignId is empty"));
     }
     
     $commissionsGroupTable = Pap_Db_Table_CommissionGroups::getInstance();
     $groups = $commissionsGroupTable->getAllCommissionGroups($campaignId);
     
     if($groups->getSize() == 0) {
       $this->insertDefaultCommissionGroup($campaignId);
       $groups = $commissionsGroupTable->getAllCommissionGroups($campaignId);
     }
     
     return $groups;
 }
 private function saveCommissionGroup($campaignId, $userId, $newCommissionGroupId) {
 	$cgTable = Pap_Db_Table_CommissionGroups::getInstance();
 	$oldCommissionGroupId = $cgTable->getUserCommissionGroup($campaignId, $userId);
 	$status = Pap_Common_Constants::STATUS_APPROVED;
 	
     if ($oldCommissionGroupId != null) {
         try {
             $status = Pap_Db_Table_UserInCommissionGroup::getStatus($campaignId, $userId);
         } catch (Gpf_DbEngine_NoRowException $e) {
             Gpf_Log::debug('Row in userincommissiongroup should exist for userId: '.$userId.' and campaignId: '.$campaignId);
         }
     	$this->deleteUserInCommissionGroups($oldCommissionGroupId, $userId);
     }
     
     $commissionGroup = new Pap_Db_CommissionGroup();
     $commissionGroup->setPrimaryKeyValue($newCommissionGroupId);
     $commissionGroup->load();
     
     if ($commissionGroup->getIsDefault() != Gpf::YES) {
     	$this->addUserInCommissionGroup($newCommissionGroupId, $userId, $status);
     }
 }
 function init() {
     $this->setTable(Pap_Db_Table_CommissionGroups::getInstance());
     parent::init();
 }
	protected function loadResultData() {
		$this->commissionsGroupTable = Pap_Db_Table_CommissionGroups::getInstance();
		$this->commissionsTable = Pap_Db_Table_Commissions::getInstance();
		return parent::loadResultData();
	}