update v1.0.3.3
This commit is contained in:
@@ -0,0 +1,213 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('answered')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent')
|
||||
{
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 1)->where('dept_id','=',$dept->id)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 1)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">{!! Lang::get('lang.answered') !!} </h3> <small id="title_refresh">{!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
<div class="box-tools pull-right">
|
||||
<div class="has-feedback">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i>
|
||||
<b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i>
|
||||
<b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> <div id="count_refresh">{!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th>
|
||||
</th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
@foreach ($tickets as $ticket)
|
||||
<?php
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
if($title)
|
||||
if($title == null){
|
||||
|
||||
} else {
|
||||
?>
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php } ?> >
|
||||
<td ><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
|
||||
</tr>
|
||||
<?php } ?>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/answered'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('answered #refresh');
|
||||
$('#title_refresh').load('answered #title_refresh');
|
||||
$('#count_refresh').load('answered #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,235 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('assigned')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('assigned_to', '>', 0)->where('dept_id','=',$dept->id)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('assigned_to', '>', 0)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title"> {!! Lang::get('lang.assigned') !!} </h3> <small id="title_refresh"> {!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i> <b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i> <b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> <div id="count_refresh">{!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th>
|
||||
</th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
@foreach ($tickets as $ticket)
|
||||
<?php
|
||||
// title
|
||||
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
if($title)
|
||||
if($title == null){
|
||||
|
||||
} else {
|
||||
?>
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php } ?> >
|
||||
<td ><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/assigned'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('assigned #refresh');
|
||||
$('#title_refresh').load('assigned #title_refresh');
|
||||
$('#count_refresh').load('assigned #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
// check box get data
|
||||
// jQuery(function($) {
|
||||
// $("form input[id='check_all']").click(function() { // triggred check
|
||||
|
||||
// var inputs = $("form input[type='checkbox']"); // get the checkbox
|
||||
|
||||
// for(var i = 0; i < inputs.length; i++) { // count input tag in the form
|
||||
// var type = inputs[i].getAttribute("type"); // get the type attribute
|
||||
// if(type == "checkbox") {
|
||||
// if(this.checked) {
|
||||
// inputs[i].checked = true; // checked
|
||||
// } else {
|
||||
// inputs[i].checked = false; // unchecked
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
|
||||
// $("form input[id='submit']").click(function() { // triggred submit
|
||||
|
||||
// var count_checked = $("[name='data[]']:checked").length; // count the checked
|
||||
// if(count_checked == 0) {
|
||||
// alert("Please select a product(s) to delete.");
|
||||
// return false;
|
||||
// }
|
||||
// if(count_checked == 1) {
|
||||
// return confirm("Are you sure you want to delete these product?");
|
||||
// } else {
|
||||
// return confirm("Are you sure you want to delete these products?");
|
||||
// }
|
||||
// });
|
||||
// }); // jquery end
|
||||
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,192 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('closed')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '>', 1)->where('dept_id','=',$dept->id)->where('status', '<', 4)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '>', 1)->where('status', '<', 4)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title"> {!! Lang::get('lang.closed') !!} </h3> <small id="title_refresh">{!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i> <b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i> <b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"><div id="count_refresh"> {!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-blue btn-sm" name="submit" value="{!! Lang::get('lang.open') !!}">
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th></th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
|
||||
@foreach ($tickets as $ticket )
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php }
|
||||
?> >
|
||||
<td><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/closed'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('closed #refresh');
|
||||
$('#title_refresh').load('closed #title_refresh');
|
||||
$('#count_refresh').load('closed #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,193 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('inbox')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('dept_id','=',$dept->id)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">{!! Lang::get('lang.inbox') !!} </h3> <small id="title_refresh">{!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i> <b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i> <b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> <div id="count_refresh">{!! $tickets->count().'-'.$tickets->total(); !!}</div> </h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th>
|
||||
</th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
@foreach ($tickets as $ticket)
|
||||
<?php
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
if($title)
|
||||
if($title == null){
|
||||
} else {
|
||||
?>
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php } ?> >
|
||||
<td ><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title) {
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null) {
|
||||
$assigned = "Unassigned";
|
||||
} else {
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
<?php } ?>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/inbox'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('inbox #refresh');
|
||||
$('#title_refresh').load('inbox #title_refresh');
|
||||
$('#count_refresh').load('inbox #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,190 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('myticket')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('assigned_to', '=', Auth::user()->id)->orderBy('id', 'ASC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('assigned_to', '=', Auth::user()->id)->orderBy('id', 'ASC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">{!! Lang::get('lang.my_tickets') !!}</h3> <small id="title_refresh">{!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i> <b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i> <b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"><div id="count_refresh"> {!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th></th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
@foreach ($tickets as $ticket )
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php }
|
||||
?> >
|
||||
<td><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->where('is_internal', '=', 0)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/myticket'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('myticket #refresh');
|
||||
$('#title_refresh').load('myticket #title_refresh');
|
||||
$('#count_refresh').load('myticket #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,218 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('newticket')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
|
||||
@section('content')
|
||||
<!-- Main content -->
|
||||
{!! Form::open(['route'=>'post.newticket','method'=>'post']) !!}
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">{!! Lang::get('lang.create_ticket') !!}</h3>
|
||||
<!-- <div class="box-tools pull-right">
|
||||
<div class="has-feedback">
|
||||
<input type="text" class="form-control input-sm" placeholder="Search Mail"/>
|
||||
<span class="glyphicon glyphicon-search form-control-feedback"></span>
|
||||
</div>
|
||||
</div> --><!-- /.box-tools -->
|
||||
</div><!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<!-- user detail -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"></i>
|
||||
<b>Success</b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"></i>
|
||||
<b>Fail!</b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="form-group">
|
||||
<h4><b>{!! Lang::get('lang.user_details') !!}:<b></h4>
|
||||
{{-- <div class="row"> --}}
|
||||
{{-- <div class="col-md-6"> --}}
|
||||
{{-- <div class="has-feedback"> --}}
|
||||
{{-- <input type="text" class="form-control input-ls" placeholder="Search Users"/> --}}
|
||||
{{-- <span class="glyphicon glyphicon-search form-control-feedback"></span> --}}
|
||||
{{-- </div> --}}
|
||||
{{-- <input type="text" name="email" id="" class="form-control" placeholder="Search User"> --}}
|
||||
{{-- </div> --}}
|
||||
{{-- </div> --}}
|
||||
<br/>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<!-- email -->
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.email') !!}:</label>
|
||||
<input type="text" name="email" id="" class="form-control">
|
||||
{!! $errors->first('email', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<!-- full name -->
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.full_name') !!}:</label>
|
||||
<input type="text" name="fullname" id="" class="form-control">
|
||||
{!! $errors->first('fullname', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<!-- phone -->
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.phone') !!}:</label>
|
||||
<input type="number" name="phone" id="" class="form-control">
|
||||
{!! $errors->first('phone', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="form-group">
|
||||
<div class="col-md-2">
|
||||
<label>Ticket Notice:</label>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<input type="checkbox" name="notice" id=""> Send alert to User
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
<!-- ticket options -->
|
||||
<div class="form-group">
|
||||
<h4><b>{!! Lang::get('lang.ticket_option') !!}<b></h4>
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.help_topic') !!}:</label>
|
||||
<!-- helptopic -->
|
||||
<select class="form-control" name="helptopic">
|
||||
<!-- <option>--select--</option> -->
|
||||
<?php $helptopic = App\Model\helpdesk\Manage\Help_topic::all();?>
|
||||
@foreach($helptopic as $topic)
|
||||
<option value="{!! $topic->id !!}">{!! $topic->topic !!}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
{!! $errors->first('helptopic', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<!-- sla plan -->
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.sla_plan') !!}:</label>
|
||||
<select class="form-control" name="sla">
|
||||
<!-- <option>--select--</option> -->
|
||||
<?php $sla_plan = App\Model\helpdesk\Manage\Sla_plan::all();?>
|
||||
@foreach($sla_plan as $sla)
|
||||
<option value="{!! $sla->id !!}">{!! $sla->grace_period !!}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
{!! $errors->first('sla', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<!-- due date -->
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.due_date') !!}:</label>
|
||||
<input type="text" class="form-control" name="duedate" id="datemask">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<!-- assign to -->
|
||||
<div class="form-group">
|
||||
<label>{!! Lang::get('lang.assign_to') !!}:</label>
|
||||
<select class="form-control" name="assignto">
|
||||
<!-- <option>--select--</option> -->
|
||||
<?php $agents = App\User::where('role','!=','user')->get();?>
|
||||
<option value="">--- select ---</option>
|
||||
@foreach($agents as $agent)
|
||||
<option value="{!! $agent->id !!}">
|
||||
{!! $agent->first_name !!} {!! $agent->last_name !!}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ticket details -->
|
||||
<div class="form-group">
|
||||
<h4><b>{!! Lang::get('lang.ticket_detail') !!}<b></h4>
|
||||
<!-- subject -->
|
||||
<div class="form-group">
|
||||
<div class="row">
|
||||
<div class="col-md-1">
|
||||
<label>{!! Lang::get('lang.subject') !!}:</label>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<input type="text" name="subject" class="form-control">
|
||||
{!! $errors->first('subject', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<!-- details -->
|
||||
<div class="row">
|
||||
<div class="col-md-1">
|
||||
<label>{!! Lang::get('lang.detail') !!}:</label>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<textarea class="form-control" id="body" name="body" style="width:100%; height:100px;"></textarea>
|
||||
{!! $errors->first('body', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<!-- priority -->
|
||||
<div class="row">
|
||||
<div class="col-md-1">
|
||||
<label>{!! Lang::get('lang.priority') !!}:</label>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<select class="form-control" name="priority">
|
||||
<!-- <option>--select--</option> -->
|
||||
<?php $Priority = App\Model\helpdesk\Ticket\Ticket_Priority::all();?>
|
||||
@foreach($Priority as $priority)
|
||||
<option value="{{$priority->priority_id}}">{!! $priority->priority_desc !!}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
{!! $errors->first('priority', '<spam class="help-block text-red">:message</spam>') !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-footer">
|
||||
<div class="form-group">
|
||||
<div class="row">
|
||||
<div class="col-md-1">
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<input type="submit" value="{!! Lang::get('lang.create_ticket') !!}" class="btn btn-primary">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- /. box -->
|
||||
{!! Form::close() !!}
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$('#datemask').datepicker({changeMonth: true, changeYear: true}).mask('99/99/9999');
|
||||
});
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,221 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('open')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 0)->where('assigned_to', '=', 0)->where('dept_id','=',$dept->id)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 0)->where('assigned_to', '=', 0)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">{!! Lang::get('lang.open') !!} </h3> <small id="title_refresh">{!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
<div class="box-tools pull-right">
|
||||
<div class="has-feedback">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i>
|
||||
<b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i>
|
||||
<b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
|
||||
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> <div id="count_refresh">{!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th>
|
||||
</th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
@foreach ($tickets as $ticket)
|
||||
<?php
|
||||
|
||||
// // title
|
||||
$ticket_reply = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->where('is_internal', '=', 0)->max('id');
|
||||
|
||||
$ticket_reply1 = App\Model\helpdesk\Ticket\Ticket_Thread::where('id','=',$ticket_reply)->first();
|
||||
|
||||
$last_replier = App\User::where('id','=', $ticket_reply1->user_id)->first();
|
||||
|
||||
if($last_replier->role == 'agent') {
|
||||
|
||||
} else {
|
||||
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
|
||||
if($title == null){
|
||||
|
||||
} else {
|
||||
?>
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php } ?> >
|
||||
<td ><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
<?php } } ?>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/open'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('open #refresh');
|
||||
$('#title_refresh').load('open #title_refresh');
|
||||
$('#count_refresh').load('open #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,201 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('overdue')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('dept_id','=',$dept->id)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">Overdue </h3> <small>{!! $tickets->total() !!} tickets</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i>
|
||||
<b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i>
|
||||
<b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> {!! $tickets->count().'-'.$tickets->total(); !!}</h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="Delete">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="Close">
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th></th>
|
||||
<th>Subject</th>
|
||||
<th>Ticket ID</th>
|
||||
<th>Priority</th>
|
||||
<th>From</th>
|
||||
<th>Last Replier</th>
|
||||
<th>Assigned To</th>
|
||||
<th>Last Activity</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
@foreach ($tickets as $ticket )
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php }
|
||||
|
||||
|
||||
$sla = $ticket->sla;
|
||||
$SlaPlan = App\Model\helpdesk\Manage\Sla_plan::where('id', '=', $sla)->first();
|
||||
|
||||
$time = $ticket->created_at;
|
||||
$time = date_create($time);
|
||||
date_add($time, date_interval_create_from_date_string($SlaPlan->grace_period));
|
||||
echo date_format($time, 'd/m/Y H:i:s');
|
||||
|
||||
?> >
|
||||
<td><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/ticket/overdue'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('open #refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,211 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<!-- <link href="{{asset("downloads/bootstrap.min.css")}}" rel="stylesheet" type="text/css" /> -->
|
||||
<link href="{{asset("lb-faveo/dist/css/AdminLTE.min.css")}}" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h2>
|
||||
<div class="logo"><b>Faveo</b>HELPDESK</div><hr>
|
||||
</h2>
|
||||
|
||||
<h4>{{$thread->title}}</h4><br/>
|
||||
|
||||
<?php $ticket_source = App\Model\helpdesk\Ticket\Ticket_source::where('id','=',$tickets->source)->first();
|
||||
$ticket_source = $ticket_source->value;
|
||||
|
||||
|
||||
|
||||
$user = App\User::where('id', '=', $tickets->user_id)->first(); ?>
|
||||
<?php $response = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $tickets->id)->get(); ?>
|
||||
@foreach($response as $last)
|
||||
<?php $ResponseDate = $last->created_at; ?>
|
||||
@endforeach
|
||||
|
||||
<?php $status = App\Model\helpdesk\Ticket\Ticket_Status::where('id', '=', $tickets->status)->first(); ?>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $tickets->priority_id)->first(); ?>
|
||||
<?php $help_topic = App\Model\helpdesk\Manage\Help_topic::where('id', '=', $tickets->help_topic_id)->first(); ?>
|
||||
<?php $help_topic = App\Model\helpdesk\Manage\Help_topic::where('id', '=', $tickets->help_topic_id)->first(); ?>
|
||||
<?php $dept = App\Model\helpdesk\Agent\Department::where('id','=',$help_topic->department)->first(); ?>
|
||||
<table class="table">
|
||||
<tr><th></th><th></th></tr>
|
||||
<tr><td><b>Status:</b></td> <td>{{$status->state}}</td></tr>
|
||||
<tr><td><b>Priority:</b></td> <td>{{$priority->priority}}</td></tr>
|
||||
<tr><td><b>Department:</b></td> <td>{{$dept->name}}</td></tr>
|
||||
<tr><td><b>Email:</b></td> <td>{{$user->email}}</td></tr>
|
||||
<tr><td><b>Phone:</b></td> <td>{{$user->mobile}}</td></tr>
|
||||
<tr><td><b>Source:</b></td> <td>{{$ticket_source}}</td></tr>
|
||||
<tr><td><b>Help Topic:</b></td> <td>{{$help_topic->topic}}</td></tr>
|
||||
</table>
|
||||
|
||||
<?php $conversations = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $tickets->id)->get(); ?>
|
||||
@foreach($conversations as $conversation)
|
||||
<br/><hr>
|
||||
<span class="time-label">
|
||||
<?php
|
||||
$role = App\User::where('id','=',$conversation->user_id)->first();
|
||||
?>
|
||||
<?php if($conversation->is_internal) { ?>
|
||||
<i class="fa fa-tag bg-purple" title="Posted by System"></i>
|
||||
<?php }else{ if ($role->role == 'agent' || $role->role == 'admin') { ?>
|
||||
<i class="fa fa-mail-reply-all bg-yellow" title="Posted by Support Team"></i>
|
||||
<?php } elseif ($role->role == 'user') { ?>
|
||||
<i class="fa fa-user bg-aqua" title="Posted by Customer"></i>
|
||||
<?php } else { ?>
|
||||
<i class="fa fa-mail-reply-all bg-purple" title="Posted by System"></i>
|
||||
<?php } }
|
||||
$attachment = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->first();
|
||||
if($attachment == null ) {
|
||||
$body = $conversation->body;
|
||||
}
|
||||
else {
|
||||
// dd($attachment->file);
|
||||
// print $attachment->file;
|
||||
// header("Content-type: image/jpeg");
|
||||
// echo "<img src='".base64_decode($attachment->file)."' style='width:128px;height:128px'/> ";
|
||||
$body = $conversation->body;
|
||||
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->orderBy('id', 'DESC')->get();
|
||||
|
||||
// $i = 0;
|
||||
|
||||
foreach($attachments as $attachment)
|
||||
{
|
||||
// $i++;
|
||||
if($attachment->type == 'pdf')
|
||||
{
|
||||
// echo "hello";
|
||||
}elseif($attachment->type == 'docx')
|
||||
{
|
||||
// echo "hello";
|
||||
}
|
||||
else
|
||||
{
|
||||
$image = @imagecreatefromstring($attachment->file);
|
||||
ob_start();
|
||||
imagejpeg($image, null, 80);
|
||||
$data = ob_get_contents();
|
||||
ob_end_clean();
|
||||
$var = '<img width="20px" src="data:image/jpg;base64,' . base64_encode($data) . '" />';
|
||||
// echo $var;
|
||||
// echo $attachment->name;
|
||||
// $body = explode($attachment->name, $body);
|
||||
$body = str_replace($attachment->name, "data:image/jpg;base64," . base64_encode($data), $body);
|
||||
|
||||
$string = $body;
|
||||
$start = "<head>";
|
||||
$end = "</head>";
|
||||
if(strpos($string,$start) == false || strpos($string,$start) == false)
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
$ini = strpos($string,$start);
|
||||
$ini += strlen($start);
|
||||
$len = strpos($string,$end,$ini) - $ini;
|
||||
$parsed = substr($string,$ini,$len);
|
||||
$body2 = $parsed;
|
||||
$body = str_replace($body2 ," " ,$body);
|
||||
}
|
||||
}
|
||||
}
|
||||
// echo $body;
|
||||
|
||||
// $body = explode($attachment->file, $body);
|
||||
// $body = $body[0];
|
||||
}
|
||||
?>
|
||||
|
||||
<?php
|
||||
$string = $body;
|
||||
$start = "<head>";
|
||||
$end = "</head>";
|
||||
if(strpos($string,$start) == false || strpos($string,$start) == false)
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
$ini = strpos($string,$start);
|
||||
$ini += strlen($start);
|
||||
$len = strpos($string,$end,$ini) - $ini;
|
||||
$parsed = substr($string,$ini,$len);
|
||||
$body2 = $parsed;
|
||||
$body = str_replace($body2 ," " ,$body);
|
||||
}
|
||||
?>
|
||||
<div class="timeline-item">
|
||||
<span id="date" class="time" style="color:#fff;"><i class="fa fa-clock-o"> </i> {{date_format($conversation->created_at, 'd/m/Y H:i:s')}}</span>
|
||||
|
||||
<h3 class="timeline-header" style="background-color:<?php
|
||||
if($conversation->is_internal)
|
||||
{
|
||||
$color = '#046380';
|
||||
echo $color;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($role->role == 'agent' || $role->role == 'admin')
|
||||
{
|
||||
$color = '#FFD34E';
|
||||
echo $color;
|
||||
} elseif ($role->role == 'user')
|
||||
{
|
||||
$color = '#00A388';
|
||||
echo $color;
|
||||
} else
|
||||
{
|
||||
$color = '#046380';
|
||||
echo $color;
|
||||
}
|
||||
}
|
||||
?>;
|
||||
">
|
||||
<a href="#" style="color:#fff;"><?php if($role->role == "user") {echo $role->user_name; } else { echo $role->first_name . " " . $role->last_name; } ?> </a><strong>Date:</strong> {!! $thread->created_at !!}<br/></h3>
|
||||
<div class="timeline-body" style="padding-left:30px;">
|
||||
{!! $body !!}
|
||||
</div>
|
||||
<div class="timeline-footer" >
|
||||
<?php
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$conversation->id)->get();
|
||||
$i = 0;
|
||||
foreach($attachments as $attachment) {
|
||||
if($attachment->poster == 'ATTACHMENT') {
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
if($i>0)
|
||||
{
|
||||
echo "<hr style='height:1px;color:#2D3244;background-color:#2D3244;''><h4 class='box-title'><b>".$i." </b> Attachments</h4>";
|
||||
}
|
||||
?>
|
||||
<ul class='mailbox-attachments clearfix'>
|
||||
<?php
|
||||
foreach($attachments as $attachment)
|
||||
{
|
||||
if($attachment->poster == 'ATTACHMENT')
|
||||
{
|
||||
if($attachment->type == 'jpg'||$attachment->type == 'JPG'||$attachment->type == 'jpeg'||$attachment->type == 'JPEG'||$attachment->type == 'png'||$attachment->type == 'PNG'||$attachment->type == 'gif'||$attachment->type == 'GIF')
|
||||
{
|
||||
$image = @imagecreatefromstring($attachment->file);
|
||||
ob_start();
|
||||
imagejpeg($image, null, 80);
|
||||
$data = ob_get_contents();
|
||||
ob_end_clean();
|
||||
$var = '<a href="'.URL::route('image', array('image_id' => $attachment->id)).'" target="_blank"><img style="max-width:200px;max-height:150px;" src="data:image/jpg;base64,' . base64_encode($data) . '"/></a>';
|
||||
echo '<li><span class="mailbox-attachment-icon has-img">'.$var.'</span></li>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$var = '<a href="'.URL::route('image', array('image_id' => $attachment->id)).'" target="_blank">'.$attachment->name.'</a>';
|
||||
echo '<li>'.$var.'</li>';
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,38 @@
|
||||
<script src="{{asset("lb-faveo/plugins/iCheck/icheck.min.js")}}" type="text/javascript"></script>
|
||||
<script src="js/jquery.maskedinput.min.js" type="text/javascript"></script>
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,191 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('trash')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 5)->where('dept_id','=',$dept->id)->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 5)->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-warning">
|
||||
<div class="box-header with-border">
|
||||
<h3 class="box-title">{!! Lang::get('lang.trash') !!} </h3> <small id="title_refresh">{!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i>
|
||||
<b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i>
|
||||
<b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> <div id="count_refresh">{!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-blue btn-sm" name="submit" value="{!! Lang::get('lang.open') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th>
|
||||
</th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
|
||||
@foreach ($tickets as $ticket )
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php }
|
||||
?> >
|
||||
<td><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/trash'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('trash #refresh');
|
||||
$('#title_refresh').load('trash #title_refresh');
|
||||
$('#count_refresh').load('trash #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
@stop
|
||||
@@ -0,0 +1,198 @@
|
||||
@extends('themes.default1.agent.layout.agent')
|
||||
|
||||
@section('Tickets')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('ticket-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('unassigned')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
<?php
|
||||
if(Auth::user()->role == 'agent') {
|
||||
$dept = App\Model\helpdesk\Agent\Department::where('name','=',Auth::user()->primary_dpt)->first();
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('assigned_to', '=', 0)->where('dept_id','=',$dept->id)->where('status','1')->orderBy('id', 'DESC')->paginate(20);
|
||||
} else {
|
||||
$tickets = App\Model\helpdesk\Ticket\Tickets::where('assigned_to', '=', 0)->where('status','1')->orderBy('id', 'DESC')->paginate(20);
|
||||
}
|
||||
?>
|
||||
<!-- Main content -->
|
||||
<div class="box box-info">
|
||||
<div class="box-header with-border">
|
||||
<?php $counted = count(App\Model\helpdesk\Ticket\Tickets::where('assigned_to', '=', 0)->get());?>
|
||||
<h3 class="box-title">{!! Lang::get('lang.unassigned') !!} </h3> <small id="title_refresh"> {!! $tickets->total() !!} {!! Lang::get('lang.tickets') !!}</small>
|
||||
</div><!-- /.box-header -->
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success alert-dismissable">
|
||||
<i class="fa fa-check-circle"> </i>
|
||||
<b> Success </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('success')}}
|
||||
</div>
|
||||
@endif
|
||||
<!-- failure message -->
|
||||
@if(Session::has('fails'))
|
||||
<div class="alert alert-danger alert-dismissable">
|
||||
<i class="fa fa-ban"> </i>
|
||||
<b> Fail! </b>
|
||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||
{{Session::get('fails')}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="box-body no-padding ">
|
||||
|
||||
{!! Form::open(['route'=>'select_all','method'=>'post']) !!}
|
||||
|
||||
<div class="mailbox-controls">
|
||||
<h3 class="pull-right" style="margin-top:0;margin-bottom:0;"> <div id="count_refresh">{!! $tickets->count().'-'.$tickets->total(); !!}</div></h3>
|
||||
<!-- Check all button -->
|
||||
<a class="btn btn-default btn-sm checkbox-toggle"><i class="fa fa-square-o"></i></a>
|
||||
<a class="btn btn-default btn-sm" id="click"><i class="fa fa-refresh"></i></a>
|
||||
<input type="submit" class="btn btn-default text-orange btn-sm" name="submit" value="{!! Lang::get('lang.delete') !!}">
|
||||
<input type="submit" class="btn btn-default text-yellow btn-sm" name="submit" value="{!! Lang::get('lang.close') !!}">
|
||||
</div>
|
||||
<div class=" table-responsive mailbox-messages" id="refresh">
|
||||
<p style="display:none;text-align:center; position:fixed; margin-left:40%;margin-top:-70px;" id="show" class="text-red"><b>{!! Lang::get('lang.loading') !!}...</b></p>
|
||||
<!-- table -->
|
||||
<table class="table table-hover table-striped">
|
||||
<thead>
|
||||
<th>
|
||||
</th>
|
||||
<th>{!! Lang::get('lang.subject') !!}</th>
|
||||
<th>{!! Lang::get('lang.ticket_id') !!}</th>
|
||||
<th>{!! Lang::get('lang.priority') !!}</th>
|
||||
<th>{!! Lang::get('lang.from') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_replier') !!}</th>
|
||||
<th>{!! Lang::get('lang.assigned_to') !!}</th>
|
||||
<th>{!! Lang::get('lang.last_activity') !!}</th>
|
||||
</thead>
|
||||
<tbody id="hello">
|
||||
|
||||
|
||||
|
||||
@foreach ($tickets as $ticket )
|
||||
<tr <?php if ($ticket->seen_by == null) {?> style="color:green;" <?php }
|
||||
?> >
|
||||
<td><input type="checkbox" class="icheckbox_flat-blue" name="select_all[]" value="{{$ticket->id}}"/></td>
|
||||
<?php
|
||||
// collaborators
|
||||
$collaborators = App\Model\helpdesk\Ticket\Ticket_Collaborator::where('ticket_id','=',$ticket->id)->get();
|
||||
$collab = count($collaborators);
|
||||
// title
|
||||
$title = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->first();
|
||||
$string = strip_tags($title->title);
|
||||
// check atatchments
|
||||
$attachments = App\Model\helpdesk\Ticket\Ticket_attachments::where('thread_id','=',$title->id)->first();
|
||||
$attach = count($attachments);
|
||||
|
||||
if (strlen($string) > 40) {
|
||||
$stringCut = substr($string, 0, 40);
|
||||
$string = substr($stringCut, 0, strrpos($stringCut, ' ')).' ...';
|
||||
}
|
||||
$TicketData = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->max('id');
|
||||
$TicketDatarow = App\Model\helpdesk\Ticket\Ticket_Thread::where('id', '=', $TicketData)->first();
|
||||
$LastResponse = App\User::where('id', '=', $TicketDatarow->user_id)->first();
|
||||
if($LastResponse->role == "user") {
|
||||
$rep = "#F39C12";
|
||||
$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;
|
||||
}}
|
||||
$titles = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id', '=', $ticket->id)->get();
|
||||
$count = count($titles);
|
||||
foreach($titles as $title)
|
||||
{
|
||||
$title = $title;
|
||||
}
|
||||
$assigned_to = App\User::where('id','=',$ticket->assigned_to)->first();
|
||||
if($assigned_to == null)
|
||||
{
|
||||
$assigned = "Unassigned";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assigned = $assigned_to->first_name ." ". $assigned_to->last_name;
|
||||
}
|
||||
?>
|
||||
<td class="mailbox-name"><a class="text-red" href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">{{$string}} </a> ({!! $count!!}) <i class="fa fa-comment"></i>
|
||||
@if($collab > 0) <i class="fa fa-users"></i>@endif
|
||||
@if($attach > 0) <i class="fa fa-paperclip"></i>@endif</td>
|
||||
<td class="mailbox-Id"><a href="{!! route('ticket.thread',[$ticket->id]) !!}" title="{!! $title->title !!}">#{!! $ticket->ticket_number !!}</a></td>
|
||||
<?php $priority = App\Model\helpdesk\Ticket\Ticket_Priority::where('priority_id', '=', $ticket->priority_id)->first();?>
|
||||
<td class="mailbox-priority"><spam class="btn btn-{{$priority->priority_color}} btn-xs">{{$priority->priority_desc}}</spam></td>
|
||||
<?php $from = App\User::where('id','=',$ticket->user_id)->first(); ?>
|
||||
@if($from->role == "user")
|
||||
<td class="mailbox-from" >{!! $from->user_name !!}</td>
|
||||
@else
|
||||
<td class="mailbox-from" >{!! $from->first_name." ".$from->last_name !!}</td>
|
||||
@endif
|
||||
<td class="mailbox-last-reply" style="color:{!! $rep !!}">{!! $username !!}</td>
|
||||
<td>{!! $assigned !!}</td>
|
||||
<td class="mailbox-last-activity">{!! UTC::usertimezone($title->updated_at) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table><!-- /.table -->
|
||||
<div class="pull-right">
|
||||
<?php echo $tickets->setPath(url('/unassigned'))->render();?>
|
||||
</div>
|
||||
</div><!-- /.mail-box-messages -->
|
||||
{!! Form::close() !!}
|
||||
</div><!-- /.box-body -->
|
||||
</div><!-- /. box -->
|
||||
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
//Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function () {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("uncheck");
|
||||
$(".fa", this).removeClass("fa-check-square-o").addClass('fa-square-o');
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$(".mailbox-messages input[type='checkbox']").iCheck("check");
|
||||
$(".fa", this).removeClass("fa-square-o").addClass('fa-check-square-o');
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(function() {
|
||||
// Enable check and uncheck all functionality
|
||||
$(".checkbox-toggle").click(function() {
|
||||
var clicks = $(this).data('clicks');
|
||||
if (clicks) {
|
||||
//Uncheck all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("uncheck");
|
||||
} else {
|
||||
//Check all checkboxes
|
||||
$("input[type='checkbox']", ".mailbox-messages").iCheck("check");
|
||||
}
|
||||
$(this).data("clicks", !clicks);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$(document).ready(function() { /// Wait till page is loaded
|
||||
$('#click').click(function() {
|
||||
$('#refresh').load('unassigned #refresh');
|
||||
$('#title_refresh').load('unassigned #title_refresh');
|
||||
$('#count_refresh').load('unassigned #count_refresh');
|
||||
$("#show").show();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
@stop
|
||||
Reference in New Issue
Block a user