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