public function update() {
     $update = new Gpf_SqlBuilder_UpdateBuilder();
     $update->from->add(Pap_Db_Table_UserPayoutOptions::getName());
     $update->set->add(Pap_Db_Table_UserPayoutOptions::VALUE, $this->get(Pap_Db_Table_UserPayoutOptions::VALUE));
     $update->where->add(Pap_Db_Table_Users::ID, "=", $this->get(Pap_Db_Table_Users::ID));
     $update->where->add(Gpf_Db_Table_FormFields::ID, "=", $this->get(Gpf_Db_Table_FormFields::ID));
     $update->updateOne();
 }
	protected function buildData(Gpf_Data_RecordSet $fields, Gpf_Rpc_Params $params) {
		$select = new Gpf_SqlBuilder_SelectBuilder();        
        $select->select->add("name", "payoutFieldName", "ff");
        $select->select->add(Pap_Db_Table_UserPayoutOptions::VALUE, Pap_Db_Table_UserPayoutOptions::VALUE, "upo");
        $select->select->add(Pap_Db_Table_UserPayoutOptions::FORMFIELDID, Pap_Db_Table_UserPayoutOptions::FORMFIELDID, "upo");
        $select->from->add(Pap_Db_Table_Users::getName(), "pu");
        $select->from->addInnerJoin(Gpf_Db_Table_FormFields::getName(), "ff", "(ff.formid = CONCAT('payout_option_', pu.payoutoptionid))");
        $select->from->addInnerJoin(Pap_Db_Table_UserPayoutOptions::getName(), "upo", "(pu.userid = upo.userid AND ff.formfieldid = upo.formfieldid)");
        $select->where->add("pu.userid", "=", $params->get('userid'));       
        
        $i = 1;
		foreach ($select->getAllRowsIterator() as $payoutField) {
			$fields->add(array($payoutField->get(Pap_Db_Table_UserPayoutOptions::FORMFIELDID), 
								'data' . $i, 
								$this->_($payoutField->get('payoutFieldName')), 'T', 'M', null, ''));
			$this->fieldValues['data' . $i++] = $payoutField->get(Pap_Db_Table_UserPayoutOptions::VALUE);			
		}
	}
Example #3
0
    private function assignPayoutVariablesToTemplate(Gpf_Templates_Template $template) {
        $template->assignAttributes($this->user);
        $template->assign('vat_number', $this->vatNumber);
        $template->assign('reg_number', $this->regNumber);
        $template->assign('amount_of_reg_capital', $this->amountOfRegCapital);
        $template->assign('vat_percentage', $this->vatPercentage);
        $template->assign('payoutcurrency', $this->currency->getName());
        $template->assign('affiliate_note', $this->getAffiliateNote());
        $template->assign('payment', $this->getAmount());
        $template->assign('amount', str_replace('.', ',', $this->getAmount()));
        $template->assign('currency', $this->currency->getName());

        if ($this->payoutOption != null) {
            $template->assign('payoutmethod', $this->_localize($this->payoutOption->getName()));
        }
        $template->assign('payment_vat_part', $this->amountVatPart);
        $template->assign('payment_incl_vat', $this->amountWithVat);
        $template->assign('payment_excl_vat', $this->amountWithoutWat);

        $historyItem = $this->getPayoutHistoryItem();
        if ($historyItem === null) {
            
            $template->assign('date', Gpf_Common_DateUtils::getDateInLocaleFormat());
            $template->assign('time', Gpf_Common_DateUtils::getTimeInLocaleFormat());
        } else {
            $time = new Gpf_DateTime($historyItem->getDateInserted());
            $template->assign('date', Gpf_Common_DateUtils::getDateInLocaleFormat($time->toTimestamp()));
            $template->assign('time', Gpf_Common_DateUtils::getTimeInLocaleFormat($time->toTimestamp()));
        }
        $template->assign('invoicenumber',$this->getInvoiceNumber());

        if ($this->payoutOptionFields != null) {
            $userPayoutOptions = Pap_Db_Table_UserPayoutOptions::getInstance()->getValues(
            $this->payoutOption->getFormId(), $this->user->getId());
            foreach ($this->payoutOptionFields as $payoutOptionField) {
                $code = $payoutOptionField->get('code');
                if (array_key_exists($code, $userPayoutOptions)) {
                    $template->assign($code, $userPayoutOptions[$code]->getValue());
                }
            }
        }
    }
    /**
     * @anonym
     * @service affiliate read
     * @param Gpf_Rpc_Params $params
     */
    public function loadPayoutFields(Gpf_Rpc_Params $params) {
        $form = new Gpf_Rpc_Form($params);

        if (!Gpf_Session::getAuthUser()->isLogged()) {
            return $form;
        }

        $this->user = $this->createDbRowObject();
        $this->user->setPrimaryKeyValue($this->getId($form));
        try {
            $this->user->load();
        } catch (Gpf_DbEngine_NoRow $e) {
            throw new Exception($this->getDbRowObjectName().$this->_(" does not exist"));
        }

        $this->attribute->loadAttributes($this->user->getAccountUserId());

        $payoutOptionId = $form->getFieldValue("payoutOptionId");
        if ($payoutOptionId == null) {
            return $form;
        }
        $formFields = Gpf_Db_Table_FormFields::getInstance();
        $formName = "payout_option_" . $payoutOptionId;
        $payoutOptionFields = $formFields->getFieldsNoRpc($formName);

        $payoutOptionValues = Pap_Db_Table_UserPayoutOptions::getInstance()->getValues($formName, $this->user->getId());
        foreach ($payoutOptionFields as $field) {
            $code = $field->get("code");
            if (array_key_exists($code, $payoutOptionValues)) {
                $value = $payoutOptionValues[$code]->getValue();
            } else {
                $value = '';
            }
            $form->setField($code, $value);
        }

        return $form;
    }
	public static function getInstance() {
		if(self::$instance === null) {
			self::$instance = new self;
		}
		return self::$instance;
	}
 private function deletePayoutOptions() {
     $deleteBuilder = new Gpf_SqlBuilder_DeleteBuilder();
     $deleteBuilder->from->add(Pap_Db_Table_UserPayoutOptions::getName());
     $deleteBuilder->execute();
 }
	/**
	 * @param Gpf_Data_Row $row
	 * @return Gpf_SqlBuilder_SelectBuilder
	 */
	private function buildUserPayoutOptions(Gpf_Data_Row $row) {
		$select = new Gpf_SqlBuilder_SelectBuilder();
		$select->select->add("userid", Pap_Db_Table_UserPayoutOptions::USERID, "pu");
		$select->select->add("name", "payoutFieldName", "ff");
		$select->select->add(Pap_Db_Table_UserPayoutOptions::VALUE, Pap_Db_Table_UserPayoutOptions::VALUE, "upo");
		$select->select->add(Pap_Db_Table_UserPayoutOptions::FORMFIELDID, Pap_Db_Table_UserPayoutOptions::FORMFIELDID, "upo");
		$select->from->add(Pap_Db_Table_Users::getName(), "pu");
		$select->from->addInnerJoin(Gpf_Db_Table_FormFields::getName(), "ff", "(ff.formid = CONCAT('payout_option_', pu.payoutoptionid))");
		$select->from->addInnerJoin(Pap_Db_Table_UserPayoutOptions::getName(), "upo", "(pu.userid = upo.userid AND ff.formfieldid = upo.formfieldid)");
		$select->where->add("pu.userid", "=", $row->get('userid'));
		return $select;
	}