subscribe on ticket while answering
This commit is contained in:
parent
59bb0a3fbd
commit
7909856b9d
3 changed files with 44 additions and 3 deletions
|
|
@ -187,7 +187,16 @@ class TicketController extends Controller
|
|||
$message = new Message($request->validated());
|
||||
$message->user()->associate(auth()->user());
|
||||
$message->ticket()->associate($ticket);
|
||||
$message->save();
|
||||
$message->saveOrFail();
|
||||
|
||||
/** @var \App\Models\User */
|
||||
$user = auth()->user();
|
||||
|
||||
if ($request->subscribe) {
|
||||
$user->subscriptions()->attach($ticket->id);
|
||||
} else {
|
||||
$user->subscriptions()->detach($ticket->id);
|
||||
}
|
||||
|
||||
if ($request->file_message) {
|
||||
$projectSlug = Str::slug($ticket->project->name);
|
||||
|
|
|
|||
|
|
@ -6,6 +6,20 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||
|
||||
class CreateMessage extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function authorize()
|
||||
{
|
||||
$this->merge([
|
||||
'subscribe' => $this->subscribe ? true : false
|
||||
]);
|
||||
return auth()->check() and (auth()->user()->role === 1 or
|
||||
$this->ticket->project->id === auth()->user()->project_id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
|
|
@ -14,6 +28,7 @@ class CreateMessage extends FormRequest
|
|||
public function rules()
|
||||
{
|
||||
return [
|
||||
'subscribe' => 'required|boolean',
|
||||
'message' => 'required|min:' . (auth()->user()->role == 1 ? '5' : '20'),
|
||||
'file_message' => 'sometimes|mimes:jpeg,jpg,png,pdf|max:2048'
|
||||
];
|
||||
|
|
|
|||
|
|
@ -63,8 +63,25 @@
|
|||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<textarea name="message" class="form-control" rows="10"></textarea><br>
|
||||
<input type="file" name="file_message" accept="image/jpeg, image/png, image/jpg, .pdf">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<textarea name="message" class="form-control" rows="10"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-4">
|
||||
<div class="col">
|
||||
<label for="formFile" class="form-label">Joindre un fichier (jpg, png, pdf) 2Mo max</label>
|
||||
<input class="form-control" type="file" id="formFile" name="file_message" accept="image/jpeg, image/png, image/jpg, .pdf">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-4">
|
||||
<div class="col">
|
||||
<div class="form-check">
|
||||
<input name="subscribe" type="checkbox" class="form-check-input" id="subscribeResponse" autocomplete="off" @if ($isSubscribed)checked @endif value="1">
|
||||
<label class="form-check-label" for="subscribeResponse">Suivre le ticket</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="reset" class="btn btn-sm btn-danger" data-dismiss="modal">Fermer</button>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue