dashstrap 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +19 -0
- data/.yardopts +1 -0
- data/Gemfile +8 -0
- data/LICENSE +339 -0
- data/README.md +40 -0
- data/Rakefile +13 -0
- data/TODO.org +3 -0
- data/app/assets/fonts/BYekan.eot +0 -0
- data/app/assets/fonts/BYekan.ttf +0 -0
- data/app/assets/fonts/BYekan.woff +0 -0
- data/app/assets/javascripts/dashstrap/application.js +2 -0
- data/app/assets/javascripts/dashstrap/functions.js +27 -0
- data/app/assets/javascripts/dashstrap/locales/translations.fa.js +5 -0
- data/app/assets/javascripts/dashstrap/modules/init.js +1 -0
- data/app/assets/javascripts/dashstrap/modules/list-view.js +376 -0
- data/app/assets/javascripts/dashstrap/modules/modules.js +79 -0
- data/app/assets/javascripts/dashstrap/modules/navigation.js +24 -0
- data/app/assets/javascripts/locales/translations.fa.js +5 -0
- data/app/assets/locales/templates.pot +92 -0
- data/app/assets/locales/translate.fa.pot +93 -0
- data/app/assets/stylesheets/dashstrap/ltr/application.css +17 -0
- data/app/assets/stylesheets/dashstrap/ltr/ltr.scss +15 -0
- data/app/assets/stylesheets/dashstrap/main.css.scss +63 -0
- data/app/assets/stylesheets/dashstrap/rtl/#application.css# +4 -0
- data/app/assets/stylesheets/dashstrap/rtl/application.css +18 -0
- data/app/assets/stylesheets/dashstrap/rtl/rtl.scss +38 -0
- data/app/assets/stylesheets/dashstrap/share.scss +7 -0
- data/app/assets/stylesheets/faalis/ltr/application.css +0 -0
- data/app/assets/stylesheets/faalis/rtl/application.css +0 -0
- data/app/assets/stylesheets/simple/ltr/application.css +4 -0
- data/app/assets/stylesheets/simple/rtl/application.css +5 -0
- data/app/assets/stylesheets/simple/rtl/rtl.scss +16 -0
- data/app/assets/stylesheets/simple/share.scss +11 -0
- data/app/views/angular/auth/groups/details.html +21 -0
- data/app/views/angular/auth/groups/index.html.slim +2 -0
- data/app/views/angular/auth/groups/new.html.slim +44 -0
- data/app/views/angular/auth/index.html +30 -0
- data/app/views/angular/auth/profile/edit.html +54 -0
- data/app/views/angular/auth/users/details.html +28 -0
- data/app/views/angular/auth/users/index.html +6 -0
- data/app/views/angular/auth/users/new.html +57 -0
- data/app/views/angular/fields/accordion/accordion-group.html +10 -0
- data/app/views/angular/fields/accordion/accordion.html +1 -0
- data/app/views/angular/fields/alert/alert.html +7 -0
- data/app/views/angular/fields/boolean/boolean.html +4 -0
- data/app/views/angular/fields/carousel/carousel.html +8 -0
- data/app/views/angular/fields/carousel/slide.html +7 -0
- data/app/views/angular/fields/control-combo/control-list.html +19 -0
- data/app/views/angular/fields/datepicker/datepicker.html +5 -0
- data/app/views/angular/fields/datepicker/day.html +21 -0
- data/app/views/angular/fields/datepicker/month.html +16 -0
- data/app/views/angular/fields/datepicker/popup.html +10 -0
- data/app/views/angular/fields/datepicker/year.html +16 -0
- data/app/views/angular/fields/datetime/datetime.html +10 -0
- data/app/views/angular/fields/datetime/time.html +25 -0
- data/app/views/angular/fields/float/float.html +4 -0
- data/app/views/angular/fields/image/image.html +1 -0
- data/app/views/angular/fields/integer/integer.html +4 -0
- data/app/views/angular/fields/modal/backdrop.html +4 -0
- data/app/views/angular/fields/modal/window.html +3 -0
- data/app/views/angular/fields/pagination/pager.html +4 -0
- data/app/views/angular/fields/pagination/pagination.html +7 -0
- data/app/views/angular/fields/popover/popover.html +8 -0
- data/app/views/angular/fields/progressbar/bar.html +1 -0
- data/app/views/angular/fields/progressbar/progress.html +1 -0
- data/app/views/angular/fields/progressbar/progressbar.html +3 -0
- data/app/views/angular/fields/rating/rating.html +5 -0
- data/app/views/angular/fields/relation/relation.html +43 -0
- data/app/views/angular/fields/string/string.html +22 -0
- data/app/views/angular/fields/tabs/tab.html +3 -0
- data/app/views/angular/fields/tabs/tabset.html +10 -0
- data/app/views/angular/fields/tag/tag.html +3 -0
- data/app/views/angular/fields/text/text.html +4 -0
- data/app/views/angular/fields/timepicker/timepicker.html +26 -0
- data/app/views/angular/fields/tooltip/tooltip-html-unsafe-popup.html +4 -0
- data/app/views/angular/fields/tooltip/tooltip-popup.html +4 -0
- data/app/views/angular/fields/typeahead/typeahead-match.html +1 -0
- data/app/views/angular/fields/typeahead/typeahead-popup.html +5 -0
- data/app/views/angular/index.html +448 -0
- data/app/views/angular/list-view/index.html +161 -0
- data/app/views/angular/modules.html +46 -0
- data/app/views/angular/nav.html.erb +273 -0
- data/app/views/dashstrap/.keep +0 -0
- data/app/views/devise/registrations/edit.html.erb +29 -0
- data/app/views/devise/registrations/new.html.erb +36 -0
- data/app/views/devise/sessions/new.html.erb +33 -0
- data/app/views/devise/shared/_links.erb +19 -0
- data/app/views/devise/shared/_omni_link.erb +15 -0
- data/app/views/faalis/dashboard/index.html.erb +44 -0
- data/app/views/faalis/dashboard/login_required_page.html.erb +5 -0
- data/app/views/layouts/dashstrap/.keep +0 -0
- data/app/views/layouts/faalis/application.html.erb +83 -0
- data/app/views/layouts/faalis/dashboard.html.erb +26 -0
- data/app/views/layouts/faalis/simple.html.erb +22 -0
- data/dashstrap.gemspec +39 -0
- data/lib/dashstrap/engine.rb +29 -0
- data/lib/dashstrap/version.rb +3 -0
- data/lib/dashstrap.rb +4 -0
- data/lib/generators/dashstrap/install_generator.rb +14 -0
- data/lib/generators/templates/js/list_view/README +31 -0
- data/lib/generators/templates/js/list_view/details.html.erb +25 -0
- data/lib/generators/templates/js/list_view/index.html.erb +89 -0
- data/lib/generators/templates/js/list_view/module.js.erb +10 -0
- data/lib/generators/templates/js/list_view/new.html.erb +81 -0
- data/lib/generators/templates/js/list_view/partials/add_controller.js.erb +103 -0
- data/lib/generators/templates/js/list_view/partials/config.js.erb +20 -0
- data/lib/generators/templates/js/list_view/partials/index_controller.js.erb +199 -0
- data/lib/generators/templates/js/list_view/partials/menu.js.erb +6 -0
- data/lib/generators/templates/stylesheets/application.css +13 -0
- data/lib/generators/templates/stylesheets/dashboard/ltr/application.css +1 -0
- data/lib/generators/templates/stylesheets/dashboard/rtl/application.css +1 -0
- data/lib/generators/templates/stylesheets/ltr/application.css +6 -0
- data/lib/generators/templates/stylesheets/rtl/application.css +4 -0
- data/lib/tasks/.keep +0 -0
- data/lib/tasks/build.rake +15 -0
- data/lib/tasks/grunt/Gruntfile.js +30 -0
- data/vendor/assets/fonts/FontAwesome.otf +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.eot +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.svg +414 -0
- data/vendor/assets/fonts/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.woff +0 -0
- data/vendor/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/vendor/assets/fonts/glyphicons-halflings-regular.svg +229 -0
- data/vendor/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/vendor/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/vendor/assets/fonts/ionicons.eot +0 -0
- data/vendor/assets/fonts/ionicons.svg +1623 -0
- data/vendor/assets/fonts/ionicons.ttf +0 -0
- data/vendor/assets/fonts/ionicons.woff +0 -0
- data/vendor/assets/javascripts/.keep +0 -0
- data/vendor/assets/javascripts/AdminLTE/app.js +1037 -0
- data/vendor/assets/javascripts/AdminLTE/dashboard.js +254 -0
- data/vendor/assets/javascripts/bootstrap.js +2114 -0
- data/vendor/assets/javascripts/ui-bootstrap.js +3799 -0
- data/vendor/assets/stylesheets/.keep +0 -0
- data/vendor/assets/stylesheets/AdminLTE.css +3024 -0
- data/vendor/assets/stylesheets/bootstrap.css +7118 -0
- data/vendor/assets/stylesheets/rtl/AdminLTE.css +3032 -0
- data/vendor/assets/stylesheets/rtl/bootstrap-rtl.css +442 -0
- data/vendor/assets/stylesheets/rtl/bootstrap.css +6239 -0
- metadata +366 -0
@@ -0,0 +1,254 @@
|
|
1
|
+
/*
|
2
|
+
* Author: Abdullah A Almsaeed
|
3
|
+
* Date: 4 Jan 2014
|
4
|
+
* Description:
|
5
|
+
* This is a demo file used only for the main dashboard (index.html)
|
6
|
+
**/
|
7
|
+
|
8
|
+
$(function() {
|
9
|
+
"use strict";
|
10
|
+
|
11
|
+
//Make the dashboard widgets sortable Using jquery UI
|
12
|
+
$(".connectedSortable").sortable({
|
13
|
+
placeholder: "sort-highlight",
|
14
|
+
connectWith: ".connectedSortable",
|
15
|
+
handle: ".box-header, .nav-tabs",
|
16
|
+
forcePlaceholderSize: true,
|
17
|
+
zIndex: 999999
|
18
|
+
}).disableSelection();
|
19
|
+
$(".connectedSortable .box-header, .connectedSortable .nav-tabs-custom").css("cursor", "move");
|
20
|
+
//jQuery UI sortable for the todo list
|
21
|
+
$(".todo-list").sortable({
|
22
|
+
placeholder: "sort-highlight",
|
23
|
+
handle: ".handle",
|
24
|
+
forcePlaceholderSize: true,
|
25
|
+
zIndex: 999999
|
26
|
+
}).disableSelection();
|
27
|
+
;
|
28
|
+
|
29
|
+
//bootstrap WYSIHTML5 - text editor
|
30
|
+
//$(".textarea").wysihtml5();
|
31
|
+
/*
|
32
|
+
$('.daterange').daterangepicker(
|
33
|
+
{
|
34
|
+
ranges: {
|
35
|
+
'Today': [moment(), moment()],
|
36
|
+
'Yesterday': [moment().subtract('days', 1), moment().subtract('days', 1)],
|
37
|
+
'Last 7 Days': [moment().subtract('days', 6), moment()],
|
38
|
+
'Last 30 Days': [moment().subtract('days', 29), moment()],
|
39
|
+
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
40
|
+
'Last Month': [moment().subtract('month', 1).startOf('month'), moment().subtract('month', 1).endOf('month')]
|
41
|
+
},
|
42
|
+
startDate: moment().subtract('days', 29),
|
43
|
+
endDate: moment()
|
44
|
+
},
|
45
|
+
function(start, end) {
|
46
|
+
alert("You chose: " + start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
|
47
|
+
});
|
48
|
+
*/
|
49
|
+
|
50
|
+
/* jQueryKnob */
|
51
|
+
//$(".knob").knob();
|
52
|
+
|
53
|
+
//jvectormap data
|
54
|
+
var visitorsData = {
|
55
|
+
"US": 398, //USA
|
56
|
+
"SA": 400, //Saudi Arabia
|
57
|
+
"CA": 1000, //Canada
|
58
|
+
"DE": 500, //Germany
|
59
|
+
"FR": 760, //France
|
60
|
+
"CN": 300, //China
|
61
|
+
"AU": 700, //Australia
|
62
|
+
"BR": 600, //Brazil
|
63
|
+
"IN": 800, //India
|
64
|
+
"GB": 320, //Great Britain
|
65
|
+
"RU": 3000 //Russia
|
66
|
+
};
|
67
|
+
//World map by jvectormap
|
68
|
+
/*$('#world-map').vectorMap({
|
69
|
+
map: 'world_mill_en',
|
70
|
+
backgroundColor: "transparent",
|
71
|
+
regionStyle: {
|
72
|
+
initial: {
|
73
|
+
fill: '#e4e4e4',
|
74
|
+
"fill-opacity": 1,
|
75
|
+
stroke: 'none',
|
76
|
+
"stroke-width": 0,
|
77
|
+
"stroke-opacity": 1
|
78
|
+
}
|
79
|
+
},
|
80
|
+
series: {
|
81
|
+
regions: [{
|
82
|
+
values: visitorsData,
|
83
|
+
scale: ["#92c1dc", "#ebf4f9"],
|
84
|
+
normalizeFunction: 'polynomial'
|
85
|
+
}]
|
86
|
+
},
|
87
|
+
onRegionLabelShow: function(e, el, code) {
|
88
|
+
if (typeof visitorsData[code] != "undefined")
|
89
|
+
el.html(el.html() + ': ' + visitorsData[code] + ' new visitors');
|
90
|
+
}
|
91
|
+
});*/
|
92
|
+
|
93
|
+
//Sparkline charts
|
94
|
+
/*var myvalues = [1000, 1200, 920, 927, 931, 1027, 819, 930, 1021];
|
95
|
+
$('#sparkline-1').sparkline(myvalues, {
|
96
|
+
type: 'line',
|
97
|
+
lineColor: '#92c1dc',
|
98
|
+
fillColor: "#ebf4f9",
|
99
|
+
height: '50',
|
100
|
+
width: '80'
|
101
|
+
});
|
102
|
+
myvalues = [515, 519, 520, 522, 652, 810, 370, 627, 319, 630, 921];
|
103
|
+
$('#sparkline-2').sparkline(myvalues, {
|
104
|
+
type: 'line',
|
105
|
+
lineColor: '#92c1dc',
|
106
|
+
fillColor: "#ebf4f9",
|
107
|
+
height: '50',
|
108
|
+
width: '80'
|
109
|
+
});
|
110
|
+
myvalues = [15, 19, 20, 22, 33, 27, 31, 27, 19, 30, 21];
|
111
|
+
$('#sparkline-3').sparkline(myvalues, {
|
112
|
+
type: 'line',
|
113
|
+
lineColor: '#92c1dc',
|
114
|
+
fillColor: "#ebf4f9",
|
115
|
+
height: '50',
|
116
|
+
width: '80'
|
117
|
+
});*/
|
118
|
+
|
119
|
+
//The Calender
|
120
|
+
$("#calendar").datepicker();
|
121
|
+
|
122
|
+
//SLIMSCROLL FOR CHAT WIDGET
|
123
|
+
$('#chat-box').slimScroll({
|
124
|
+
height: '250px'
|
125
|
+
});
|
126
|
+
|
127
|
+
/* Morris.js Charts */
|
128
|
+
// Sales chart
|
129
|
+
/*var area = new Morris.Area({
|
130
|
+
element: 'revenue-chart',
|
131
|
+
resize: true,
|
132
|
+
data: [
|
133
|
+
{y: '2011 Q1', item1: 2666, item2: 2666},
|
134
|
+
{y: '2011 Q2', item1: 2778, item2: 2294},
|
135
|
+
{y: '2011 Q3', item1: 4912, item2: 1969},
|
136
|
+
{y: '2011 Q4', item1: 3767, item2: 3597},
|
137
|
+
{y: '2012 Q1', item1: 6810, item2: 1914},
|
138
|
+
{y: '2012 Q2', item1: 5670, item2: 4293},
|
139
|
+
{y: '2012 Q3', item1: 4820, item2: 3795},
|
140
|
+
{y: '2012 Q4', item1: 15073, item2: 5967},
|
141
|
+
{y: '2013 Q1', item1: 10687, item2: 4460},
|
142
|
+
{y: '2013 Q2', item1: 8432, item2: 5713}
|
143
|
+
],
|
144
|
+
xkey: 'y',
|
145
|
+
ykeys: ['item1', 'item2'],
|
146
|
+
labels: ['Item 1', 'Item 2'],
|
147
|
+
lineColors: ['#a0d0e0', '#3c8dbc'],
|
148
|
+
hideHover: 'auto'
|
149
|
+
});
|
150
|
+
var line = new Morris.Line({
|
151
|
+
element: 'line-chart',
|
152
|
+
resize: true,
|
153
|
+
data: [
|
154
|
+
{y: '2011 Q1', item1: 2666},
|
155
|
+
{y: '2011 Q2', item1: 2778},
|
156
|
+
{y: '2011 Q3', item1: 4912},
|
157
|
+
{y: '2011 Q4', item1: 3767},
|
158
|
+
{y: '2012 Q1', item1: 6810},
|
159
|
+
{y: '2012 Q2', item1: 5670},
|
160
|
+
{y: '2012 Q3', item1: 4820},
|
161
|
+
{y: '2012 Q4', item1: 15073},
|
162
|
+
{y: '2013 Q1', item1: 10687},
|
163
|
+
{y: '2013 Q2', item1: 8432}
|
164
|
+
],
|
165
|
+
xkey: 'y',
|
166
|
+
ykeys: ['item1'],
|
167
|
+
labels: ['Item 1'],
|
168
|
+
lineColors: ['#efefef'],
|
169
|
+
lineWidth: 2,
|
170
|
+
hideHover: 'auto',
|
171
|
+
gridTextColor: "#fff",
|
172
|
+
gridStrokeWidth: 0.4,
|
173
|
+
pointSize: 4,
|
174
|
+
pointStrokeColors: ["#efefef"],
|
175
|
+
gridLineColor: "#efefef",
|
176
|
+
gridTextFamily: "Open Sans",
|
177
|
+
gridTextSize: 10
|
178
|
+
});
|
179
|
+
|
180
|
+
//Donut Chart
|
181
|
+
var donut = new Morris.Donut({
|
182
|
+
element: 'sales-chart',
|
183
|
+
resize: true,
|
184
|
+
colors: ["#3c8dbc", "#f56954", "#00a65a"],
|
185
|
+
data: [
|
186
|
+
{label: "Download Sales", value: 12},
|
187
|
+
{label: "In-Store Sales", value: 30},
|
188
|
+
{label: "Mail-Order Sales", value: 20}
|
189
|
+
],
|
190
|
+
hideHover: 'auto'
|
191
|
+
});
|
192
|
+
//Bar chart
|
193
|
+
var bar = new Morris.Bar({
|
194
|
+
element: 'bar-chart',
|
195
|
+
resize: true,
|
196
|
+
data: [
|
197
|
+
{y: '2006', a: 100, b: 90},
|
198
|
+
{y: '2007', a: 75, b: 65},
|
199
|
+
{y: '2008', a: 50, b: 40},
|
200
|
+
{y: '2009', a: 75, b: 65},
|
201
|
+
{y: '2010', a: 50, b: 40},
|
202
|
+
{y: '2011', a: 75, b: 65},
|
203
|
+
{y: '2012', a: 100, b: 90}
|
204
|
+
],
|
205
|
+
barColors: ['#00a65a', '#f56954'],
|
206
|
+
xkey: 'y',
|
207
|
+
ykeys: ['a', 'b'],
|
208
|
+
labels: ['CPU', 'DISK'],
|
209
|
+
hideHover: 'auto'
|
210
|
+
});
|
211
|
+
|
212
|
+
//Fix for charts under tabs
|
213
|
+
$('.box ul.nav a').on('shown.bs.tab', function(e) {
|
214
|
+
area.redraw();
|
215
|
+
donut.redraw();
|
216
|
+
});
|
217
|
+
*/
|
218
|
+
|
219
|
+
/* BOX REFRESH PLUGIN EXAMPLE (usage with morris charts) */
|
220
|
+
$("#loading-example").boxRefresh({
|
221
|
+
source: "ajax/dashboard-boxrefresh-demo.php",
|
222
|
+
onLoadDone: function(box) {
|
223
|
+
bar = new Morris.Bar({
|
224
|
+
element: 'bar-chart',
|
225
|
+
resize: true,
|
226
|
+
data: [
|
227
|
+
{y: '2006', a: 100, b: 90},
|
228
|
+
{y: '2007', a: 75, b: 65},
|
229
|
+
{y: '2008', a: 50, b: 40},
|
230
|
+
{y: '2009', a: 75, b: 65},
|
231
|
+
{y: '2010', a: 50, b: 40},
|
232
|
+
{y: '2011', a: 75, b: 65},
|
233
|
+
{y: '2012', a: 100, b: 90}
|
234
|
+
],
|
235
|
+
barColors: ['#00a65a', '#f56954'],
|
236
|
+
xkey: 'y',
|
237
|
+
ykeys: ['a', 'b'],
|
238
|
+
labels: ['CPU', 'DISK'],
|
239
|
+
hideHover: 'auto'
|
240
|
+
});
|
241
|
+
}
|
242
|
+
});
|
243
|
+
|
244
|
+
/* The todo list plugin */
|
245
|
+
$(".todo-list").todolist({
|
246
|
+
onCheck: function(ele) {
|
247
|
+
//console.log("The element has been checked")
|
248
|
+
},
|
249
|
+
onUncheck: function(ele) {
|
250
|
+
//console.log("The element has been unchecked")
|
251
|
+
}
|
252
|
+
});
|
253
|
+
|
254
|
+
});
|