ok
Direktori : /home2/selectio/www/fms-worksuite/app/Http/Controllers/ |
Current File : /home2/selectio/www/fms-worksuite/app/Http/Controllers/DiscussionReplyController.php |
<?php namespace App\Http\Controllers; use App\Helper\Reply; use App\Http\Requests\DiscussionReply\StoreRequest; use App\Models\Discussion; use App\Models\DiscussionReply; use App\Models\Project; class DiscussionReplyController extends AccountBaseController { public function create() { $this->discussionId = request('id'); return view('discussions.replies.create', $this->data); } public function store(StoreRequest $request) { $reply = new DiscussionReply(); $reply->user_id = $this->user->id; $reply->discussion_id = $request->discussion_id; $reply->body = trim_editor($request->description); $reply->save(); $project = Project::findOrFail($reply->discussion->project_id); $userData = []; $usersData = $project->projectMembers; foreach ($usersData as $user) { $url = route('employees.show', [$user->id]); $userData[] = ['id' => $user->id, 'value' => $user->name, 'image' => $user->image_url, 'link' => $url]; } $this->userData = $userData; $this->discussion = Discussion::with('category', 'replies', 'replies.user', 'replies.files')->findOrFail($reply->discussion_id); $html = view('discussions.replies.show', $this->data)->render(); return Reply::dataOnly(['status' => 'success', 'html' => $html, 'discussion_reply_id' => $reply->id]); } public function getReplies($id) { $this->discussion = Discussion::with('category', 'replies', 'replies.user', 'replies.files')->findOrFail($id); $html = view('discussions.replies.show', $this->data)->render(); return Reply::dataOnly(['status' => 'success', 'html' => $html]); } public function edit($id) { $this->reply = DiscussionReply::findOrFail($id); /* @phpstan-ignore-line */ return view('discussions.replies.edit', $this->data); } public function update(StoreRequest $request, $id) { $reply = DiscussionReply::findOrFail($id); $reply->body = trim_editor($request->description); $reply->save(); $this->discussion = Discussion::with('category', 'replies', 'replies.user', 'replies.files')->findOrFail($reply->discussion_id); $html = view('discussions.replies.show', $this->data)->render(); return Reply::dataOnly(['status' => 'success', 'html' => $html]); } public function destroy($id) { $reply = DiscussionReply::findOrFail($id); $reply->delete(); $this->discussion = Discussion::with('category', 'replies', 'replies.user', 'replies.files')->findOrFail($reply->discussion_id); $html = view('discussions.replies.show', $this->data)->render(); return Reply::dataOnly(['status' => 'success', 'html' => $html]); } }