Viewing file: dashboard.blade.php (13.38 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
@extends('layouts.customer')
@section('title', trans('customer.customer_dashboard'))
@section('extra-css') <style> .cache_clear_btn{ display: block !important; } </style> @endsection
@section('content') <!-- Content Header (Page header) --> <div class="content-header custom-content-header"> <h2 class="card-title">{{trans('customer.dashboard')}}</h2> </div> <!-- /.content-header -->
<!-- /.content-header --> <!-- Main content --> <div class="content"> <div class="container-fluid"> @if(auth('customer')->user()->type=='reseller' || auth('customer')->user()->type=='master_reseller') @if(count($available_setting)>0) <div class="row"> <div class="col-sm-12 "> <div id="settingsCard" class="d-flex flex-column order-manage p-3 align-items-center mb-4 card"> <div class="d-flex w-100"> <a id="showSettingList" href="javascript:void(0);" class="btn fs-22 py-1 btn-primary px-4 mr-3">{{count($available_setting)}}</a> <h4 class="mb-0">{{trans('Pending Configuration')}}<i class="fa fa-circle text-primary ml-1 fs-13"></i></h4> <a href="{{route('customer.settings.index')}}" class="ml-auto text-primary font-w500">{{trans('Settings')}} <i class="ti-angle-right ml-1"></i></a> </div> <div class="w-100 p-4" id="setting_list"> <ul> @foreach($available_setting as $st) <li class="incomplete-setting-list"> {{$st}}</li> @endforeach
</ul> </div> </div>
</div> </div> @endif @endif
<div class="row"> <!-- ./col --> <div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{$sentCount}}</p>
<p class="counter_text">{{trans('customer.daily_sms_sent')}}</p> </div> <div class="icon today-sent-icon"> <i class="fa fa-paper-plane" aria-hidden="true"></i> </div> </div> </div> <!-- ./col --> <div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{$inboxCount}}</p>
<p class="counter_text">{{trans('customer.daily_sms_received')}}</p> </div> <div class="icon total-inbox-icon"> <i class="fa fa-envelope-open" aria-hidden="true"></i> </div> </div> </div> <div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{isset($dailyResponseRate)?formatNumber($dailyResponseRate):formatNumber('0')}}%</p>
<p class="counter_text">{{trans('customer.daily_response_rate')}}</p> </div> <div class="icon total-sent-icon"> <i class="fa fa-american-sign-language-interpreting" aria-hidden="true"></i> </div> </div> </div> <div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{isset($deliveryRate)?$deliveryRate:formatNumber('0')}}%</p>
<p class="counter_text">{{trans('customer.daily_delivery_rate')}}</p> </div> <div class="icon today-message-icon"> <i class="fa fa-star" aria-hidden="true"></i> </div> </div> </div>
<div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{isset($todayExpense)?formatNumber($todayExpense):formatNumber('0')}}</p>
<p class="counter_text">{{trans('customer.today_expense')}}</p> </div> <div class="icon today-sent-icon"> <i class="fa fa-credit-card" aria-hidden="true"></i> </div> </div> </div> <!-- ./col --> <div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{isset($weeklyExpense)?formatNumber($weeklyExpense):formatNumber('0')}}</p>
<p class="counter_text">{{trans('customer.weekly_expense')}}</p> </div> <div class="icon today-message-icon"> <i class="fa fa-credit-card" aria-hidden="true"></i> </div> </div> </div> <!-- ./col --> <div class="col-lg-3 col-md-6 col-sm-12"> <!-- small box --> <div class="small-box"> <div class="inner"> <p class="dashboard_counter mb-2">{{isset($responseRate)?$responseRate:formatNumber('0')}}%</p>
<p class="counter_text">{{trans('customer.lifetime_response_rate')}}</p> </div> <div class="icon total-sent-icon"> <i class="fa fa-star" aria-hidden="true"></i> </div> </div> </div>
</div>
<div class="row"> <div class="col-sm-6"> <div class="card"> <div class="card-header border-0"> <h3 class="card-title"> <i class="fas fa-th mr-1"></i> {{trans('customer.inbox')}} </h3> <div class="card-tools"> <button type="button" class="btn bg-primary btn-sm" data-card-widget="collapse"> <i class="fas fa-minus"></i> </button> <button type="button" class="btn bg-primary btn-sm" data-card-widget="remove"> <i class="fas fa-times"></i> </button> </div> </div> <div class="card-body"> <canvas class="chart customer-dashboard-canvas" id="line-chart"></canvas> </div> <!-- /.card-body -->
<!-- /.card-footer --> </div> <!-- /.card --> </div> <div class="col-sm-6"> <div class="card"> <div class="card-header border-0"> <h3 class="card-title"> <i class="fas fa-th mr-1"></i> {{trans('customer.weekly_response')}} </h3>
<div class="card-tools"> <button type="button" class="btn bg-primary btn-sm" data-card-widget="collapse"> <i class="fas fa-minus"></i> </button> <button type="button" class="btn bg-primary btn-sm" data-card-widget="remove"> <i class="fas fa-times"></i> </button> </div> </div> <div class="card-body"> <canvas class="chart customer-dashboard-canvas" id="weekly-response-chart"></canvas> </div> <!-- /.card-body -->
<!-- /.card-footer --> </div> <!-- /.card --> </div> </div> <!-- /.row --> </div><!-- /.container-fluid --> </div> <!-- /.content --> @endsection
@section('extra-scripts') <script src="{{asset('plugins/chart.js/Chart.min.js')}}"></script> <script> "use strict"; // Sales graph chart var salesGraphChartCanvas = $('#line-chart').get(0).getContext('2d'); var weeklyResponseGraphChartCanvas = $('#weekly-response-chart').get(0).getContext('2d'); //$('#revenue-chart').get(0).getContext('2d');
var salesGraphChartData = { labels: @json($weekDates), datasets: [ { label: 'SMS', fill: false, borderWidth: 2, lineTension: 0, spanGaps: true, borderColor: '#7367F0', pointRadius: 3, pointHoverRadius: 7, pointColor: '#636363', pointBackgroundColor: '#636363', data: @json($chart_inbox) } ] }
var salesGraphChartOptions = { maintainAspectRatio: false, responsive: true, legend: { display: false, }, scales: { xAxes: [{ ticks: { fontColor: '#636363', }, gridLines: { display: false, color: '#636363', drawBorder: false, } }], yAxes: [{ ticks: { stepSize: 5000, fontColor: '#636363', }, gridLines: { display: true, color: '#636363', drawBorder: false, } }] } }
// This will get the first returned node in the jQuery collection. var salesGraphChart = new Chart(salesGraphChartCanvas, { type: 'line', data: salesGraphChartData, options: salesGraphChartOptions } );
// For Expense var weeklyResponseGraphChartData = { labels: @json($weekDates), datasets: [ { label: 'Response Ratio', fill: false, borderWidth: 2, lineTension: 0, spanGaps: true, borderColor: '#7367F0', pointRadius: 3, pointHoverRadius: 7, pointColor: '#636363', pointBackgroundColor: '#636363', data: @json($weeklyResponseArray) } ] }
var weeklyResponseGraphChartOptions = { maintainAspectRatio: false, responsive: true, legend: { display: false, }, scales: { xAxes: [{ ticks: { fontColor: '#636363', }, gridLines: { display: false, color: '#636363', drawBorder: false, } }], yAxes: [{ ticks: { stepSize: 5000, fontColor: '#636363', }, gridLines: { display: true, color: '#636363', drawBorder: false, } }] } }
// This will get the first returned node in the jQuery collection. var weeklyResponseGraphChart = new Chart(weeklyResponseGraphChartCanvas, { type: 'line', data: weeklyResponseGraphChartData, options: weeklyResponseGraphChartOptions } ); </script> @endsection
|