old_sql 1.29.0 → 1.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +0 -4
- data/app/controllers/old_sql/report_controller.rb +10 -0
- data/app/views/old_sql/report/_query.html.erb +8 -18
- data/lib/generators/old_sql/install_generator.rb +2 -0
- data/lib/generators/old_sql/templates/test_db.rb +11 -0
- data/public/javascripts/old_sql/old_sql.js +58 -29
- metadata +4 -3
data/README.md
CHANGED
@@ -38,10 +38,6 @@ Old SQL is a Rails Engine database reporting gem that uses plain old SQL.
|
|
38
38
|
|
39
39
|

|
40
40
|
|
41
|
-
#### HTML Table
|
42
|
-
|
43
|
-

|
44
|
-
|
45
41
|
#### Google Charts
|
46
42
|
|
47
43
|

|
@@ -224,7 +224,17 @@ module OldSql
|
|
224
224
|
|
225
225
|
def db_list
|
226
226
|
db = []
|
227
|
+
|
227
228
|
db << {name: Rails.env.capitalize, db_class: "active_record/base"}
|
229
|
+
|
230
|
+
if File.directory?("#{Rails.root}/lib/old_sql/db")
|
231
|
+
Dir.glob("#{Rails.root}/lib/old_sql/db/*.rb") do |filename|
|
232
|
+
file_sans_ext = File.basename(filename, ".rb")
|
233
|
+
db << {name: file_sans_ext.capitalize, db_class: "old_sql/db/#{file_sans_ext}"}
|
234
|
+
end
|
235
|
+
end
|
236
|
+
|
237
|
+
db
|
228
238
|
end
|
229
239
|
end
|
230
240
|
end
|
@@ -1,25 +1,9 @@
|
|
1
|
-
<script>
|
2
|
-
$(document).ready(function($){
|
3
|
-
$('#run-query').bind('click', function() {
|
4
|
-
query();
|
5
|
-
});
|
6
|
-
|
7
|
-
$('#delete-saved-queries').bind('click', function() {
|
8
|
-
deleted_saved_queries();
|
9
|
-
});
|
10
|
-
|
11
|
-
$('#saved-queries-list').bind('click', function() {
|
12
|
-
$('#query-text').val($("#saved-queries-list option:selected").val());
|
13
|
-
});
|
14
|
-
});
|
15
|
-
</script>
|
16
|
-
|
17
1
|
<div class="query">
|
18
2
|
<div>
|
19
3
|
DATABASE:
|
20
4
|
<select name="query-db" id="query-db" onchange="db_selected()">
|
21
5
|
<% db_list.each do |db| %>
|
22
|
-
<option value="<%=db[:name]%>"
|
6
|
+
<option value="<%=db[:name]%>" db_class="<%=db[:db_class]%>"><%=db[:name]%></option>
|
23
7
|
<% end %>
|
24
8
|
</select>
|
25
9
|
</div>
|
@@ -54,6 +38,12 @@ $(document).ready(function($){
|
|
54
38
|
</div>
|
55
39
|
|
56
40
|
<div>
|
57
|
-
<
|
41
|
+
<span class="query-button">
|
42
|
+
<input id="delete-saved-query" type="submit" value="Delete" onclick="return true;" />
|
43
|
+
</span>
|
44
|
+
|
45
|
+
<span class="query-button">
|
46
|
+
<input id="delete-saved-queries" type="submit" value="Remove All" onclick="return true;" />
|
47
|
+
</span>
|
58
48
|
</div>
|
59
49
|
</div>
|
@@ -51,6 +51,7 @@ module OldSql
|
|
51
51
|
empty_directory "#{app_path}/config/old_sql/report_sql"
|
52
52
|
empty_directory "#{app_path}/config/old_sql/report_design"
|
53
53
|
empty_directory "#{app_path}/lib/old_sql/report_processor"
|
54
|
+
empty_directory "#{app_path}/lib/old_sql/db"
|
54
55
|
end
|
55
56
|
|
56
57
|
def copy_old_sql_files
|
@@ -60,6 +61,7 @@ module OldSql
|
|
60
61
|
copy_file "user_processor.rb.example", "#{app_path}/lib/old_sql/report_processor/user_old_sql_demo_processor.rb"
|
61
62
|
copy_file "user_design_template.csv", "#{app_path}/config/old_sql/report_design/user_old_sql_demo.csv"
|
62
63
|
copy_file "user_old_sql_demo_chart_design.yml", "#{app_path}/config/old_sql/report_design/user_old_sql_demo.yml"
|
64
|
+
copy_file "test_db.rb", "#{app_path}/lib/old_sql/db/test.rb"
|
63
65
|
end
|
64
66
|
|
65
67
|
def configure_initializer
|
@@ -1,24 +1,25 @@
|
|
1
1
|
function load_report()
|
2
2
|
{
|
3
|
-
report_name =
|
4
|
-
report_sql =
|
3
|
+
report_name = $("#report option:selected").attr('name');
|
4
|
+
report_sql = $("#report option:selected").attr('report_sql');
|
5
5
|
report_view = get_report_view();
|
6
6
|
|
7
7
|
if (!reported_selected(report_name)) return;
|
8
8
|
|
9
9
|
var src = "http://"+host+":"+port+"/sql/reports/"+report_view+"/?report="+report_name+
|
10
|
-
"&start_date="
|
10
|
+
"&start_date="+$("#datepicker-start").val()+"&end_date="+$("#datepicker-end").val()+"&report_sql="+
|
11
11
|
report_sql+"&caption="+report_name;
|
12
12
|
|
13
|
-
|
13
|
+
$('iframe').attr('src', src);
|
14
14
|
|
15
15
|
_report_loaded = true;
|
16
16
|
}
|
17
17
|
|
18
18
|
function query()
|
19
19
|
{
|
20
|
-
|
21
|
-
|
20
|
+
orig_sql = $("#query-text").val();
|
21
|
+
sql = orig_sql.replace(new RegExp( "\\n", "g" )," ");
|
22
|
+
db = $("#query-db option:selected").attr('db_class');
|
22
23
|
|
23
24
|
if (!sql) {
|
24
25
|
alert('Invalid Query.');
|
@@ -27,9 +28,9 @@ function query()
|
|
27
28
|
|
28
29
|
var src = "http://"+host+":"+port+"/sql/reports/jqgrid/?&query="+sql+"&db="+db+"&caption=Ad Hoc Query&w="+$(document).width();
|
29
30
|
|
30
|
-
|
31
|
+
$('iframe').attr('src', src);
|
31
32
|
|
32
|
-
save_query(
|
33
|
+
save_query(orig_sql);
|
33
34
|
load_saved_queries();
|
34
35
|
}
|
35
36
|
|
@@ -81,36 +82,49 @@ function deleted_saved_queries()
|
|
81
82
|
}
|
82
83
|
}
|
83
84
|
|
85
|
+
function deleted_saved_query()
|
86
|
+
{
|
87
|
+
if (typeof(localStorage) == 'undefined' ) {
|
88
|
+
alert('Your browser does not support HTML5 localStorage. Try upgrading.');
|
89
|
+
} else {
|
90
|
+
localStorage.removeItem($("#saved-queries-list option:selected").val());
|
91
|
+
$('#saved-queries-list')
|
92
|
+
.find('option:selected')
|
93
|
+
.remove()
|
94
|
+
.end();
|
95
|
+
}
|
96
|
+
}
|
97
|
+
|
84
98
|
function reset_report()
|
85
99
|
{
|
86
|
-
|
100
|
+
$('iframe').attr('src', "");
|
87
101
|
}
|
88
102
|
|
89
103
|
function print_report()
|
90
104
|
{
|
91
|
-
report_name =
|
92
|
-
report_sql =
|
105
|
+
report_name = $("#report option:selected").attr('name');
|
106
|
+
report_sql = $("#report option:selected").attr('report_sql');
|
93
107
|
report_view = get_report_view();
|
94
108
|
|
95
109
|
if (!reported_selected(report_name)) return;
|
96
110
|
|
97
111
|
var src = "http://"+host+":"+port+"/sql/reports/print/?report="+report_name+
|
98
|
-
"&start_date="
|
99
|
-
"&report_sql="+report_sql+"&desc="
|
112
|
+
"&start_date="+$("#datepicker-start").val()+"&end_date="+$("#datepicker-end").val()+
|
113
|
+
"&report_sql="+report_sql+"&desc="+$("#report option:selected").attr('desc');
|
100
114
|
window.open(src,'Old SQL Report')
|
101
115
|
}
|
102
116
|
|
103
117
|
function export_report_to_excel()
|
104
118
|
{
|
105
|
-
report_name =
|
106
|
-
report_sql =
|
119
|
+
report_name = $("#report option:selected").attr('name');
|
120
|
+
report_sql = $("#report option:selected").attr('report_sql');
|
107
121
|
report_view = get_report_view();
|
108
122
|
|
109
123
|
if (!reported_selected(report_name)) return;
|
110
124
|
|
111
125
|
var src = "http://"+host+":"+port+"/sql/reports/query.csv/?report="+report_name+
|
112
|
-
"&start_date="
|
113
|
-
"&report_sql="+ report_sql+"&desc="
|
126
|
+
"&start_date="+$("#datepicker-start").val()+"&end_date="+$("#datepicker-end").val()+
|
127
|
+
"&report_sql="+ report_sql+"&desc="+$("#report option:selected").attr('desc');
|
114
128
|
window.open(src,'DB Report')
|
115
129
|
}
|
116
130
|
|
@@ -126,7 +140,7 @@ function reported_selected(report_name)
|
|
126
140
|
|
127
141
|
function get_report_view()
|
128
142
|
{
|
129
|
-
report_view =
|
143
|
+
report_view = $("#report option:selected").attr('report_view');
|
130
144
|
|
131
145
|
if (report_view) {
|
132
146
|
return report_view;
|
@@ -135,29 +149,26 @@ function get_report_view()
|
|
135
149
|
}
|
136
150
|
}
|
137
151
|
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
152
|
+
$(document).ready(function($){
|
153
|
+
$("#datepicker-start").datetimepicker();
|
154
|
+
$("#datepicker-start").datetimepicker( "option", "dateFormat", "yy/mm/dd" );
|
155
|
+
$("#datepicker-end").datetimepicker();
|
156
|
+
$("#datepicker-end").datetimepicker( "option", "dateFormat", "yy/mm/dd" );
|
143
157
|
|
144
158
|
var now = new Date();
|
145
159
|
var tomorrow = new Date();
|
146
160
|
var two_weeks_ago = new Date();
|
147
161
|
two_weeks_ago.setDate(now.getDate() - 14);
|
148
162
|
tomorrow.setDate(now.getDate() + 1);
|
149
|
-
|
150
|
-
|
163
|
+
$("#datepicker-start").attr('value', two_weeks_ago.format("yyyy/mm/dd HH:MM:ss"));
|
164
|
+
$("#datepicker-end").attr('value', tomorrow.format("yyyy/mm/dd HH:MM:ss"));
|
151
165
|
|
152
166
|
//Setup key listeners for the ad hoc query textarea
|
153
167
|
$('#query-text').keydown(function (e) {
|
154
168
|
if (e.ctrlKey && e.keyCode == 13) {
|
155
169
|
e.preventDefault();
|
156
170
|
query();
|
157
|
-
}
|
158
|
-
e.preventDefault();
|
159
|
-
$('#query-text').val($('#query-text').val()+' \n');
|
160
|
-
}
|
171
|
+
}
|
161
172
|
});
|
162
173
|
|
163
174
|
$('#tabs').bind('tabsselect', function(event, ui) {
|
@@ -174,6 +185,24 @@ jQuery(document).ready(function($){
|
|
174
185
|
});
|
175
186
|
});
|
176
187
|
|
188
|
+
$(document).ready(function($){
|
189
|
+
$('#run-query').bind('click', function() {
|
190
|
+
query();
|
191
|
+
});
|
192
|
+
|
193
|
+
$('#saved-queries-list').bind('click', function() {
|
194
|
+
$('#query-text').val($("#saved-queries-list option:selected").val());
|
195
|
+
});
|
196
|
+
|
197
|
+
$('#delete-saved-queries').bind('click', function() {
|
198
|
+
deleted_saved_queries();
|
199
|
+
});
|
200
|
+
|
201
|
+
$('#delete-saved-query').bind('click', function() {
|
202
|
+
deleted_saved_query();
|
203
|
+
});
|
204
|
+
});
|
205
|
+
|
177
206
|
$(function() {
|
178
207
|
$( "#tabs" ).tabs();
|
179
208
|
});
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: old_sql
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 1.
|
5
|
+
version: 1.30.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Eddie Gonzales
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-06-
|
13
|
+
date: 2011-06-28 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: devise
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- lib/generators/old_sql/templates/devise_model.rb.template
|
73
73
|
- lib/generators/old_sql/templates/old_sql.rb
|
74
74
|
- lib/generators/old_sql/templates/reports.yml.example
|
75
|
+
- lib/generators/old_sql/templates/test_db.rb
|
75
76
|
- lib/generators/old_sql/templates/user.erb.example
|
76
77
|
- lib/generators/old_sql/templates/user_design_template.csv
|
77
78
|
- lib/generators/old_sql/templates/user_old_sql_demo_chart_design.yml
|
@@ -197,7 +198,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
197
198
|
requirements:
|
198
199
|
- - ">="
|
199
200
|
- !ruby/object:Gem::Version
|
200
|
-
hash:
|
201
|
+
hash: -3392790754162754922
|
201
202
|
segments:
|
202
203
|
- 0
|
203
204
|
version: "0"
|