Merge pull request #2965 from generalredneck/CRM-14135
[civicrm-core.git] / templates / CRM / Member / Form / MembershipStandalone.js
1 CRM.$(function($) {
2 memberResults = new Array;
3 $("input[name='contact[1]']").result( function() {
4 var contact_id = cj("input[name='contact_select_id[1]']").val();
5 CRM.api('Membership', 'get', {'sequential': 1, 'contact_id': contact_id},
6 {success: function(data) {
7 if (data['values']) {
8 memberResults = data['values'];
9 checkExistingMemOrg();
10 }
11 }});
12 });
13
14 checkExistingMemOrg();
15
16 $("select[name='membership_type_id[0]']").change( checkExistingMemOrg );
17
18 function checkExistingMemOrg () {
19 if (memberResults) {
20 var selectedorg = $("select[name='membership_type_id[0]']").val();
21 $.each(memberResults, function() {
22 if (this['membership_type_id'] in CRM.existingMems.typeorgs) {
23 if (CRM.existingMems.typeorgs[this['membership_type_id']] == selectedorg) {
24 if(this['status_id'] in CRM.existingMems.statuses) {
25 var membership_status = CRM.existingMems.statuses[this['status_id']];
26 var andEndDate = '';
27 var endDate = this.membership_end_date;
28 if (endDate) {
29 andEndDate = ' ' + ts("and end date of %1", {1:endDate});
30 }
31
32 var renewUrl = CRM.url('civicrm/contact/view/membership',
33 "reset=1&action=renew&cid="+this.contact_id+"&id="+this['id']+"&context=membership&selectedChild=member"
34 );
35
36 var membershipTab = CRM.url('civicrm/contact/view',
37 "reset=1&force=1&cid="+this.contact_id+"&selectedChild=member"
38 );
39
40 CRM.alert(ts('This contact has an existing %1 membership record with %2 status%3.<ul><li><a href="%4">Renew the existing membership instead</a></li><li><a href="%5">View all existing and / or expired memberships for this contact</a></li></ul>', {1:CRM.existingMems.memtypes[this.membership_type_id], 2:membership_status, 3:andEndDate, 4:renewUrl, 5:membershipTab}), ts('Duplicate Membership?'), 'alert');
41 }
42 }
43 }
44 });
45 }
46 }
47 });