diff --git a/.lando.yml b/.lando.yml new file mode 100644 index 000000000..02f9d4d28 --- /dev/null +++ b/.lando.yml @@ -0,0 +1,45 @@ +name: faveo-laravel +recipe: laravel + +config: + webroot: public + php: "8.1" + +services: + appserver: + type: php:8.1 + overrides: + environment: + APP_ENV: local + APP_DEBUG: true + APP_KEY: base64:u0DummyKeyForDev123456== + DB_CONNECTION: mysql + DB_HOST: host.docker.internal # nếu bạn dùng MySQL bên ngoài container + DB_PORT: 3306 + DB_DATABASE: faveo + DB_USERNAME: root + DB_PASSWORD: HP_LE1851w + MAIL_MAILER: smtp + MAIL_HOST: smtp.gmail.com + MAIL_PORT: 587 + MAIL_USERNAME: pvcuong1965@gmail.com + MAIL_PASSWORD: nwbdxhefdfgjyjtn + MAIL_ENCRYPTION: ssl + MAIL_FROM_ADDRESS: vcuong1965@gmail.com + MAIL_FROM_NAME: "Faveo Helpdesk" + + mailhog: + type: mailhog + +tooling: + artisan: + service: appserver + composer: + service: appserver + mysql: + service: database + +proxy: + appserver: + - faveo.lndo.site + diff --git a/app/Http/Controllers/Agent/helpdesk/TicketController.php b/app/Http/Controllers/Agent/helpdesk/TicketController.php old mode 100755 new mode 100644 index 445974d1b..df0ddd11f --- a/app/Http/Controllers/Agent/helpdesk/TicketController.php +++ b/app/Http/Controllers/Agent/helpdesk/TicketController.php @@ -53,6 +53,7 @@ use Mail; use UTC; use Vsmoraes\Pdf\PdfFacade; use Yajra\DataTables\Facades\DataTables; +use App\Model\helpdesk\Agent\Location; /** * TicketController. @@ -80,6 +81,7 @@ class TicketController extends Controller */ public function newticket(CountryCode $code) { + $locations = Location::all(); $location = GeoIP::getLocation(); $phonecode = $code->where('iso', '=', $location->iso_code)->first(); $pcode = ''; @@ -89,7 +91,7 @@ class TicketController extends Controller $settings = CommonSettings::select('status')->where('option_name', '=', 'send_otp')->first(); $email_mandatory = CommonSettings::select('status')->where('option_name', '=', 'email_mandatory')->first(); - return view('themes.default1.agent.helpdesk.ticket.new', compact('email_mandatory', 'settings'))->with('phonecode', $pcode); + return view('themes.default1.agent.helpdesk.ticket.new', compact('locations', 'email_mandatory', 'settings'))->with('phonecode', $pcode); } /** @@ -107,7 +109,7 @@ class TicketController extends Controller } else { $email = null; } - $fullname = $request->input('first_name').'%$%'.$request->input('last_name'); + $fullname = $request->input('first_name') . '%$%' . $request->input('last_name'); $helptopic = $request->input('helptopic'); $sla = $request->input('sla'); $duedate = $request->input('duedate'); @@ -193,7 +195,7 @@ class TicketController extends Controller return response()->json(['error' => $e->getMessage()], 500); } - return Redirect()->back()->with('fails', '
  • '.$e->getMessage().'
  • '); + return Redirect()->back()->with('fails', '
  • ' . $e->getMessage() . '
  • '); } } @@ -216,8 +218,8 @@ class TicketController extends Controller } else { $tickets = null; } -// $tickets = $tickets->where('dept_id', '=', $dept->id)->orWhere('assigned_to', Auth::user()->id)->first(); -// dd($tickets); + // $tickets = $tickets->where('dept_id', '=', $dept->id)->orWhere('assigned_to', Auth::user()->id)->first(); + // dd($tickets); } elseif (Auth::user()->role == 'admin') { $tickets = Tickets::where('id', '=', $id)->first(); } elseif (Auth::user()->role == 'user') { @@ -337,7 +339,7 @@ class TicketController extends Controller $thread2->ticket_id = $thread->ticket_id; $thread2->user_id = Auth::user()->id; $thread2->is_internal = 1; - $thread2->body = 'This Ticket have been assigned to '.Auth::user()->first_name.' '.Auth::user()->last_name; + $thread2->body = 'This Ticket have been assigned to ' . Auth::user()->first_name . ' ' . Auth::user()->last_name; $thread2->save(); $data = [ 'id' => $tickets->id, @@ -389,9 +391,9 @@ class TicketController extends Controller // Event event(new \App\Events\FaveoAfterReply($reply_content, $user->mobile, $user->country_code, $request, $tickets, $thread)); if (Auth::user()) { - $u_id = Auth::user()->first_name.' '.Auth::user()->last_name; + $u_id = Auth::user()->first_name . ' ' . Auth::user()->last_name; } else { - $u_id = $this->getAdmin()->first_name.' '.$this->getAdmin()->last_name; + $u_id = $this->getAdmin()->first_name . ' ' . $this->getAdmin()->last_name; } $data = [ 'ticket_id' => $request->input('ticket_ID'), @@ -413,14 +415,14 @@ class TicketController extends Controller if ($mail == true) { $encoded_ticketid = Crypt::encrypt($ticket_id); - $link = url('check_ticket/'.$encoded_ticketid); + $link = url('check_ticket/' . $encoded_ticketid); $this->NotificationController->create($ticket_id, Auth::user()->id, '2'); $this->PhpMailController->sendmail( $from = $this->PhpMailController->mailfrom('0', $tickets->dept_id), $to = ['name' => $user_name, 'email' => $email, 'cc' => $collaborators], $message = [ - 'subject' => $ticket_subject.'[#'.$ticket_number.']', - 'body' => $line.$request->input('reply_content'), + 'subject' => $ticket_subject . '[#' . $ticket_number . ']', + 'body' => $line . $request->input('reply_content'), 'scenario' => 'ticket-reply', 'attachments' => $attachment_files, ], @@ -491,13 +493,13 @@ class TicketController extends Controller { $tickets = Tickets::leftJoin('ticket_thread', function ($join) { $join->on('tickets.id', '=', 'ticket_thread.ticket_id') - ->whereNotNull('ticket_thread.title'); + ->whereNotNull('ticket_thread.title'); }) - ->leftJoin('department', 'tickets.dept_id', '=', 'department.id') - ->leftJoin('help_topic', 'tickets.help_topic_id', '=', 'help_topic.id') - ->where('tickets.id', '=', $id) - ->select('ticket_thread.title', 'tickets.ticket_number', 'department.name as department', 'help_topic.topic as helptopic') - ->first(); + ->leftJoin('department', 'tickets.dept_id', '=', 'department.id') + ->leftJoin('help_topic', 'tickets.help_topic_id', '=', 'help_topic.id') + ->where('tickets.id', '=', $id) + ->select('ticket_thread.title', 'tickets.ticket_number', 'department.name as department', 'help_topic.topic as helptopic') + ->first(); $ticket = Tickets::where('tickets.id', '=', $id)->first(); $html = view('themes.default1.agent.helpdesk.ticket.pdf', compact('id', 'ticket', 'tickets'))->render(); $html1 = mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8'); @@ -704,7 +706,7 @@ class TicketController extends Controller if ($auto_response == 0) { $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('1', '0'), $to = ['name' => $user->first_name, 'email' => $emailadd], $message = ['subject' => null, 'scenario' => 'registration-notification'], $template_variables = ['user' => $user->first_name, 'email_address' => $emailadd, 'user_password' => $password]); if ($user_status == 0) { - $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('1', '0'), $to = ['name' => $user->first_name, 'email' => $emailadd], $message = ['subject' => null, 'scenario' => 'registration'], $template_variables = ['user' => $user->first_name, 'email_address' => $emailadd, 'password_reset_link' => url('account/activate/'.$token)]); + $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('1', '0'), $to = ['name' => $user->first_name, 'email' => $emailadd], $message = ['subject' => null, 'scenario' => 'registration'], $template_variables = ['user' => $user->first_name, 'email_address' => $emailadd, 'password_reset_link' => url('account/activate/' . $token)]); } } } catch (\Exception $e) { @@ -724,7 +726,7 @@ class TicketController extends Controller $is_reply = $ticket_number[1]; //dd($source); $system = $this->system(); - $updated_subject = $threaddata->title.'[#'.$ticket_number2.']'; + $updated_subject = $threaddata->title . '[#' . $ticket_number2 . ']'; if ($ticket_number2) { // send ticket create details to user if ($is_reply == 0) { @@ -735,12 +737,12 @@ class TicketController extends Controller $sign = $company; } $encoded_ticketid = Crypt::encrypt($ticketdata->id); - $link = url('check_ticket/'.$encoded_ticketid); + $link = url('check_ticket/' . $encoded_ticketid); if ($source == 3) { try { if ($auto_response == 0) { $encoded_ticketid = Crypt::encrypt($ticketdata->id); - $link = url('check_ticket/'.$encoded_ticketid); + $link = url('check_ticket/' . $encoded_ticketid); $this->PhpMailController->sendmail( $from = $this->PhpMailController->mailfrom('0', $ticketdata->dept_id), $to = ['name' => $username, 'email' => $emailadd], @@ -764,7 +766,8 @@ class TicketController extends Controller $from = $this->PhpMailController->mailfrom('0', $ticketdata->dept_id), $to = ['name' => $username, 'email' => $emailadd], $message = ['subject' => $updated_subject, 'scenario' => 'create-ticket'], - $template_variables = ['user' => $username, + $template_variables = [ + 'user' => $username, 'ticket_number' => $ticket_number2, 'department_sign' => '', 'system_link' => $link, @@ -805,7 +808,7 @@ class TicketController extends Controller } } } -// Event fire for new ticket[''] + // Event fire for new ticket[''] } if ($is_reply == 1) { $client_email = $ticketdata->user->email; @@ -833,7 +836,8 @@ class TicketController extends Controller ], $message = [ 'subject' => $updated_subject, - 'body' => $body, 'scenario' => $mail, + 'body' => $body, + 'scenario' => $mail, ], $template_variables = [ 'ticket_agent_name' => $email_data['to_user_name'], @@ -842,7 +846,8 @@ class TicketController extends Controller 'user' => $email_data['to_user_name'], 'ticket_number' => $ticket_number2, 'email_address' => $emailadd, - 'name' => $ticket_creator, ] + 'name' => $ticket_creator, + ] ); } catch (\Exception $e) { } @@ -941,14 +946,14 @@ class TicketController extends Controller if ($user_name->role == 'user') { $username = $user_name->user_name; } elseif ($user_name->role == 'agent' or $user_name->role == 'admin') { - $username = $user_name->first_name.' '.$user_name->last_name; + $username = $user_name->first_name . ' ' . $user_name->last_name; } $ticket_threads = new Ticket_Thread(); $ticket_threads->ticket_id = $id; $ticket_threads->user_id = $user_id; $ticket_threads->is_internal = 1; - $ticket_threads->body = $ticket_status->message.' '.$username; + $ticket_threads->body = $ticket_status->message . ' ' . $username; $ticket_threads->save(); // event fire for internal notes //event to change status @@ -1162,7 +1167,7 @@ class TicketController extends Controller $thread->ticket_id = $ticket_status->id; $thread->user_id = Auth::user()->id; $thread->is_internal = 1; - $thread->body = $ticket_status_message->message.' '.Auth::user()->first_name.' '.Auth::user()->last_name; + $thread->body = $ticket_status_message->message . ' ' . Auth::user()->first_name . ' ' . Auth::user()->last_name; $thread->save(); $user_id = $ticket_status->user_id; @@ -1180,7 +1185,7 @@ class TicketController extends Controller } try { - $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('0', $ticket_status->dept_id), $to = ['name' => $user_name, 'email' => $email], $message = ['subject' => $ticket_subject.'[#'.$ticket_number.']', 'scenario' => 'close-ticket'], $template_variables = ['ticket_number' => $ticket_number]); + $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('0', $ticket_status->dept_id), $to = ['name' => $user_name, 'email' => $email], $message = ['subject' => $ticket_subject . '[#' . $ticket_number . ']', 'scenario' => 'close-ticket'], $template_variables = ['ticket_number' => $ticket_number]); } catch (\Exception $e) { return 0; } @@ -1192,7 +1197,7 @@ class TicketController extends Controller ]; event('change-status', [$data]); - return 'your ticket'.$ticket_status->ticket_number.' has been closed'; + return 'your ticket' . $ticket_status->ticket_number . ' has been closed'; } /** @@ -1214,7 +1219,7 @@ class TicketController extends Controller if ($ticket_status == null) { return redirect()->route('unauth'); } -// $ticket_status = $ticket->where('id', '=', $id)->first(); + // $ticket_status = $ticket->where('id', '=', $id)->first(); $ticket_status->status = 2; $ticket_status->closed = 1; $ticket_status->closed_at = date('Y-m-d H:i:s'); @@ -1225,9 +1230,9 @@ class TicketController extends Controller $thread->user_id = Auth::user()->id; $thread->is_internal = 1; if (Auth::user()->first_name != null) { - $thread->body = $ticket_status_message->message.' '.Auth::user()->first_name.' '.Auth::user()->last_name; + $thread->body = $ticket_status_message->message . ' ' . Auth::user()->first_name . ' ' . Auth::user()->last_name; } else { - $thread->body = $ticket_status_message->message.' '.Auth::user()->user_name; + $thread->body = $ticket_status_message->message . ' ' . Auth::user()->user_name; } $thread->save(); $data = [ @@ -1238,7 +1243,7 @@ class TicketController extends Controller ]; event('change-status', [$data]); - return 'your ticket'.$ticket_status->ticket_number.' has been resolved'; + return 'your ticket' . $ticket_status->ticket_number . ' has been resolved'; } /** @@ -1268,7 +1273,7 @@ class TicketController extends Controller $thread->ticket_id = $ticket_status->id; $thread->user_id = Auth::user()->id; $thread->is_internal = 1; - $thread->body = $ticket_status_message->message.' '.Auth::user()->first_name.' '.Auth::user()->last_name; + $thread->body = $ticket_status_message->message . ' ' . Auth::user()->first_name . ' ' . Auth::user()->last_name; $thread->save(); $data = [ 'id' => $ticket_status->ticket_number, @@ -1278,7 +1283,7 @@ class TicketController extends Controller ]; event('change-status', [$data]); - return 'your ticket'.$ticket_status->ticket_number.' has been opened'; + return 'your ticket' . $ticket_status->ticket_number . ' has been opened'; } /** @@ -1320,7 +1325,7 @@ class TicketController extends Controller $thread->ticket_id = $ticket_delete->id; $thread->user_id = Auth::user()->id; $thread->is_internal = 1; - $thread->body = $ticket_status_message->message.' '.Auth::user()->first_name.' '.Auth::user()->last_name; + $thread->body = $ticket_status_message->message . ' ' . Auth::user()->first_name . ' ' . Auth::user()->last_name; $thread->save(); $data = [ 'id' => $ticket_delete->ticket_number, @@ -1330,7 +1335,7 @@ class TicketController extends Controller ]; event('change-status', [$data]); - return 'your ticket'.$ticket_delete->ticket_number.' has been delete'; + return 'your ticket' . $ticket_delete->ticket_number . ' has been delete'; } } @@ -1386,13 +1391,13 @@ class TicketController extends Controller $thread->ticket_id = $ticket->id; $thread->user_id = Auth::user()->id; $thread->is_internal = 1; - $thread->body = 'This Ticket has been assigned to '.$assignee; + $thread->body = 'This Ticket has been assigned to ' . $assignee; $thread->save(); } elseif ($assign_to[0] == 'user') { $ticket->assigned_to = $assign_to[1]; if ($user_detail === null) { $user_detail = User::where('id', '=', $assign_to[1])->first(); - $assignee = $user_detail->first_name.' '.$user_detail->last_name; + $assignee = $user_detail->first_name . ' ' . $user_detail->last_name; } $company = $this->company(); $system = $this->system(); @@ -1408,16 +1413,16 @@ class TicketController extends Controller $thread->ticket_id = $ticket->id; $thread->user_id = Auth::user()->id; $thread->is_internal = 1; - $thread->body = 'This Ticket has been assigned to '.$assignee; + $thread->body = 'This Ticket has been assigned to ' . $assignee; $thread->save(); $agent = $user_detail->first_name; $agent_email = $user_detail->email; $ticket_link = route('ticket.thread', $id); - $master = Auth::user()->first_name.' '.Auth::user()->last_name; + $master = Auth::user()->first_name . ' ' . Auth::user()->last_name; try { - $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('0', $ticket->dept_id), $to = ['name' => $agent, 'email' => $agent_email], $message = ['subject' => $ticket_subject.'[#'.$ticket_number.']', 'scenario' => 'assign-ticket'], $template_variables = ['ticket_agent_name' => $agent, 'ticket_number' => $ticket_number, 'ticket_assigner' => $master, 'ticket_link' => $ticket_link]); + $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('0', $ticket->dept_id), $to = ['name' => $agent, 'email' => $agent_email], $message = ['subject' => $ticket_subject . '[#' . $ticket_number . ']', 'scenario' => 'assign-ticket'], $template_variables = ['ticket_agent_name' => $agent, 'ticket_number' => $ticket_number, 'ticket_assigner' => $master, 'ticket_link' => $ticket_link]); } catch (\Exception $e) { return 0; } @@ -1448,7 +1453,7 @@ class TicketController extends Controller $NewThread->save(); $data = [ 'ticket_id' => $id, - 'u_id' => Auth::user()->first_name.' '.Auth::user()->last_name, + 'u_id' => Auth::user()->first_name . ' ' . Auth::user()->last_name, 'body' => $InternalContent, ]; event('Reply-Ticket', [$data]); @@ -1466,7 +1471,7 @@ class TicketController extends Controller public function surrender($id) { $ticket = Tickets::where('id', '=', $id)->first(); - $InternalContent = Auth::user()->first_name.' '.Auth::user()->last_name.' has Surrendered the assigned Ticket'; + $InternalContent = Auth::user()->first_name . ' ' . Auth::user()->last_name . ' has Surrendered the assigned Ticket'; $thread = Ticket_Thread::where('ticket_id', '=', $id)->first(); $NewThread = new Ticket_Thread(); $NewThread->ticket_id = $thread->ticket_id; @@ -1512,8 +1517,8 @@ class TicketController extends Controller { $this->layout->header = $ticket_number; $content = View::make('themes.default1.admin.tickets.ticketsearch', with(new Tickets())) - ->with('header', $this->layout->header) - ->with('ticket_number', \App\Model\Tickets::stores($ticket_number)); + ->with('header', $this->layout->header) + ->with('ticket_number', \App\Model\Tickets::stores($ticket_number)); if (Request::header('X-PJAX')) { return $content; } else { @@ -1631,7 +1636,7 @@ class TicketController extends Controller public function autosearch($id) { $term = Input::get('term'); - $user = \App\User::where('email', 'LIKE', '%'.$term.'%')->pluck('email'); + $user = \App\User::where('email', 'LIKE', '%' . $term . '%')->pluck('email'); echo json_encode($user); } @@ -1662,11 +1667,11 @@ class TicketController extends Controller $data = User::where('email', '=', $email)->first(); if ($data == null) { return '
    ' - .'' - .'' - .Lang::get('lang.email_not_exist_system') - .'
    ' - .''; + . '' + . '' + . Lang::get('lang.email_not_exist_system') + . '' + . ''; } $ticket_collaborator = Ticket_Collaborator::where('ticket_id', '=', $ticket_id)->where('user_id', '=', $data->id)->first(); if (!isset($ticket_collaborator)) { @@ -1677,9 +1682,9 @@ class TicketController extends Controller $ticket_collaborator->role = 'ccc'; $ticket_collaborator->save(); - return '

    Success!

    '.$data->user_name.'

    '.$data->email.'
    '; + return '

    Success!

    ' . $data->user_name . '

    ' . $data->email . '
    '; } else { - return '

    '.$data->user_name.'

    '.$data->email.'
    This user already Collaborated
    '; + return '

    ' . $data->user_name . '

    ' . $data->email . '
    This user already Collaborated
    '; } } @@ -1704,7 +1709,7 @@ class TicketController extends Controller $ticket_id = Input::get('ticket_id'); $user_search = User::where('email', '=', $email)->first(); if (isset($user_search)) { - return '

    '.Lang::get('lang.alert').'!

    '.Lang::get('lang.user_already_exist').'
    '; + return '

    ' . Lang::get('lang.alert') . '!

    ' . Lang::get('lang.user_already_exist') . '
    '; } else { $company = $this->company(); $user = new User(); @@ -1727,7 +1732,7 @@ class TicketController extends Controller $ticket_collaborator->role = 'ccc'; $ticket_collaborator->save(); - return '

    '.$user->user_name.'

    '.$user->email.'
    '; + return '

    ' . $user->user_name . '

    ' . $user->email . '
    '; } } @@ -1789,7 +1794,7 @@ class TicketController extends Controller // echo "
    "; } $thread = Ticket_Thread::find($th_id->id); -// dd($thread); + // dd($thread); $thread->delete(); } $collaborators = Ticket_Collaborator::where('ticket_id', '=', $ticket->id)->get(); @@ -2034,12 +2039,12 @@ class TicketController extends Controller if ($diff < $cad && Auth::user()->id != $ticket->lock_by) { $user_data = User::select('user_name', 'first_name', 'last_name')->where('id', '=', $ticket->lock_by)->first(); if ($user_data->first_name != '') { - $name = $user_data->first_name.' '.$user_data->last_name; + $name = $user_data->first_name . ' ' . $user_data->last_name; } else { $name = $user_data->username; } - return Lang::get('lang.locked-ticket')." lock_by)."'>".$name.' '.$diff.' '.Lang::get('lang.minutes-ago'); //ticket is locked + return Lang::get('lang.locked-ticket') . " lock_by) . "'>" . $name . ' ' . $diff . ' ' . Lang::get('lang.minutes-ago'); //ticket is locked } elseif ($diff < $cad && Auth::user()->id == $ticket->lock_by) { $ticket = Tickets::where('id', '=', $id)->first(); $ticket->lock_at = date('Y-m-d H:i:s'); @@ -2105,7 +2110,7 @@ class TicketController extends Controller $thread->ticket_id = $ticket->id; $thread->user_id = Auth::user()->id; $thread->is_internal = 1; - $thread->body = 'This ticket now belongs to '.$user->user_name; + $thread->body = 'This ticket now belongs to ' . $user->user_name; $thread->save(); //mail functionality @@ -2115,11 +2120,11 @@ class TicketController extends Controller $agent = $user->first_name; $agent_email = $user->email; - $master = Auth::user()->first_name.' '.Auth::user()->last_name; + $master = Auth::user()->first_name . ' ' . Auth::user()->last_name; if (Alert::first()->internal_status == 1 || Alert::first()->internal_assigned_agent == 1) { // ticket assigned send mail Mail::send('emails.Ticket_assign', ['agent' => $agent, 'ticket_number' => $ticket_number, 'from' => $company, 'master' => $master, 'system' => $system], function ($message) use ($agent_email, $agent, $ticket_number, $ticket_subject) { - $message->to($agent_email, $agent)->subject($ticket_subject.'[#'.$ticket_number.']'); + $message->to($agent_email, $agent)->subject($ticket_subject . '[#' . $ticket_number . ']'); }); } @@ -2142,9 +2147,12 @@ class TicketController extends Controller $email = $email; $ticket_id = $ticket_id; $validator = \Validator::make( - ['email' => $email, - 'name' => $name, ], - ['email' => 'required|email', + [ + 'email' => $email, + 'name' => $name, + ], + [ + 'email' => 'required|email', ] ); $user = User::where('email', '=', $email)->first(); @@ -2179,15 +2187,15 @@ class TicketController extends Controller $t_id = Input::get('data1'); foreach ($t_id as $value) { $title = Ticket_Thread::select('title')->where('ticket_id', '=', $value)->first(); - echo "'; + echo "'; } } else { $ticket = Tickets::select('user_id')->where('id', '=', $id)->first(); $ticket_data = Tickets::select('ticket_number', 'id') - ->where('user_id', '=', $ticket->user_id)->where('id', '!=', $id)->where('status', '=', 1)->get(); + ->where('user_id', '=', $ticket->user_id)->where('id', '!=', $id)->where('status', '=', 1)->get(); foreach ($ticket_data as $value) { $title = Ticket_Thread::select('title')->where('ticket_id', '=', $value->id)->first(); - echo "'; + echo "'; } } } @@ -2217,9 +2225,9 @@ class TicketController extends Controller } else { $ticket = Tickets::select('user_id')->where('id', '=', $id)->first(); $ticket_data = Tickets::select('ticket_number', 'id') - ->where('user_id', '=', $ticket->user_id) - ->where('id', '!=', $id) - ->where('status', '=', 1)->get(); + ->where('user_id', '=', $ticket->user_id) + ->where('id', '!=', $id) + ->where('status', '=', 1)->get(); if (isset($ticket_data) && count($ticket_data) >= 1) { return 1; } else { @@ -2253,17 +2261,17 @@ class TicketController extends Controller } $parent_ticket = Tickets::select('ticket_number')->where('id', '=', $p_id)->first(); $parent_thread = Ticket_Thread::where('ticket_id', '=', $p_id)->first(); - foreach ($t_id as $value) {//to create new thread of the tickets to be merged with parent + foreach ($t_id as $value) { //to create new thread of the tickets to be merged with parent $thread = Ticket_Thread::where('ticket_id', '=', $value)->first(); $ticket = Tickets::select('ticket_number')->where('id', '=', $value)->first(); Ticket_Thread::where('ticket_id', '=', $value) - ->update(['ticket_id' => $p_id]); + ->update(['ticket_id' => $p_id]); Ticket_Form_Data::where('ticket_id', '=', $value) - ->update(['ticket_id' => $p_id]); + ->update(['ticket_id' => $p_id]); Ticket_Collaborator::where('ticket_id', '=', $value) - ->update(['ticket_id' => $p_id]); + ->update(['ticket_id' => $p_id]); Tickets::where('id', '=', $value) - ->update(['status' => 3]); + ->update(['status' => 3]); //event has $p_id and $value event('ticket.merge', [['parent' => $p_id, 'child' => $value]]); if (!empty(Input::get('reason'))) { @@ -2273,7 +2281,7 @@ class TicketController extends Controller } if (!empty(Input::get('title'))) { Ticket_Thread::where('ticket_id', '=', $p_id)->first() - ->update(['title' => Input::get('title')]); + ->update(['title' => Input::get('title')]); } $new_thread = new Ticket_Thread(); @@ -2281,9 +2289,9 @@ class TicketController extends Controller $new_thread->user_id = Auth::user()->id; $new_thread->is_internal = 0; $new_thread->title = $thread->title; - $new_thread->body = Lang::get('lang.get_merge_message'). - "  #".$parent_ticket->ticket_number.'

    '.Lang::get('lang.merge-reason').':  '.$reason; + $new_thread->body = Lang::get('lang.get_merge_message') . + "  #" . $parent_ticket->ticket_number . '

    ' . Lang::get('lang.merge-reason') . ':  ' . $reason; $new_thread->format = $thread->format; $new_thread->ip_address = $thread->ip_address; @@ -2292,7 +2300,7 @@ class TicketController extends Controller $new_parent_thread->user_id = Auth::user()->id; $new_parent_thread->is_internal = 1; $new_parent_thread->title = $thread->title; - $new_parent_thread->body = Lang::get('lang.ticket')." #".$ticket->ticket_number.' '.Lang::get('lang.ticket_merged').'

    '.Lang::get('lang.merge-reason').':  '.$reason; + $new_parent_thread->body = Lang::get('lang.ticket') . " #" . $ticket->ticket_number . ' ' . Lang::get('lang.ticket_merged') . '

    ' . Lang::get('lang.merge-reason') . ':  ' . $reason; $new_parent_thread->format = $parent_thread->format; $new_parent_thread->ip_address = $parent_thread->ip_address; if ($new_thread->save() && $new_parent_thread->save()) { @@ -2309,11 +2317,11 @@ class TicketController extends Controller public function getParentTickets($id) { $title = Ticket_Thread::select('title')->where('ticket_id', '=', $id)->first(); - echo "'; + echo "'; $tickets = Input::get('data1'); foreach ($tickets as $value) { $title = Ticket_Thread::select('title')->where('ticket_id', '=', $value)->first(); - echo "'; + echo "'; } } @@ -2328,17 +2336,17 @@ class TicketController extends Controller { return " + @stop - - - diff --git a/resources/views/themes/default1/agent/helpdesk/ticket/timeline.blade.php b/resources/views/themes/default1/agent/helpdesk/ticket/timeline.blade.php old mode 100755 new mode 100644 index 101eb79b7..860970f67 --- a/resources/views/themes/default1/agent/helpdesk/ticket/timeline.blade.php +++ b/resources/views/themes/default1/agent/helpdesk/ticket/timeline.blade.php @@ -2,16 +2,16 @@ @section('Tickets') -class="nav-link active" + class="nav-link active" @stop @section('ticket-bar') -active + active @stop @section('PageHeader') -

    {{Lang::get('lang.ticket-details')}}

    -@include('themes.default1.agent.helpdesk.ticket.response-messages') +

    {{ Lang::get('lang.ticket-details') }}

    + @include('themes.default1.agent.helpdesk.ticket.response-messages') @stop user_id)->first(); @@ -21,499 +21,588 @@ $group = App\Model\helpdesk\Agent\Groups::where('id', '=', $agent_group)->where( ?> @section('sidebar') - - - - + + + + - - -@stop + + +@stop title != "") { +if ($thread->title != '') { $title = wordwrap($thread->title, 70, "
    \n"); } else { - $title = ""; + $title = ''; } ?> @section('content') - - - - - -
    -
    -

    {!! $thread->getSubject() !!}

    + - -
    + + + + +
    +
    +

    {!! $thread->getSubject() !!}

    +
    + +
    -
    - - + + id)); if ($group->can_edit_ticket == 1) { ?> - + - can_assign_ticket == 1) { ?> - + - @if($tickets->assigned_to == Auth::user()->id) - - @endif + + @endif - + - + - {{trans('lang.generate_pdf')}} + {{ trans('lang.generate_pdf') }} -
    - - - can_delete_ticket == 1 || $group->can_ban_email == 1) { ?> + can_delete_ticket == 1 || $group->can_ban_email == 1) { ?>
    - -
    - -
    - priority_id)->first(); - ?> -
    -
    -
    - sla; - $SlaPlan = App\Model\helpdesk\Manage\Sla_plan::where('id', '=', $sla)->first(); - ?> - {!! Lang::get('lang.sla_plan') !!}: {{$SlaPlan->grace_period}} -
    -
    - {!! Lang::get('lang.created_date') !!}: {{ UTC::usertimezone($tickets->created_at) }} -
    -
    - {!! Lang::get('lang.due_date') !!}: - duedate; - $user_timezone = new DateTimeZone('Asia/Kolkata'); - $time = date_create($tickets->duedate, $user_timezone); - date_add($time, date_interval_create_from_date_string($SlaPlan->grace_period)); - date_add($time, date_interval_create_from_date_string('30 minutes')); - echo $time->format('Y-m-d H:i:s'); - ?> -
    -
    - id)->get(); ?> - @foreach($response as $last) - created_at; ?> - @endforeach - {!! Lang::get('lang.last_response') !!}: {{ UTC::usertimezone($ResponseDate) }} -
    -
    - -
    - -
    - -
    -
    - -
    -
    - status)->first(); ?> - @if($status) - - @endif - - - priority_id)->first(); ?> - @if($priority) - - @endif - - - dept_id)->first(); ?> - @if($dept123) - - @endif - - @if($user->ban > 0) @endif + priority_id)->first(); + ?> +
    +
    +
    + sla; + $SlaPlan = App\Model\helpdesk\Manage\Sla_plan::where('id', '=', $sla)->first(); + ?> + {!! Lang::get('lang.sla_plan') !!}: {{ $SlaPlan->grace_period }}
    -
    {!! Lang::get('lang.status') !!}:{{$status->name}}
    {!! Lang::get('lang.priority') !!}:{{$priority->priority_desc}}
    {!! Lang::get('lang.department') !!}:{{$dept123->name}}
    {!! Lang::get('lang.email') !!}: {{Str::limit($user->email,30)}}
    - {!! Lang::get('lang.this_ticket_is_under_banned_user')!!}
    +
    + {!! Lang::get('lang.created_date') !!}: {{ UTC::usertimezone($tickets->created_at) }} +
    +
    + {!! Lang::get('lang.due_date') !!}: + duedate; + $location = $tickets->location; + $user_timezone = new DateTimeZone('Asia/Kolkata'); + $time = date_create($tickets->duedate, $user_timezone); + date_add($time, date_interval_create_from_date_string($SlaPlan->grace_period)); + date_add($time, date_interval_create_from_date_string('30 minutes')); + echo $time->format('Y-m-d H:i:s'); + ?> +
    +
    + id)->get(); ?> + @foreach ($response as $last) + created_at; ?> + @endforeach + {!! Lang::get('lang.last_response') !!}: {{ UTC::usertimezone($ResponseDate) }} +
    +
    -
    - user_id)->first(); - $TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $thread->ticket_id)->where('is_internal', '=', 0)->max('id'); - $TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->where('is_internal', '=', 0)->first(); - $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); - if ($LastResponse->role == "user") { - $rep = "#F39C12"; - $username = $LastResponse->first_name . " " . $LastResponse->last_name; - if ($LastResponse->first_name == null || $LastResponse->first_name == '') { - $username = $LastResponse->user_name; - } } else { - $rep = "#000"; - $username = $LastResponse->first_name . " " . $LastResponse->last_name; - if ($LastResponse->first_name == null || $LastResponse->last_name == null) { - $username = $LastResponse->user_name; + +
    + +
    + +
    +
    + +
    +
    + + status)->first(); ?> + @if ($status) + + @endif + + + + priority_id)->first(); ?> + @if ($priority) + + @endif + + + + dept_id)->first(); ?> + @if ($dept123) + + + @endif + + + + + @if ($user->ban > 0) + + + + + @endif + +
    {!! Lang::get('lang.status') !!}:{{ $status->name }}
    {!! Lang::get('lang.priority') !!}:{{ $priority->priority_desc }}
    {!! Lang::get('lang.department') !!}:{{ $dept123->name }}
    {!! Lang::get('lang.email') !!}:{{ Str::limit($user->email, 30) }}
    + {!! Lang::get('lang.this_ticket_is_under_banned_user') !!}
    +
    +
    + user_id)->first(); + $TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $thread->ticket_id)->where('is_internal', '=', 0)->max('id'); + $TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->where('is_internal', '=', 0)->first(); + $LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first(); + if ($LastResponse->role == 'user') { + $rep = '#F39C12'; + $username = $LastResponse->first_name . ' ' . $LastResponse->last_name; + if ($LastResponse->first_name == null || $LastResponse->first_name == '') { + $username = $LastResponse->user_name; + } + } else { + $rep = '#000'; + $username = $LastResponse->first_name . ' ' . $LastResponse->last_name; + if ($LastResponse->first_name == null || $LastResponse->last_name == null) { + $username = $LastResponse->user_name; + } } - } - if ($tickets->source > 0) { - $ticket_source = App\Model\helpdesk\Ticket\Ticket_source::where('id', '=', $tickets->source)->first(); - $ticket_source = $ticket_source->value; - } else - $ticket_source = $tickets->source; - ?> - -
    + if ($tickets->source > 0) { + $ticket_source = App\Model\helpdesk\Ticket\Ticket_source::where('id', '=', $tickets->source)->first(); + $ticket_source = $ticket_source->value; + } else { + $ticket_source = $tickets->source; + } + ?> +
    +
    - @if($user->phone_number !=null)
    @endif - @if($user->mobile !=null)@endif - - help_topic_id)->first(); ?> - - - - -
    {!! Lang::get('lang.phone') !!}: {{$user->phone_number}}
    {!! Lang::get('lang.mobile') !!}: {{$user->ext . $user->mobile}}
    {!! Lang::get('lang.source') !!}: {{$ticket_source}}
    {!! Lang::get('lang.help_topic') !!}: {{$help_topic->topic}}
    {!! Lang::get('lang.last_message') !!}: {{Str::limit($username,30)}}
    {!! Lang::get('lang.organization') !!}: {!!$LastResponse->getOrgWithLink()!!}
    -
    -
    - - - -
    - -
    - -
    - -

    {{trans('lang.action')}}

    + @if ($user->phone_number != null) + + {!! Lang::get('lang.phone') !!}: + {{ $user->phone_number }} + + @endif + @if ($user->mobile != null) + + {!! Lang::get('lang.mobile') !!}: + {{ $user->ext . $user->mobile }} + + @endif + + {!! Lang::get('lang.source') !!}: + {{ $ticket_source }} + + + {!! Lang::get('lang.help_topic') !!}: help_topic_id)->first(); ?>{{ $help_topic->topic }} + + + {!! Lang::get('lang.last_message') !!}: + {{ Str::limit($username, 30) }} + + + {!! Lang::get('lang.organization') !!}: + {!! $LastResponse->getOrgWithLink() !!} + + + Địa điểm: + {!! $location->locationname !!} + + +
    + +
    -
    - - + + +
    -
    - - - -