Esempio n. 1
0
 	public function addCommission(Pap_Contexts_Signup $signupContext) {
 	    if (($user = $signupContext->getUserObject()) == null) {
 	        return;
 	    } 
 	    
 	    $campaignId = Gpf_Settings::get(SignupActionCommissions_Config::AFTER_SIGNUP_ACTION_CAMPAIGNID);
 	    $actionCode = Gpf_Settings::get(SignupActionCommissions_Config::AFTER_SIGNUP_ACTION_CODE);
 	    
 	    if ($actionCode == '') {
 	        Gpf_Log::error('SignupActionCommissions plugin: No Action code set');
 	        return;
 	    }
        
 	    $saleTracker = new Pap_Tracking_ActionTracker();
 	    
        $action = $saleTracker->createAction($actionCode);
        $action->setAffiliateID($user->getId());    
        $action->setStatus($user->getStatus());
        $action->setOrderId(SignupActionCommissions_Config::DEFAULT_ORDER_ID);
        if ($campaignId != '') {
          $action->setCampaignID($campaignId);
        }
        try {
            $saleTracker->register();
        } catch (Gpf_Exception $e) {
            Gpf_Log::error('SignupActionCommissions plugin: '.$e->getMessage());
        }
        
 	}
 protected function registerAllSales(Pap_Tracking_ActionTracker $saleTracker) {
 	$this->debug('Registering all sales...');
     $saleTracker->register();
     $this->debug('All sales registered...');
 }
    private function createSale(Gpf_Rpc_Form $form) {
        $saleTracker = new Pap_Tracking_ActionTracker();
        $sale = $saleTracker->createSale();
        $sale->setTotalCost($form->getFieldValue(Pap_Db_Table_Transactions::TOTAL_COST));
        $sale->setOrderID($form->getFieldValue(Pap_Db_Table_Transactions::ORDER_ID));
        $sale->setProductID($form->getFieldValue(Pap_Db_Table_Transactions::PRODUCT_ID));
        $sale->setData1($form->getFieldValue(Pap_Db_Table_Transactions::DATA1));
        $sale->setData2($form->getFieldValue(Pap_Db_Table_Transactions::DATA2));
        $sale->setData3($form->getFieldValue(Pap_Db_Table_Transactions::DATA3));
        $sale->setData4($form->getFieldValue(Pap_Db_Table_Transactions::DATA4));
        $sale->setData5($form->getFieldValue(Pap_Db_Table_Transactions::DATA5));
        $sale->setCoupon($form->getFieldValue(Pap_Db_Table_Coupons::CODE));
        
        Gpf_Plugins_Engine::extensionPoint('PostAffiliate.OfflineSaleForm.createSale', $sale);
        
        // For handle Affiliate Sale Tracking Codes, this feature write its codes to output
        ob_start();
        $saleTracker->register();
        ob_end_clean();

        $form->setInfoMessage($this->_('Sale was saved'));
    }