_paymentProcessorID = CRM_Utils_Request::retrieve('processor_id', 'Integer', CRM_Core_DAO::$_nullObject, TRUE); $this->assignBillingType(); $this->_paymentProcessor = CRM_Financial_BAO_PaymentProcessor::getPayment($this->_paymentProcessorID); CRM_Core_Payment_ProcessorForm::preProcess($this); self::addCreditCardJs(); $this->assign('paymentProcessorID', $this->_paymentProcessorID); $this->assign('suppressForm', TRUE); } public function buildQuickForm() { CRM_Core_Payment_ProcessorForm::buildQuickForm($this); } /** * Set default values for the form. */ public function setDefaultValues() { $contactID = $this->getContactID(); CRM_Core_Payment_Form::setDefaultValues($this, $contactID); return $this->_defaults; } /** * Add JS to show icons for the accepted credit cards */ public static function addCreditCardJs() { $creditCardTypes = CRM_Core_Payment_Form::getCreditCardCSSNames(); CRM_Core_Resources::singleton() ->addScriptFile('civicrm', 'templates/CRM/Core/BillingBlock.js', 10) // workaround for CRM-13634 // ->addSetting(array('config' => array('creditCardTypes' => $creditCardTypes))); ->addScript('CRM.config.creditCardTypes = ' . json_encode($creditCardTypes) . ';'); } }