diff options
| author | Damien Bouvy <dbo@odoo.com> | 2015-07-31 10:05:29 +0200 |
|---|---|---|
| committer | Damien Bouvy <dbo@odoo.com> | 2015-09-04 16:08:22 +0200 |
| commit | f341ca62ab1572fe2e564e2a4d2fa32e671e59e3 (patch) | |
| tree | c66a8aaec0b692565add18947008f7047c96878a /addons/website_payment/static | |
| parent | f8a98d977e5e665689b9adb3954ef55bbf04008b (diff) | |
[IMP] website_payment: generic payment controller
- generate payment from the frontend using a simple form
- send a payment with a simple url
- define a default provider for payments
Diffstat (limited to 'addons/website_payment/static')
| -rw-r--r-- | addons/website_payment/static/src/js/payment_transaction.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/addons/website_payment/static/src/js/payment_transaction.js b/addons/website_payment/static/src/js/payment_transaction.js new file mode 100644 index 00000000000..461bb999114 --- /dev/null +++ b/addons/website_payment/static/src/js/payment_transaction.js @@ -0,0 +1,38 @@ +odoo.define('website_payment.website_payment', function (require) { +"use strict"; + +var website = require('website.website'); +var ajax = require('web.ajax'); + +if(!$('.o_website_payment').length) { + return $.Deferred().reject("DOM doesn't contain '.o_website_payment'"); +} + +// When clicking on payment button: create the tx using json then continue to the acquirer +var $payment = $(".o_website_payment_form"); +$payment.on("click", 'button[type="submit"],button[name="submit"]', function (ev) { + ev.preventDefault(); + ev.stopPropagation(); + $(ev.currentTarget).attr('disabled', true); + $(ev.currentTarget).prepend('<i class="fa fa-refresh fa-spin"></i> '); + var $form = $(ev.currentTarget).parents('form'); + var data =$("div[class~='o_website_payment_new_payment']").data(); + console.log(data); + ajax.jsonRpc('/website_payment/transaction/', 'call', data).then(function (result) { + $form.submit(); + }); + + function getFormData($form){ + var unindexed_array = $form.serializeArray(); + var indexed_array = {}; + + $.map(unindexed_array, function(n, i){ + indexed_array[n.name] = n.value; + }); + + return indexed_array; + } +}); + + +}); |
