Skip to content

Commit 3d20e70

Browse files
committed
Choose notification recipients on new ticket / edit ticket new comments
1 parent 79a4986 commit 3d20e70

2 files changed

Lines changed: 46 additions & 1 deletion

File tree

src/Views/tickets/partials/comments/new_in_createedit_ticket_form.blade.php

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,40 @@
2323
<div class="card-body">
2424
<input type="hidden" class="jquery_level2_enable input_comment_num" name="form_comments[]" value="">
2525
<input type="hidden" class="jquery_level2_enable input_response_type" name="response_x" value="note" disabled="disabled">
26+
27+
<div class="form-group row">
28+
<label class="col-lg-2 col-form-label">{{ trans('panichd::lang.show-ticket-add-comment-notificate') . trans('panichd::lang.colon') }}</label>
29+
<div class="col-lg-10">
30+
<select class="form-control note_recipients" name="comment_x_note_recipients[]" multiple="multiple" style="display: none; width: 100%" disabled="disabled">
31+
@foreach ($c_members as $member)
32+
<option value="{{ $member->id }}" {{ ((isset($ticket) && $member->id == $ticket->agent->id) || (!isset($ticket) && $a_current['agent_id'] != auth()->user()->id && $a_current['agent_id'] == $member->id)) ? 'selected="selected"' : '' }}>{{ $member->name . ($member->email == "" ? ' ' . trans('panichd::lang.ticket-owner-no-email') : ' - ' . $member->email) }}
33+
@if ($setting->grab('departments_notices_feature'))
34+
@if ($member->ticketit_department == '0')
35+
{{ ' - ' . trans('panichd::lang.create-ticket-notices') . ' ' . trans('panichd::lang.all-depts')}}
36+
@elseif ($member->ticketit_department != "")
37+
{{ ' - ' . trans('panichd::lang.create-ticket-notices') . ' ' . $member->userDepartment->getFullName() }}
38+
@endif
39+
@endif
40+
</option>
41+
@endforeach
42+
</select>
43+
@php \Debugbar::info($a_current) @endphp
44+
<select class="form-control reply_recipients" name="comment_x_reply_recipients[]" class="form-control" multiple="multiple" style="display: none; width: 100%" disabled="disabled">
45+
@foreach ($c_members as $member)
46+
<option value="{{ $member->id }}" {{ ((isset($ticket) && !is_null($ticket->owner) && $member->id == $ticket->owner->id) || (!isset($ticket) && $a_current['owner_id'] != auth()->user()->id && $a_current['owner_id'] == $member->id)) ? 'selected="selected"' : '' }}>{{ $member->name . ($member->email == "" ? ' ' . trans('panichd::lang.ticket-owner-no-email') : ' - ' . $member->email) }}
47+
@if ($setting->grab('departments_notices_feature'))
48+
@if ($member->ticketit_department == '0')
49+
{{ ' - ' . trans('panichd::lang.create-ticket-notices') . ' ' . trans('panichd::lang.all-depts')}}
50+
@elseif ($member->ticketit_department != "")
51+
{{ ' - ' . trans('panichd::lang.create-ticket-notices') . ' ' . $member->userDepartment->getFullName() }}
52+
@endif
53+
@endif
54+
</option>
55+
@endforeach
56+
</select>
57+
</div>
58+
</div>
59+
2660
<textarea style="display: none" rows="5" class="form-control jquery_level2_enable input_comment_text" name="comment_x" cols="50" disabled="disabled"></textarea>
2761
<div class="jquery_error_text"></div>
2862
<label class="mt-2" style="display: none"><input type="checkbox" class="input_comment_notification_text" name="comment_x_notification_text" value="yes" disabled> {{ trans('panichd::lang.show-ticket-add-com-check-email-text') }}</label>

src/Views/tickets/partials/comments/new_in_createedit_ticket_scripts.blade.php

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,18 @@
99
_cloned.prop('id', 'comment_' + _num);
1010
_cloned.find('.input_comment_num').val(_num);
1111
_cloned.find('.input_response_type').prop('disabled', false).attr('name', 'response_' + _num);
12+
_cloned.find('.note_recipients').prop('disabled', false).attr('name', 'comment_' + _num + '_note_recipients[]');
13+
_cloned.find('.reply_recipients').attr('name', 'comment_' + _num + '_reply_recipients[]');
14+
1215
_cloned.find('.input_comment_text').prop('disabled', false).attr('name', 'comment_' + _num);
16+
1317
_cloned.find('.input_comment_notification_text').prop('disabled', false).attr('name', 'comment_' + _num + '_notification_text');
1418
if ($('input[name=hidden]:checked').val() == 'true'){
1519
_cloned.find('.switch_response_type').hide();
1620
}
1721
_cloned.css('display', 'block');
1822
_cloned.appendTo('#comments');
23+
$('#comment_' + _num).find('.note_recipients').select2();
1924
$('#comment_' + _num).find('.input_comment_text').summernote(summernote_options);
2025
});
2126
@@ -24,13 +29,16 @@
2429
e.preventDefault();
2530
var _block = $(this).closest('.comment_block');
2631
if ($(this).data('note-text') == $(this).find('.text').text()){
27-
// Switch to comment
32+
// Switch to reply
2833
$(this).find('i.fas').removeClass('fa-comment').addClass('fa-pencil-alt');
2934
_block.find('.input_response_type').val('reply');
3035
$(this).find('.text').text($(this).data('comment-text'));
3136
_block.find('.note_title').hide();
3237
_block.find('.comment_title').show();
3338
_block.find('.input_comment_notification_text').closest('label').show();
39+
40+
_block.find('.note_recipients').prop('disabled', true).select2('destroy').hide();
41+
_block.find('.reply_recipients').prop('disabled', false).show().select2();
3442
}else{
3543
// Switch to internal note
3644
$(this).find('i.fas').removeClass('fa-pencil-alt').addClass('fa-comment');
@@ -39,6 +47,9 @@
3947
_block.find('.note_title').show();
4048
_block.find('.comment_title').hide();
4149
_block.find('.input_comment_notification_text').closest('label').hide();
50+
51+
_block.find('.reply_recipients').prop('disabled', true).select2('destroy').hide();
52+
_block.find('.note_recipients').prop('disabled', false).show().select2();
4253
}
4354
});
4455

0 commit comments

Comments
 (0)