AdminLTE/dist/js/pages/dashboard.js

265 lines
7.4 KiB
JavaScript
Raw Normal View History

2015-02-01 21:25:09 +00:00
/*
* Author: Abdullah A Almsaeed
* Date: 4 Jan 2014
* Description:
* This is a demo file used only for the main dashboard (index.html)
**/
$(function () {
2018-03-17 17:07:55 +00:00
'use strict'
2015-07-25 19:06:16 +00:00
2018-02-03 23:45:19 +00:00
// Make the dashboard widgets sortable Using jquery UI
2018-03-17 17:07:55 +00:00
$('.connectedSortable').sortable({
placeholder : 'sort-highlight',
connectWith : '.connectedSortable',
handle : '.card-header, .nav-tabs',
2015-02-01 21:25:09 +00:00
forcePlaceholderSize: true,
2018-03-17 17:07:55 +00:00
zIndex : 999999
})
$('.connectedSortable .card-header, .connectedSortable .nav-tabs-custom').css('cursor', 'move')
2015-07-12 13:42:55 +00:00
2018-02-03 23:45:19 +00:00
// jQuery UI sortable for the todo list
2018-03-17 17:07:55 +00:00
$('.todo-list').sortable({
placeholder : 'sort-highlight',
handle : '.handle',
2015-02-01 21:25:09 +00:00
forcePlaceholderSize: true,
2018-03-17 17:07:55 +00:00
zIndex : 999999
})
2015-02-01 21:25:09 +00:00
2018-02-03 23:45:19 +00:00
// bootstrap WYSIHTML5 - text editor
$('.textarea').summernote()
2015-02-01 21:25:09 +00:00
2015-07-25 19:06:16 +00:00
$('.daterange').daterangepicker({
2018-03-17 17:07:55 +00:00
ranges : {
'Today' : [moment(), moment()],
'Yesterday' : [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days' : [moment().subtract(6, 'days'), moment()],
2015-07-25 19:06:16 +00:00
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
2018-03-17 17:07:55 +00:00
'This Month' : [moment().startOf('month'), moment().endOf('month')],
'Last Month' : [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
2015-07-25 19:06:16 +00:00
},
startDate: moment().subtract(29, 'days'),
2018-03-17 17:07:55 +00:00
endDate : moment()
2015-07-25 19:06:16 +00:00
}, function (start, end) {
2018-03-17 17:07:55 +00:00
window.alert('You chose: ' + start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'))
})
2015-02-01 21:25:09 +00:00
/* jQueryKnob */
2018-03-17 17:07:55 +00:00
$('.knob').knob()
2015-02-01 21:25:09 +00:00
2018-02-03 23:45:19 +00:00
// jvectormap data
2015-02-01 21:25:09 +00:00
var visitorsData = {
2018-03-17 17:07:55 +00:00
'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
}
2018-02-03 23:45:19 +00:00
// World map by jvectormap
2015-02-01 21:25:09 +00:00
$('#world-map').vectorMap({
map : 'world_en',
2018-03-17 17:07:55 +00:00
backgroundColor : 'transparent',
regionStyle : {
2015-02-01 21:25:09 +00:00
initial: {
2018-03-17 17:07:55 +00:00
fill : 'rgba(255, 255, 255, 0.7)',
'fill-opacity' : 1,
stroke : 'rgba(0,0,0,.2)',
'stroke-width' : 1,
'stroke-opacity': 1
2015-02-01 21:25:09 +00:00
}
},
2018-03-17 17:07:55 +00:00
series : {
2015-02-01 21:25:09 +00:00
regions: [{
2018-03-17 17:07:55 +00:00
values : visitorsData,
scale : ['#ffffff', '#0154ad'],
2015-09-19 18:05:54 +00:00
normalizeFunction: 'polynomial'
}]
2015-02-01 21:25:09 +00:00
},
onRegionLabelShow: function (e, el, code) {
2018-03-17 17:07:55 +00:00
if (typeof visitorsData[code] != 'undefined')
el.html(el.html() + ': ' + visitorsData[code] + ' new visitors')
2015-02-01 21:25:09 +00:00
}
2018-03-17 17:07:55 +00:00
})
2015-02-01 21:25:09 +00:00
2018-02-03 23:45:19 +00:00
// 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]);
2015-02-01 21:25:09 +00:00
2018-02-03 23:45:19 +00:00
// The Calender
$('#calendar').datetimepicker({
format: 'L',
inline: true
})
2015-02-01 21:25:09 +00:00
2018-02-03 23:45:19 +00:00
// SLIMSCROLL FOR CHAT WIDGET
$('#chat-box').overlayScrollbars({
2015-02-01 21:25:09 +00:00
height: '250px'
2018-03-17 17:07:55 +00:00
})
2015-02-01 21:25:09 +00:00
/* Chart.js Charts */
2015-02-01 21:25:09 +00:00
// Sales chart
var salesChartCanvas = document.getElementById('revenue-chart-canvas').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.
var salesChart = new Chart(salesChartCanvas, {
type: 'line',
data: salesChartData,
options: salesChartOptions
}
)
2015-02-01 21:25:09 +00:00
2018-02-03 23:45:19 +00:00
// Donut Chart
var pieChartCanvas = $('#sales-chart-canvas').get(0).getContext('2d')
var pieData = {
labels: [
'Instore Sales',
'Download Sales',
'Mail-Order Sales',
2015-02-01 21:25:09 +00:00
],
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.
var pieChart = new Chart(pieChartCanvas, {
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.
var salesGraphChart = new Chart(salesGraphChartCanvas, {
type: 'line',
data: salesGraphChartData,
options: salesGraphChartOptions
}
)
2015-02-01 21:25:09 +00:00
2018-03-17 17:07:55 +00:00
})