Changeset View
Changeset View
Standalone View
Standalone View
subscriptions/templates/settings/billing_address.html
| {% extends 'users/settings/base.html' %} | {% extends 'users/settings/base.html' %} | ||||
| {% load common_extras %} | {% load common_extras %} | ||||
| {% block settings %} | {% block settings %} | ||||
| <p class="subtitle">Settings: Subscription</p> | <p class="subtitle">Settings: Subscription</p> | ||||
| <h1 class="mb-3">Billing Address</h1> | <h1 class="mb-3">Billing Address</h1> | ||||
| <form class="" id="billing-address-form" method="post"> | <form class="" id="billing-address-form" method="post"> | ||||
| {% with form|add_form_classes as form %} | {% with form|add_form_classes as form %} | ||||
| <div class="form">{% csrf_token %} | <div class="form">{% csrf_token %} | ||||
| {% include "subscriptions/components/billing_address_form.html" %} | {% include "subscriptions/components/billing_address_form.html" %} | ||||
| </div> | </div> | ||||
| <button class="btn btn-primary mt-3" id="submit-billing-info" type="submit">Save Changes</button> | <button class="btn btn-primary mt-3" id="submit-billing-info" type="submit">Save Changes</button> | ||||
| {% endwith %} | {% endwith %} | ||||
| </form> | </form> | ||||
| {% endblock settings %} | {% endblock settings %} | ||||
| {% block scripts %} | {% block scripts %} | ||||
| <script> | <script> | ||||
| function AddRemoveText(element) { | function AddRemoveText(element) { | ||||
| const el = element; | const el = element; | ||||
| if (el.innerText === 'Add') { | if (el.innerText === 'Add') { | ||||
| el.innerText = 'Remove'; | el.innerText = 'Remove'; | ||||
| } else if (el.innerText === 'Remove') { | } else if (el.innerText === 'Remove') { | ||||
| el.innerText = 'Add'; | el.innerText = 'Add'; | ||||
| } | } | ||||
| } | } | ||||
| document.addEventListener('DOMContentLoaded', () => { | document.addEventListener('DOMContentLoaded', () => { | ||||
| document.querySelectorAll('.add-remove').forEach((element) => { | document.querySelectorAll('.add-remove').forEach((element) => { | ||||
| element.parentElement.addEventListener('click', () => { | element.parentElement.addEventListener('click', () => { | ||||
| AddRemoveText(element); | AddRemoveText(element); | ||||
| }); | }); | ||||
| }); | }); | ||||
| // When hiding collapsed inputs, empty them. | // When hiding collapsed inputs, empty them. | ||||
| document.querySelectorAll('.collapse').forEach((element) => { | document.querySelectorAll('.collapse').forEach((element) => { | ||||
| $(element).on('hidden.bs.collapse', () => { | $(element).on('hidden.bs.collapse', () => { | ||||
| element.querySelectorAll('input').forEach((input) => { | element.querySelectorAll('input').forEach((input) => { | ||||
| input.value = ''; | input.value = ''; | ||||
| }); | }); | ||||
| }); | }); | ||||
| }); | }); | ||||
| }); | }); | ||||
| </script> | </script> | ||||
| {% endblock scripts %} | {% endblock scripts %} | ||||