Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
forbidals
/
gambling
/
app
/
Http
/
Controllers
/
Admin
:
SupportTicketController.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace App\Http\Controllers\Admin; use App\Constants\Status; use App\Http\Controllers\Controller; use App\Models\SupportMessage; use App\Models\SupportTicket; use App\Traits\SupportTicketManager; class SupportTicketController extends Controller { use SupportTicketManager; public function __construct() { parent::__construct(); $this->userType = 'admin'; $this->column = 'admin_id'; $this->user = auth()->guard('admin')->user(); } public function tickets() { $pageTitle = 'Support Tickets'; $items = SupportTicket::searchable(['name','subject','ticket'])->orderBy('id','desc')->with('user')->paginate(getPaginate()); return view('admin.support.tickets', compact('items', 'pageTitle')); } public function pendingTicket() { $pageTitle = 'Pending Tickets'; $items = SupportTicket::searchable(['name','subject','ticket'])->pending()->orderBy('id','desc')->with('user')->paginate(getPaginate()); return view('admin.support.tickets', compact('items', 'pageTitle')); } public function closedTicket() { $pageTitle = 'Closed Tickets'; $items = SupportTicket::searchable(['name','subject','ticket'])->closed()->orderBy('id','desc')->with('user')->paginate(getPaginate()); return view('admin.support.tickets', compact('items', 'pageTitle')); } public function answeredTicket() { $pageTitle = 'Answered Tickets'; $items = SupportTicket::searchable(['name','subject','ticket'])->orderBy('id','desc')->with('user')->answered()->paginate(getPaginate()); return view('admin.support.tickets', compact('items', 'pageTitle')); } public function ticketReply($id) { $ticket = SupportTicket::with('user')->where('id', $id)->firstOrFail(); $pageTitle = 'Reply Ticket'; $messages = SupportMessage::with('ticket','admin','attachments')->where('support_ticket_id', $ticket->id)->orderBy('id','desc')->get(); return view('admin.support.reply', compact('ticket', 'messages', 'pageTitle')); } public function ticketDelete($id) { $message = SupportMessage::findOrFail($id); $path = getFilePath('ticket'); if ($message->attachments()->count() > 0) { foreach ($message->attachments as $attachment) { fileManager()->removeFile($path.'/'.$attachment->attachment); $attachment->delete(); } } $message->delete(); $notify[] = ['success', "Support ticket deleted successfully"]; return back()->withNotify($notify); } }