212 lines
6.0 KiB
JavaScript
212 lines
6.0 KiB
JavaScript
|
/*
|
||
|
* Author: Abdullah A Almsaeed
|
||
|
* Date: 4 Jan 2014
|
||
|
* Description:
|
||
|
* This is a demo file used only for the main dashboard (index.html)
|
||
|
**/
|
||
|
|
||
|
$(function () {
|
||
|
|
||
|
'use strict';
|
||
|
|
||
|
// Make the dashboard widgets sortable Using jquery UI
|
||
|
$('.connectedSortable').sortable({
|
||
|
containment : $('section.content'),
|
||
|
placeholder : 'sort-highlight',
|
||
|
connectWith : '.connectedSortable',
|
||
|
handle : '.box-header, .nav-tabs',
|
||
|
forcePlaceholderSize: true,
|
||
|
zIndex : 999999
|
||
|
});
|
||
|
$('.connectedSortable .box-header, .connectedSortable .nav-tabs-custom').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').wysihtml5();
|
||
|
|
||
|
$('.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) {
|
||
|
window.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 : 'world_mill_en',
|
||
|
backgroundColor : 'transparent',
|
||
|
regionStyle : {
|
||
|
initial: {
|
||
|
fill : '#e4e4e4',
|
||
|
'fill-opacity' : 1,
|
||
|
stroke : 'none',
|
||
|
'stroke-width' : 0,
|
||
|
'stroke-opacity': 1
|
||
|
}
|
||
|
},
|
||
|
series : {
|
||
|
regions: [
|
||
|
{
|
||
|
values : visitorsData,
|
||
|
scale : ['#92c1dc', '#ebf4f9'],
|
||
|
normalizeFunction: 'polynomial'
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
onRegionLabelShow: function (e, el, code) {
|
||
|
if (typeof visitorsData[code] != 'undefined')
|
||
|
el.html(el.html() + ': ' + visitorsData[code] + ' new visitors');
|
||
|
}
|
||
|
});
|
||
|
|
||
|
// Sparkline charts
|
||
|
var myvalues = [1000, 1200, 920, 927, 931, 1027, 819, 930, 1021];
|
||
|
$('#sparkline-1').sparkline(myvalues, {
|
||
|
type : 'line',
|
||
|
lineColor: '#92c1dc',
|
||
|
fillColor: '#ebf4f9',
|
||
|
height : '50',
|
||
|
width : '80'
|
||
|
});
|
||
|
myvalues = [515, 519, 520, 522, 652, 810, 370, 627, 319, 630, 921];
|
||
|
$('#sparkline-2').sparkline(myvalues, {
|
||
|
type : 'line',
|
||
|
lineColor: '#92c1dc',
|
||
|
fillColor: '#ebf4f9',
|
||
|
height : '50',
|
||
|
width : '80'
|
||
|
});
|
||
|
myvalues = [15, 19, 20, 22, 33, 27, 31, 27, 19, 30, 21];
|
||
|
$('#sparkline-3').sparkline(myvalues, {
|
||
|
type : 'line',
|
||
|
lineColor: '#92c1dc',
|
||
|
fillColor: '#ebf4f9',
|
||
|
height : '50',
|
||
|
width : '80'
|
||
|
});
|
||
|
|
||
|
// The Calender
|
||
|
$('#calendar').datepicker();
|
||
|
|
||
|
// SLIMSCROLL FOR CHAT WIDGET
|
||
|
$('#chat-box').slimScroll({
|
||
|
height: '250px'
|
||
|
});
|
||
|
|
||
|
/* Morris.js Charts */
|
||
|
// Sales chart
|
||
|
var area = new Morris.Area({
|
||
|
element : 'revenue-chart',
|
||
|
resize : true,
|
||
|
data : [
|
||
|
{ y: '2011 Q1', item1: 2666, item2: 2666 },
|
||
|
{ y: '2011 Q2', item1: 2778, item2: 2294 },
|
||
|
{ y: '2011 Q3', item1: 4912, item2: 1969 },
|
||
|
{ y: '2011 Q4', item1: 3767, item2: 3597 },
|
||
|
{ y: '2012 Q1', item1: 6810, item2: 1914 },
|
||
|
{ y: '2012 Q2', item1: 5670, item2: 4293 },
|
||
|
{ y: '2012 Q3', item1: 4820, item2: 3795 },
|
||
|
{ y: '2012 Q4', item1: 15073, item2: 5967 },
|
||
|
{ y: '2013 Q1', item1: 10687, item2: 4460 },
|
||
|
{ y: '2013 Q2', item1: 8432, item2: 5713 }
|
||
|
],
|
||
|
xkey : 'y',
|
||
|
ykeys : ['item1', 'item2'],
|
||
|
labels : ['Item 1', 'Item 2'],
|
||
|
lineColors: ['#a0d0e0', '#3c8dbc'],
|
||
|
hideHover : 'auto'
|
||
|
});
|
||
|
var line = new Morris.Line({
|
||
|
element : 'line-chart',
|
||
|
resize : true,
|
||
|
data : [
|
||
|
{ y: '2011 Q1', item1: 2666 },
|
||
|
{ y: '2011 Q2', item1: 2778 },
|
||
|
{ y: '2011 Q3', item1: 4912 },
|
||
|
{ y: '2011 Q4', item1: 3767 },
|
||
|
{ y: '2012 Q1', item1: 6810 },
|
||
|
{ y: '2012 Q2', item1: 5670 },
|
||
|
{ y: '2012 Q3', item1: 4820 },
|
||
|
{ y: '2012 Q4', item1: 15073 },
|
||
|
{ y: '2013 Q1', item1: 10687 },
|
||
|
{ y: '2013 Q2', item1: 8432 }
|
||
|
],
|
||
|
xkey : 'y',
|
||
|
ykeys : ['item1'],
|
||
|
labels : ['Item 1'],
|
||
|
lineColors : ['#efefef'],
|
||
|
lineWidth : 2,
|
||
|
hideHover : 'auto',
|
||
|
gridTextColor : '#fff',
|
||
|
gridStrokeWidth : 0.4,
|
||
|
pointSize : 4,
|
||
|
pointStrokeColors: ['#efefef'],
|
||
|
gridLineColor : '#efefef',
|
||
|
gridTextFamily : 'Open Sans',
|
||
|
gridTextSize : 10
|
||
|
});
|
||
|
|
||
|
// Donut Chart
|
||
|
var donut = new Morris.Donut({
|
||
|
element : 'sales-chart',
|
||
|
resize : true,
|
||
|
colors : ['#3c8dbc', '#f56954', '#00a65a'],
|
||
|
data : [
|
||
|
{ label: 'Download Sales', value: 12 },
|
||
|
{ label: 'In-Store Sales', value: 30 },
|
||
|
{ label: 'Mail-Order Sales', value: 20 }
|
||
|
],
|
||
|
hideHover: 'auto'
|
||
|
});
|
||
|
|
||
|
// Fix for charts under tabs
|
||
|
$('.box ul.nav a').on('shown.bs.tab', function () {
|
||
|
area.redraw();
|
||
|
donut.redraw();
|
||
|
line.redraw();
|
||
|
});
|
||
|
|
||
|
/* The todo list plugin */
|
||
|
$('.todo-list').todoList({
|
||
|
onCheck : function () {
|
||
|
window.console.log($(this), 'The element has been checked');
|
||
|
},
|
||
|
onUnCheck: function () {
|
||
|
window.console.log($(this), 'The element has been unchecked');
|
||
|
}
|
||
|
});
|
||
|
|
||
|
});
|