✨ feat(admin.js): Ajoute le calculateur de commission Stripe. ✨ feat(add.twig): Affiche la commission Stripe estimée pour les tarifs. ✨ feat(view.twig): Affiche la commission Stripe estimée sur le total contrat et le solde. ```
28 lines
923 B
JavaScript
28 lines
923 B
JavaScript
export class StripeCommissionCalculator extends HTMLDivElement {
|
|
constructor() {
|
|
super();
|
|
}
|
|
|
|
connectedCallback() {
|
|
this.input = this.querySelector('input');
|
|
this.display = this.querySelector('.commission-display');
|
|
|
|
if (this.input && this.display) {
|
|
this.input.addEventListener('input', this.calculate.bind(this));
|
|
// Initial calculation
|
|
this.calculate();
|
|
}
|
|
}
|
|
|
|
calculate() {
|
|
const value = parseFloat(this.input.value);
|
|
if (!isNaN(value)) {
|
|
const commission = (value * 0.015) + 0.25;
|
|
this.display.textContent = `~ ${commission.toLocaleString('fr-FR', { minimumFractionDigits: 2, maximumFractionDigits: 2 })} €`;
|
|
this.display.parentElement.classList.remove('hidden');
|
|
} else {
|
|
this.display.parentElement.classList.add('hidden');
|
|
}
|
|
}
|
|
}
|