be_pages_ecom_dashboard.js 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /*
  2. * Document : be_pages_ecom_dashboard.js
  3. * Author : pixelcave
  4. * Description: Custom JS code used in e-Commerce Dashboard Page
  5. */
  6. var BePagesEcomDashboard = function() {
  7. // Chart.js Charts, for more examples you can check out http://www.chartjs.org/docs
  8. var initEcomChartJS = function () {
  9. // Set Global Chart.js configuration
  10. Chart.defaults.global.defaultFontColor = '#555555';
  11. Chart.defaults.scale.gridLines.color = "transparent";
  12. Chart.defaults.scale.gridLines.zeroLineColor = "transparent";
  13. Chart.defaults.scale.display = false;
  14. Chart.defaults.scale.ticks.beginAtZero = true;
  15. Chart.defaults.scale.ticks.suggestedMax = 4300;
  16. Chart.defaults.global.elements.line.borderWidth = 2;
  17. Chart.defaults.global.elements.point.radius = 5;
  18. Chart.defaults.global.elements.point.hoverRadius = 7;
  19. Chart.defaults.global.tooltips.cornerRadius = 3;
  20. Chart.defaults.global.legend.display = false;
  21. // Chart Containers
  22. var chartEcomEarningsCon = jQuery('.js-chartjs-ecom-dashboard-earnings');
  23. var chartEcomOrdersCon = jQuery('.js-chartjs-ecom-dashboard-orders');
  24. // Charts Variables
  25. var chartEcomOrders, chartEcomEarnings;
  26. // Charts Data
  27. var chartEcomEarningsData = {
  28. labels: ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'],
  29. datasets: [
  30. {
  31. label: 'Earnings',
  32. fill: true,
  33. backgroundColor: 'rgba(188,38,211,.25)',
  34. borderColor: 'rgba(188,38,211,1)',
  35. pointBackgroundColor: 'rgba(188,38,211,1)',
  36. pointBorderColor: '#fff',
  37. pointHoverBackgroundColor: '#fff',
  38. pointHoverBorderColor: 'rgba(188,38,211,1)',
  39. data: [1780, 2440, 3252, 2109, 1892, 3890, 1820]
  40. }
  41. ]
  42. };
  43. var chartEcomOrdersData = {
  44. labels: ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'],
  45. datasets: [
  46. {
  47. label: 'Orders',
  48. fill: true,
  49. backgroundColor: 'rgba(112,178,156,.25)',
  50. borderColor: 'rgba(112,178,156,1)',
  51. pointBackgroundColor: 'rgba(112,178,156,1)',
  52. pointBorderColor: '#fff',
  53. pointHoverBackgroundColor: '#fff',
  54. pointHoverBorderColor: 'rgba(112,178,156,1)',
  55. data: [20, 27, 40, 19, 23, 38, 16]
  56. }
  57. ]
  58. };
  59. // Init Charts
  60. if (chartEcomEarningsCon.length ) {
  61. chartEcomEarnings = new Chart(chartEcomEarningsCon, { type: 'line', data: chartEcomEarningsData, options: {
  62. tooltips: {
  63. callbacks: {
  64. label: function(tooltipItems, data) {
  65. return data.datasets[tooltipItems.datasetIndex].label +': $' + tooltipItems.yLabel;
  66. }
  67. }
  68. }
  69. }});
  70. }
  71. if (chartEcomOrdersCon.length ) {
  72. Chart.defaults.scale.ticks.suggestedMax = 60;
  73. chartEcomOrders = new Chart(chartEcomOrdersCon, { type: 'line', data: chartEcomOrdersData});
  74. }
  75. };
  76. return {
  77. init: function () {
  78. // Init Chart.js Charts
  79. initEcomChartJS();
  80. }
  81. };
  82. }();
  83. // Initialize when page loads
  84. jQuery(function(){ BePagesEcomDashboard.init(); });