$this->addFormRule(array('CRM_Activity_Form_Activity', 'formRule'), $this);
- if (Civi::settings()->get('activity_assignee_notification')) {
- $this->assign('activityAssigneeNotification', TRUE);
+ $doNotNotifyAssigneeFor = Civi::settings()->get('do_not_notify_assignees_for');
+ if (($this->_activityTypeId && in_array($this->_activityTypeId, $doNotNotifyAssigneeFor)) || !Civi::settings()->get('activity_assignee_notification')) {
+ $this->assign('activityAssigneeNotification', FALSE);
}
else {
- $this->assign('activityAssigneeNotification', FALSE);
+ $this->assign('activityAssigneeNotification', TRUE);
}
+ $this->assign('doNotNotifyAssigneeFor', $doNotNotifyAssigneeFor);
}
/**
class CRM_Admin_Form_Preferences_Display extends CRM_Admin_Form_Preferences {
public function preProcess() {
CRM_Utils_System::setTitle(ts('Settings - Display Preferences'));
- $optionValues = CRM_Activity_BAO_Activity::buildOptions('activity_type_id', 'validate');
+ $optionValues = CRM_Activity_BAO_Activity::buildOptions('activity_type_id');
$this->_varNames = array(
CRM_Core_BAO_Setting::SYSTEM_PREFERENCES_NAME => array(
{/if}
{if $activityAssigneeNotification}
<br />
- <span class="description"><i class="crm-i fa-paper-plane"></i> {ts}A copy of this activity will be emailed to each Assignee.{/ts} {help id="sent_copy_email"}</span>
+ <span id="notify_assignee_msg" class="description"><i class="crm-i fa-paper-plane"></i> {ts}A copy of this activity will be emailed to each Assignee.{/ts} {help id="sent_copy_email"}</span>
{/if}
{/if}
</td>
{if $action eq 1 or $action eq 2 or $context eq 'search' or $context eq 'smog'}
- {*include custom data js file*}
- {include file="CRM/common/customData.tpl"}
+ {*include custom data js file*}
+ {include file="CRM/common/customData.tpl"}
{literal}
<script type="text/javascript">
CRM.$(function($) {
- {/literal}
- {if $customDataSubType}
- CRM.buildCustomData( '{$customDataType}', {$customDataSubType} );
- {else}
- CRM.buildCustomData( '{$customDataType}' );
- {/if}
- {literal}
+ var doNotNotifyAssigneeFor = ["{/literal}{'","'|implode:$doNotNotifyAssigneeFor}{literal}"];
+ $('#activity_type_id').change(function() {
+ if ($.inArray($(this).val(), doNotNotifyAssigneeFor) != -1) {
+ $('#notify_assignee_msg').hide();
+ }
+ else {
+ $('#notify_assignee_msg').show();
+ }
+ });
+
+ {/literal}
+ {if $customDataSubType}
+ CRM.buildCustomData( '{$customDataType}', {$customDataSubType} );
+ {else}
+ CRM.buildCustomData( '{$customDataType}' );
+ {/if}
+ {literal}
});
</script>
{/literal}
<td>{$form.assignee_contact_id.html}
{if $activityAssigneeNotification}
<br />
- <span class="description"><i class="crm-i fa-paper-plane"></i> {ts}A copy of this activity will be emailed to each Assignee.{/ts}</span>
+ <span id="notify_assignee_msg" class="description"><i class="crm-i fa-paper-plane"></i> {ts}A copy of this activity will be emailed to each Assignee.{/ts}</span>
{/if}
</td>
</tr>
<div class="crm-submit-buttons">{include file="CRM/common/formButtons.tpl" location="bottom"}</div>
{if $action eq 1 or $action eq 2}
- {*include custom data js file*}
- {include file="CRM/common/customData.tpl"}
+ {*include custom data js file*}
+ {include file="CRM/common/customData.tpl"}
{literal}
<script type="text/javascript">
CRM.$(function($) {
- {/literal}
- {if $customDataSubType}
- CRM.buildCustomData( '{$customDataType}', {$customDataSubType} );
- {else}
- CRM.buildCustomData( '{$customDataType}' );
- {/if}
- {literal}
+ var doNotNotifyAssigneeFor = ["{/literal}{'","'|implode:$doNotNotifyAssigneeFor}{literal}"];
+ $('#activity_type_id').change(function() {
+ if ($.inArray($(this).val(), doNotNotifyAssigneeFor) != -1) {
+ $('#notify_assignee_msg').hide();
+ }
+ else {
+ $('#notify_assignee_msg').show();
+ }
+ });
+
+ {/literal}
+ {if $customDataSubType}
+ CRM.buildCustomData( '{$customDataType}', {$customDataSubType} );
+ {else}
+ CRM.buildCustomData( '{$customDataType}' );
+ {/if}
+ {literal}
});
</script>
{/literal}