Refactor project structure
This commit is contained in:
1130
web/themejs/AdminLTE/app.js
Normal file
1130
web/themejs/AdminLTE/app.js
Normal file
File diff suppressed because it is too large
Load Diff
306
web/themejs/AdminLTE/dashboard.js
Normal file
306
web/themejs/AdminLTE/dashboard.js
Normal file
@@ -0,0 +1,306 @@
|
||||
/*
|
||||
* 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({
|
||||
placeholder: "sort-highlight",
|
||||
connectWith: ".connectedSortable",
|
||||
handle: ".box-header, .nav-tabs",
|
||||
forcePlaceholderSize: true,
|
||||
zIndex: 999999
|
||||
}).disableSelection();
|
||||
$(".box-header, .nav-tabs").css("cursor","move");
|
||||
//jQuery UI sortable for the todo list
|
||||
$(".todo-list").sortable({
|
||||
placeholder: "sort-highlight",
|
||||
handle: ".handle",
|
||||
forcePlaceholderSize: true,
|
||||
zIndex: 999999
|
||||
}).disableSelection();;
|
||||
|
||||
//bootstrap WYSIHTML5 - text editor
|
||||
$(".textarea").wysihtml5();
|
||||
|
||||
$('.daterange').daterangepicker(
|
||||
{
|
||||
ranges: {
|
||||
'Today': [moment(), moment()],
|
||||
'Yesterday': [moment().subtract('days', 1), moment().subtract('days', 1)],
|
||||
'Last 7 Days': [moment().subtract('days', 6), moment()],
|
||||
'Last 30 Days': [moment().subtract('days', 29), moment()],
|
||||
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
||||
'Last Month': [moment().subtract('month', 1).startOf('month'), moment().subtract('month', 1).endOf('month')]
|
||||
},
|
||||
startDate: moment().subtract('days', 29),
|
||||
endDate: moment()
|
||||
},
|
||||
function(start, end) {
|
||||
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: "#fff",
|
||||
regionStyle: {
|
||||
initial: {
|
||||
fill: '#e4e4e4',
|
||||
"fill-opacity": 1,
|
||||
stroke: 'none',
|
||||
"stroke-width": 0,
|
||||
"stroke-opacity": 1
|
||||
}
|
||||
},
|
||||
series: {
|
||||
regions: [{
|
||||
values: visitorsData,
|
||||
scale: ["#3c8dbc", "#2D79A6"], //['#3E5E6B', '#A6BAC2'],
|
||||
normalizeFunction: 'polynomial'
|
||||
}]
|
||||
},
|
||||
onRegionLabelShow: function(e, el, code) {
|
||||
if (typeof visitorsData[code] != "undefined")
|
||||
el.html(el.html() + ': ' + visitorsData[code] + ' new visitors');
|
||||
}
|
||||
});
|
||||
|
||||
//Sparkline charts
|
||||
var myvalues = [15, 19, 20, -22, -33, 27, 31, 27, 19, 30, 21];
|
||||
$('#sparkline-1').sparkline(myvalues, {
|
||||
type: 'bar',
|
||||
barColor: '#00a65a',
|
||||
negBarColor: "#f56954",
|
||||
height: '20px'
|
||||
});
|
||||
myvalues = [15, 19, 20, 22, -2, -10, -7, 27, 19, 30, 21];
|
||||
$('#sparkline-2').sparkline(myvalues, {
|
||||
type: 'bar',
|
||||
barColor: '#00a65a',
|
||||
negBarColor: "#f56954",
|
||||
height: '20px'
|
||||
});
|
||||
myvalues = [15, -19, -20, 22, 33, 27, 31, 27, 19, 30, 21];
|
||||
$('#sparkline-3').sparkline(myvalues, {
|
||||
type: 'bar',
|
||||
barColor: '#00a65a',
|
||||
negBarColor: "#f56954",
|
||||
height: '20px'
|
||||
});
|
||||
myvalues = [15, 19, 20, 22, 33, -27, -31, 27, 19, 30, 21];
|
||||
$('#sparkline-4').sparkline(myvalues, {
|
||||
type: 'bar',
|
||||
barColor: '#00a65a',
|
||||
negBarColor: "#f56954",
|
||||
height: '20px'
|
||||
});
|
||||
myvalues = [15, 19, 20, 22, 33, 27, 31, -27, -19, 30, 21];
|
||||
$('#sparkline-5').sparkline(myvalues, {
|
||||
type: 'bar',
|
||||
barColor: '#00a65a',
|
||||
negBarColor: "#f56954",
|
||||
height: '20px'
|
||||
});
|
||||
myvalues = [15, 19, -20, 22, -13, 27, 31, 27, 19, 30, 21];
|
||||
$('#sparkline-6').sparkline(myvalues, {
|
||||
type: 'bar',
|
||||
barColor: '#00a65a',
|
||||
negBarColor: "#f56954",
|
||||
height: '20px'
|
||||
});
|
||||
|
||||
//Date for the calendar events (dummy data)
|
||||
var date = new Date();
|
||||
var d = date.getDate(),
|
||||
m = date.getMonth(),
|
||||
y = date.getFullYear();
|
||||
|
||||
//Calendar
|
||||
$('#calendar').fullCalendar({
|
||||
editable: true, //Enable drag and drop
|
||||
events: [
|
||||
{
|
||||
title: 'All Day Event',
|
||||
start: new Date(y, m, 1),
|
||||
backgroundColor: "#3c8dbc", //light-blue
|
||||
borderColor: "#3c8dbc" //light-blue
|
||||
},
|
||||
{
|
||||
title: 'Long Event',
|
||||
start: new Date(y, m, d - 5),
|
||||
end: new Date(y, m, d - 2),
|
||||
backgroundColor: "#f39c12", //yellow
|
||||
borderColor: "#f39c12" //yellow
|
||||
},
|
||||
{
|
||||
title: 'Meeting',
|
||||
start: new Date(y, m, d, 10, 30),
|
||||
allDay: false,
|
||||
backgroundColor: "#0073b7", //Blue
|
||||
borderColor: "#0073b7" //Blue
|
||||
},
|
||||
{
|
||||
title: 'Lunch',
|
||||
start: new Date(y, m, d, 12, 0),
|
||||
end: new Date(y, m, d, 14, 0),
|
||||
allDay: false,
|
||||
backgroundColor: "#00c0ef", //Info (aqua)
|
||||
borderColor: "#00c0ef" //Info (aqua)
|
||||
},
|
||||
{
|
||||
title: 'Birthday Party',
|
||||
start: new Date(y, m, d + 1, 19, 0),
|
||||
end: new Date(y, m, d + 1, 22, 30),
|
||||
allDay: false,
|
||||
backgroundColor: "#00a65a", //Success (green)
|
||||
borderColor: "#00a65a" //Success (green)
|
||||
},
|
||||
{
|
||||
title: 'Click for Google',
|
||||
start: new Date(y, m, 28),
|
||||
end: new Date(y, m, 29),
|
||||
url: 'http://google.com/',
|
||||
backgroundColor: "#f56954", //red
|
||||
borderColor: "#f56954" //red
|
||||
}
|
||||
],
|
||||
buttonText: {//This is to add icons to the visible buttons
|
||||
prev: "<span class='fa fa-caret-left'></span>",
|
||||
next: "<span class='fa fa-caret-right'></span>",
|
||||
today: 'today',
|
||||
month: 'month',
|
||||
week: 'week',
|
||||
day: 'day'
|
||||
},
|
||||
header: {
|
||||
left: 'title',
|
||||
center: '',
|
||||
right: 'prev,next'
|
||||
}
|
||||
});
|
||||
|
||||
//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'
|
||||
});
|
||||
//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'
|
||||
});
|
||||
//Bar chart
|
||||
var bar = new Morris.Bar({
|
||||
element: 'bar-chart',
|
||||
resize: true,
|
||||
data: [
|
||||
{y: '2006', a: 100, b: 90},
|
||||
{y: '2007', a: 75, b: 65},
|
||||
{y: '2008', a: 50, b: 40},
|
||||
{y: '2009', a: 75, b: 65},
|
||||
{y: '2010', a: 50, b: 40},
|
||||
{y: '2011', a: 75, b: 65},
|
||||
{y: '2012', a: 100, b: 90}
|
||||
],
|
||||
barColors: ['#00a65a', '#f56954'],
|
||||
xkey: 'y',
|
||||
ykeys: ['a', 'b'],
|
||||
labels: ['CPU', 'DISK'],
|
||||
hideHover: 'auto'
|
||||
});
|
||||
//Fix for charts under tabs
|
||||
$('.box ul.nav a').on('shown.bs.tab', function(e) {
|
||||
area.redraw();
|
||||
donut.redraw();
|
||||
});
|
||||
|
||||
|
||||
/* BOX REFRESH PLUGIN EXAMPLE (usage with morris charts) */
|
||||
$("#loading-example").boxRefresh({
|
||||
source: "ajax/dashboard-boxrefresh-demo.php",
|
||||
onLoadDone: function(box) {
|
||||
bar = new Morris.Bar({
|
||||
element: 'bar-chart',
|
||||
resize: true,
|
||||
data: [
|
||||
{y: '2006', a: 100, b: 90},
|
||||
{y: '2007', a: 75, b: 65},
|
||||
{y: '2008', a: 50, b: 40},
|
||||
{y: '2009', a: 75, b: 65},
|
||||
{y: '2010', a: 50, b: 40},
|
||||
{y: '2011', a: 75, b: 65},
|
||||
{y: '2012', a: 100, b: 90}
|
||||
],
|
||||
barColors: ['#00a65a', '#f56954'],
|
||||
xkey: 'y',
|
||||
ykeys: ['a', 'b'],
|
||||
labels: ['CPU', 'DISK'],
|
||||
hideHover: 'auto'
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
/* The todo list plugin */
|
||||
$(".todo-list").todolist({
|
||||
onCheck: function(ele) {
|
||||
//console.log("The element has been checked")
|
||||
},
|
||||
onUncheck: function(ele) {
|
||||
//console.log("The element has been unchecked")
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user