Merge pull request #2287 from pradpnayak/CRM-13848
[civicrm-core.git] / templates / CRM / Campaign / Form / addCampaignToComponent.tpl
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).prop( 'disabled', true );
29 cj(this).prop( '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 &raquo;
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 {capture assign="link"}href="{$campaignInfo.addCampaignURL}" class="action-item action-item-first"{/capture}
63 {ts 1=$link}If you want to associate this record with a campaign, you can <a %1>create a campaign here</a>.{/ts}
64 {/if} {help id="id-campaign_id" file="CRM/Campaign/Form/addCampaignToComponent.hlp"}
65 </div>
66 {/if}
67 </td>
68 </tr>
69
70
71 {literal}
72 <script type="text/javascript">
73 function includePastCampaigns()
74 {
75 //hide past campaign link.
76 cj( "#include-past-campaigns" ).hide( );
77
78 var campaignUrl = {/literal}'{$campaignInfo.includePastCampaignURL}'{literal};
79 cj.post( campaignUrl,
80 null,
81 function( data ) {
82 if ( data.status != 'success' ) return;
83
84 //first reset all select options.
85 cj( "#campaign_id" ).val( '' );
86 cj( "#campaign_id" ).html( '' );
87 cj('input[name="included_past_campaigns"]').val( 1 );
88
89 var campaigns = data.campaigns;
90
91 //build the new options.
92 for ( campaign in campaigns ) {
93 title = campaigns[campaign].title;
94 value = campaigns[campaign].value;
95 className = campaigns[campaign].class;
96 if ( !title ) continue;
97 cj('#campaign_id').append( cj('<option></option>').val(value).html(title).addClass(className) );
98 }
99 },
100 'json');
101 }
102 </script>
103 {/literal}
104
105
106 {/if}{* add campaign to component if closed. *}
107
108 {/if}{* add campaign to component search if closed. *}
109