Are you a PHP programmer? I can give you a short code example, but you need to be able to adapt it if you want something different.
Change the code in workflow/engine/classes/model/AppNotes.php from:
Code: Select all if ($notify) {
if ($noteRecipients == "") {
$noteRecipientsA = array ();
//G::LoadClass( 'case' );
//$oCase = new Cases();
$p = $oCase->getUsersParticipatedInCase( $appUid );
foreach ($p['array'] as $key => $userParticipated) {
$noteRecipientsA[] = $key;
}
$noteRecipients = implode( ",", $noteRecipientsA );
}
$this->sendNoteNotification( $appUid, $usrUid, $noteContent, $noteRecipients );
}
To:
Code: Select all if ($notify) {
//list of user IDs (see USERS.USR_UID in database) who shouldn't receive emails for specified processes:
$aNoEmailUsers = array(
'1234567890abcde1234567890abcdef',
'abcde1234567890abcde1234567890'
);
//list of process IDs (see PROCESS.PRO_UID in database) which shouldn't receive emails for specified users:
$aNoEmailProcesses = array(
'67890abcde1234567890abcdef12345',
'de1234567890abcde1234567890abc'
);
if ($noteRecipients == "") {
$noteRecipientsA = array ();
//G::LoadClass( 'case' );
//$oCase = new Cases();
$p = $oCase->getUsersParticipatedInCase( $appUid );
foreach ($p['array'] as $key => $userParticipated) {
$noteRecipientsA[] = $key;
}
//filter the list of recipients:
if (in_array($aFields['PRO_UID'], $aNoEmailProcesses) {
$aUsers = $noteRecipientsA;
$noteRecipientsA = array();
foreach ($aUsers as $userId) {
if (!in_array($userId, $aNoEmailUsers)) {
$noteRecipientsA[] = $userId;
}
}
}
$noteRecipients = implode( ",", $noteRecipientsA );
}
$this->sendNoteNotification( $appUid, $usrUid, $noteContent, $noteRecipients );
}
You haven't tried this code, so it might require some debug, but it will get you started.