Merge pull request #17655 from samuelsov/lab1827
[civicrm-core.git] / templates / CRM / Activity / Form / Activity.tpl
1 {*
2 +--------------------------------------------------------------------+
3 | Copyright CiviCRM LLC. All rights reserved. |
4 | |
5 | This work is published under the GNU AGPLv3 license with some |
6 | permitted exceptions and without any warranty. For full license |
7 | and copyright information, see https://civicrm.org/licensing |
8 +--------------------------------------------------------------------+
9 *}
10 {* this template is used for adding/editing other (custom) activities. *}
11 {if $action eq 4}
12 <div class="crm-block crm-content-block crm-activity-view-block">
13 {else}
14 {if $activityTypeDescription }
15 <div class="help">{$activityTypeDescription}</div>
16 {/if}
17 <div class="crm-block crm-form-block crm-activity-form-block">
18 {/if}
19 {if !$action or ( $action eq 1 ) or ( $action eq 2 ) }
20 <div class="crm-submit-buttons">{include file="CRM/common/formButtons.tpl" location="top"}</div>
21 {/if}
22
23 {if $action eq 8} {* Delete action. *}
24 <table class="form-layout">
25 <tr>
26 <td colspan="2">
27 <div class="status">{ts}Are you sure you want to delete {/ts}{if $delName}'{$delName}'{/if}?</div>
28 </td>
29 </tr>
30 {elseif $action eq 1 or $action eq 2 or $action eq 4 or $context eq 'search' or $context eq 'smog'}
31
32 <table class="{if $action eq 4}crm-info-panel{else}form-layout{/if}">
33
34 {if $action eq 4}
35 {if $activityTypeDescription }
36 <div class="help">{$activityTypeDescription}</div>
37 {/if}
38 {else}
39 {if $context eq 'standalone' or $context eq 'search' or $context eq 'smog'}
40 <tr class="crm-activity-form-block-activity_type_id">
41 <td class="label">{$form.activity_type_id.label}</td><td class="view-value">{$form.activity_type_id.html}</td>
42 </tr>
43 {/if}
44 {/if}
45
46 {if $surveyActivity}
47 <tr class="crm-activity-form-block-survey">
48 <td class="label">{ts}Survey Title{/ts}</td><td class="view-value">{$surveyTitle}</td>
49 </tr>
50 {/if}
51
52 <tr class="crm-activity-form-block-source_contact_id">
53 <td class="label">{$form.source_contact_id.label}</td>
54 <td class="view-value">
55 {$form.source_contact_id.html}
56 </td>
57 </tr>
58
59 <tr class="crm-activity-form-block-target_contact_id">
60 <td class="label">{$form.target_contact_id.label}</td>
61 <td class="view-value">
62 {$form.target_contact_id.html}
63 </td>
64 </tr>
65
66 {if $form.separation}
67 <tr class="crm-activity-form-block-separation crm-is-multi-activity-wrapper">
68 <td class="label">{$form.separation.label}</td>
69 <td>{$form.separation.html} {help id="separation"}</td>
70 </tr>
71 {/if}
72
73 <tr class="crm-activity-form-block-assignee_contact_id">
74 <td class="label">
75 {$form.assignee_contact_id.label}
76 {edit}{help id="assignee_contact_id" title=$form.assignee_contact_id.label}{/edit}
77 </td>
78 <td>
79 {$form.assignee_contact_id.html}
80 {if $action neq 4}
81 {if !$form.target_contact_id.frozen}
82 <a href="#" class="crm-hover-button" id="swap_target_assignee" title="{ts}Swap Target and Assignee Contacts{/ts}" style="position:relative; bottom: 1em;">
83 <i class="crm-i fa-random" aria-hidden="true"></i>
84 </a>
85 {/if}
86 {if $activityAssigneeNotification}
87 <br />
88 <span id="notify_assignee_msg" class="description"><i class="crm-i fa-paper-plane" aria-hidden="true"></i> {ts}A copy of this activity will be emailed to each Assignee.{/ts} {help id="sent_copy_email"}</span>
89 {/if}
90 {/if}
91 </td>
92 </tr>
93
94 {if $activityTypeFile}
95 {include file="CRM/$crmDir/Form/Activity/$activityTypeFile.tpl"}
96 {/if}
97
98 <tr class="crm-activity-form-block-subject">
99 <td class="label">{$form.subject.label}</td><td class="view-value">{$form.subject.html}</td>
100 </tr>
101
102 {* CRM-7362 --add campaign to activities *}
103 {include file="CRM/Campaign/Form/addCampaignToComponent.tpl"
104 campaignTrClass="crm-activity-form-block-campaign_id"}
105
106 {* build engagement level CRM-7775 *}
107 {if $buildEngagementLevel}
108 <tr class="crm-activity-form-block-engagement_level">
109 <td class="label">{$form.engagement_level.label}</td>
110 <td class="view-value">{$form.engagement_level.html}</td>
111 </tr>
112 {/if}
113
114 <tr class="crm-activity-form-block-location">
115 <td class="label">{$form.location.label}</td><td class="view-value">{$form.location.html|crmAddClass:huge}</td>
116 </tr>
117 <tr class="crm-activity-form-block-activity_date_time">
118 <td class="label">{$form.activity_date_time.label}</td>
119 {if $action neq 4}
120 <td class="view-value">{$form.activity_date_time.html}</td>
121 {else}
122 <td class="view-value">{$form.activity_date_time.value|crmDate}</td>
123 {/if}
124 </tr>
125 <tr class="crm-activity-form-block-duration">
126 <td class="label">{$form.duration.label}</td>
127 <td class="view-value">
128 {$form.duration.html}
129 {if $action neq 4}<span class="description">{ts}minutes{/ts}{/if}
130 </td>
131 </tr>
132 <tr class="crm-activity-form-block-status_id">
133 <td class="label">{$form.status_id.label}</td><td class="view-value">{$form.status_id.html}</td>
134 </tr>
135 <tr class="crm-activity-form-block-details">
136 <td class="label">{$form.details.label}</td>
137 {if $activityTypeNameAndLabel.machineName eq "Print PDF Letter"}
138 <td class="view-value">
139 {$form.details.html}
140 </td>
141 {elseif $activityTypeNameAndLabel.machineName eq "Inbound Email"}
142 <td class="view-value">
143 {$form.details.html|crmStripAlternatives|nl2br}
144 </td>
145 {else}
146 <td class="view-value">
147 {$form.details.html|crmStripAlternatives}
148 </td>
149 {/if}
150 </tr>
151 <tr class="crm-activity-form-block-priority_id">
152 <td class="label">{$form.priority_id.label}</td><td class="view-value">{$form.priority_id.html}</td>
153 </tr>
154 {if $surveyActivity }
155 <tr class="crm-activity-form-block-result">
156 <td class="label">{$form.result.label}</td><td class="view-value">{$form.result.html}</td>
157 </tr>
158 {/if}
159 {if $form.tag.html}
160 <tr class="crm-activity-form-block-tag">
161 <td class="label">{$form.tag.label}</td>
162 <td class="view-value">
163 <div class="crm-select-container">{$form.tag.html}</div>
164 </td>
165 </tr>
166 {/if}
167
168 {if $tagsetInfo.activity}
169 <tr class="crm-activity-form-block-tag_set">
170 {include file="CRM/common/Tagset.tpl" tagsetType='activity' tableLayout=true}
171 </tr>
172 {/if}
173
174 {if $action neq 4 OR $viewCustomData}
175 <tr class="crm-activity-form-block-custom_data">
176 <td colspan="2">
177 {if $action eq 4}
178 {include file="CRM/Custom/Page/CustomDataView.tpl"}
179 {else}
180 {include file="CRM/common/customDataBlock.tpl"}
181 {/if}
182 </td>
183 </tr>
184 {/if}
185
186 {if $action eq 4 AND $currentAttachmentInfo}
187 {include file="CRM/Form/attachment.tpl"}{* For view action the include provides the row and cells. *}
188 {elseif $action eq 1 OR $action eq 2}
189 <tr class="crm-activity-form-block-attachment">
190 <td colspan="2">
191 {include file="CRM/Form/attachment.tpl"}
192 </td>
193 </tr>
194 {/if}
195
196 {if $action eq 2 OR $action eq 1}
197 <tr class="crm-activity-form-block-recurring_activity">
198 <td colspan="2">
199 {include file="CRM/Core/Form/RecurringEntity.tpl" recurringFormIsEmbedded=true}
200 </td>
201 </tr>
202 {/if}
203
204 {if $action neq 4} {* Don't include "Schedule Follow-up" section in View mode. *}
205 <tr class="crm-activity-form-block-schedule_followup">
206 <td colspan="2">
207 {include file="CRM/Activity/Form/FollowUp.tpl" type=""}
208 {literal}
209 <script type="text/javascript">
210 CRM.$(function($) {
211 var $form = $('form.{/literal}{$form.formClass}{literal}');
212 $('.crm-accordion-body', $form).each( function() {
213 //open tab if form rule throws error
214 if ( $(this).children( ).find('span.crm-error').text( ).length > 0 ) {
215 $(this).parent('.collapsed').crmAccordionToggle();
216 }
217 });
218 function toggleMultiActivityCheckbox() {
219 $('.crm-is-multi-activity-wrapper').toggle(!!($(this).val() && $(this).val().indexOf(',') > 0));
220 }
221 $('[name=target_contact_id]', $form).each(toggleMultiActivityCheckbox).change(toggleMultiActivityCheckbox);
222 $('#swap_target_assignee').click(function(e) {
223 e.preventDefault();
224 var assignees = $('#assignee_contact_id', $form).select2("data");
225 var targets = $('#target_contact_id', $form).select2("data");
226 $('#assignee_contact_id', $form).select2("data", targets);
227 $('#target_contact_id', $form).select2("data", assignees).change();
228 });
229 });
230 </script>
231 {/literal}
232 </td>
233 </tr>
234 {/if}
235 {/if} {* End Delete vs. Add / Edit action *}
236 </table>
237 <div class="crm-submit-buttons">
238 {if $action eq 4 && ($activityTypeNameAndLabel.machineName neq 'Inbound Email' || $allow_edit_inbound_emails == 1)}
239 {if !$context }
240 {assign var="context" value='activity'}
241 {/if}
242 {if $permission EQ 'edit'}
243 {assign var='urlParams' value="reset=1&atype=$atype&action=update&reset=1&id=$entityID&cid=$contactId&context=$context"}
244 {if ($context eq 'fulltext' || $context eq 'search') && $searchKey}
245 {assign var='urlParams' value="reset=1&atype=$atype&action=update&reset=1&id=$entityID&cid=$contactId&context=$context&key=$searchKey"}
246 {/if}
247 <a href="{crmURL p='civicrm/activity/add' q=$urlParams}" class="edit button" title="{ts}Edit{/ts}"><span><i class="crm-i fa-pencil" aria-hidden="true"></i> {ts}Edit{/ts}</span></a>
248 {/if}
249
250 {if call_user_func(array('CRM_Core_Permission','check'), 'delete activities')}
251 {assign var='urlParams' value="reset=1&atype=$atype&action=delete&reset=1&id=$entityID&cid=$contactId&context=$context"}
252 {if ($context eq 'fulltext' || $context eq 'search') && $searchKey}
253 {assign var='urlParams' value="reset=1&atype=$atype&action=delete&reset=1&id=$entityID&cid=$contactId&context=$context&key=$searchKey"}
254 {/if}
255 <a href="{crmURL p='civicrm/contact/view/activity' q=$urlParams}" class="delete button" title="{ts}Delete{/ts}"><span><i class="crm-i fa-trash" aria-hidden="true"></i> {ts}Delete{/ts}</span></a>
256 {/if}
257 {/if}
258 {if $action eq 4 and $context != 'case' and call_user_func(array('CRM_Case_BAO_Case','checkPermission'), $activityId, 'File On Case', $atype)}
259 <a href="#" onclick="fileOnCase('file', {$activityId}, null, this); return false;" class="cancel button" title="{ts}File On Case{/ts}"><span><i class="crm-i fa-clipboard" aria-hidden="true"></i> {ts}File on Case{/ts}</span></a>
260 {include file="CRM/Case/Form/ActivityToCase.tpl"}
261 {/if}
262 {include file="CRM/common/formButtons.tpl" location="bottom"}
263 </div>
264
265
266 {if $action eq 1 or $action eq 2 or $context eq 'search' or $context eq 'smog'}
267 {literal}
268 <script type="text/javascript">
269 CRM.$(function($) {
270 var doNotNotifyAssigneeFor = {/literal}{$doNotNotifyAssigneeFor|@json_encode}{literal};
271 $('#activity_type_id').change(function() {
272 if ($.inArray($(this).val(), doNotNotifyAssigneeFor) != -1) {
273 $('#notify_assignee_msg').hide();
274 }
275 else {
276 $('#notify_assignee_msg').show();
277 }
278 });
279 });
280 </script>
281 {/literal}
282 {/if}
283 </div>{* end of form block*}
284
285 {include file="CRM/Event/Form/ManageEvent/ConfirmRepeatMode.tpl" entityID=$activityId entityTable="civicrm_activity"}