You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

336 lines
20 KiB

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="payment_payplug_button">
<form t-att-action="payplug_url" method="post">
</form>
</template>
<!-- BANNER PAYPLUG IN CART PAYMENT FORM -->
<template id="checkout_inherit" inherit_id="payment.checkout" name="Payment Icon List">
<xpath expr="//div[hasclass('card')]/t[@t-foreach='providers']" position="replace">
<t t-foreach="providers" t-as="provider">
<t t-if="provider.code=='payplug'">
<!-- === Acquirer PayPLug === -->
<t t-if="provider.payment_type_payplug == True and authorized_country_payplug == True and provider.is_published == True">
<div name="o_payment_option_card" data-provider-payplug="payplug" class="card-body o_payment_option_card o_provider_payplug_card">
<label>
<input name="o_payment_radio"
type="radio"
t-att-class="''"
t-att-data-payment-option-id="provider.id"
t-att-data-provider="provider.code"
data-payment-option-type="provider"/>
<!-- === Acquirer name === -->
<span class="payment_option_name">
<b><t t-esc="provider.payplug_display_as or provider.name"/></b>
</span>
<!-- === "Test Mode" badge === -->
<span t-if="provider.state == 'test'"
class="badge-pill badge-warning ml-1">
Test Mode
</span>
<!-- === Extra fees badge === -->
<t t-if="fees_by_provider.get(provider)">
<span class="badge-pill badge-secondary ml-1">
+ <t t-esc="fees_by_provider.get(provider)"
t-options="{'widget': 'monetary', 'display_currency': currency}"/>
Fees
</span>
</t>
</label>
<!-- === Payment icon list === -->
<t t-call="payment.icon_list"/>
<!-- === Help message === -->
<div t-if="provider.pre_msg"
t-out="provider.pre_msg"
class="text-muted ml-3"/>
</div>
<!-- === Provider inline form === -->
<div t-attf-id="o_payment_provider_inline_form_{{provider.id}}"
name="o_payment_inline_form"
class="card-footer d-none">
<!-- === Inline form content (filled by acquirer) === -->
<t t-if="provider.sudo()._should_build_inline_form(is_validation=False)">
<t t-set="inline_form_xml_id"
t-value="provider.sudo().inline_form_view_id.xml_id"/>
<div t-if="inline_form_xml_id" class="clearfix">
<t t-call="{{inline_form_xml_id}}">
<t t-set="provider_id" t-value="provider.id"/>
</t>
</div>
</t>
<!-- === "Save my payment details" checkbox === -->
<label t-if="show_tokenize_input[provider.id]">
<input name="o_payment_save_as_token" type="checkbox"/>
Save my payment details
</label>
</div>
</t>
<!-- === Acquirer Oney === -->
<t t-if="provider.payment_type_oney == True and authorized_country_oney == True and provider.is_published == True">
<div name="o_payment_option_card" data-provider-payplug="oney" class="card-body o_payment_option_card o_provider_payplug_card">
<label>
<!-- === Radio button === -->
<!-- Only shown if linked to the only payment option -->
<t t-if="authorized_by_oney==False">
<input name="o_payment_radio"
type="hidden"
t-att-class="'d-none'"
t-att-data-payment-option-id="provider.id"
t-att-data-provider="provider.code"
data-payment-option-type="provider"/>
</t>
<t t-else="">
<input name="o_payment_radio"
type="radio"
t-att-class="'' if provider_count + token_count > 1 else 'd-none'"
t-att-data-payment-option-id="provider.id"
t-att-data-provider="provider.code"
data-payment-option-type="provider"/>
</t>
<!-- === Acquirer name === -->
<span class="payment_option_name">
<b><t t-esc="provider.oney_display_as or provider.name"/></b>
</span>
<!-- === "Test Mode" badge === -->
<span t-if="provider.state == 'test'"
class="badge-pill badge-warning"
style="margin-left:5px">
Test Mode
</span>
</label>
<!-- === Payment icon list specific Oney === -->
<t t-call="acquirer_payplug.icon_list_oney"/>
<!-- <t t-call="payment.icon_list"/> -->
<!-- === Help message === -->
<div t-if="provider.pre_msg"
t-out="provider.pre_msg"
class="text-muted ml-3"/>
</div>
<!-- === Acquirer inline form === -->
<t t-if="provider.sudo()._should_build_inline_form(is_validation=True)">
<div t-attf-id="o_payment_acquirer_inline_form_{{provider.id}}"
name="o_payment_inline_form"
class="card-footer d-none">
<!-- === Inline form content (filled by acquirer) === -->
<t t-set="inline_form_xml_id"
t-value="provider.sudo().inline_form_view_id.xml_id"/>
<div t-if="inline_form_xml_id" class="clearfix">
<t t-call="{{inline_form_xml_id}}">
<t t-set="provider_id" t-value="provider.id"/>
</t>
</div>
</div>
</t>
</t>
<!-- === Acquirer AmEx === -->
<t t-if="provider.payment_type_amex == True and authorized_country_amex == True and provider.is_published == True">
<div name="o_payment_option_card" data-provider-payplug="american_express" class="card-body o_payment_option_card o_provider_payplug_card">
<label>
<input name="o_payment_radio"
type="radio"
t-att-class="'' if provider_count + token_count > 1 else 'd-none'"
t-att-data-payment-option-id="provider.id"
t-att-data-provider="provider.code"
data-payment-option-type="provider"/>
<!-- === Acquirer name === -->
<span class="payment_option_name">
<b><t t-esc="provider.amex_display_as or provider.name"/></b>
</span>
<!-- === "Test Mode" badge === -->
<span t-if="provider.state == 'test'"
class="badge-pill badge-warning ml-1">
Test Mode
</span>
<!-- === Extra fees badge === -->
<t t-if="fees_by_provider.get(provider)">
<span class="badge-pill badge-secondary ml-1">
+ <t t-esc="fees_by_provider.get(provider)"
t-options="{'widget': 'monetary', 'display_currency': currency}"/>
Fees
</span>
</t>
</label>
<!-- === Payment specific icon === -->
<ul class="payment_icon_list float-end list-inline" data-max-icons="1">
<img src='/acquirer_payplug/static/src/img/icon/american_express.png' style="max-height: 32px; margin-right: 6px;"/>
</ul>
<!-- === Help message === -->
<div t-if="not is_html_empty(provider.pre_msg)"
t-out="provider.pre_msg"
class="text-muted ms-3"/>
</div>
<!-- === Acquirer inline form === -->
<div t-attf-id="o_payment_provider_inline_form_{{provider.id}}"
name="o_payment_inline_form"
class="card-footer d-none">
<!-- === Inline form content (filled by acquirer) === -->
<t t-if="provider.sudo()._should_build_inline_form(is_validation=False)">
<t t-set="inline_form_xml_id"
t-value="provider.sudo().inline_form_view_id.xml_id"/>
<div t-if="inline_form_xml_id" class="clearfix">
<t t-call="{{inline_form_xml_id}}">
<t t-set="provider_id" t-value="provider.id"/>
</t>
</div>
</t>
<!-- === "Save my payment details" checkbox === -->
<!-- Only included if partner is known and if the choice is given -->
<t t-set="tokenization_required"
t-value="provider._is_tokenization_required(provider=provider.code)"/>
<label t-if="show_tokenize_input and provider.allow_tokenization and not tokenization_required">
<input name="o_payment_save_as_token" type="checkbox"/>
Save my payment details
</label>
</div>
</t>
<!-- === Acquirer Bancontact === -->
<t t-if="provider.payment_type_bancontact == True and authorized_country_bancontact == True and provider.is_published == True">
<div name="o_payment_option_card" data-provider-payplug="bancontact" class="card-body o_payment_option_card o_provider_payplug_card">
<label>
<input name="o_payment_radio"
type="radio"
t-att-class="'' if provider_count + token_count > 1 else 'd-none'"
t-att-data-payment-option-id="provider.id"
t-att-data-provider="provider.code"
data-payment-option-type="provider"/>
<!-- === Acquirer name === -->
<span class="payment_option_name">
<b><t t-esc="provider.bancontact_display_as or provider.name"/></b>
</span>
<!-- === "Test Mode" badge === -->
<span t-if="provider.state == 'test'"
class="badge-pill badge-warning ml-1">
Test Mode
</span>
<!-- === Extra fees badge === -->
<t t-if="fees_by_provider.get(provider)">
<span class="badge-pill badge-secondary ml-1">
+ <t t-esc="fees_by_provider.get(provider)"
t-options="{'widget': 'monetary', 'display_currency': currency}"/>
Fees
</span>
</t>
</label>
<!-- === Payment specific icon === -->
<ul class="payment_icon_list float-end list-inline" data-max-icons="1">
<img src='/acquirer_payplug/static/src/img/icon/bancontact.png' style="max-height: 32px; margin-right: 6px;"/>
</ul>
<!-- === Help message === -->
<div t-if="provider.pre_msg"
t-out="provider.pre_msg"
class="text-muted ml-3"/>
</div>
<!-- === Acquirer inline form === -->
<div t-attf-id="o_payment_acquirer_inline_form_{{provider.id}}"
name="o_payment_inline_form"
class="card-footer d-none">
<!-- === Inline form content (filled by acquirer) === -->
<t t-if="provider.sudo()._should_build_inline_form(is_validation=False)">
<t t-set="inline_form_xml_id"
t-value="provider.sudo().inline_form_view_id.xml_id"/>
<div t-if="inline_form_xml_id" class="clearfix">
<t t-call="{{inline_form_xml_id}}">
<t t-set="provider_id" t-value="provider.id"/>
</t>
</div>
</t>
<!-- === "Save my payment details" checkbox === -->
<!-- Only included if partner is known and if the choice is given -->
<t t-set="tokenization_required"
t-value="provider._is_tokenization_required(provider=provider.code)"/>
<label t-if="show_tokenize_input and provider.allow_tokenization and not tokenization_required">
<input name="o_payment_save_as_token" type="checkbox"/>
Save my payment details
</label>
</div>
</t>
</t>
<!-- === Others Acquirer === -->
<t t-else="">
<div name="o_payment_option_card" class="card-body o_payment_option_card">
<label>
<!-- === Radio button === -->
<!-- Only shown if linked to the only payment option -->
<input name="o_payment_radio"
type="radio"
t-att-checked="provider.id == default_payment_option_id"
t-att-class="'' if provider_count + token_count > 1 else 'd-none'"
t-att-data-payment-option-id="provider.id"
t-att-data-provider="provider.code"
data-payment-option-type="provider"/>
<!-- === Acquirer name === -->
<span class="payment_option_name">
<b><t t-esc="provider.display_as or provider.name"/></b>
</span>
<!-- === "Test Mode" badge === -->
<span t-if="provider.state == 'test'"
class="badge-pill badge-warning"
style="margin-left:5px">
Test Mode
</span>
</label>
<!-- === Payment icon list === -->
<t t-call="payment.icon_list"/>
<!-- === Help message === -->
<div t-if="provider.pre_msg"
t-out="provider.pre_msg"
class="text-muted ml-3"/>
</div>
<!-- === Acquirer inline form === -->
<t t-if="provider.sudo()._should_build_inline_form(is_validation=True)">
<div t-attf-id="o_payment_acquirer_inline_form_{{provider.id}}"
name="o_payment_inline_form"
class="card-footer d-none">
<!-- === Inline form content (filled by acquirer) === -->
<t t-set="inline_form_xml_id"
t-value="provider.sudo().inline_form_view_id.xml_id"/>
<div t-if="inline_form_xml_id" class="clearfix">
<t t-call="{{inline_form_xml_id}}">
<t t-set="provider_id" t-value="provider.id"/>
</t>
</div>
</div>
</t>
<!-- === Tokens === -->
<t t-foreach="tokens" t-as="token">
<div name="o_payment_option_card" class="card-body o_payment_option_card">
<label>
<!-- === Radio button === -->
<!-- Only shown if 'assign_token_route' is set -->
<input name="o_payment_radio"
type="radio"
t-att-checked="token.id == default_payment_option_id"
t-att-class="'' if bool(assign_token_route) else 'd-none'"
t-att-data-payment-option-id="token.id"
t-att-data-provider="token.provider"
data-payment-option-type="token"/>
<!-- === Token name === -->
<span class="payment_option_name" t-esc="token.name"/>
<!-- === "V" check mark === -->
<t t-call="payment.verified_token_checkmark"/>
</label>
<!-- === "Delete" token button === -->
<button name="o_payment_delete_token"
class="btn btn-primary btn-sm float-right">
<i class="fa fa-trash"/> Delete
</button>
</div>
<!-- === Token inline form === -->
<div t-attf-id="o_payment_token_inline_form_{{token.id}}"
name="o_payment_inline_form"
class="card-footer d-none"/>
</t>
</t>
</t>
</xpath>
</template>
</odoo>