Commit | Line | Data |
---|---|---|
6a488035 TO |
1 | {* add campaigns to various components CRM-7362 *} |
2 | ||
3 | {if $campaignContext eq 'componentSearch'} | |
4 | ||
5 | {* add campaign in component search *} | |
6 | <tr class="{$campaignTrClass}"> | |
7 | {assign var=elementName value=$campaignInfo.elementName} | |
8 | ||
9 | <td class="{$campaignTdClass}">{$form.$elementName.label}<br /> | |
10 | <div class="crm-select-container">{$form.$elementName.html}</div> | |
11 | {literal} | |
12 | <script type="text/javascript"> | |
13 | cj( "select[name=" + "'" + {/literal}'{$elementName}[]'{literal} + "'" + "]" ).crmasmSelect({ | |
14 | addItemTarget: 'bottom', | |
15 | animate: true, | |
16 | highlight: true, | |
17 | sortable: true, | |
18 | respectParents: true, | |
19 | selectClass:'crmasmSelectCampaigns' | |
20 | }); | |
21 | ||
22 | //lets disable the current and past campaign options. | |
23 | cj(function(){ | |
24 | cj( 'select[id^="'+ 'crmasmSelectCampaigns' +'"] option' ).each( function( ) { | |
25 | value = cj(this).val(); | |
26 | if ( value == 'current_campaign' || value == 'past_campaign' ) { | |
27 | cj(this).css( 'color', 'black' ); | |
28 | cj(this).attr( 'disabled', true ); | |
29 | cj(this).attr( 'selected', false); | |
30 | cj(this).addClass( 'asmOptionDisabled' ); | |
31 | } | |
32 | }); | |
33 | }); | |
34 | </script> | |
35 | {/literal} | |
36 | </td> | |
37 | </tr> | |
38 | ||
39 | {else} | |
40 | ||
41 | {if $campaignInfo.showAddCampaign} | |
42 | ||
43 | <tr class="{$campaignTrClass}"> | |
44 | <td class="label">{$form.campaign_id.label}</td> | |
45 | <td class="view-value"> | |
46 | {* lets take a call, either show campaign select drop-down or show add campaign link *} | |
47 | {if $campaignInfo.hasCampaigns} | |
48 | {$form.campaign_id.html|crmAddClass:huge} {help id="id-campaign_id" file="CRM/Campaign/Form/addCampaignToComponent.hlp"} | |
49 | {* show for add and edit actions *} | |
50 | {if ( $action eq 1 or $action eq 2 ) | |
51 | and !$campaignInfo.alreadyIncludedPastCampaigns and $campaignInfo.includePastCampaignURL} | |
52 | <br /> | |
53 | <a id='include-past-campaigns' href='#' onClick='includePastCampaigns( "campaign_id" ); return false;'> | |
54 | » | |
55 | {ts}Show past campaign(s) in this select list.{/ts} | |
56 | </a> | |
57 | {/if} | |
58 | {else} | |
59 | <div class="status"> | |
60 | {ts}There are currently no active Campaigns.{/ts} | |
61 | {if $campaignInfo.addCampaignURL} | |
62 | {ts 1=$campaignInfo.addCampaignURL}If you want to associate this record with a campaign, you can <a href="%1">create a campaign here</a>.{/ts} | |
63 | {/if} {help id="id-campaign_id" file="CRM/Campaign/Form/addCampaignToComponent.hlp"} | |
64 | </div> | |
65 | {/if} | |
66 | </td> | |
67 | </tr> | |
68 | ||
69 | ||
70 | {literal} | |
71 | <script type="text/javascript"> | |
72 | function includePastCampaigns() | |
73 | { | |
74 | //hide past campaign link. | |
75 | cj( "#include-past-campaigns" ).hide( ); | |
76 | ||
77 | var campaignUrl = {/literal}'{$campaignInfo.includePastCampaignURL}'{literal}; | |
78 | cj.post( campaignUrl, | |
79 | null, | |
80 | function( data ) { | |
81 | if ( data.status != 'success' ) return; | |
82 | ||
83 | //first reset all select options. | |
84 | cj( "#campaign_id" ).val( '' ); | |
85 | cj( "#campaign_id" ).html( '' ); | |
86 | cj('input[name="included_past_campaigns"]').val( 1 ); | |
87 | ||
88 | var campaigns = data.campaigns; | |
89 | ||
90 | //build the new options. | |
91 | for ( campaign in campaigns ) { | |
92 | title = campaigns[campaign].title; | |
93 | value = campaigns[campaign].value; | |
94 | className = campaigns[campaign].class; | |
95 | if ( !title ) continue; | |
96 | cj('#campaign_id').append( cj('<option></option>').val(value).html(title).addClass(className) ); | |
97 | } | |
98 | }, | |
99 | 'json'); | |
100 | } | |
101 | </script> | |
102 | {/literal} | |
103 | ||
104 | ||
105 | {/if}{* add campaign to component if closed. *} | |
106 | ||
107 | {/if}{* add campaign to component search if closed. *} | |
108 |