{*
+--------------------------------------------------------------------+
- | CiviCRM version 4.4 |
+ | CiviCRM version 4.5 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013 |
+ | Copyright CiviCRM LLC (c) 2004-2014 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
<script type="text/javascript">
{literal}
-cj( function( ) {
+CRM.$(function($) {
// build list of ids to track changes on
var address_fields = {/literal}{$profileAddressFields|@json_encode}{literal};
var input_ids = {};
var select_ids = {};
- var orig_id = field = field_name = null;
+ var orig_id, field, field_name;
// build input ids
- cj('.billing_name_address-section input').each(function(i){
- orig_id = cj(this).attr('id');
+ $('.billing_name_address-section input').each(function(i){
+ orig_id = $(this).attr('id');
field = orig_id.split('-');
field_name = field[0].replace('billing_', '');
if(field[1]) {
}
}
});
- if(cj('#first_name').length)
+ if($('#first_name').length)
input_ids['#first_name'] = '#billing_first_name';
- if(cj('#middle_name').length)
+ if($('#middle_name').length)
input_ids['#middle_name'] = '#billing_middle_name';
- if(cj('#last_name').length)
+ if($('#last_name').length)
input_ids['#last_name'] = '#billing_last_name';
// build select ids
- cj('.billing_name_address-section select').each(function(i){
- orig_id = cj(this).attr('id');
+ $('.billing_name_address-section select').each(function(i){
+ orig_id = $(this).attr('id');
field = orig_id.split('-');
field_name = field[0].replace('billing_', '').replace('_id', '');
if(field[1]) {
// detect if billing checkbox should default to checked
var checked = true;
for(var id in input_ids) {
- var orig_id = input_ids[id];
- if(cj(id).val() != cj(orig_id).val()) {
+ orig_id = input_ids[id];
+ if($(id).val() != $(orig_id).val()) {
checked = false;
break;
}
}
for(var id in select_ids) {
- var orig_id = select_ids[id];
- if(cj(id).val() != cj(orig_id).val()) {
+ orig_id = select_ids[id];
+ if($(id).val() != $(orig_id).val()) {
checked = false;
break;
}
}
if(checked) {
- cj('#billingcheckbox').attr('checked', 'checked');
- cj('.billing_name_address-group').hide();
+ $('#billingcheckbox').prop('checked', true);
+ if (CRM.billing.billingProfileIsHideable) {
+ $('.billing_name_address-group').hide();
+ }
}
// onchange handlers for non-billing fields
for(var id in input_ids) {
- var orig_id = input_ids[id];
- cj(id).change(function(){
- var id = '#'+cj(this).attr('id');
+ orig_id = input_ids[id];
+ $(id).change(function(){
+ var id = '#'+$(this).attr('id');
var orig_id = input_ids[id];
// if billing checkbox is active, copy other field into billing field
- if(cj('#billingcheckbox').attr('checked')) {
- cj(orig_id).val( cj(id).val() );
- };
+ if($('#billingcheckbox').prop('checked')) {
+ $(orig_id).val( $(id).val() );
+ }
});
- };
+ }
for(var id in select_ids) {
- var orig_id = select_ids[id];
- cj(id).change(function(){
- var id = '#'+cj(this).attr('id');
+ orig_id = select_ids[id];
+ $(id).change(function(){
+ var id = '#'+$(this).attr('id');
var orig_id = select_ids[id];
// if billing checkbox is active, copy other field into billing field
- if(cj('#billingcheckbox').attr('checked')) {
- cj(orig_id+' option').removeAttr('selected');
- cj(orig_id+' option[value="'+cj(id).val()+'"]').attr('selected', 'selected');
- };
+ if($('#billingcheckbox').prop('checked')) {
+ $(orig_id+' option').prop('selected', false);
+ $(orig_id+' option[value="'+$(id).val()+'"]').prop('selected', true);
+ }
if(orig_id == '#billing_country_id-5') {
- cj(orig_id).change();
+ $(orig_id).change();
}
});
- };
+ }
// toggle show/hide
- cj('#billingcheckbox').click(function(){
+ $('#billingcheckbox').click(function(){
if(this.checked) {
- cj('.billing_name_address-group').hide(200);
+ if (CRM.billing.billingProfileIsHideable) {
+ $('.billing_name_address-group').hide(200);
+ }
// copy all values
for(var id in input_ids) {
- var orig_id = input_ids[id];
- cj(orig_id).val( cj(id).val() );
- };
+ orig_id = input_ids[id];
+ $(orig_id).val( $(id).val() );
+ }
for(var id in select_ids) {
- var orig_id = select_ids[id];
- cj(orig_id+' option').removeAttr('selected');
- cj(orig_id+' option[value="'+cj(id).val()+'"]').attr('selected', 'selected');
- };
+ orig_id = select_ids[id];
+ $(orig_id+' option').prop('selected', false);
+ $(orig_id+' option[value="'+$(id).val()+'"]').prop('selected', true);
+ }
} else {
- cj('.billing_name_address-group').show(200);
+ $('.billing_name_address-group').show(200);
}
});
// remove spaces, dashes from credit card number
- cj('#credit_card_number').change(function(){
- var cc = cj('#credit_card_number').val()
+ $('#credit_card_number').change(function(){
+ var cc = $('#credit_card_number').val()
.replace(/ /g, '')
.replace(/-/g, '');
- cj('#credit_card_number').val(cc);
+ $('#credit_card_number').val(cc);
});
});
{/literal}