Merge Branch
This commit is contained in:
@@ -21,7 +21,9 @@ return array(
|
||||
'success' => 'Success',
|
||||
'fails' => 'Fails',
|
||||
'alert' => 'Alert',
|
||||
|
||||
'ratings' => 'Ratings',
|
||||
'please_rate' => 'Please rate:',
|
||||
'ticket_ratings' => 'TICKET RATING',
|
||||
/*
|
||||
|--------------------------------------
|
||||
| Login Page
|
||||
|
@@ -0,0 +1,171 @@
|
||||
@extends('themes.default1.admin.layout.admin')
|
||||
|
||||
@section('Settings')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('settings-bar')
|
||||
active
|
||||
@stop
|
||||
|
||||
@section('system')
|
||||
class="active"
|
||||
@stop
|
||||
|
||||
@section('HeadInclude')
|
||||
|
||||
@stop
|
||||
<!-- header -->
|
||||
@section('PageHeader')
|
||||
|
||||
@stop
|
||||
<!-- /header -->
|
||||
<!-- breadcrumbs -->
|
||||
@section('breadcrumbs')
|
||||
<ol class="breadcrumb">
|
||||
|
||||
</ol>
|
||||
@stop
|
||||
<!-- /breadcrumbs -->
|
||||
<!-- content -->
|
||||
@section('content')
|
||||
|
||||
<div class="box box-primary">
|
||||
<div class="box-header">
|
||||
<h4 class="box-title">{{Lang::get('lang.ratings')}}</h4>
|
||||
</div>
|
||||
@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">
|
||||
<table id="example1" class="table table-bordered table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
|
||||
<th>Title</th>
|
||||
|
||||
<th>Action</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($ratings as $rating)
|
||||
|
||||
<tr>
|
||||
<td>{!! $rating->id !!}</td>
|
||||
|
||||
<td>{!! $rating->rating_name !!}</td>
|
||||
|
||||
<td>
|
||||
|
||||
<button class="btn btn-info btn-sm" data-toggle="modal" data-target="#{{$rating->slug}}">Edit Rating</button>
|
||||
|
||||
<div class="modal fade" id="{{$rating->slug}}">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
{!! Form::model($rating,['route'=>['settings.rating', $rating->slug],'method'=>'PATCH']) !!}
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title">Edit Rating</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<table width="100%" cellspacing="0" cellpadding="0" border="0" height="100%">
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td valign="top" id="staffnavbar" colspan="2">
|
||||
<div id="cpmenu"><div id="customnavhtmlcontainer" style="display: none;"></div>
|
||||
|
||||
<div class="ui-tabs-hide ui-tabs ui-widget ui-widget-content ui-corner-all" id="View_Ratingtabs">
|
||||
<div class="ui-tabs ui-tabs-panel ui-widget-content ui-corner-bottom" id="View_Rating_tab_general">
|
||||
<table width="100%" cellspacing="1" cellpadding="4" border="0">
|
||||
<tbody>
|
||||
<tr class="tablerow1_tr">
|
||||
<td class="tablerow1" align="left" valign="top" width="50%"><span class="tabletitle">Rating label</span><br>
|
||||
<span style="font-style: italic">For example, <em>Overall satisfaction</em> or <em>Speed of resolution</em>.</span></td>
|
||||
<td class="tablerow1" align="left" valign="top">
|
||||
{!! Form::text('rating_name',null,['class'=>'form-control'])!!}
|
||||
</td></tr>
|
||||
<tr class="tablerow1_tr"><td width="50%" valign="top" align="left" class="tablerow1"><span class="tabletitle">Publish the rating system?</span><br>
|
||||
<span style="font-style: italic">
|
||||
<strong>Enable Rating System</strong> Ratings are available to the users. Select this option if you want to collect feedback from your end users and have the ratings visible to staff too.
|
||||
</span></td>
|
||||
<td valign="top" align="left" class="tablerow1">
|
||||
<label for="publicratingvisibility"><input type="radio" checked="" value="1" id="publicratingvisibility" class="swiftradio" name="publish" autocomplete="OFF"> Yes</label>
|
||||
<label for="privateratingvisibility"><input type="radio" value="0" id="privateratingvisibility" name="publish" autocomplete="OFF"> No</label>
|
||||
</td></tr>
|
||||
<tr class="tablerow1_tr"><td width="50%" valign="top" align="left" class="tablerow1">
|
||||
<td width="50%" valign="top" align="left" class="tablerow1"></td>
|
||||
</tr>
|
||||
<tr class="tablerow1_tr">
|
||||
<td width="50%" valign="top" align="left" class="tablerow1">
|
||||
<span class="tabletitle">Allow modification after first submission</span><br>
|
||||
<span style="font-style: italic">The value set for this rating can be modified, if enabled.</span></td>
|
||||
<td valign="top" align="left" class="tablerow1"><label for="yiseditable">
|
||||
<input type="radio" checked="" value="1" id="yiseditable" onclick="" class="swiftradio" name="modify" autocomplete="OFF"> Yes</label>
|
||||
<label for="niseditable">
|
||||
<input type="radio" value="0" onclick="" name="modify" autocomplete="OFF"> No</label>
|
||||
</td></tr>
|
||||
|
||||
</tbody></table></div></div>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<div class="form-group">
|
||||
{!! Form::submit('Update Rating',['class'=>'btn btn-primary'])!!}
|
||||
|
||||
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">Close</button>
|
||||
</div></div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<button class="btn btn-danger btn-sm" data-toggle="modal" data-target="#{{$rating->slug}}delete">Delete Rating</button>
|
||||
|
||||
<div class="modal fade" id="{{$rating->slug}}delete">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title">Delete</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>Are you sure you want to Delete ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">Close</button>
|
||||
{!! link_to_route('ratings.delete','Delete',[$rating->slug],['id'=>'delete','class'=>'btn btn-danger btn-sm']) !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
@stop
|
||||
</div><!-- /.box -->
|
@@ -16,6 +16,7 @@ active
|
||||
?>
|
||||
|
||||
@section('sidebar')
|
||||
|
||||
<li class="header">{!! Lang::get('lang.Ticket_Information') !!} </li>
|
||||
<li>
|
||||
<a href="">
|
||||
@@ -41,6 +42,19 @@ active
|
||||
</a>
|
||||
@endif
|
||||
</li>
|
||||
|
||||
<li class="header">
|
||||
{!! Lang::get('lang.ticket_ratings') !!}
|
||||
</li><li> <a href="#">
|
||||
<input type="hidden" name="amount" value="{!! $tickets->rating !!}" />
|
||||
<label style="color: #b8c7ce;">Overall Rating:</label>
|
||||
<h5>
|
||||
<span class="stars">{!! $tickets->rating !!}</span></h5>
|
||||
<input type="hidden" name="amt" value="{!! $tickets->ratingreply !!}" />
|
||||
<label style="color: #b8c7ce;">Reply Rating:</label>
|
||||
<h4>
|
||||
<span class="stars2">{!! $tickets->ratingreply !!}</span></h4>
|
||||
</a></li>
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
@@ -1053,7 +1067,22 @@ $count_teams = count($teams);
|
||||
|
||||
<!-- scripts used on page -->
|
||||
<script type="text/javascript">
|
||||
|
||||
$(function() {
|
||||
|
||||
$('h5').html('<span class="stars">'+parseFloat($('input[name=amount]').val())+'</span>');
|
||||
$('span.stars').stars();
|
||||
|
||||
$('h4').html('<span class="stars2">'+parseFloat($('input[name=amt]').val())+'</span>');
|
||||
$('span.stars2').stars();
|
||||
|
||||
|
||||
});
|
||||
|
||||
$.fn.stars = function() {
|
||||
return $(this).each(function() {
|
||||
$(this).html($('<span />').width(Math.max(0, (Math.min(5, parseFloat($(this).html())))) * 16));
|
||||
});
|
||||
}
|
||||
$(function () {
|
||||
$("#InternalContent").wysihtml5();
|
||||
});
|
||||
|
@@ -8,6 +8,30 @@
|
||||
<!-- Bootstrap 3.3.2 -->
|
||||
<link href="{{asset("lb-faveo/css/bootstrap.min.css")}}" rel="stylesheet" type="text/css" />
|
||||
<!-- Font Awesome Icons -->
|
||||
<style>
|
||||
span.stars, span.stars span {
|
||||
display: block;
|
||||
background: url({!! URL::asset('lb-faveo/dist/images/stars.png'); !!}) 0 -16px repeat-x;
|
||||
width: 80px;
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
span.stars span {
|
||||
background-position: 0 0;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
span.stars2, span.stars2 span {
|
||||
display: block;
|
||||
background: url({!! URL::asset('lb-faveo/dist/images/stars.png'); !!}) 0 -16px repeat-x;
|
||||
width: 80px;
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
span.stars2 span {
|
||||
background-position: 0 0;
|
||||
}
|
||||
</style>
|
||||
<link href="{{asset("lb-faveo/css/font-awesome.min.css")}}" rel="stylesheet" type="text/css" />
|
||||
<!-- Ionicons -->
|
||||
<link href="{{asset("lb-faveo/css/ionicons.min.css")}}" rel="stylesheet">
|
||||
@@ -33,10 +57,10 @@
|
||||
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
|
||||
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
{{-- // <script src="https://code.jquery.com/jquery-2.1.4.js" type="text/javascript"></script> --}}
|
||||
{{-- // <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> --}}
|
||||
<script src="{{asset("lb-faveo/js/jquery-2.1.4.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/js/jquery2.1.1.min.js")}}" type="text/javascript"></script>
|
||||
<script src="https://code.jquery.com/jquery-2.1.4.js" type="text/javascript"></script>
|
||||
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
|
||||
<!-- <script src="{{asset("lb-faveo/js/jquery-2.1.4.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/js/jquery2.1.1.min.js")}}" type="text/javascript"></script>-->
|
||||
|
||||
@yield('HeadInclude')
|
||||
</head>
|
||||
@@ -287,9 +311,7 @@ $group = App\Model\helpdesk\Agent\Groups::where('id', '=', $agent_group)->where(
|
||||
<strong>{!! Lang::get('lang.copyright') !!} © {!! date('Y') !!} <a href="{!! $company->website !!}">{!! $company->company_name !!}</a>.</strong> {!! Lang::get('lang.all_rights_reserved') !!}. {!! Lang::get('lang.powered_by') !!} <a href="http://www.faveohelpdesk.com/">Faveo</a>
|
||||
</footer>
|
||||
</div><!-- ./wrapper -->
|
||||
{{-- // <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> --}}
|
||||
|
||||
<script src="{{asset("lb-faveo/js/ajax-jquery.min.js")}}"></script>
|
||||
|
||||
|
||||
{{-- // <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.7.14/js/bootstrap-datetimepicker.min.js"></script> --}}
|
||||
|
||||
|
@@ -23,9 +23,12 @@ $thread = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id','=',\Crypt:
|
||||
<!-- Main content -->
|
||||
<div class="box box-primary">
|
||||
<div class="box-header">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-9">
|
||||
<section class="content-header"><h3 class="box-title"><i class="fa fa-user"> </i> {{$thread->title}} </h3> ( {{$tickets->ticket_number}} )
|
||||
</section>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<div class="pull-right">
|
||||
<!-- <button type="button" class="btn btn-default"><i class="fa fa-edit" style="color:green;"> </i> Edit</button> -->
|
||||
{{-- <button type="button" class="btn btn-default"><i class="fa fa-print" style="color:blue;"> </i> {!! link_to_route('ticket.print','Print',[$tickets->id]) !!}</button> --}}
|
||||
@@ -42,6 +45,42 @@ $thread = App\Model\helpdesk\Ticket\Ticket_Thread::where('ticket_id','=',\Crypt:
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="ticketratings pull-right">
|
||||
<table><tbody>
|
||||
<form id="foo">
|
||||
<tr>
|
||||
<th><div class="ticketratingtitle">Overall Satisfaction </div></th> 
|
||||
<td>
|
||||
<input type="radio" class="star" id="star5" name="rating" value="1"<?php echo ($tickets->rating=='1')?'checked':'' ?> />
|
||||
<input type="radio" class="star" id="star4" name="rating" value="2"<?php echo ($tickets->rating=='2')?'checked':'' ?> />
|
||||
<input type="radio" class="star" id="star3" name="rating" value="3"<?php echo ($tickets->rating=='3')?'checked':'' ?>/>
|
||||
<input type="radio" class="star" id="star2" name="rating" value="4"<?php echo ($tickets->rating=='4')?'checked':'' ?>/>
|
||||
<input type="radio" class="star" id="star1" name="rating" value="5"<?php echo ($tickets->rating=='5')?'checked':'' ?> />
|
||||
</td>
|
||||
</tr>
|
||||
</form>
|
||||
<form id="foo2">
|
||||
|
||||
|
||||
<tr><th > <div class="ticketratingtitle">Reply rating </div></th> 
|
||||
<td>
|
||||
<input type="radio" class="star" id="star5" name="rating2" value="1"<?php echo ($tickets->ratingreply=='1')?'checked':'' ?> />
|
||||
<input type="radio" class="star" id="star4" name="rating2" value="2"<?php echo ($tickets->ratingreply=='2')?'checked':'' ?> />
|
||||
<input type="radio" class="star" id="star3" name="rating2" value="3"<?php echo ($tickets->ratingreply=='3')?'checked':'' ?> />
|
||||
<input type="radio" class="star" id="star2" name="rating2" value="4"<?php echo ($tickets->ratingreply=='4')?'checked':'' ?> />
|
||||
<input type="radio" class="star" id="star1" name="rating2" value="5"<?php echo ($tickets->ratingreply=='5')?'checked':'' ?> />
|
||||
|
||||
</td></tr>
|
||||
|
||||
</form> </tbody> </table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="box-body" style="margin-bottom:-10px">
|
||||
<div class="row">
|
||||
@@ -340,7 +379,71 @@ $data = $ConvDate[0];
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
$(document).ready(function() {
|
||||
// var Data = $('input[name="rating"]:checked').val();
|
||||
// var Data2 = $('input[name="rating2"]:checked').val();
|
||||
// if (Data) {
|
||||
// $('input[name=rating]').rating('readOnly');
|
||||
//
|
||||
// }
|
||||
$('input[name=rating]').change(function() {
|
||||
$('#foo').submit();
|
||||
});
|
||||
$('input[name=rating2]').change(function() {
|
||||
$('#foo2').submit();
|
||||
});
|
||||
// process the form
|
||||
$('#foo').submit(function(event) {
|
||||
|
||||
// get the form data
|
||||
// there are many ways to get this data using jQuery (you can use the class or id also)
|
||||
var formData = $('input[name="rating"]:checked').val();
|
||||
|
||||
//$('#foo').serialize();
|
||||
// process the form
|
||||
$.ajax({
|
||||
type : 'POST', // define the type of HTTP verb we want to use (POST for our form)
|
||||
url : '../rating/'+<?php echo $tickets->id ?>+'/'+formData, // the url where we want to POST
|
||||
data : formData, // our data object
|
||||
dataType : 'json', // what type of data do we expect back from the server
|
||||
|
||||
success : function() {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
// using the done promise callback
|
||||
|
||||
// stop the form from submitting the normal way and refreshing the page
|
||||
event.preventDefault();
|
||||
});
|
||||
// process the form
|
||||
$('#foo2').submit(function(event) {
|
||||
|
||||
// get the form data
|
||||
// there are many ways to get this data using jQuery (you can use the class or id also)
|
||||
var formData = $('input[name="rating2"]:checked').val();
|
||||
//$('#foo').serialize();
|
||||
// process the form
|
||||
$.ajax({
|
||||
type : 'POST', // define the type of HTTP verb we want to use (POST for our form)
|
||||
url : '../rating2/'+<?php echo $tickets->id ?>+'/'+formData, // the url where we want to POST
|
||||
data : formData, // our data object
|
||||
dataType : 'json', // what type of data do we expect back from the server
|
||||
|
||||
success : function() {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
// using the done promise callback
|
||||
|
||||
// stop the form from submitting the normal way and refreshing the page
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
});
|
||||
$(function () {
|
||||
//Add text editor
|
||||
$("textarea").wysihtml5();
|
||||
|
@@ -25,6 +25,7 @@
|
||||
<!-- fullCalendar 2.2.5-->
|
||||
<link href="{{asset("lb-faveo/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css")}}" rel="stylesheet" type="text/css" />
|
||||
<!-- Theme style -->
|
||||
<link href="{{asset("lb-faveo/dist/css/jquery.rating.css")}}" rel="stylesheet" type="text/css" />
|
||||
<link href="{{asset("lb-faveo/css/app.css")}}" rel="stylesheet" type="text/css" />
|
||||
<link href="{{asset("lb-faveo/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css")}}" rel="stylesheet" type="text/css" />
|
||||
|
||||
@@ -346,6 +347,7 @@ $footer4 = App\Model\helpdesk\Theme\Widgets::where('name','=','footer4')->first(
|
||||
<script src="{{asset("lb-faveo/js/superfish.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/js/mobilemenu.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/js/know.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/dist/js/jquery.rating.pack.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.all.min.js")}}" type="text/javascript"></script>
|
||||
<script src="{{asset("lb-faveo/plugins/iCheck/icheck.min.js")}}" type="text/javascript"></script>
|
||||
<script>
|
||||
|
Reference in New Issue
Block a user