/
home
/
sjslayjy
/
public_html
/
cropnet
/
resources
/
views
/
admin
/
dashboard
/
Upload File
HOME
@extends('admin.layouts.app') @section('title','Voice Search') @section('style') <meta name="csrf-token" content="{{ csrf_token() }}"> <style type="text/css"> .center { padding: 10px; text-align: center; } .final { color: black; padding-right: 3px; } .interim { color: gray; } .info { font-size: 14px; text-align: center; color: #777; display: none; } .right { float: right; } .sidebyside { display: inline-block; width: 45%; min-height: 40px; text-align: left; vertical-align: top; } #headline { font-size: 40px; font-weight: 300; } #info { font-size: 20px; text-align: center; color: #777; visibility: hidden; } #results { width:110%; border-radius:35px; font-size: 14px; font-weight: bold; /*border: 1px solid #ddd;*/ padding: 15px; text-align: left; min-height: 60px; box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px; padding-top:21px; } #start_button { outline:none; margin-top:3px; border: none; background-color:transparent; }.bxx{ box-shadow: rgb(60 64 67 / 30%) 0px 1px 2px 0px, rgb(60 64 67 / 15%) 0px 2px 6px 2px; border-radius: 5px; } .card1{ border: 1px solid black; border-radius: 4px; height:350px; background-color:white; } .canvasjs-chart-credit { display: none !important; } </style> @endsection @section('content') <!-- Content Wrapper. Contains page content --> <div class="content-wrapper"> <div class="container-full"> <section class="content"> <div class="row"> <div class="col-sm-12"> <div id="info"> <p id="info_start">Click on the microphone icon and begin speaking.</p> <p id="info_speak_now">Speak now.</p> <p id="info_no_speech">No speech was detected. You may need to adjust your <a href="//support.google.com/chrome/bin/answer.py?hl=en&answer=1407892"> microphone settings</a>.</p> <p id="info_no_microphone" style="display:none"> No microphone was found. Ensure that a microphone is installed and that <a href="//support.google.com/chrome/bin/answer.py?hl=en&answer=1407892"> microphone settings</a> are configured correctly.</p> <p id="info_allow">Click the "Allow" button above to enable your microphone.</p> <p id="info_denied">Permission to use microphone was denied.</p> <p id="info_blocked">Permission to use microphone is blocked. To change, go to chrome://settings/contentExceptions#media-stream</p> <p id="info_upgrade">Web Speech API is not supported by this browser. Upgrade to <a href="//www.google.com/chrome">Chrome</a> version 25 or later.</p> </div> </div> </div> <div class="box"> <div class="row"> <div class="col-sm-11"> <div id="results"> <span id="final_span" class="final"></span> <span id="interim_span" class="interim"></span> </div> </div> <div class="col-sm-1"> <div class="right"> <button id="start_button" onclick="startButton(event)"> <img id="start_img" src="{{url('mic.gif')}}" alt="Start"></button> </div> </div> </div> </div> <div class="row"> <div id="div_language"> <select id="select_language" onchange="updateCountry()" hidden=""></select> <select id="select_dialect" hidden=""></select> </div> </div> <div class="row"> <div class="col-sm-12" style="display:none;" id="total_member"> <div class="col-xl-3 col-lg-6 col-12"> <div class="box bg-primary-light"> <div class="box-body text-center"> <div class="d-flex justify-content-between align-items-center"> <div class="p-5 w-100 h-100"> <img src="../../../images/user.png" class="" alt=""> </div> <div class="text-end"> <h2 class="mb-0 fw-600 text-primary" id="total_member_count"></h2> <p class="text-fade mt-5 mb-0" id="total_member_text"></p> </div> </div> </div> </div> </div> </div> <!--<div class="col-sm-12" style="display:none;" id="total_member">--> <!-- <div class="col-xl-3 col-lg-6 col-12">--> <!-- <div class="box bg-primary-light">--> <!-- <div class="box-body text-center">--> <!-- <div class="d-flex justify-content-between align-items-center">--> <!-- <div class="p-5 w-100 h-100">--> <!-- <img src="../../../images/user.png" class="" alt="">--> <!-- </div>--> <!-- <div class="text-end">--> <!-- <h2 class="mb-0 fw-600 text-primary" id="total_member_count"></h2>--> <!-- <p class="text-fade mt-5 mb-0" id="total_member_text"></p>--> <!-- </div>--> <!-- </div>--> <!-- </div>--> <!-- </div>--> <!-- </div> --> <!--</div>--> </div> <div class="row"> <div class="col-md-4 col-sm-12 pieChart2_div" style="display:none;"> <div class="card1"> <center><b>MCC Wise Total Member %</b></center> <div id="pieChart2" style="width: 100%; margin-top:20px;"></div> </div> </div> <div class="col-md-4 col-sm-12 pieChart2_div" style="display:none;"> <div class="card1"> <center><b>MCC Wise Total Member Count</b></center> <div id="barChart1" style="width: 100%;"></div> </div> </div> </div> </section> <!--<div class="row">--> <!-- <div class="col-md-6 container_stock"></div>--> <!-- <div class="col-md-6 container_sale"></div>--> <!-- <div class="col-md-4 container_purchase"></div>--> <!-- <div class="col-md-4 container_token"></div>--> <!-- <div class="col-md-4 container_invoice"></div>--> <!--</div> --> </div> </div> @endsection @section('script') {{-- <script src="{{asset("src/js/pages/patients.js")}}"></script> --}} <script src="../src/js/pages/validation.js"></script> <script src="../src/js/pages/form-validation.js"></script> <script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script> <script> var langs = [['Afrikaans', ['af-ZA']], ['Bahasa Indonesia',['id-ID']], ['Bahasa Melayu', ['ms-MY']], ['Català', ['ca-ES']], ['Čeština', ['cs-CZ']], ['Deutsch', ['de-DE']], ['English', ['en-AU', 'Australia'], ['en-CA', 'Canada'], ['en-IN', 'India'], ['en-NZ', 'New Zealand'], ['en-ZA', 'South Africa'], ['en-GB', 'United Kingdom'], ['en-US', 'United States']], ['Español', ['es-AR', 'Argentina'], ['es-BO', 'Bolivia'], ['es-CL', 'Chile'], ['es-CO', 'Colombia'], ['es-CR', 'Costa Rica'], ['es-EC', 'Ecuador'], ['es-SV', 'El Salvador'], ['es-ES', 'España'], ['es-US', 'Estados Unidos'], ['es-GT', 'Guatemala'], ['es-HN', 'Honduras'], ['es-MX', 'México'], ['es-NI', 'Nicaragua'], ['es-PA', 'Panamá'], ['es-PY', 'Paraguay'], ['es-PE', 'Perú'], ['es-PR', 'Puerto Rico'], ['es-DO', 'República Dominicana'], ['es-UY', 'Uruguay'], ['es-VE', 'Venezuela']], ['Euskara', ['eu-ES']], ['Français', ['fr-FR']], ['Galego', ['gl-ES']], ['Hrvatski', ['hr_HR']], ['IsiZulu', ['zu-ZA']], ['Íslenska', ['is-IS']], ['Italiano', ['it-IT', 'Italia'], ['it-CH', 'Svizzera']], ['Magyar', ['hu-HU']], ['Nederlands', ['nl-NL']], ['Norsk bokmål', ['nb-NO']], ['Polski', ['pl-PL']], ['Português', ['pt-BR', 'Brasil'], ['pt-PT', 'Portugal']], ['Română', ['ro-RO']], ['Slovenčina', ['sk-SK']], ['Suomi', ['fi-FI']], ['Svenska', ['sv-SE']], ['Türkçe', ['tr-TR']], ['български', ['bg-BG']], ['Pусский', ['ru-RU']], ['Српски', ['sr-RS']], ['한국어', ['ko-KR']], ['中文', ['cmn-Hans-CN', '普通话 (中国大陆)'], ['cmn-Hans-HK', '普通话 (香港)'], ['cmn-Hant-TW', '中文 (台灣)'], ['yue-Hant-HK', '粵語 (香港)']], ['日本語', ['ja-JP']], ['Lingua latīna', ['la']]]; for (var i = 0; i < langs.length; i++) { select_language.options[i] = new Option(langs[i][0], i); } select_language.selectedIndex = 6; updateCountry(); select_dialect.selectedIndex = 6; showInfo('info_start'); function updateCountry() { for (var i = select_dialect.options.length - 1; i >= 0; i--) { select_dialect.remove(i); } var list = langs[select_language.selectedIndex]; for (var i = 1; i < list.length; i++) { select_dialect.options.add(new Option(list[i][1], list[i][0])); } select_dialect.style.visibility = list[1].length == 1 ? 'hidden' : 'visible'; } var create_email = false; var final_transcript = ''; var recognizing = false; var ignore_onend; var start_timestamp; if (!('webkitSpeechRecognition' in window)) { upgrade(); } else { start_button.style.display = 'inline-block'; var recognition = new webkitSpeechRecognition(); recognition.continuous = true; recognition.interimResults = true; recognition.onstart = function() { recognizing = true; showInfo('info_speak_now'); start_img.src = 'http://imanager.pmmsapp.com/mic-animate.gif'; }; recognition.onerror = function(event) { if (event.error == 'no-speech') { start_img.src = 'http://imanager.pmmsapp.com/mic.gif'; showInfo('info_no_speech'); ignore_onend = true; } if (event.error == 'audio-capture') { start_img.src = 'http://imanager.pmmsapp.com/mic.gif'; showInfo('info_no_microphone'); ignore_onend = true; } if (event.error == 'not-allowed') { if (event.timeStamp - start_timestamp < 100) { showInfo('info_blocked'); } else { showInfo('info_denied'); } ignore_onend = true; } }; recognition.onend = function() { recognizing = false; if (ignore_onend) { return; } start_img.src = 'http://imanager.pmmsapp.com/mic.gif'; if (!final_transcript) { showInfo('info_start'); return; } showInfo(''); if (window.getSelection) { window.getSelection().removeAllRanges(); var range = document.createRange(); range.selectNode(document.getElementById('final_span')); window.getSelection().addRange(range); } if (create_email) { create_email = false; createEmail(); } }; recognition.onresult = function(event){ var interim_transcript = ''; for (var i = event.resultIndex; i < event.results.length; ++i) { if (event.results[i].isFinal) { final_transcript += event.results[i][0].transcript; } else { interim_transcript += event.results[i][0].transcript; } } final_transcript = capitalize(final_transcript); final_span.innerHTML = linebreak(final_transcript); interim_span.innerHTML = linebreak(interim_transcript); if (final_transcript || interim_transcript) { showButtons('inline-block'); getdata(final_transcript); // $.ajaxSetup({ // headers: { // 'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content') // } // }); // $.ajax({ // url: "{{url('/user/get/')}}"+"/"+final_transcript, // type: 'GET', // success: function(response){ // $('.container').empty(); // $('.container').append(response); // document.getElementById('chart_div').style.display = 'block'; // document.getElementById('chartd').style.display = 'block'; // } // }); } }; } function upgrade() { start_button.style.visibility = 'hidden'; showInfo('info_upgrade'); } var two_line = /\n\n/g; var one_line = /\n/g; function linebreak(s) { return s.replace(two_line, '<p></p>').replace(one_line, '<br>'); } var first_char = /\S/; function capitalize(s) { return s.replace(first_char, function(m) { return m.toUpperCase(); }); } function createEmail() { var n = final_transcript.indexOf('\n'); // if (n < 0 || n >= 80) { // n = 40 + final_transcript.substring(40).indexOf(' '); // } // var subject = encodeURI(final_transcript.substring(0, n)); // var body = encodeURI(final_transcript.substring(n + 1)); // window.location.href = 'mailto:?subject=' + subject + '&body=' + body; } function copyButton() { if (recognizing) { recognizing = false; recognition.stop(); } copy_button.style.display = 'none'; copy_info.style.display = 'inline-block'; showInfo(''); } function emailButton() { if (recognizing) { create_email = true; recognizing = false; recognition.stop(); } else { createEmail(); } email_button.style.display = 'none'; email_info.style.display = 'inline-block'; showInfo(''); } function startButton(event) { if (recognizing) { recognition.stop(); return; } final_transcript = ''; recognition.lang = select_dialect.value; recognition.start(); ignore_onend = false; final_span.innerHTML = ''; interim_span.innerHTML = ''; start_img.src = 'http://imanager.pmmsapp.com/mic-slash.gif'; showInfo('info_allow'); showButtons('none'); start_timestamp = event.timeStamp; } function showInfo(s) { if (s) { for (var child = info.firstChild; child; child = child.nextSibling) { if (child.style) { child.style.display = child.id == s ? 'inline' : 'none'; } } info.style.visibility = 'visible'; } else { info.style.visibility = 'hidden'; } } var current_style; function showButtons(style) { if (style == current_style) { return; } current_style = style; copy_button.style.display = style; email_button.style.display = style; copy_info.style.display = 'none'; email_info.style.display = 'none'; } function getdata(voice_text) { get_total_member(voice_text); total_members_mccwise(voice_text); // total_members_mccwise('mcc wise member'); } function get_total_member(data) { $('#total_member').hide(); $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content') } }); $.ajax({ url: "{{url('/admin/get-total-members')}}"+"/"+data, type: 'GET', success: function(response){ if(response.total_member_count) { $('#total_member').show(); $('#total_member_count').text(response.total_member_count); $('#total_member_text').text(response.total_member_text); } } }); } function total_members_mccwise(voice_text) { // console.log(voice_text); var data = {}; data._token = document.querySelector('meta[name="_token"]').getAttribute('content'); data.type = 'total_members'; data.voice_text = voice_text; $.ajax({ type: "POST", url: "{{ url('admin/get/total-members-mcc-wise') }}", data: data, success:function(res){ $('.pieChart2_div').hide(); if(res.status == 1){ $('.pieChart2_div').show(); var pieChartValues = []; var pieChartValues1 = []; for (var i = 0; i< res.mcc_wise_count.length; i++) { var col; if(i==0){col="#2968B0";}else if(i==1){col="#DA7221";} else if(i==2){col="#DC4B41";} else if(i==3){col="#159286";} else if(i==4){col="#2A87D9";} var temObj = { y: res.mcc_wise_count[i].member_count, mcc_name: res.mcc_wise_count[i].mcc_name, color: col, legendText: res.mcc_wise_count[i].mcc_name } pieChartValues.push(temObj); pieChartValues1.push(temObj); renderPieChart2(pieChartValues); renderBarChart1(pieChartValues1); } } } }); } function renderPieChart2(values) { var chart = new CanvasJS.Chart("pieChart2", { backgroundColor: "white", colorSet: "colorSet2", height:300, width:350, legend: { horizontalAlign: "left", verticalAlign: "top", }, animationEnabled: true, data: [{ indexLabelFontSize: 12, indexLabelFontFamily: "Monospace", indexLabelFontWeight:"bold", indexLabelPlacement: "outside", type: "pie", radius: 70, toolTipContent: "<strong>{mcc_name}</strong>", indexLabel: "#percent%", showInLegend: true, dataPoints: values }] }); chart.render(); } function renderBarChart1(values) { var chart = new CanvasJS.Chart("barChart1", { backgroundColor: "white", colorSet: "colorSet2", height:300, width:350, legend: { horizontalAlign: "left", verticalAlign: "top", fontSize:12 }, animationEnabled: true, data: [{ indexLabelFontSize: 12, indexLabelFontFamily: "Monospace", indexLabelFontWeight:"bold", indexLabelPlacement: "outside", type: "bar", toolTipContent: "<strong>{y}</strong>", indexLabel: "{mcc_name}-{y}", showInLegend: true, legendText:"", dataPoints: values }] }); chart.render(); } </script> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> function pieChart(data) { $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content') } }); $.ajax({ url: "{{url('/user/get/piechart/')}}"+"/"+data, type: 'GET', success: function(response){ var totalStock = response['stockTotal']; var totalSale = response['saleTotal']; var totalPurchase = response['purchaseTotal']; var totalToken = response['tokenTotal']; var totalInvoice = response['invoiceTotal']; google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable([ ['Task', 'product details'], ['Stock', parseInt(totalStock)], ['Sale', parseInt(totalSale)], ['Purchase', parseInt(totalPurchase)], ['Token', parseInt(totalToken)], ['Invoice', parseInt(totalInvoice)] ]); var options = { title: 'Product Details' }; var chart = new google.visualization.PieChart(document.getElementById('piechart')); chart.draw(data, options); } } }); } </script> @endsection