update v1.0.7.1
This commit is contained in:
@@ -125,7 +125,7 @@ class TemplateController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function listdirectories()
|
public function listdirectories()
|
||||||
{
|
{
|
||||||
$path = '../resources/views/emails/';
|
$path = \Config::get('view.paths')[0].'/emails/';
|
||||||
$directories = scandir($path);
|
$directories = scandir($path);
|
||||||
$directory = str_replace('/', '-', $path);
|
$directory = str_replace('/', '-', $path);
|
||||||
|
|
||||||
|
22
public/lb-faveo/css/notification-style.css
vendored
Normal file
22
public/lb-faveo/css/notification-style.css
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
.textcontent{
|
||||||
|
display: inline-block;
|
||||||
|
padding-left: 5px;
|
||||||
|
font-weight: 600;
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: 'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;
|
||||||
|
}
|
||||||
|
.task{
|
||||||
|
opacity: 0.4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.task h6{
|
||||||
|
text-decoration: line-through;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marginzero{
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.font700{
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
BIN
public/lb-faveo/media/images/check_radio_sheet.png
Normal file
BIN
public/lb-faveo/media/images/check_radio_sheet.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.2 KiB |
@@ -57,6 +57,8 @@ return [
|
|||||||
'terms' => 'terms',
|
'terms' => 'terms',
|
||||||
'register' => 'Register',
|
'register' => 'Register',
|
||||||
'i_already_have_a_membership' => 'I already have a membership',
|
'i_already_have_a_membership' => 'I already have a membership',
|
||||||
|
'see-profile1' => 'Click here to see ',
|
||||||
|
'see-profile2' => 's profile',
|
||||||
/*
|
/*
|
||||||
|--------------------------------------
|
|--------------------------------------
|
||||||
| Reset Password Page
|
| Reset Password Page
|
||||||
|
@@ -6,39 +6,37 @@ class="active"
|
|||||||
@stop
|
@stop
|
||||||
@section('HeadInclude')
|
@section('HeadInclude')
|
||||||
<style>
|
<style>
|
||||||
h1 {
|
h1 {
|
||||||
color: #f2f2f2;
|
color: #f2f2f2;
|
||||||
font-family: Arial;
|
font-family: Arial;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin: 0 0 20px;
|
margin: 0 0 20px;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
input[type="checkbox"]:not(old) {
|
input[type="checkbox"]:not(old) {
|
||||||
width : 28px;
|
width : 28px;
|
||||||
margin : 0;
|
margin : 0;
|
||||||
padding : 0;
|
padding : 0;
|
||||||
opacity : 0;
|
opacity : 0;
|
||||||
}
|
}
|
||||||
|
input[type="checkbox"]:not(old) + label {
|
||||||
input[type="checkbox"]:not(old) + label {
|
|
||||||
color: #f2f2f2;
|
color: #f2f2f2;
|
||||||
font-family: Arial,sans-serif;
|
font-family: Arial,sans-serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
input[type="checkbox"]:not(old) + label span {
|
input[type="checkbox"]:not(old) + label span {
|
||||||
background: rgba(0, 0, 0, 0) url("lb-faveo/media/images/check_radio_sheet.png") no-repeat scroll left top;
|
background: rgba(0, 0, 0, 0) url("lb-faveo/media/images/check_radio_sheet.png") no-repeat scroll left top;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 19px;
|
height: 19px;
|
||||||
margin-left : -28px;
|
margin-left : -28px;
|
||||||
|
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
width: 19px;
|
width: 19px;
|
||||||
}
|
}
|
||||||
input[type="checkbox"]:checked + label span {
|
input[type="checkbox"]:checked + label span {
|
||||||
background: rgba(0, 0, 0, 0) url("lb-faveo/media/images/check_radio_sheet.png") no-repeat scroll -19px top;
|
background: rgba(0, 0, 0, 0) url("lb-faveo/media/images/check_radio_sheet.png") no-repeat scroll -19px top;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@stop
|
@stop
|
||||||
@section('user-bar')
|
@section('user-bar')
|
||||||
@@ -52,7 +50,6 @@ class="active"
|
|||||||
<!-- /breadcrumbs -->
|
<!-- /breadcrumbs -->
|
||||||
<!-- content -->
|
<!-- content -->
|
||||||
@section('content')
|
@section('content')
|
||||||
<section class="content">
|
|
||||||
@if(Session::has('success'))
|
@if(Session::has('success'))
|
||||||
<div class="alert alert-success alert-dismissable">
|
<div class="alert alert-success alert-dismissable">
|
||||||
<i class="fa fa-ban"></i>
|
<i class="fa fa-ban"></i>
|
||||||
@@ -71,13 +68,10 @@ class="active"
|
|||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
<div id="alert21" class="alert alert-success alert-dismissable" style="display:none;">
|
<div id="alert21" class="alert alert-success alert-dismissable" style="display:none;">
|
||||||
<button id="dismiss11" type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
<button id="dismiss11" type="button" class="close" data-dismiss="alert" aria-hidden="true"><EFBFBD></button>
|
||||||
<h4><i class="icon fa fa-check"></i>Alert!</h4>
|
<h4><i class="icon fa fa-check"></i>Alert!</h4>
|
||||||
<div id="message-success2"></div>
|
<div id="message-success2"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row" >
|
|
||||||
<div class="col-lg-10 col-lg-offset-1 col-md-10 col-md-offset-1">
|
|
||||||
|
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="box-header">
|
<div class="box-header">
|
||||||
<h3 class="box-title">Notification Page</h3>
|
<h3 class="box-title">Notification Page</h3>
|
||||||
@@ -96,9 +90,7 @@ class="active"
|
|||||||
<!--
|
<!--
|
||||||
<div class="box-header">
|
<div class="box-header">
|
||||||
<i class="ion ion-clipboard"></i>
|
<i class="ion ion-clipboard"></i>
|
||||||
|
|
||||||
<h3 class="box-title">Task</h3>
|
<h3 class="box-title">Task</h3>
|
||||||
|
|
||||||
<div class="box-tools pull-right">
|
<div class="box-tools pull-right">
|
||||||
<ul class="pagination pagination-sm inline">
|
<ul class="pagination pagination-sm inline">
|
||||||
<li><a href="#">«</a>
|
<li><a href="#">«</a>
|
||||||
@@ -114,7 +106,7 @@ class="active"
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
-->
|
-->
|
||||||
<!-- /.box-header -->
|
<!-- /.box-header -->
|
||||||
<div class="box-body">
|
<div class="box-body">
|
||||||
<ul class="todo-list">
|
<ul class="todo-list">
|
||||||
@@ -128,8 +120,8 @@ class="active"
|
|||||||
<input type="checkbox" value="" name="cc" class="noti_User clickfun" id="{{$notification -> notification_id}}">
|
<input type="checkbox" value="" name="cc" class="noti_User clickfun" id="{{$notification -> notification_id}}">
|
||||||
<label for='cl' data-toggle="tooltip" data-placement="top" title="Mark Read"><span></span>
|
<label for='cl' data-toggle="tooltip" data-placement="top" title="Mark Read"><span></span>
|
||||||
<!-- todo text -->
|
<!-- todo text -->
|
||||||
<h6 class="textcontent marginzero"><a href="{!! route('user.show', $notification->notification_id) !!}" id="{{$notification -> notification_id}}" class='noti_User'>{!! $notification->message !!}</a><small class="label label-danger"><i class="fa fa-clock-o"></i> {{ $notification -> created_at }}</small></h6>
|
<h6 class="textcontent marginzero"><a href="{!! route('user.show', $notification->notification_id) !!}" id="{{$notification -> notification_id}}" class='noti_User'>{!! $notification->message !!}</a></h6>
|
||||||
</label> <!-- Emphasis label -->
|
<small class="label label-danger"><i class="fa fa-clock-o"></i> {{ $notification -> created_at }}</small></label> <!-- Emphasis label -->
|
||||||
|
|
||||||
<!-- General tools such as edit or delete-->
|
<!-- General tools such as edit or delete-->
|
||||||
<div class="tools">
|
<div class="tools">
|
||||||
@@ -142,10 +134,10 @@ class="active"
|
|||||||
|
|
||||||
<input type="checkbox" value="" name="cc" data-toggle="tooltip" data-placement="top" title="Mark Read" class="noti_User clickfun" id="{{$notification -> notification_id}}">
|
<input type="checkbox" value="" name="cc" data-toggle="tooltip" data-placement="top" title="Mark Read" class="noti_User clickfun" id="{{$notification -> notification_id}}">
|
||||||
<label for='cl'><span></span>
|
<label for='cl'><span></span>
|
||||||
<h6 class="textcontent marginzero"><a href="{!! route('ticket.thread', $notification->notification_id) !!}" id='{{ $notification->notification_id }}' class='noti_User'>{!! $notification->message !!}</a><small class="label label-info"><i class="fa fa-clock-o"></i> {{ $notification -> created_at }}</small></h6>
|
<h6 class="textcontent marginzero"><a href="{!! route('ticket.thread', $notification->model_id) !!}" id='{{ $notification->notification_id }}' class='noti_User'>{!! $notification->message !!}</a></h6>
|
||||||
|
<small class="label label-info"><i class="fa fa-clock-o"></i> {{ $notification -> created_at }}</small>
|
||||||
</label><div class="tools">
|
</label><div class="tools">
|
||||||
<a href="{!! route('ticket.thread', $notification->notification_id) !!}" id='{{ $notification->notification_id }}' data-toggle="tooltip" data-placement="top" title="View" class='noti_User'><i class="fa fa-eye"></i></a>
|
<a href="{!! route('ticket.thread', $notification->model_id) !!}" id='{{ $notification->notification_id }}' data-toggle="tooltip" data-placement="top" title="View" class='noti_User'><i class="fa fa-eye"></i></a>
|
||||||
<a href="#" id='{{ $notification->notification_id }}' data-toggle="tooltip" data-placement="top" title="Delete" class='notification-delete clickfun'><i class="fa fa-trash-o"></i></a>
|
<a href="#" id='{{ $notification->notification_id }}' data-toggle="tooltip" data-placement="top" title="Delete" class='notification-delete clickfun'><i class="fa fa-trash-o"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@@ -155,8 +147,8 @@ class="active"
|
|||||||
@else
|
@else
|
||||||
<li>
|
<li>
|
||||||
|
|
||||||
<h6 class="textcontent marginzero">No Notifications Available!<small class="label label-warning" ><i class="fa fa-bell-slash-o"></i></small></h6>
|
<h6 class="textcontent marginzero">No Notifications Available!</h6>
|
||||||
|
<small class="label label-warning" ><i class="fa fa-bell-slash-o"></i></small>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
@endif
|
@endif
|
||||||
@@ -174,21 +166,18 @@ class="active"
|
|||||||
<!-- /.box-body -->
|
<!-- /.box-body -->
|
||||||
</div>
|
</div>
|
||||||
<!-- /.box -->
|
<!-- /.box -->
|
||||||
</div>
|
|
||||||
<!-- /.row -->
|
<script>
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$(".clickfun").click(function() {
|
$(".clickfun").click(function() {
|
||||||
$(this).closest("li").toggleClass("task");
|
$(this).closest("li").toggleClass("task");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function () {
|
$(document).ready(function() {
|
||||||
|
|
||||||
$('.notification-delete').click(function () {
|
$('.notification-delete').click(function() {
|
||||||
var id = this.id;
|
var id = this.id;
|
||||||
var dataString = 'id=' + id;
|
var dataString = 'id=' + id;
|
||||||
$.ajax
|
$.ajax
|
||||||
@@ -197,7 +186,7 @@ class="active"
|
|||||||
url: "{{url('notification-delete')}}" + "/" + id,
|
url: "{{url('notification-delete')}}" + "/" + id,
|
||||||
data: dataString,
|
data: dataString,
|
||||||
cache: false,
|
cache: false,
|
||||||
success: function (response)
|
success: function(response)
|
||||||
{
|
{
|
||||||
if (response == 1)
|
if (response == 1)
|
||||||
{
|
{
|
||||||
@@ -209,7 +198,6 @@ class="active"
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
@stop
|
@stop
|
@@ -110,7 +110,7 @@ $dept = App\Model\helpdesk\Agent\Department::where('name','=',$id)->first();
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -118,7 +118,7 @@ $dept = App\Model\helpdesk\Agent\Department::where('name','=',$id)->first();
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -111,7 +111,7 @@ if (Auth::user()->role == 'agent') {
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -119,7 +119,7 @@ if (Auth::user()->role == 'agent') {
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -109,7 +109,7 @@ $dept = App\Model\helpdesk\Agent\Department::where('name','=',$id)->first();
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -117,7 +117,7 @@ $dept = App\Model\helpdesk\Agent\Department::where('name','=',$id)->first();
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -112,7 +112,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -120,7 +120,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -104,7 +104,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -112,7 +112,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -104,7 +104,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -112,7 +112,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -103,7 +103,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -111,7 +111,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -104,7 +104,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -112,7 +112,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -109,7 +109,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -117,7 +117,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -125,7 +125,7 @@ if ($i == 0) {
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -133,7 +133,7 @@ if ($i == 0) {
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -107,7 +107,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -115,7 +115,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -109,7 +109,7 @@ class="active"
|
|||||||
if(str.search("#000") == -1) {
|
if(str.search("#000") == -1) {
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #F3F3F3"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "font-weight":"600", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
$("td", nRow).css({"background-color":"#F3F3F3", "font-weight":"600", "border-bottom":"solid 0.5px #ddd","border-right":"solid 0.5px #F3F3F3"});
|
||||||
@@ -117,7 +117,7 @@ class="active"
|
|||||||
} else {
|
} else {
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
$("td", nRow).mouseenter(function(){
|
$("td", nRow).mouseenter(function(){
|
||||||
$("td", nRow).css({"background-color":"#DEDFE0", "border":"none"});
|
$("td", nRow).css({"background-color":"#DEDFE0", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px #DEDFE0"});
|
||||||
});
|
});
|
||||||
$("td", nRow).mouseleave(function(){
|
$("td", nRow).mouseleave(function(){
|
||||||
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
$("td", nRow).css({"background-color":"white", "border-bottom":"solid 0.5px #ddd", "border-right":"solid 0.5px white"});
|
||||||
|
@@ -30,6 +30,7 @@
|
|||||||
<link type="text/css" href="{{asset("lb-faveo/plugins/datatables/dataTables.bootstrap.css")}}" rel="stylesheet">
|
<link type="text/css" href="{{asset("lb-faveo/plugins/datatables/dataTables.bootstrap.css")}}" rel="stylesheet">
|
||||||
<link href="{{asset("lb-faveo/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css")}}" rel="stylesheet" type="text/css" />
|
<link href="{{asset("lb-faveo/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css")}}" rel="stylesheet" type="text/css" />
|
||||||
<link rel="stylesheet" type="text/css" href="{{asset("lb-faveo/css/faveo-css.css")}}">
|
<link rel="stylesheet" type="text/css" href="{{asset("lb-faveo/css/faveo-css.css")}}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{asset("lb-faveo/css/notification-style.css")}}">
|
||||||
|
|
||||||
<link href="{{asset("lb-faveo/css/jquery.rating.css")}}" rel="stylesheet" type="text/css" />
|
<link href="{{asset("lb-faveo/css/jquery.rating.css")}}" rel="stylesheet" type="text/css" />
|
||||||
|
|
||||||
@@ -205,7 +206,7 @@ $tickets = App\Model\helpdesk\Ticket\Tickets::where('status','1')->where('dept_i
|
|||||||
$deleted = App\Model\helpdesk\Ticket\Tickets::where('status', '5')->where('dept_id','=',Auth::user())->get();
|
$deleted = App\Model\helpdesk\Ticket\Tickets::where('status', '5')->where('dept_id','=',Auth::user())->get();
|
||||||
}
|
}
|
||||||
if (Auth::user()->role == 'agent') {
|
if (Auth::user()->role == 'agent') {
|
||||||
$dept = Department::where('id', '=', Auth::user()->primary_dpt)->first();
|
$dept = App\Model\helpdesk\Agent\Department::where('id', '=', Auth::user()->primary_dpt)->first();
|
||||||
$overdues = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 0)->where('dept_id', '=', $dept->id)->orderBy('id', 'DESC')->get();
|
$overdues = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 0)->where('dept_id', '=', $dept->id)->orderBy('id', 'DESC')->get();
|
||||||
} else {
|
} else {
|
||||||
$overdues = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 0)->orderBy('id', 'DESC')->get();
|
$overdues = App\Model\helpdesk\Ticket\Tickets::where('status', '=', 1)->where('isanswered', '=', 0)->orderBy('id', 'DESC')->get();
|
||||||
@@ -400,7 +401,34 @@ $group = App\Model\helpdesk\Agent\Groups::where('id', '=', $agent_group)->where(
|
|||||||
|
|
||||||
<script src="{{asset("lb-faveo/plugins/select2/select2.full.min.js")}}" ></script>
|
<script src="{{asset("lb-faveo/plugins/select2/select2.full.min.js")}}" ></script>
|
||||||
<script src="{{asset("lb-faveo/plugins/moment/moment.js")}}" ></script>
|
<script src="{{asset("lb-faveo/plugins/moment/moment.js")}}" ></script>
|
||||||
|
<script>
|
||||||
|
function myFunction() {
|
||||||
|
|
||||||
|
document.getElementById("count").innerHTML = "0";
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function () {
|
||||||
|
|
||||||
|
$('.noti_User').click(function () {
|
||||||
|
var id = this.id;
|
||||||
|
var dataString = 'id=' + id;
|
||||||
|
$.ajax
|
||||||
|
({
|
||||||
|
type: "POST",
|
||||||
|
url: "{{url('mark-read')}}" + "/" + id,
|
||||||
|
data: dataString,
|
||||||
|
cache: false,
|
||||||
|
success: function (html)
|
||||||
|
{
|
||||||
|
//$(".city").html(html);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
<script>
|
<script>
|
||||||
$(function() {
|
$(function() {
|
||||||
// Enable iCheck plugin for checkboxes
|
// Enable iCheck plugin for checkboxes
|
||||||
|
62
vendor/php-imap/php-imap/src/PhpImap/Mailbox.php
vendored
62
vendor/php-imap/php-imap/src/PhpImap/Mailbox.php
vendored
@@ -1,13 +1,10 @@
|
|||||||
<?php namespace PhpImap;
|
<?php namespace PhpImap;
|
||||||
|
|
||||||
use stdClass;
|
use stdClass;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see https://github.com/barbushin/php-imap
|
* @see https://github.com/barbushin/php-imap
|
||||||
* @author Barbushin Sergey http://linkedin.com/in/barbushin
|
* @author Barbushin Sergey http://linkedin.com/in/barbushin
|
||||||
*/
|
*/
|
||||||
class Mailbox {
|
class Mailbox {
|
||||||
|
|
||||||
protected $imapPath;
|
protected $imapPath;
|
||||||
protected $imapLogin;
|
protected $imapLogin;
|
||||||
protected $imapPassword;
|
protected $imapPassword;
|
||||||
@@ -16,7 +13,6 @@ class Mailbox {
|
|||||||
protected $imapParams = array();
|
protected $imapParams = array();
|
||||||
protected $serverEncoding;
|
protected $serverEncoding;
|
||||||
protected $attachmentsDir;
|
protected $attachmentsDir;
|
||||||
|
|
||||||
public function __construct($imapPath, $login, $password, $attachmentsDir = null, $serverEncoding = 'UTF-8') {
|
public function __construct($imapPath, $login, $password, $attachmentsDir = null, $serverEncoding = 'UTF-8') {
|
||||||
$this->imapPath = $imapPath;
|
$this->imapPath = $imapPath;
|
||||||
$this->imapLogin = $login;
|
$this->imapLogin = $login;
|
||||||
@@ -29,7 +25,6 @@ class Mailbox {
|
|||||||
$this->attachmentsDir = rtrim(realpath($attachmentsDir), '\\/');
|
$this->attachmentsDir = rtrim(realpath($attachmentsDir), '\\/');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set custom connection arguments of imap_open method. See http://php.net/imap_open
|
* Set custom connection arguments of imap_open method. See http://php.net/imap_open
|
||||||
* @param int $options
|
* @param int $options
|
||||||
@@ -41,7 +36,6 @@ class Mailbox {
|
|||||||
$this->imapRetriesNum = $retriesNum;
|
$this->imapRetriesNum = $retriesNum;
|
||||||
$this->imapParams = $params;
|
$this->imapParams = $params;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get IMAP mailbox connection stream
|
* Get IMAP mailbox connection stream
|
||||||
* @param bool $forceConnection Initialize connection if it's not initialized
|
* @param bool $forceConnection Initialize connection if it's not initialized
|
||||||
@@ -60,7 +54,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $imapStream;
|
return $imapStream;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function initImapStream() {
|
protected function initImapStream() {
|
||||||
$imapStream = @imap_open($this->imapPath, $this->imapLogin, $this->imapPassword, $this->imapOptions, $this->imapRetriesNum, $this->imapParams);
|
$imapStream = @imap_open($this->imapPath, $this->imapLogin, $this->imapPassword, $this->imapOptions, $this->imapRetriesNum, $this->imapParams);
|
||||||
if(!$imapStream) {
|
if(!$imapStream) {
|
||||||
@@ -68,14 +61,12 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $imapStream;
|
return $imapStream;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function disconnect() {
|
protected function disconnect() {
|
||||||
$imapStream = $this->getImapStream(false);
|
$imapStream = $this->getImapStream(false);
|
||||||
if($imapStream && is_resource($imapStream)) {
|
if($imapStream && is_resource($imapStream)) {
|
||||||
imap_close($imapStream, CL_EXPUNGE);
|
imap_close($imapStream, CL_EXPUNGE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get information about the current mailbox.
|
* Get information about the current mailbox.
|
||||||
*
|
*
|
||||||
@@ -91,17 +82,14 @@ class Mailbox {
|
|||||||
public function checkMailbox() {
|
public function checkMailbox() {
|
||||||
return imap_check($this->getImapStream());
|
return imap_check($this->getImapStream());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new mailbox specified by mailbox.
|
* Creates a new mailbox specified by mailbox.
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function createMailbox() {
|
public function createMailbox() {
|
||||||
return imap_createmailbox($this->getImapStream(), imap_utf7_encode($this->imapPath));
|
return imap_createmailbox($this->getImapStream(), imap_utf7_encode($this->imapPath));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets status information about the given mailbox.
|
* Gets status information about the given mailbox.
|
||||||
*
|
*
|
||||||
@@ -110,12 +98,9 @@ class Mailbox {
|
|||||||
*
|
*
|
||||||
* @return stdClass if the box doesn't exist
|
* @return stdClass if the box doesn't exist
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function statusMailbox() {
|
public function statusMailbox() {
|
||||||
return imap_status($this->getImapStream(), $this->imapPath, SA_ALL);
|
return imap_status($this->getImapStream(), $this->imapPath, SA_ALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets listing the folders
|
* Gets listing the folders
|
||||||
*
|
*
|
||||||
@@ -124,7 +109,6 @@ class Mailbox {
|
|||||||
*
|
*
|
||||||
* @return array listing the folders
|
* @return array listing the folders
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function getListingFolders() {
|
public function getListingFolders() {
|
||||||
$folders = imap_list($this->getImapStream(), $this->imapPath, "*");
|
$folders = imap_list($this->getImapStream(), $this->imapPath, "*");
|
||||||
foreach ($folders as $key => $folder)
|
foreach ($folders as $key => $folder)
|
||||||
@@ -134,8 +118,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $folders;
|
return $folders;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function performs a search on the mailbox currently opened in the given IMAP stream.
|
* This function performs a search on the mailbox currently opened in the given IMAP stream.
|
||||||
* For example, to match all unanswered mails sent by Mom, you'd use: "UNANSWERED FROM mom".
|
* For example, to match all unanswered mails sent by Mom, you'd use: "UNANSWERED FROM mom".
|
||||||
@@ -174,7 +156,6 @@ class Mailbox {
|
|||||||
$mailsIds = imap_search($this->getImapStream(), $criteria, SE_UID, $this->serverEncoding);
|
$mailsIds = imap_search($this->getImapStream(), $criteria, SE_UID, $this->serverEncoding);
|
||||||
return $mailsIds ? $mailsIds : array();
|
return $mailsIds ? $mailsIds : array();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Save mail body.
|
* Save mail body.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -182,7 +163,6 @@ class Mailbox {
|
|||||||
public function saveMail($mailId, $filename = 'email.eml') {
|
public function saveMail($mailId, $filename = 'email.eml') {
|
||||||
return imap_savebody($this->getImapStream(), $filename, $mailId, "", FT_UID);
|
return imap_savebody($this->getImapStream(), $filename, $mailId, "", FT_UID);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Marks mails listed in mailId for deletion.
|
* Marks mails listed in mailId for deletion.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -190,11 +170,9 @@ class Mailbox {
|
|||||||
public function deleteMail($mailId) {
|
public function deleteMail($mailId) {
|
||||||
return imap_delete($this->getImapStream(), $mailId, FT_UID);
|
return imap_delete($this->getImapStream(), $mailId, FT_UID);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function moveMail($mailId, $mailBox) {
|
public function moveMail($mailId, $mailBox) {
|
||||||
return imap_mail_move($this->getImapStream(), $mailId, $mailBox, CP_UID) && $this->expungeDeletedMails();
|
return imap_mail_move($this->getImapStream(), $mailId, $mailBox, CP_UID) && $this->expungeDeletedMails();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Deletes all the mails marked for deletion by imap_delete(), imap_mail_move(), or imap_setflag_full().
|
* Deletes all the mails marked for deletion by imap_delete(), imap_mail_move(), or imap_setflag_full().
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -202,7 +180,6 @@ class Mailbox {
|
|||||||
public function expungeDeletedMails() {
|
public function expungeDeletedMails() {
|
||||||
return imap_expunge($this->getImapStream());
|
return imap_expunge($this->getImapStream());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the flag \Seen to a mail.
|
* Add the flag \Seen to a mail.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -210,7 +187,6 @@ class Mailbox {
|
|||||||
public function markMailAsRead($mailId) {
|
public function markMailAsRead($mailId) {
|
||||||
return $this->setFlag(array($mailId), '\\Seen');
|
return $this->setFlag(array($mailId), '\\Seen');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the flag \Seen from a mail.
|
* Remove the flag \Seen from a mail.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -218,7 +194,6 @@ class Mailbox {
|
|||||||
public function markMailAsUnread($mailId) {
|
public function markMailAsUnread($mailId) {
|
||||||
return $this->clearFlag(array($mailId), '\\Seen');
|
return $this->clearFlag(array($mailId), '\\Seen');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the flag \Flagged to a mail.
|
* Add the flag \Flagged to a mail.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -226,7 +201,6 @@ class Mailbox {
|
|||||||
public function markMailAsImportant($mailId) {
|
public function markMailAsImportant($mailId) {
|
||||||
return $this->setFlag(array($mailId), '\\Flagged');
|
return $this->setFlag(array($mailId), '\\Flagged');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the flag \Seen to a mails.
|
* Add the flag \Seen to a mails.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -234,7 +208,6 @@ class Mailbox {
|
|||||||
public function markMailsAsRead(array $mailId) {
|
public function markMailsAsRead(array $mailId) {
|
||||||
return $this->setFlag($mailId, '\\Seen');
|
return $this->setFlag($mailId, '\\Seen');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the flag \Seen from some mails.
|
* Remove the flag \Seen from some mails.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -242,7 +215,6 @@ class Mailbox {
|
|||||||
public function markMailsAsUnread(array $mailId) {
|
public function markMailsAsUnread(array $mailId) {
|
||||||
return $this->clearFlag($mailId, '\\Seen');
|
return $this->clearFlag($mailId, '\\Seen');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the flag \Flagged to some mails.
|
* Add the flag \Flagged to some mails.
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -250,7 +222,6 @@ class Mailbox {
|
|||||||
public function markMailsAsImportant(array $mailId) {
|
public function markMailsAsImportant(array $mailId) {
|
||||||
return $this->setFlag($mailId, '\\Flagged');
|
return $this->setFlag($mailId, '\\Flagged');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Causes a store to add the specified flag to the flags set for the mails in the specified sequence.
|
* Causes a store to add the specified flag to the flags set for the mails in the specified sequence.
|
||||||
*
|
*
|
||||||
@@ -261,7 +232,6 @@ class Mailbox {
|
|||||||
public function setFlag(array $mailsIds, $flag) {
|
public function setFlag(array $mailsIds, $flag) {
|
||||||
return imap_setflag_full($this->getImapStream(), implode(',', $mailsIds), $flag, ST_UID);
|
return imap_setflag_full($this->getImapStream(), implode(',', $mailsIds), $flag, ST_UID);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Cause a store to delete the specified flag to the flags set for the mails in the specified sequence.
|
* Cause a store to delete the specified flag to the flags set for the mails in the specified sequence.
|
||||||
*
|
*
|
||||||
@@ -272,7 +242,6 @@ class Mailbox {
|
|||||||
public function clearFlag(array $mailsIds, $flag) {
|
public function clearFlag(array $mailsIds, $flag) {
|
||||||
return imap_clearflag_full($this->getImapStream(), implode(',', $mailsIds), $flag, ST_UID);
|
return imap_clearflag_full($this->getImapStream(), implode(',', $mailsIds), $flag, ST_UID);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fetch mail headers for listed mails ids
|
* Fetch mail headers for listed mails ids
|
||||||
*
|
*
|
||||||
@@ -316,7 +285,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $mails;
|
return $mails;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get information about the current mailbox.
|
* Get information about the current mailbox.
|
||||||
*
|
*
|
||||||
@@ -332,11 +300,9 @@ class Mailbox {
|
|||||||
*
|
*
|
||||||
* @return object Object with info | FALSE on failure
|
* @return object Object with info | FALSE on failure
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function getMailboxInfo() {
|
public function getMailboxInfo() {
|
||||||
return imap_mailboxmsginfo($this->getImapStream());
|
return imap_mailboxmsginfo($this->getImapStream());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function get_overview($mailId) {
|
public function get_overview($mailId) {
|
||||||
$overview = imap_fetch_overview($this->getImapStream(), $mailId, FT_UID);
|
$overview = imap_fetch_overview($this->getImapStream(), $mailId, FT_UID);
|
||||||
return $overview;
|
return $overview;
|
||||||
@@ -346,8 +312,6 @@ class Mailbox {
|
|||||||
$body = imap_body($this->getImapStream(), $mailId, 1.1);
|
$body = imap_body($this->getImapStream(), $mailId, 1.1);
|
||||||
return $body;
|
return $body;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets mails ids sorted by some criteria
|
* Gets mails ids sorted by some criteria
|
||||||
*
|
*
|
||||||
@@ -367,7 +331,6 @@ class Mailbox {
|
|||||||
public function sortMails($criteria = SORTARRIVAL, $reverse = true) {
|
public function sortMails($criteria = SORTARRIVAL, $reverse = true) {
|
||||||
return imap_sort($this->getImapStream(), $criteria, $reverse, SE_UID);
|
return imap_sort($this->getImapStream(), $criteria, $reverse, SE_UID);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get mails count in mail box
|
* Get mails count in mail box
|
||||||
* @return int
|
* @return int
|
||||||
@@ -375,7 +338,6 @@ class Mailbox {
|
|||||||
public function countMails() {
|
public function countMails() {
|
||||||
return imap_num_msg($this->getImapStream());
|
return imap_num_msg($this->getImapStream());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieve the quota settings per user
|
* Retrieve the quota settings per user
|
||||||
* @return array - FALSE in the case of call failure
|
* @return array - FALSE in the case of call failure
|
||||||
@@ -383,7 +345,6 @@ class Mailbox {
|
|||||||
protected function getQuota() {
|
protected function getQuota() {
|
||||||
return imap_get_quotaroot($this->getImapStream(), 'INBOX');
|
return imap_get_quotaroot($this->getImapStream(), 'INBOX');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return quota limit in KB
|
* Return quota limit in KB
|
||||||
* @return int - FALSE in the case of call failure
|
* @return int - FALSE in the case of call failure
|
||||||
@@ -395,7 +356,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $quota;
|
return $quota;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return quota usage in KB
|
* Return quota usage in KB
|
||||||
* @return int - FALSE in the case of call failure
|
* @return int - FALSE in the case of call failure
|
||||||
@@ -407,7 +367,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $quota;
|
return $quota;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get mail data
|
* Get mail data
|
||||||
*
|
*
|
||||||
@@ -417,14 +376,12 @@ class Mailbox {
|
|||||||
*/
|
*/
|
||||||
public function getMail($mailId, $markAsSeen = true) {
|
public function getMail($mailId, $markAsSeen = true) {
|
||||||
$head = imap_rfc822_parse_headers(imap_fetchheader($this->getImapStream(), $mailId, FT_UID));
|
$head = imap_rfc822_parse_headers(imap_fetchheader($this->getImapStream(), $mailId, FT_UID));
|
||||||
|
|
||||||
$mail = new IncomingMail();
|
$mail = new IncomingMail();
|
||||||
$mail->id = $mailId;
|
$mail->id = $mailId;
|
||||||
$mail->date = date('Y-m-d H:i:s', isset($head->date) ? strtotime(preg_replace('/\(.*?\)/', '', $head->date)) : time());
|
$mail->date = date('Y-m-d H:i:s', isset($head->date) ? strtotime(preg_replace('/\(.*?\)/', '', $head->date)) : time());
|
||||||
$mail->subject = isset($head->subject) ? $this->decodeMimeStr($head->subject, $this->serverEncoding) : null;
|
$mail->subject = isset($head->subject) ? $this->decodeMimeStr($head->subject, $this->serverEncoding) : null;
|
||||||
$mail->fromName = isset($head->from[0]->personal) ? $this->decodeMimeStr($head->from[0]->personal, $this->serverEncoding) : null;
|
$mail->fromName = isset($head->from[0]->personal) ? $this->decodeMimeStr($head->from[0]->personal, $this->serverEncoding) : null;
|
||||||
$mail->fromAddress = strtolower($head->from[0]->mailbox . '@' . $head->from[0]->host);
|
$mail->fromAddress = strtolower($head->from[0]->mailbox . '@' . $head->from[0]->host);
|
||||||
|
|
||||||
if(isset($head->to)) {
|
if(isset($head->to)) {
|
||||||
$toStrings = array();
|
$toStrings = array();
|
||||||
// dd($mail);
|
// dd($mail);
|
||||||
@@ -438,21 +395,17 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
$mail->toString = implode(', ', $toStrings);
|
$mail->toString = implode(', ', $toStrings);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isset($head->cc)) {
|
if(isset($head->cc)) {
|
||||||
foreach($head->cc as $cc) {
|
foreach($head->cc as $cc) {
|
||||||
$mail->cc[strtolower($cc->mailbox . '@' . $cc->host)] = isset($cc->personal) ? $this->decodeMimeStr($cc->personal, $this->serverEncoding) : null;
|
$mail->cc[strtolower($cc->mailbox . '@' . $cc->host)] = isset($cc->personal) ? $this->decodeMimeStr($cc->personal, $this->serverEncoding) : null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isset($head->reply_to)) {
|
if(isset($head->reply_to)) {
|
||||||
foreach($head->reply_to as $replyTo) {
|
foreach($head->reply_to as $replyTo) {
|
||||||
$mail->replyTo[strtolower($replyTo->mailbox . '@' . $replyTo->host)] = isset($replyTo->personal) ? $this->decodeMimeStr($replyTo->personal, $this->serverEncoding) : null;
|
$mail->replyTo[strtolower($replyTo->mailbox . '@' . $replyTo->host)] = isset($replyTo->personal) ? $this->decodeMimeStr($replyTo->personal, $this->serverEncoding) : null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$mailStructure = imap_fetchstructure($this->getImapStream(), $mailId, FT_UID);
|
$mailStructure = imap_fetchstructure($this->getImapStream(), $mailId, FT_UID);
|
||||||
|
|
||||||
if(empty($mailStructure->parts)) {
|
if(empty($mailStructure->parts)) {
|
||||||
$this->initMailPart($mail, $mailStructure, 0, $markAsSeen);
|
$this->initMailPart($mail, $mailStructure, 0, $markAsSeen);
|
||||||
}
|
}
|
||||||
@@ -461,17 +414,14 @@ class Mailbox {
|
|||||||
$this->initMailPart($mail, $partStructure, $partNum + 1, $markAsSeen);
|
$this->initMailPart($mail, $partStructure, $partNum + 1, $markAsSeen);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $mail;
|
return $mail;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function initMailPart(IncomingMail $mail, $partStructure, $partNum, $markAsSeen = true) {
|
protected function initMailPart(IncomingMail $mail, $partStructure, $partNum, $markAsSeen = true) {
|
||||||
$options = FT_UID;
|
$options = FT_UID;
|
||||||
if(!$markAsSeen) {
|
if(!$markAsSeen) {
|
||||||
$options |= FT_PEEK;
|
$options |= FT_PEEK;
|
||||||
}
|
}
|
||||||
$data = $partNum ? imap_fetchbody($this->getImapStream(), $mail->id, $partNum, $options) : imap_body($this->getImapStream(), $mail->id, $options);
|
$data = $partNum ? imap_fetchbody($this->getImapStream(), $mail->id, $partNum, $options) : imap_body($this->getImapStream(), $mail->id, $options);
|
||||||
|
|
||||||
if($partStructure->encoding == 1) {
|
if($partStructure->encoding == 1) {
|
||||||
$data = imap_utf8($data);
|
$data = imap_utf8($data);
|
||||||
}
|
}
|
||||||
@@ -484,7 +434,6 @@ class Mailbox {
|
|||||||
elseif($partStructure->encoding == 4) {
|
elseif($partStructure->encoding == 4) {
|
||||||
$data = quoted_printable_decode($data);
|
$data = quoted_printable_decode($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
$params = array();
|
$params = array();
|
||||||
if(!empty($partStructure->parameters)) {
|
if(!empty($partStructure->parameters)) {
|
||||||
foreach($partStructure->parameters as $param) {
|
foreach($partStructure->parameters as $param) {
|
||||||
@@ -502,12 +451,10 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// attachments
|
// attachments
|
||||||
$attachmentId = $partStructure->ifid
|
$attachmentId = $partStructure->ifid
|
||||||
? trim($partStructure->id, " <>")
|
? trim($partStructure->id, " <>")
|
||||||
: (isset($params['filename']) || isset($params['name']) ? mt_rand() . mt_rand() : null);
|
: (isset($params['filename']) || isset($params['name']) ? mt_rand() . mt_rand() : null);
|
||||||
|
|
||||||
if($attachmentId) {
|
if($attachmentId) {
|
||||||
if(empty($params['filename']) && empty($params['name'])) {
|
if(empty($params['filename']) && empty($params['name'])) {
|
||||||
$fileName = $attachmentId . '.' . strtolower($partStructure->subtype);
|
$fileName = $attachmentId . '.' . strtolower($partStructure->subtype);
|
||||||
@@ -523,7 +470,7 @@ class Mailbox {
|
|||||||
if($this->attachmentsDir) {
|
if($this->attachmentsDir) {
|
||||||
$replace = array(
|
$replace = array(
|
||||||
'/\s/' => '_',
|
'/\s/' => '_',
|
||||||
'/[^0-9a-zа-<2D>?іїє_\.]/iu' => '',
|
'/[^0-9a-z?-????_\.]/iu' => '',
|
||||||
'/_+/' => '_',
|
'/_+/' => '_',
|
||||||
'/(^_)|(_$)/' => '',
|
'/(^_)|(_$)/' => '',
|
||||||
);
|
);
|
||||||
@@ -560,7 +507,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function decodeMimeStr($string, $charset = 'utf-8') {
|
protected function decodeMimeStr($string, $charset = 'utf-8') {
|
||||||
$newString = '';
|
$newString = '';
|
||||||
$elements = imap_mime_header_decode($string);
|
$elements = imap_mime_header_decode($string);
|
||||||
@@ -572,13 +518,11 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $newString;
|
return $newString;
|
||||||
}
|
}
|
||||||
|
|
||||||
function isUrlEncoded($string) {
|
function isUrlEncoded($string) {
|
||||||
$hasInvalidChars = preg_match( '#[^%a-zA-Z0-9\-_\.\+]#', $string );
|
$hasInvalidChars = preg_match( '#[^%a-zA-Z0-9\-_\.\+]#', $string );
|
||||||
$hasEscapedChars = preg_match( '#%[a-zA-Z0-9]{2}#', $string );
|
$hasEscapedChars = preg_match( '#%[a-zA-Z0-9]{2}#', $string );
|
||||||
return !$hasInvalidChars && $hasEscapedChars;
|
return !$hasInvalidChars && $hasEscapedChars;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function decodeRFC2231($string, $charset = 'utf-8') {
|
protected function decodeRFC2231($string, $charset = 'utf-8') {
|
||||||
if(preg_match("/^(.*?)'.*?'(.*?)$/", $string, $matches)) {
|
if(preg_match("/^(.*?)'.*?'(.*?)$/", $string, $matches)) {
|
||||||
$encoding = $matches[1];
|
$encoding = $matches[1];
|
||||||
@@ -589,7 +533,6 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $string;
|
return $string;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Converts a string from one encoding to another.
|
* Converts a string from one encoding to another.
|
||||||
* @param string $string
|
* @param string $string
|
||||||
@@ -607,12 +550,9 @@ class Mailbox {
|
|||||||
}
|
}
|
||||||
return $convertedString ?: $string;
|
return $convertedString ?: $string;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function __destruct() {
|
public function __destruct() {
|
||||||
$this->disconnect();
|
$this->disconnect();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Exception extends \Exception {
|
class Exception extends \Exception {
|
||||||
|
|
||||||
}
|
}
|
Reference in New Issue
Block a user