|
@@ -90,8 +90,8 @@ if (! $action)
|
|
|
//$urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file
|
|
|
$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current
|
|
|
|
|
|
-$urlok=$urlwithroot.'/public/paypal/paymentok.php?';
|
|
|
-$urlko=$urlwithroot.'/public/paypal/paymentko.php?';
|
|
|
+$urlok=$urlwithroot.'/public/stripe/paymentok.php?';
|
|
|
+$urlko=$urlwithroot.'/public/stripe/paymentko.php?';
|
|
|
|
|
|
// Complete urls for post treatment
|
|
|
$SOURCE=GETPOST("source",'alpha');
|
|
@@ -1119,8 +1119,8 @@ if (preg_match('/^dopayment/',$action))
|
|
|
<div id="card-errors" role="alert"></div>
|
|
|
</div>
|
|
|
<br>
|
|
|
- <button>'.$langs->trans("ToPay").'</button>
|
|
|
-
|
|
|
+ <button class="button" id="buttontopay">'.$langs->trans("ToPay").'</button>
|
|
|
+ <img id="hourglasstopay" class="hidden" src="'.DOL_URL_ROOT.'/theme/'.$conf->theme.'/img/working.gif'.'">
|
|
|
</td></tr></tbody></table>
|
|
|
|
|
|
</form>
|
|
@@ -1131,82 +1131,84 @@ if (preg_match('/^dopayment/',$action))
|
|
|
|
|
|
<script type="text/javascript" language="javascript">';
|
|
|
?>
|
|
|
+
|
|
|
+ // Create a Stripe client
|
|
|
+ var stripe = Stripe('<?php echo $stripe['publishable_key']; ?>');
|
|
|
|
|
|
- // Create a Stripe client
|
|
|
- var stripe = Stripe('<?php echo $stripe['publishable_key']; ?>');
|
|
|
-
|
|
|
- // Create an instance of Elements
|
|
|
- var elements = stripe.elements();
|
|
|
-
|
|
|
- // Custom styling can be passed to options when creating an Element.
|
|
|
- // (Note that this demo uses a wider set of styles than the guide below.)
|
|
|
- var style = {
|
|
|
- base: {
|
|
|
- color: '#32325d',
|
|
|
- lineHeight: '24px',
|
|
|
- fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
|
|
|
- fontSmoothing: 'antialiased',
|
|
|
- fontSize: '16px',
|
|
|
- '::placeholder': {
|
|
|
- color: '#aab7c4'
|
|
|
- }
|
|
|
- },
|
|
|
- invalid: {
|
|
|
- color: '#fa755a',
|
|
|
- iconColor: '#fa755a'
|
|
|
- }
|
|
|
- };
|
|
|
-
|
|
|
- // Create an instance of the card Element
|
|
|
- var card = elements.create('card', {style: style});
|
|
|
-
|
|
|
- // Add an instance of the card Element into the `card-element` <div>
|
|
|
- card.mount('#card-element');
|
|
|
-
|
|
|
- // Handle real-time validation errors from the card Element.
|
|
|
- card.addEventListener('change', function(event) {
|
|
|
- var displayError = document.getElementById('card-errors');
|
|
|
- if (event.error) {
|
|
|
- displayError.textContent = event.error.message;
|
|
|
- } else {
|
|
|
- displayError.textContent = '';
|
|
|
- }
|
|
|
- });
|
|
|
-
|
|
|
- // Handle form submission
|
|
|
- var form = document.getElementById('payment-form');
|
|
|
- console.log(form);
|
|
|
- form.addEventListener('submit', function(event) {
|
|
|
- event.preventDefault();
|
|
|
-
|
|
|
- stripe.createToken(card).then(function(result) {
|
|
|
- if (result.error) {
|
|
|
- // Inform the user if there was an error
|
|
|
- var errorElement = document.getElementById('card-errors');
|
|
|
- errorElement.textContent = result.error.message;
|
|
|
- } else {
|
|
|
- // Send the token to your server
|
|
|
- stripeTokenHandler(result.token);
|
|
|
- }
|
|
|
- });
|
|
|
- });
|
|
|
-
|
|
|
- function stripeTokenHandler(token) {
|
|
|
- // Insert the token ID into the form so it gets submitted to the server
|
|
|
- var form = document.getElementById('payment-form');
|
|
|
- var hiddenInput = document.createElement('input');
|
|
|
- hiddenInput.setAttribute('type', 'hidden');
|
|
|
- hiddenInput.setAttribute('name', 'stripeToken');
|
|
|
- hiddenInput.setAttribute('value', token.id);
|
|
|
- form.appendChild(hiddenInput);
|
|
|
-
|
|
|
- // Submit the form
|
|
|
- console.log("submit");
|
|
|
- form.submit();
|
|
|
- }
|
|
|
+ // Create an instance of Elements
|
|
|
+ var elements = stripe.elements();
|
|
|
+
|
|
|
+ // Custom styling can be passed to options when creating an Element.
|
|
|
+ // (Note that this demo uses a wider set of styles than the guide below.)
|
|
|
+ var style = {
|
|
|
+ base: {
|
|
|
+ color: '#32325d',
|
|
|
+ lineHeight: '24px',
|
|
|
+ fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
|
|
|
+ fontSmoothing: 'antialiased',
|
|
|
+ fontSize: '16px',
|
|
|
+ '::placeholder': {
|
|
|
+ color: '#aab7c4'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ invalid: {
|
|
|
+ color: '#fa755a',
|
|
|
+ iconColor: '#fa755a'
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+ // Create an instance of the card Element
|
|
|
+ var card = elements.create('card', {style: style});
|
|
|
+
|
|
|
+ // Add an instance of the card Element into the `card-element` <div>
|
|
|
+ card.mount('#card-element');
|
|
|
+
|
|
|
+ // Handle real-time validation errors from the card Element.
|
|
|
+ card.addEventListener('change', function(event) {
|
|
|
+ var displayError = document.getElementById('card-errors');
|
|
|
+ if (event.error) {
|
|
|
+ displayError.textContent = event.error.message;
|
|
|
+ } else {
|
|
|
+ displayError.textContent = '';
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // Handle form submission
|
|
|
+ var form = document.getElementById('payment-form');
|
|
|
+ console.log(form);
|
|
|
+ form.addEventListener('submit', function(event) {
|
|
|
+ event.preventDefault();
|
|
|
+
|
|
|
+ stripe.createToken(card).then(function(result) {
|
|
|
+ if (result.error) {
|
|
|
+ // Inform the user if there was an error
|
|
|
+ var errorElement = document.getElementById('card-errors');
|
|
|
+ errorElement.textContent = result.error.message;
|
|
|
+ } else {
|
|
|
+ // Send the token to your server
|
|
|
+ stripeTokenHandler(result.token);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
+ function stripeTokenHandler(token) {
|
|
|
+ // Insert the token ID into the form so it gets submitted to the server
|
|
|
+ var form = document.getElementById('payment-form');
|
|
|
+ var hiddenInput = document.createElement('input');
|
|
|
+ hiddenInput.setAttribute('type', 'hidden');
|
|
|
+ hiddenInput.setAttribute('name', 'stripeToken');
|
|
|
+ hiddenInput.setAttribute('value', token.id);
|
|
|
+ form.appendChild(hiddenInput);
|
|
|
+
|
|
|
+ // Submit the form
|
|
|
+ jQuery('#buttontopay').hide();
|
|
|
+ jQuery('#hourglasstopay').show();
|
|
|
+ console.log("submit");
|
|
|
+ form.submit();
|
|
|
+ }
|
|
|
|
|
|
<?php
|
|
|
- print '</script>';
|
|
|
+ print '</script>';
|
|
|
}
|
|
|
|
|
|
|