drupal7 payment module:把支付form元素注入到form中
注入到form中
function paymentCreate($uid, $amount, $finish_callback, \PaymentMethod $payment_method = NULL) {$payment_method = $payment_method ? $payment_method : new \PaymentMethodUnavailable;if($payment_method instanceof \PaymentMethodUnavailable) {$payment_method_id = 4;$entities = entity_load('payment_method', array($payment_method_id));$payment_method = reset($entities);}$payment = new \Payment(array('currency_code' => 'HKD','description' => 'This is the payment description','finish_callback' => $finish_callback,'method' => $payment_method,'uid' => $uid,));$payment->setLineItem(new \PaymentLineItem(array('name' => 'Donation','amount' => $amount,//'tax_rate' => 0.1,)));return $payment;
}function xxx_form($form, &$form_state) {$payment = paymentCreate(1, $total, 'xxx_finish_callback');$form = payment_form_standalone($form, $form_state, $payment);$form['#submit'][] = 'xxx_form_submit';
}function xxx_form_submit($form, &$form_state) {// set paymentif (isset($form_state['values']['payment_status'])) {/** @var Payment $payment */$payment = $form_state['payment'];dpm($payment->pid); // payment item id}
}function xxx_finish_callback(Payment $payment) {if(payment_status_is_or_has_ancestor($payment->getStatus()->status, PAYMENT_STATUS_SUCCESS)) {drupal_set_message(t('Thank you'));drupal_goto('<front>');} else {drupal_set_message(t('Your payment failed.'));drupal_goto('<front>');}
}
直接支付
$payment = paymentCreate(1, $total, 'xxx_finish_callback');
entity_save('payment', $payment);
dpm($payment->pid);
$payment->execute(); // payment redirect
drupal7 payment module:把支付form元素注入到form中相关推荐
- 用DocumentFragments或innerHTML取代复杂的元素注入
我们的浏览器执行越来越多的特性,并且网络逐渐向移动设备转移,使我们的前端代码更加紧凑,如何优化,就变得越来越重要了.前端给力的地方是可以有 许多种简单的策略和代码习惯让我们可以保证最理想的前端性能.我 ...
- html5--3.1 form元素
html5--3.1 form元素 学习要点 form元素及其属性 form元素 用来定义一个表单,是建立表单的基础元素,(就类似定义表格的table) 表单的其他元素包含在form元素中,其主要子元 ...
- SAP UI5 SimpleForm 里在水平方向显示多组 Form 元素的实现方法试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 本专栏计划的文章数在 300 篇左右,到 2022年9月22日为止,目前已经更新了 133 篇,专栏完成度为 44.3%. 作者简介 Jerry W ...
- SpringCloud无介绍快使用,子module提供者支付微服务业务开发(六)
SpringCloud无介绍快使用,子module提供者支付微服务业务开发(六) 问题背景 项目搭建 Lyric: 一只灰狼问候我谁是神枪手 问题背景 从零开始学springcloud微服务项目 注意 ...
- 使用Ext Form自动绑定Html中的Form元素
2019独角兽企业重金招聘Python工程师标准>>> Java代码 //把ext 对象绑定在Html Form元素时的ext属性中 Ext.override(Ext.Compo ...
- HTML Form元素
Form元素 form元素用来创建表单,它包含多个属性,分别是action属性.method属性.enctype属性.onSubmit属性.onReset属性,接下来对这些属性进行简要介绍: acti ...
- HTML form元素
分析<form>元素 <form action="http://rb.com/hfhtmlcss/contest.jsp" method="POST&q ...
- sizebox模型下载_box-sizing解决盒模型和form元素统一风格的问题
box-sizing是CSS3的box属性之一.一说到CSS的盒模型(Box model)我想很多人都会比较烦,特别是对于新手,然而这个Box model又是我们CSS运用中比较重要的一个属性.那么C ...
- HTML中简单的form元素及属性:
HTML中简单的form元素及属性: 1.作用:form表单主要用于收集用户的信息,并将form元素中收集到的内容提交到服务器. 2.input元素中常见的属性: type属性:常见的输入框如下: 名 ...
- Payment模块管理支付功能,用于提供网页安全支付能力,支持通过Web接口进行支付操作。通过plus.payment可获取支付管理对象
支付接口可使得网页开发人员能获取浏览器支持的支付渠道进行支付操作,而不需要安装额外的浏览器支付插件. 规范不定义支付渠道安全认证及支付操作通讯协议,由运行环境的支付模块根据支付服务器接入规范实现. 方 ...
最新文章
- python 搜索pdf文件中的文字_使用python查找搜索字符串在pdf文档中位于哪一页上...
- 性能压测,SQL查询异常
- html设置团偏跟着移动,雷阵雨云团向东偏南移动,北京两地将有强降雨+7级大风+冰雹!...
- 华为交换机s5700学习笔记
- VS与Matlab混合编译 - mexw64 (C++版)
- 一点关于MD5计算的封装
- PyTorch学习笔记(一):PyTorch环境安装
- 存储基础(VG、LV、LP、PV、PP)
- sci四区大水刊 计算机,sci一区水刊_十大水榜sci杂志_四大垃圾sci杂志
- 外网访问腾讯云Debian系统服务器8081端口
- grafana text panel配置说明
- python音乐编程_可以编程写音乐的python库musicpy教程(第一期) musicpy的数据结构...
- matlab零阶保持器的作用,MATLAB保持器的simulink仿真.ppt
- 网络传输大端序_大端 小端和网络字节序说明
- 路由器接口配置与管理——6
- int int int * int**的区别、联系和用途
- 解决华硕电脑Ubuntu16.04连接不上wifi的问题
- 第7章:OFDM 信道估计与均衡(4)
- Apollo(阿波罗)架构深度剖析
- 这几年阅读的一些非技术类好书推荐