4d2b6e1b3e4fb13edc0c78aafcc12c2cd4c58c3e
[blender-dev-fund.git] / websrc / templates / settings / membership_edit.pug
1 | {% extends "settings/membership_base.html" %}
2 | {% load looper %}
3 | {% load humanize %}
4 | {% block after_membership_info %}
5
6
7 | {% if subscription.status %}
8 hr
9 //- TODO(Sybren): this only works when subscription.interval_length == 1:
10 | {% if subscription.next_payment %}
11 |   {% if subscription.status == 'active' or subscription.status == 'on-hold' %}
12 |     {% if subscription.next_payment_in_future %}
13 p.
14         The next {{ subscription.collection_method }} charge of  {{ subscription | pricing }}
15         will be #[abbr(title="{{ subscription.next_payment }}") {{ subscription.next_payment | naturaltime }}].
16 |     {% else %}
17 p.
18         The last {{ subscription.collection_method }} charge of {{ subscription | pricing }}
19         was due #[abbr(title="{{ subscription.next_payment }}") {{ subscription.next_payment | naturaltime }}].
20 |     {% endif %}
21 |   {% elif subscription.status == 'pending-cancellation' %}
22 p.
23         Your membership is pending cancellation. It will be deactivated #[abbr(title="{{ subscription.next_payment }}") {{ subscription.next_payment | naturaltime }}].
24 |   {% endif %}
25 | {% endif %}
26
27 | {% with subscription.payment_method as pay_meth %}
28 p
29         | {% if not pay_meth %}
30         | Payment method: Unknown
31         | {% elif pay_meth.is_deleted %}
32         | Payment method: The payment method previously used for this membership was removed.
33         | {% else %}
34         | Your payment method is: {{ pay_meth.recognisable_name }}
35         | {% endif %}
36         | {% if subscription %}
37         small (#[a(href="{% url 'looper:payment_method_change' subscription_id=subscription.id %}") change])
38         | {% endif %}
39 | {% endwith %}
40 | {% if subscription.status == 'on-hold' %}
41 p
42         a.btn.btn-filled-success.px-5(href="{% url 'looper:checkout_existing_order' order_id=order.pk %}")
43                 i.fa.fa-check
44                 | Pay Membership
45 | {% endif %}
46
47 | {% if user.is_staff and perms.looper.change_subscription %}
48 .bg-light.p-3.m-3.rounded.border(title='For admin eyes only')
49         h4.m-0.pb-2 Admin Tools
50         ul
51                 li
52                         a.font-weight-bold(href="{% url 'admin:looper_subscription_change' object_id=subscription.pk %}", title='Edit in Admin')
53                                 | Subscription
54                         span.text-secondary.pl-2 \#{{ subscription.id }} ({{ subscription.status }})
55                 | {% if order %}
56                 li
57                         a.font-weight-bold(href="{% url 'admin:looper_order_change' object_id=order.pk %}", title='Edit order in Admin')
58                                 | Order
59                         span.text-secondary.pl-2 \#{{ order.pk }} ({{ order.status }})
60                 | {% endif %}
61                 | {% if transaction %}
62                 li
63                         a.font-weight-bold(href="{% url 'admin:looper_transaction_change' object_id=transaction.pk %}", title='Edit transaction in Admin')
64                                 | Transaction
65                         span.text-secondary.pl-2 \#{{ transaction.pk }} ({{ transaction.status }})
66                 | {% endif %}
67 | {% endif %}
68
69 | {% endif %}
70
71 | {% if subscription and subscription.collection_method == 'automatic' and 'cancel' not in subscription.status %}
72 hr
73 h3 Automatic Payment
74
75 | {% if order %}
76 |     {% if order.status == 'created' %}
77 //- p Automatic payment is scheduled for {{ subscription.next_payment }}.
78
79 |     {% elif order.status == 'soft-failed' %}
80 p.
81         Automatic payment failed on {{ transaction.recorded_at }}, but we will automatically try again
82         soon. We have made {{ order.collection_attempts }} of a maximum of
83         {{ settings.LOOPER_CLOCK_MAX_AUTO_ATTEMPTS }} collection attemps. In the mean time, your
84         membership will remain active.
85 p The last error we received was: #[span.transaction-error {{ transaction.failure_message }}]
86
87 |     {% elif order.status == 'failed' %}
88 p.
89         Automatic payment failed multiple times, even after trying
90         {{ order.collection_attempts }} times. As a result, your membership
91         has been deactivated.
92 p The error we received was: #[span.transaction-error {{ transaction.failure_message }}]
93
94 |     {% elif order.status == 'paid' or order.status == 'fulfilled' %}
95 p
96         | #[i.fa.fa-check-circle.text-success.px-2] Payment was successful #[abbr(title="{{ transaction.created_at }}") {{ transaction.created_at | naturaltime }}].
97
98 |     {% elif order.status == 'cancelled' %}
99 p Automatic payment cancelled and will not be retried.
100
101 |     {% endif %}
102 | {% endif %}
103
104 | {% if subscription.next_payment %}
105 p.
106         The next automatic payment is scheduled for {{ subscription.next_payment }}.
107 | {% else %}
108 p.
109         There is no next automatic payment scheduled. Please contact
110         #[a(href="mailto:{{ settings.ADMIN_MAIL }}?subject=No next payment for membership {{ membership.id }}") {{ settings.ADMIN_MAIL }}] about this.
111 | {% endif %}
112
113 | {% endif %}
114
115 | {% if may_be_charged %}
116 h3 Extend your Membership
117
118 p You can arbitrarily extend your membership by paying any amount. #[a(href="{% url 'membership_extend' membership_id=membership.id %}") Extend my membership now!]
119 | {% endif %}
120
121 | {% if subscription and subscription.status == 'cancelled' %}
122 h3 Membership Cancelled
123 p This membership has been cancelled. :(
124 | {% else %}
125 hr
126 h3 Public Information
127
128 | {% if membership.level.visible_attributes_list %}
129 p Show off! Fill in your/your company info to be displayed in the Sponsors section of the Development Fund frontpage.
130 | {% else %}
131 p Your subscription does not have public attributes. Consider upgrading to get your name, a link to your website, or your logo out there!
132 | {% endif %}
133
134
135 form#payment-form.checkout-form.p-3(
136         method='post',
137         enctype='multipart/form-data',
138         action="{% url 'settings_membership_edit' membership.id %}")
139
140         ul.form
141                 | {% csrf_token %}
142                 | {{ form.as_ul }}
143
144         .clearfix
145
146         | {% if membership.level.bid_badge_name %}
147         p.
148                 You can view your membership badge in your #[a(href="{{ settings.BLENDER_ID.BASE_URL }}") Blender ID Profile].
149                 For your badge to show up on other websites may take some time (less than a day), and may require you to log in at that site again.
150         | {% endif %}
151
152         .d-flex.align-items-center.pt-3
153                 button#submit-button.btn.btn-success.px-5(type='submit')
154                         i.fa.fa-check
155                         | Save Changes
156
157                 | {% if subscription.status != 'pending-cancellation' and subscription.status != 'cancelled' %}
158                 a.ml-auto.text-danger(href="{% url 'settings_membership_cancel' membership_id=membership.id %}")
159                         span Cancel Membership
160                 | {% endif %}
161 | {% endif %}
162
163 | {% endblock after_membership_info %}