text: /*
   * Author: Abdullah A Almsaeed
   * Date: 4 Jan 2014
   * Description:
   *      This is a demo file used only for the main dashboard (index.html)
   **/
  
  /* global moment:false, Chart:false, Sparkline:false */
  
  $(function () {
    'use strict'
  
    // Make the dashboard widgets sortable Using jquery UI
    $('.connectedSortable').sortable({
      placeholder: 'sort-highlight',
      connectWith: '.connectedSortable',
      handle: '.card-header, .nav-tabs',
      forcePlaceholderSize: true,
      zIndex: 999999
    })
    $('.connectedSortable .card-header').css('cursor', 'move')
  
    // jQuery UI sortable for the todo list
    $('.todo-list').sortable({
      placeholder: 'sort-highlight',
      handle: '.handle',
      forcePlaceholderSize: true,
      zIndex: 999999
    })
  
    // bootstrap WYSIHTML5 - text editor
    $('.textarea').summernote()
  
    $('.daterange').daterangepicker({
      ranges: {
        Today: [moment(), moment()],
        Yesterday: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
        'Last 7 Days': [moment().subtract(6, 'days'), moment()],
        'Last 30 Days': [moment().subtract(29, 'days'), moment()],
        'This Month': [moment().startOf('month'), moment().endOf('month')],
        'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
      },
      startDate: moment().subtract(29, 'days'),
      endDate: moment()
    }, function (start, end) {
      // eslint-disable-next-line no-alert
      alert('You chose: ' + start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'))
    })
  
    /* jQueryKnob */
    /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  
    // $('.knob').knob()
  
    // // jvectormap data
    // var visitorsData = {
    //   US: 398, // USA
    //   SA: 400, // Saudi Arabia
    //   CA: 1000, // Canada
    //   DE: 500, // Germany
    //   FR: 760, // France
    //   CN: 300, // China
    //   AU: 700, // Australia
    //   BR: 600, // Brazil
    //   IN: 800, // India
    //   GB: 320, // Great Britain
    //   RU: 3000 // Russia
    // }
    // // World map by jvectormap
    // $('#world-map').vectorMap({
    //   map: 'usa_en',
    //   backgroundColor: 'transparent',
    //   regionStyle: {
    //     initial: {
    //       fill: 'rgba(255, 255, 255, 0.7)',
    //       'fill-opacity': 1,
    //       stroke: 'rgba(0,0,0,.2)',
    //       'stroke-width': 1,
    //       'stroke-opacity': 1
    //     }
    //   },
    //   series: {
    //     regions: [{
    //       values: visitorsData,
    //       scale: ['#ffffff', '#0154ad'],
    //       normalizeFunction: 'polynomial'
    //     }]
    //   },
    //   onRegionLabelShow: function (e, el, code) {
    //     if (typeof visitorsData[code] !== 'undefined') {
    //       el.html(el.html() + ': ' + visitorsData[code] + ' new visitors')
    //     }
    //   }
    // })
  
    // Sparkline charts
    // var sparkline1 = new Sparkline($('#sparkline-1')[0], { width: 80, height: 50, lineColor: '#92c1dc', endColor: '#ebf4f9' })
    // var sparkline2 = new Sparkline($('#sparkline-2')[0], { width: 80, height: 50, lineColor: '#92c1dc', endColor: '#ebf4f9' })
    // var sparkline3 = new Sparkline($('#sparkline-3')[0], { width: 80, height: 50, lineColor: '#92c1dc', endColor: '#ebf4f9' })
  
    // sparkline1.draw([1000, 1200, 920, 927, 931, 1027, 819, 930, 1021])
    // sparkline2.draw([515, 519, 520, 522, 652, 810, 370, 627, 319, 630, 921])
    // sparkline3.draw([15, 19, 20, 22, 33, 27, 31, 27, 19, 30, 21])
    /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  
  
    // The Calender
    $('#calendar').datetimepicker({
      format: 'L',
      inline: true
    })
  
    // SLIMSCROLL FOR CHAT WIDGET
    $('#chat-box').overlayScrollbars({
      height: '250px'
    })
  
    /* Chart.js Charts */
    // Sales chart
    var salesChartCanvas = document.getElementById('revenue-chart-canvas').getContext('2d')
    // var salesChartCanvas = document.getElementById('revenue-chart').getContext('2d')
    // $('#revenue-chart').get(0).getContext('2d');
  
    var salesChartData = {
      labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
      datasets: [
        {
          label: 'Digital Goods',
          backgroundColor: 'rgba(60,141,188,0.9)',
          borderColor: 'rgba(60,141,188,0.8)',
          pointRadius: false,
          pointColor: '#3b8bba',
          pointStrokeColor: 'rgba(60,141,188,1)',
          pointHighlightFill: '#fff',
          pointHighlightStroke: 'rgba(60,141,188,1)',
          data: [28, 48, 40, 19, 86, 27, 90]
        },
        {
          label: 'Electronics',
          backgroundColor: 'rgba(210, 214, 222, 1)',
          borderColor: 'rgba(210, 214, 222, 1)',
          pointRadius: false,
          pointColor: 'rgba(210, 214, 222, 1)',
          pointStrokeColor: '#c1c7d1',
          pointHighlightFill: '#fff',
          pointHighlightStroke: 'rgba(220,220,220,1)',
          data: [65, 59, 80, 81, 56, 55, 40]
        }
      ]
    }
  
    var salesChartOptions = {
      maintainAspectRatio: false,
      responsive: true,
      legend: {
        display: false
      },
      scales: {
        xAxes: [{
          gridLines: {
            display: false
          }
        }],
        yAxes: [{
          gridLines: {
            display: false
          }
        }]
      }
    }
  
    // This will get the first returned node in the jQuery collection.
    // eslint-disable-next-line no-unused-vars
    var salesChart = new Chart(salesChartCanvas, { // lgtm[js/unused-local-variable]
      type: 'line',
      data: salesChartData,
      options: salesChartOptions
    })
  
    // Donut Chart
    var pieChartCanvas = $('#sales-chart-canvas').get(0).getContext('2d')
    var pieData = {
      labels: [
        'Instore Sales',
        'Download Sales',
        'Mail-Order Sales'
      ],
      datasets: [
        {
          data: [30, 12, 20],
          backgroundColor: ['#f56954', '#00a65a', '#f39c12']
        }
      ]
    }
    var pieOptions = {
      legend: {
        display: false
      },
      maintainAspectRatio: false,
      responsive: true
    }
    // Create pie or douhnut chart
    // You can switch between pie and douhnut using the method below.
    // eslint-disable-next-line no-unused-vars
    var pieChart = new Chart(pieChartCanvas, { // lgtm[js/unused-local-variable]
      type: 'doughnut',
      data: pieData,
      options: pieOptions
    })
  
    // Sales graph chart
    var salesGraphChartCanvas = $('#line-chart').get(0).getContext('2d')
    // $('#revenue-chart').get(0).getContext('2d');
  
    var salesGraphChartData = {
      labels: ['2011 Q1', '2011 Q2', '2011 Q3', '2011 Q4', '2012 Q1', '2012 Q2', '2012 Q3', '2012 Q4', '2013 Q1', '2013 Q2'],
      datasets: [
        {
          label: 'Digital Goods',
          fill: false,
          borderWidth: 2,
          lineTension: 0,
          spanGaps: true,
          borderColor: '#efefef',
          pointRadius: 3,
          pointHoverRadius: 7,
          pointColor: '#efefef',
          pointBackgroundColor: '#efefef',
          data: [2666, 2778, 4912, 3767, 6810, 5670, 4820, 15073, 10687, 8432]
        }
      ]
    }
  
    var salesGraphChartOptions = {
      maintainAspectRatio: false,
      responsive: true,
      legend: {
        display: false
      },
      scales: {
        xAxes: [{
          ticks: {
            fontColor: '#efefef'
          },
          gridLines: {
            display: false,
            color: '#efefef',
            drawBorder: false
          }
        }],
        yAxes: [{
          ticks: {
            stepSize: 5000,
            fontColor: '#efefef'
          },
          gridLines: {
            display: true,
            color: '#efefef',
            drawBorder: false
          }
        }]
      }
    }
  
    // This will get the first returned node in the jQuery collection.
    // eslint-disable-next-line no-unused-vars
    var salesGraphChart = new Chart(salesGraphChartCanvas, { // lgtm[js/unused-local-variable]
      type: 'line',
      data: salesGraphChartData,
      options: salesGraphChartOptions
    })
  })
  