예제 #1
0
 /**
  * Generate and return the visible form fields.
  *
  * @param array $parameters
  * @return string
  */
 public function generateVisibleFormFields(array $parameters)
 {
     $adapter = $this->getAuthorizationAdapter(false);
     $customerId = $this->_subscription->getCustomer()->getId();
     $paymentCustomerContext = $this->getHelper()->getPaymentCustomerContext($customerId);
     $formFields = array();
     $aliasTransaction = null;
     if (!empty($parameters['alias_id']) && $parameters['alias_id'] != 'new') {
         $aliasId = $parameters['alias_id'];
         $alias = $this->loadAlias($aliasId);
         if ($alias->getCustomerId() == $customerId) {
             $aliasTransaction = $this->getHelper()->loadTransactionByOrder($alias->getOrderId())->getTransactionObject();
         }
     }
     if (method_exists($adapter, 'getVisibleFormFields')) {
         $formFields = $adapter->getVisibleFormFields($this->getOrderContext(false), $aliasTransaction, null, $paymentCustomerContext);
     }
     $paymentCustomerContext->persist();
     $result = $this->getFormRenderer()->renderElements($formFields);
     return $result;
 }