Commit | Line | Data |
---|---|---|
6a488035 TO |
1 | {* |
2 | +--------------------------------------------------------------------+ | |
1188c7a8 | 3 | | Copyright CiviCRM LLC. All rights reserved. | |
6a488035 | 4 | | | |
1188c7a8 TO |
5 | | This work is published under the GNU AGPLv3 license with some | |
6 | | permitted exceptions and without any warranty. For full license | | |
7 | | and copyright information, see https://civicrm.org/licensing | | |
6a488035 TO |
8 | +--------------------------------------------------------------------+ |
9 | *} | |
10 | {if !empty($useForMember) AND !$is_quick_config} | |
a7aa881c MWMC |
11 | <div id="membership" class="crm-group membership-group"> |
12 | {if $context EQ "makeContribution"} | |
13 | <div id="priceset"> | |
6a488035 | 14 | <fieldset> |
a7aa881c | 15 | {if $renewal_mode} |
6a488035 | 16 | {if $membershipBlock.renewal_title} |
a7aa881c | 17 | <legend>{$membershipBlock.renewal_title}</legend> |
6a488035 TO |
18 | {/if} |
19 | {if $membershipBlock.renewal_text} | |
a7aa881c MWMC |
20 | <div id="membership-intro" class="crm-section membership_renewal_intro-section"> |
21 | {$membershipBlock.renewal_text} | |
22 | </div> | |
6a488035 | 23 | {/if} |
a7aa881c MWMC |
24 | {else} |
25 | {if $membershipBlock.new_title} | |
6a488035 | 26 | <legend>{$membershipBlock.new_title}</legend> |
a7aa881c MWMC |
27 | {/if} |
28 | {if $membershipBlock.new_text} | |
6a488035 | 29 | <div id="membership-intro" class="crm-section membership_new_intro-section"> |
a7aa881c | 30 | {$membershipBlock.new_text} |
6a488035 | 31 | </div> |
a7aa881c | 32 | {/if} |
6a488035 | 33 | {/if} |
a7aa881c | 34 | {if !empty($membershipTypes)} |
6a488035 | 35 | {foreach from=$membershipTypes item=row} |
a7aa881c MWMC |
36 | {if array_key_exists( 'current_membership', $row )} |
37 | <div id='help'> | |
38 | {* Lifetime memberships have no end-date so current_membership array key exists but is NULL *} | |
39 | {if $row.current_membership} | |
40 | {if $row.current_membership|date_format:"%Y%m%d" LT $smarty.now|date_format:"%Y%m%d"} | |
41 | {ts 1=$row.current_membership|crmDate 2=$row.name}Your <strong>%2</strong> membership expired on %1.{/ts}<br /> | |
6a488035 | 42 | {else} |
a7aa881c | 43 | {ts 1=$row.current_membership|crmDate 2=$row.name}Your <strong>%2</strong> membership expires on %1.{/ts}<br /> |
6a488035 | 44 | {/if} |
a7aa881c MWMC |
45 | {else} |
46 | {ts 1=$row.name}Your <strong>%1</strong> membership does not expire (you do not need to renew that membership).{/ts}<br /> | |
47 | {/if} | |
48 | </div> | |
49 | {/if} | |
6a488035 | 50 | {/foreach} |
a7aa881c | 51 | {/if} |
6a488035 | 52 | |
a7aa881c | 53 | {include file="CRM/Price/Form/PriceSet.tpl" extends="Membership"} |
6a488035 | 54 | </fieldset> |
a7aa881c MWMC |
55 | </div> |
56 | {elseif $lineItem and $priceSetID AND !$is_quick_config} | |
57 | {assign var="totalAmount" value=$amount} | |
58 | <div class="header-dark"> | |
59 | {ts}Membership Fee{/ts} | |
60 | </div> | |
61 | <div class="display-block"> | |
62 | {include file="CRM/Price/Page/LineItem.tpl" context="Membership"} | |
63 | </div> | |
64 | {/if} | |
6a488035 | 65 | </div> |
6a488035 | 66 | {literal} |
a7aa881c MWMC |
67 | <script type="text/javascript"> |
68 | CRM.$(function($) { | |
69 | //if price set is set we use below below code to show for showing auto renew | |
70 | var autoRenewOption = {/literal}'{$autoRenewOption}'{literal}; | |
71 | var autoRenew = $("#auto_renew_section"); | |
72 | var autoRenewCheckbox = $("#auto_renew"); | |
73 | var forceRenew = $("#force_renew"); | |
74 | autoRenew.hide(); | |
75 | forceRenew.hide(); | |
76 | if ( autoRenewOption == 1 ) { | |
c843169c | 77 | autoRenew.show(); |
a7aa881c | 78 | } else if ( autoRenewOption == 2 ) { |
81308445 JP |
79 | autoRenewCheckbox.prop('checked', true ); |
80 | autoRenewCheckbox.attr( 'readonly', true ); | |
c843169c MW |
81 | autoRenew.hide(); |
82 | forceRenew.show(); | |
a7aa881c MWMC |
83 | } |
84 | }); | |
85 | </script> | |
6a488035 TO |
86 | {/literal} |
87 | {elseif $membershipBlock AND !$is_quick_config} | |
a7aa881c MWMC |
88 | <div id="membership" class="crm-group membership-group"> |
89 | {if $context EQ "makeContribution"} | |
90 | <fieldset> | |
6a488035 TO |
91 | {if $renewal_mode } |
92 | {if $membershipBlock.renewal_title} | |
a7aa881c | 93 | <legend>{$membershipBlock.renewal_title}</legend> |
6a488035 TO |
94 | {/if} |
95 | {if $membershipBlock.renewal_text} | |
a7aa881c MWMC |
96 | <div id="membership-intro" class="crm-section membership_renewal_intro-section"> |
97 | <p>{$membershipBlock.renewal_text}</p> | |
98 | </div> | |
6a488035 TO |
99 | {/if} |
100 | ||
101 | {else} | |
102 | {if $membershipBlock.new_title} | |
a7aa881c | 103 | <legend>{$membershipBlock.new_title}</legend> |
6a488035 TO |
104 | {/if} |
105 | {if $membershipBlock.new_text} | |
a7aa881c MWMC |
106 | <div id="membership-intro" class="crm-section membership_new_intro-section"> |
107 | <p>{$membershipBlock.new_text}</p> | |
108 | </div> | |
6a488035 TO |
109 | {/if} |
110 | {/if} | |
a7aa881c MWMC |
111 | {/if} |
112 | {if $context neq "makeContribution" } | |
6a488035 | 113 | <div class="header-dark"> |
a7aa881c MWMC |
114 | {if $renewal_mode } |
115 | {if $membershipBlock.renewal_title} | |
116 | {$membershipBlock.renewal_title} | |
117 | {else} | |
118 | {ts}Select a Membership Renewal Level{/ts} | |
119 | {/if} | |
6a488035 | 120 | |
a7aa881c MWMC |
121 | {else} |
122 | {if $membershipBlock.new_title} | |
123 | {$membershipBlock.new_title} | |
6a488035 | 124 | {else} |
a7aa881c | 125 | {ts}Select a Membership Level{/ts} |
6a488035 | 126 | {/if} |
a7aa881c | 127 | {/if} |
6a488035 | 128 | </div> |
a7aa881c | 129 | {/if} |
6a488035 | 130 | |
a7aa881c MWMC |
131 | {if $context EQ "makeContribution"} |
132 | </fieldset> | |
6a488035 | 133 | {/if} |
a7aa881c | 134 | </div> |
6a488035 TO |
135 | |
136 | {/if}{* membership block end here *} | |
137 | ||
138 | {if $membershipBlock AND $is_quick_config} | |
a7aa881c MWMC |
139 | {if $context neq "makeContribution" } |
140 | <div class="header-dark"> | |
141 | {if $renewal_mode } | |
142 | {if $membershipBlock.renewal_title} | |
143 | {$membershipBlock.renewal_title} | |
144 | {else} | |
145 | {ts}Select a Membership Renewal Level{/ts} | |
146 | {/if} | |
147 | {else} | |
148 | {if $membershipBlock.new_title} | |
149 | {$membershipBlock.new_title} | |
150 | {else} | |
151 | {ts}Select a Membership Level{/ts} | |
6a488035 | 152 | {/if} |
a7aa881c | 153 | {/if} |
6a488035 | 154 | </div> |
a7aa881c MWMC |
155 | {/if} |
156 | {strip} | |
157 | <table id="membership-listings"> | |
158 | {foreach from=$membershipTypes item=row} | |
6a488035 | 159 | <tr {if $context EQ "makeContribution"}class="odd-row" {/if}valign="top"> |
a7aa881c MWMC |
160 | {if $showRadio } |
161 | {assign var="pid" value=$row.id} | |
162 | <td style="width: 1em;">{$form.selectMembership.$pid.html}</td> | |
163 | {else} | |
164 | <td> </td> | |
165 | {/if} | |
166 | <td style="width: auto;"> | |
6a488035 TO |
167 | <span class="bold">{$row.name} |
168 | {if ($membershipBlock.display_min_fee AND $context EQ "makeContribution") AND $row.minimum_fee GT 0 } | |
a7aa881c MWMC |
169 | {if $is_separate_payment OR ! $form.amount.label} |
170 | – {$row.minimum_fee|crmMoney} | |
171 | {else} | |
172 | {ts 1=$row.minimum_fee|crmMoney}(contribute at least %1 to be eligible for this membership){/ts} | |
173 | {/if} | |
6a488035 TO |
174 | {/if} |
175 | </span><br /> | |
a7aa881c MWMC |
176 | {$row.description} |
177 | </td> | |
6a488035 | 178 | |
a7aa881c MWMC |
179 | <td style="width: auto;"> |
180 | {* Check if there is an existing membership of this type (current_membership NOT empty) and if the end-date is prior to today. *} | |
181 | {if array_key_exists( 'current_membership', $row ) AND $context EQ "makeContribution" } | |
182 | {if $row.current_membership} | |
183 | {if $row.current_membership|date_format:"%Y%m%d" LT $smarty.now|date_format:"%Y%m%d"} | |
184 | <br /><em>{ts 1=$row.current_membership|crmDate 2=$row.name}Your <strong>%2</strong> membership expired on %1.{/ts}</em> | |
185 | {else} | |
186 | <br /><em>{ts 1=$row.current_membership|crmDate 2=$row.name}Your <strong>%2</strong> membership expires on %1.{/ts}</em> | |
187 | {/if} | |
6a488035 | 188 | {else} |
a7aa881c | 189 | {ts 1=$row.name}Your <strong>%1</strong> membership does not expire (you do not need to renew that membership).{/ts}<br /> |
6a488035 | 190 | {/if} |
a7aa881c MWMC |
191 | {else} |
192 | | |
193 | {/if} | |
194 | </td> | |
6a488035 TO |
195 | </tr> |
196 | ||
a7aa881c | 197 | {/foreach} |
b62f69b2 | 198 | {if $form.auto_renew} |
a7aa881c | 199 | <tr id="allow_auto_renew"> |
6a488035 TO |
200 | <td style="width: auto;">{$form.auto_renew.html}</td> |
201 | <td style="width: auto;"> | |
a7aa881c | 202 | {$form.auto_renew.label} |
6a488035 | 203 | </td> |
a7aa881c MWMC |
204 | </tr> |
205 | {/if} | |
206 | {if $showRadio} | |
207 | {if $showRadioNoThanks } {* Provide no-thanks option when Membership signup is not required - per membership block configuration. *} | |
208 | <tr class="odd-row"> | |
209 | <td>{$form.selectMembership.no_thanks.html}</td> | |
210 | <td colspan="2"><strong>{ts}No thank you{/ts}</strong></td> | |
6a488035 TO |
211 | </tr> |
212 | {/if} | |
a7aa881c MWMC |
213 | {/if} |
214 | </table> | |
215 | {/strip} | |
6a488035 TO |
216 | {/if} |
217 | {* Include JS for auto renew membership if priceset is Quick Config*} | |
dfa81da9 | 218 | {if $membershipBlock} |
6a488035 | 219 | {literal} |
a7aa881c MWMC |
220 | <script type="text/javascript"> |
221 | CRM.$(function($) { | |
222 | showHideAutoRenew( null ); | |
223 | }); | |
224 | function showHideAutoRenew( memTypeId ) | |
225 | { | |
226 | var priceSetName = "price_"+{/literal}'{$membershipFieldID}'{literal}; | |
227 | var considerUserInput = {/literal}'{$takeUserSubmittedAutoRenew}'{literal}; | |
228 | if ( memTypeId ) considerUserInput = false; | |
229 | if ( !memTypeId ) memTypeId = cj('input:radio[name='+priceSetName+']:checked').attr('membership-type'); | |
6a488035 | 230 | |
a7aa881c MWMC |
231 | //does this page has only one membership type. |
232 | var singleMembership = {/literal}'{$singleMembership}'{literal}; | |
233 | if ( !memTypeId && singleMembership ) memTypeId = cj("input:radio[name="+priceSetName+"]").attr('membership-type'); | |
234 | var renewOptions = {/literal}{$autoRenewMembershipTypeOptions}{literal}; | |
235 | var currentOption = eval( "renewOptions." + 'autoRenewMembershipType_' + memTypeId ); | |
236 | var autoRenew = cj('#auto_renew_section'); | |
237 | var autoRenewC = cj('input[name="auto_renew"]'); | |
238 | var forceRenew = cj("#force_renew"); | |
6a488035 | 239 | |
a7aa881c MWMC |
240 | var readOnly = false; |
241 | var isChecked = false; | |
242 | if ( currentOption == 0 ) { | |
243 | isChecked = false; | |
244 | forceRenew.hide(); | |
245 | autoRenew.hide(); | |
246 | } | |
247 | if ( currentOption == 1 ) { | |
248 | forceRenew.hide(); | |
249 | autoRenew.show(); | |
6a488035 | 250 | |
a7aa881c MWMC |
251 | //uncomment me, if we'd like |
252 | //to load auto_renew checked. | |
253 | //isChecked = true; | |
254 | } else if ( currentOption == 2 || currentOption == 4) { | |
255 | autoRenew.hide(); | |
256 | forceRenew.show(); | |
257 | isChecked = readOnly = true; | |
258 | } | |
6a488035 | 259 | |
a7aa881c | 260 | if ( considerUserInput ) isChecked = autoRenew.prop('checked' ); |
6a488035 | 261 | |
a7aa881c MWMC |
262 | //its a normal recur contribution. |
263 | if ( cj( "is_recur" ) && | |
264 | ( cj( 'input:radio[name="is_recur"]:checked').val() == 1 ) ) { | |
265 | isChecked = false; | |
266 | autoRenew.hide(); | |
267 | forceRenew.hide(); | |
268 | } | |
6a488035 | 269 | |
a7aa881c MWMC |
270 | autoRenewC.attr( 'readonly', readOnly ); |
271 | autoRenewC.prop('checked', isChecked ); | |
272 | } | |
6a488035 | 273 | |
a7aa881c MWMC |
274 | {/literal}{if $allowAutoRenewMembership}{literal} |
275 | CRM.$(function($) { | |
276 | //keep read only always checked. | |
277 | cj( "#auto_renew" ).click(function( ) { | |
6a488035 | 278 | if ( cj(this).attr( 'readonly' ) ) { |
a7aa881c | 279 | cj(this).prop('checked', true ); |
6a488035 | 280 | } |
a7aa881c MWMC |
281 | }); |
282 | }); | |
283 | {/literal}{/if}{literal} | |
284 | </script> | |
6a488035 TO |
285 | {/literal} |
286 | {/if} |