widget_list 1.2.0 → 1.2.1

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.
Files changed (33) hide show
  1. data/README.md +26 -2
  2. data/app/views/widget_list/_condition_fields.html.erb +0 -0
  3. data/app/views/widget_list/_ransack_fields.html.erb +0 -0
  4. data/app/views/widget_list/_ransack_widget_list_advanced_search.html.erb +0 -0
  5. data/app/views/widget_list/administration/_field_row.html.erb +11 -0
  6. data/app/views/widget_list/administration/_output.html.erb +856 -0
  7. data/app/views/widget_list/administration/_output_save.html.erb +2 -0
  8. data/app/views/widget_list/list_partials/_col.html.erb +0 -0
  9. data/app/views/widget_list/list_partials/_list_description.html.erb +0 -0
  10. data/app/views/widget_list/list_partials/_no_sort_column.html.erb +0 -0
  11. data/app/views/widget_list/list_partials/_pagination_jump_active.html.erb +0 -0
  12. data/app/views/widget_list/list_partials/_pagination_jump_unactive.html.erb +0 -0
  13. data/app/views/widget_list/list_partials/_pagination_next_active.html.erb +0 -0
  14. data/app/views/widget_list/list_partials/_pagination_next_disabled.html.erb +0 -0
  15. data/app/views/widget_list/list_partials/_pagination_previous_active.html.erb +0 -0
  16. data/app/views/widget_list/list_partials/_pagination_previous_disabled.html.erb +0 -0
  17. data/app/views/widget_list/list_partials/_pagination_wrapper.html.erb +0 -0
  18. data/app/views/widget_list/list_partials/_row.html.erb +0 -0
  19. data/app/views/widget_list/list_partials/_sequence.html.erb +0 -0
  20. data/app/views/widget_list/list_partials/_sort_column.html.erb +0 -0
  21. data/lib/extensions/action_controller_base.rb +33 -33
  22. data/lib/widget_list.rb +3664 -2783
  23. data/lib/widget_list/engine.rb +8 -8
  24. data/lib/widget_list/hash.rb +113 -113
  25. data/lib/widget_list/md5.rb +18 -18
  26. data/lib/widget_list/railtie.rb +42 -42
  27. data/lib/widget_list/sequel.rb +218 -218
  28. data/lib/widget_list/string.rb +41 -41
  29. data/lib/widget_list/tpl.rb +185 -185
  30. data/lib/widget_list/utils.rb +92 -92
  31. data/lib/widget_list/version.rb +3 -3
  32. data/lib/widget_list/widgets.rb +756 -756
  33. metadata +5 -2
data/README.md CHANGED
@@ -125,9 +125,9 @@ widget_list features and configurations primarily work by a single large hash pa
125
125
 
126
126
  `data` - A "sequel" formatted resultset like would be returned from _select() method. Instead of running a SQL query, you can pass an array to populate the list `default={}`
127
127
 
128
- `collClass` - Your custom <td> class for all <td>'s `default=''`
128
+ `collClass` - Your custom td class for all td's `default=''`
129
129
 
130
- `align` - <td> align attribute for all <td>'s `default=''`
130
+ `align` - td align attribute for all td's `default=''`
131
131
 
132
132
  `fields` - The visible fields shown in the current list. KEY=column name VALUE= displayed column header `default={}`
133
133
 
@@ -221,10 +221,34 @@ widget_list features and configurations primarily work by a single large hash pa
221
221
 
222
222
  `borderedColumns` - Add a right border to each column. `default=false`
223
223
 
224
+ `borderedRows` - Style the border of each row. `default=false`
225
+
226
+ `borderRowStyle` - Border style of each row. `default='1px solid #CCCCCC'`
227
+
228
+ `borderHeadFoot` - Style the border of header (bottom) and footer (top). `default=false`
229
+
230
+ `headFootBorderStyle` - Border style of header (bottom) and footer (top). `default='1px solid #CCCCCC'`
231
+
224
232
  `borderColumnStyle` - Style of row if you use this above feature. `default='1px solid #CCCCCC'`
233
+
234
+ `bordersEverywhere?` - If true, use borderEverywhere for all four borders you can pass separately `default=false`
235
+
236
+ `borderEverywhere` - The catch all style of borders for headers, rows, outer table border and columns. `default='1px solid #CCCCCC'`
225
237
 
238
+ `defaultButtonClass` - As you have seen in many screenshots, there are several buttons. This controls the innerClass of those drawn from the list. See lib/widget_list/widgets.rb `default='info'`
239
+
240
+ `useBoxShadow` - Show shadow or not on list `default=true`
241
+
242
+ `shadowInset` - Number or string with '11Px' for an 11PX Inset `default=10`
243
+
244
+ `shadowSpread` - Number or string with '11Px' for an 11PX spread `default=20`
245
+
246
+ `shadowColor` - Color of bottom right shadow `default='shadowColor'`
247
+
226
248
  `rowClass` - Class added to all rows `default=''`
227
249
 
250
+ `rowFontColor` - Font color of all data rows that dont have a rowStylesByStatus color: passed to it `default='black'`
251
+
228
252
  `rowColorByStatus` - {'rowColorByStatus' =>
229
253
  {'active'=>
230
254
  {'No' => '#EBEBEB' }
File without changes
File without changes
@@ -0,0 +1,11 @@
1
+ <tr>
2
+ <td>
3
+ <!--FIELD-->:&#160;<input type="text" style="width:350px" class="<!--SUBJECT-->_keys" onblur="jQuery(this).attr('value',jQuery(this).val().trim());<!--ONBLUR1-->" name="<!--SUBJECT-->[key][]" id="<!--SUBJECT-->[key][]" value="<!--FIELD_VALUE-->"/>
4
+ </td>
5
+ <td>
6
+ <!--DESC-->:&#160;<input <!--DISABLED--> type="text" style="width:350px" class="<!--SUBJECT-->_descriptions" onblur="jQuery(this).attr('value',jQuery(this).val().trim());<!--ONBLUR2-->" name="<!--SUBJECT-->[description][]" id="<!--SUBJECT-->[description][]" value="<!--FIELD_DESC-->"/>
7
+ </td>
8
+ <td>
9
+ <!--REMOVE_FIELD_BUTTON-->
10
+ </td>
11
+ </tr>
@@ -0,0 +1,856 @@
1
+ <style type="text/css">
2
+ input[type="text"] {
3
+ font-size:25px;
4
+ height:33px;
5
+ left:0;
6
+ line-height:33px;
7
+ padding:8px 8px 7px;
8
+ top:0;
9
+ width:600px;
10
+ }
11
+ select {
12
+ font-size:25px;
13
+ height:50px;
14
+ left:0;
15
+ line-height:33px;
16
+ top:0;
17
+ width:600px;
18
+ }
19
+
20
+ .buttons_drill_down_name_button {
21
+ margin-right: 70px;
22
+ }
23
+
24
+ .buttons_data_to_pass_from_view_button {
25
+ margin-right: 120px;
26
+ }
27
+ </style>
28
+
29
+ <script type="text/javascript">
30
+ var all = '.start,.fields,.rows,.search,.footer,.misc_submit';
31
+ var all_btns = '#start,#fields,#rows,#search,#footer,#misc_submit';
32
+ jQuery(document).ready(function () {
33
+ if (jQuery('#view').val() != '') {
34
+ jQuery(all_btns).removeClass('disabled');
35
+ }
36
+ if (jQuery('#preview').attr('src') == '') {
37
+ jQuery('#preview').hide();
38
+ } else {
39
+ jQuery('#preview').show();
40
+ }
41
+
42
+ });
43
+
44
+ function VerifyOK(func_name) {
45
+ var ok = true;
46
+ if (jQuery('#view').val() == '') {
47
+ ok = false;
48
+ alert('Please select a Model to use as your base widget_list');
49
+ }
50
+ else if (jQuery('#rowLimit').val() != '10' && jQuery('#rowLimit').val() != '20' && jQuery('#rowLimit').val() != '50' && jQuery('#rowLimit').val() != '100' && jQuery('#rowLimit').val() != '500' && jQuery('#rowLimit').val() != '1000') {
51
+ ok = false;
52
+ alert('Invalid Row Limit, please see help button.');
53
+ }
54
+ return ok;
55
+ }
56
+
57
+ function ClickTab(which_class,func_name) {
58
+ if (VerifyOK(func_name)) {
59
+ jQuery('.search_dependent').hide(0,function() {
60
+ jQuery(all).hide(0,function() {
61
+ jQuery(which_class).fadeIn(0,function() {
62
+ if (func_name == 'ShowSearch') {
63
+ ShowSearchOptions(function() {
64
+ ShowGroupingOptions();
65
+ ShowExportOptions();
66
+
67
+ });
68
+ }
69
+ if (func_name == 'ShowFields') {
70
+ ShowHiddenOptions();
71
+ ShowFunctionOptions();
72
+ }
73
+ if (func_name == 'ShowSubmit') {
74
+ ShowCheckboxOptions();
75
+ }
76
+ if (func_name == 'ShowRows') {
77
+ ShowButtonOptions();
78
+ ShowDrillDownOptions();
79
+ }
80
+ if (func_name == 'ShowFooter') {
81
+ ShowFooterOptions();
82
+ }
83
+ });
84
+ });
85
+ });
86
+ SaveChanges();
87
+ }
88
+ }
89
+
90
+ function ShowStart() {
91
+ ClickTab('.start',arguments.callee.name);
92
+ }
93
+
94
+ function ShowFields() {
95
+ ClickTab('.fields',arguments.callee.name);
96
+ }
97
+
98
+ function ShowRows() {
99
+ ClickTab('.rows',arguments.callee.name);
100
+ }
101
+
102
+ function ShowSearch() {
103
+ ClickTab('.search',arguments.callee.name);
104
+ }
105
+
106
+ function ShowFooter() {
107
+ ClickTab('.footer',arguments.callee.name);
108
+ }
109
+
110
+ function ShowSubmit() {
111
+ ClickTab('.misc_submit',arguments.callee.name);
112
+ }
113
+
114
+ function ReplaceColumnsToLinked(obj) {
115
+ found = false;
116
+ var className = obj.className;
117
+ jQuery(obj).css('background-color','white');
118
+ jQuery('.fields_keys, .fields_hidden_keys, .fields_function_keys').each(
119
+ function(key, value) {
120
+ if(jQuery(value).val() == jQuery(obj).val().trim() && jQuery(obj).val().search(/_linked/i) == -1) {
121
+ found = true;
122
+ var id_original = jQuery(obj).val().trim();
123
+ jQuery(value).val(jQuery(obj).val().trim() + '_linked');
124
+ jQuery(obj).val(jQuery(obj).val().trim() + '_linked');
125
+ jQuery(obj).attr('value',jQuery(this).val().trim());
126
+ if (className == 'drill_downs_data_to_pass_from_view') {
127
+ jQuery('.drill_downs_column_to_show[value="col_name"]').each(
128
+ function(key1, value1) {
129
+ jQuery(value1).val(jQuery(obj).val().trim());
130
+ jQuery(value1).attr('value',jQuery(value1).val().trim());
131
+ return false;
132
+ }
133
+ )
134
+ } else {
135
+ jQuery('.drill_downs_data_to_pass_from_view[value="col_name"]').each(
136
+ function(key1, value1) {
137
+ jQuery(value1).val(jQuery(obj).val().trim());
138
+ jQuery(value1).attr('value',jQuery(value1).val().trim());
139
+ return false;
140
+ }
141
+ )
142
+ }
143
+
144
+ jQuery('.drill_downs_drill_down_name[value="filter_col_name"]').each(
145
+ function(key1, value1) {
146
+ jQuery(value1).val('filter_by_' + id_original);
147
+ jQuery(value1).attr('value','filter_by_' + id_original);
148
+ return false;
149
+ }
150
+ )
151
+
152
+
153
+ jQuery('#showHidden').attr('checked',true);
154
+ AddHiddenField();
155
+ jQuery('.fields_hidden_keys[value=""]').each(
156
+ function(key1, value1) {
157
+ jQuery(value1).val(id_original);
158
+ jQuery(value1).attr('value',id_original);
159
+ return false;
160
+ }
161
+ );
162
+ }
163
+ }
164
+ );
165
+
166
+ if (!found && jQuery(obj).val().search(/_linked/i) == -1) {
167
+ alert('Invalid Field Name defined. Please change the value');
168
+ jQuery(obj).css('background-color','red');
169
+ }
170
+ }
171
+
172
+ function InvalidField(obj) {
173
+ found = false;
174
+ jQuery(obj).css('background-color','white');
175
+ jQuery('.fields_keys, .fields_hidden_keys, .fields_function_keys').each(
176
+ function(key, value) {
177
+ if(jQuery(value).val() == jQuery(obj).val().trim()) {
178
+ found = true;
179
+ }
180
+ }
181
+ );
182
+
183
+ if (!found) {
184
+ alert('Invalid Field Name defined. Please change the value');
185
+ jQuery(obj).css('background-color','red');
186
+ }
187
+ }
188
+
189
+ function GoodClass(obj) {
190
+ found = false;
191
+ jQuery(obj).css('background-color','white');
192
+ if (jQuery(obj).val() == 'primary' || jQuery(obj).val() == 'info' || jQuery(obj).val() == 'success' || jQuery(obj).val() == 'danger' || jQuery(obj).val() == 'disabled' || jQuery(obj).val() == 'default') {
193
+ found = true;
194
+ }
195
+ if (!found) {
196
+ alert('Invalid Class Name. Click Help icon for more information.');
197
+ jQuery(obj).css('background-color','red');
198
+ }
199
+ }
200
+
201
+
202
+ function ShowSearchOptions(callback) {
203
+ if (jQuery('#showSearch').is(':checked')) {
204
+ jQuery('.search_dependent').show();
205
+ } else {
206
+ jQuery('.search_dependent').hide();
207
+ }
208
+ if (typeof(callback) == 'function') {
209
+ (callback)();
210
+ }
211
+ }
212
+
213
+ function ShowGroupingOptions() {
214
+ if (jQuery('#useGrouping').is(':checked') && jQuery('#showSearch').is(':checked')) {
215
+ jQuery('.grouping_dependent').show();
216
+ } else {
217
+ jQuery('.grouping_dependent').hide();
218
+ }
219
+ }
220
+
221
+ function ShowRansackOptions() {
222
+ if (jQuery('#useRansack').is(':checked') && jQuery('#showSearch').is(':checked')) {
223
+ jQuery('.ransack_dependent').show();
224
+ } else {
225
+ jQuery('.ransack_dependent').hide();
226
+ }
227
+ }
228
+
229
+ function ShowFooterOptions() {
230
+ if (jQuery('#footerOn').is(':checked')) {
231
+ jQuery('.footer_dependent').show();
232
+ } else {
233
+ jQuery('.footer_dependent').hide();
234
+ }
235
+ }
236
+
237
+ function ShowExportOptions() {
238
+ if (jQuery('#showExport').is(':checked') && jQuery('#showSearch').is(':checked')) {
239
+ jQuery('.export_dependent').show();
240
+ } else {
241
+ jQuery('.export_dependent').hide();
242
+ }
243
+ }
244
+
245
+ function ShowHiddenOptions() {
246
+ if (jQuery('#showHidden').is(':checked')) {
247
+ if (jQuery('.fields_hidden_keys').length == 0) {
248
+ AddHiddenField();
249
+ }
250
+ jQuery('.hidden_fields_dependent').show();
251
+ } else {
252
+ jQuery('.hidden_fields_dependent').hide();
253
+ }
254
+ }
255
+
256
+ function ShowButtonOptions() {
257
+ if (jQuery('#rowButtonsOn').is(':checked')) {
258
+ jQuery('.button_dependent').show();
259
+ } else {
260
+ jQuery('.button_dependent').hide();
261
+ }
262
+ }
263
+ function ShowDrillDownOptions() {
264
+ if (jQuery('#drillDownsOn').is(':checked')) {
265
+ if (jQuery('.drill_downs_data_to_pass_from_view').length == 0) {
266
+ AddDrillDown();
267
+ }
268
+ jQuery('.drill_down_dependent').show();
269
+ } else {
270
+ jQuery('.drill_down_dependent').hide();
271
+ }
272
+ }
273
+
274
+ function ShowFunctionOptions() {
275
+ if (jQuery('#fieldFunctionOn').is(':checked')) {
276
+ if (jQuery('.fields_function_keys').length == 0) {
277
+ AddFieldFunction();
278
+ }
279
+ jQuery('.function_dependent').show();
280
+ } else {
281
+ jQuery('.function_dependent').hide();
282
+ }
283
+ }
284
+
285
+ function ShowCheckboxOptions() {
286
+ if (jQuery('#checkboxEnabled').is(':checked')) {
287
+ jQuery('.checkbox_dependent').show();
288
+ } else {
289
+ jQuery('.checkbox_dependent').hide();
290
+ }
291
+ }
292
+
293
+ function AddGroupingItem() {
294
+ jQuery('#grouping_items').html(jQuery('#grouping_items').html() + jQuery('#grouping_items_default').html());
295
+ }
296
+
297
+ function AddField() {
298
+ jQuery('#field_table').html(jQuery('#field_table').html() + jQuery('#default_field_template').html());
299
+ }
300
+
301
+ function AddGroupBy() {
302
+ jQuery('#grouping_table').html(jQuery('#grouping_table').html() + jQuery('#default_grouping_template').html());
303
+ }
304
+
305
+ function AddButton() {
306
+ jQuery('#button_table').html(jQuery('#button_table').html() + jQuery('#default_button_template').html());
307
+ }
308
+
309
+ function AddDrillDown() {
310
+ jQuery('#drill_down_table').html(jQuery('#drill_down_table').html() + jQuery('#default_drill_down_template').html());
311
+ }
312
+
313
+ function AddFooterButton() {
314
+ jQuery('#footer_table').html(jQuery('#footer_table').html() + jQuery('#default_footer_template').html());
315
+ }
316
+
317
+ function AddHiddenField() {
318
+ jQuery('#hidden_field_table').html(jQuery('#hidden_field_table').html() + jQuery('#default_hidden_field_template').html());
319
+ }
320
+
321
+ function AddFieldFunction() {
322
+ jQuery('#field_function_table').html(jQuery('#field_function_table').html() + jQuery('#default_field_function_template').html());
323
+ }
324
+
325
+ function RemoveField(obj) {
326
+ jQuery(obj).closest('tr').remove();
327
+ }
328
+
329
+ function ChangeViewModel(obj) {
330
+ jQuery(all_btns).addClass('disabled');
331
+ if(jQuery(obj).val() != '') {
332
+ jQuery.post(jQuery('#widget_list_administration').attr('action'), 'ajax=1&model=' + jQuery(obj).val(), function(response)
333
+ {
334
+ jQuery('#field_table').html(response['fields']);
335
+ jQuery('#hidden_field_table').html(response['fields_hidden']);
336
+ jQuery('#checkboxField').html(response['checked_fields']);
337
+ jQuery('#footer_table').html(response['footer_buttons']);
338
+ jQuery('#grouping_table').html(response['group_by']);
339
+ SaveChanges();
340
+ if (jQuery(obj).val() != '') {
341
+ jQuery(all_btns).removeClass('disabled');
342
+ }
343
+
344
+
345
+ jQuery(all_btns).removeClass('disabled');
346
+ jQuery('#title').val(jQuery(obj).val() + 's');
347
+ jQuery('#listDescription').val('Showing All ' + jQuery(obj).val() + 's');
348
+
349
+ if (jQuery(obj).val() != '' && jQuery('#noDataMessage').val() == '') {
350
+ jQuery('#noDataMessage').val('No ' + jQuery(obj).val() + 's Found Within Your Criteria');
351
+ }
352
+
353
+ if (jQuery(obj).val() != '' && jQuery('#showExport').is(':checked')) {
354
+ jQuery('#exportButtonTitle').val('Export All ' + jQuery(obj).val() + 's');
355
+ }
356
+ }, "json");
357
+ }
358
+ }
359
+
360
+ function SaveChanges() {
361
+ jQuery(all_btns).addClass('disabled');
362
+ jQuery.post(jQuery('#widget_list_administration').attr('action'), 'ajax=1&save=1&' + jQuery('#widget_list_administration').serialize(), function(response)
363
+ {
364
+ jQuery(all_btns).removeClass('disabled');
365
+ jQuery('#preview').show();
366
+ jQuery('#preview').attr('src',jQuery('#widget_list_administration').attr('action') + '?iframe=1');
367
+ jQuery('#preview').css('width','100%');
368
+ jQuery('#preview').css('height','500px');
369
+ }, "json");
370
+ }
371
+
372
+ function Submit() {
373
+ if (VerifyOK('')) {
374
+ jQuery('#widget_list_administration').submit();
375
+ }
376
+ }
377
+ </script>
378
+ <form action="<!--POST_URL-->" method="post" id="widget_list_administration">
379
+ <h1 style="font-size:24;"><!--TITLE--></h1><div class="horizontal_rule"></div>
380
+ <h3>Get started quickly by selecting the features you need for this list</h3>
381
+ <table>
382
+ <!--BUTTON SECTION-->
383
+ <tr id="sections">
384
+ <td colspan="3">
385
+ <h3><!--BUTTONS--></h3>
386
+ </td>
387
+ </tr>
388
+
389
+ <!--START SECTION-->
390
+ <tr class="start">
391
+ <td>
392
+ <h3>Internal Name:</h3>
393
+ </td>
394
+ <td>
395
+ <input type="text" name="name" value="<!--NAME_VALUE-->"/>
396
+ </td>
397
+ <td>
398
+ &#160;
399
+ </td>
400
+ </tr>
401
+ <tr class="start">
402
+ <td>
403
+ <h3>Model:</h3>
404
+ </td>
405
+ <td>
406
+ <select name="view" id="view" onchange="ChangeViewModel(this)">
407
+ <!--VIEW_OPTIONS-->
408
+ </select>
409
+ </td>
410
+ <td>
411
+ &#160;
412
+ </td>
413
+ </tr>
414
+ <tr class="start">
415
+ <td>
416
+ <h3>Title:</h3>
417
+ </td>
418
+ <td>
419
+ <input type="text" name="title" id="title" value="<!--TITLE_VALUE-->"/>
420
+ </td>
421
+ <td>
422
+ <!--TITLE_HELP_BUTTON-->
423
+ </td>
424
+ </tr>
425
+
426
+ <tr class="start">
427
+ <td>
428
+ <h3>Initial Description:</h3>
429
+ </td>
430
+ <td>
431
+ <input type="text" name="listDescription" id="listDescription" value="<!--DESC_VALUE-->"/>
432
+ </td>
433
+ <td>
434
+ <!--DESC_HELP_BUTTON-->
435
+ </td>
436
+ </tr>
437
+
438
+ <!--FIELDS SECTION-->
439
+ <tr class="fields" style="display:none;">
440
+ <td>
441
+ <h3>Allow Sorting?:</h3>
442
+ </td>
443
+ <td>
444
+ <input type="checkbox" name="useSort" id="useSort" value="1" <!--SORTING_CHECKED-->/>
445
+ </td>
446
+ <td>
447
+ &#160;
448
+ </td>
449
+ </tr>
450
+
451
+ <tr class="fields" style="display:none;">
452
+ <td>
453
+ <h3>No Data Message:</h3>
454
+ </td>
455
+ <td>
456
+ <input type="text" name="noDataMessage" id="noDataMessage" value="<!--NO_DATA_VALUE-->"/>
457
+ </td>
458
+ <td>
459
+ &#160;
460
+ </td>
461
+ </tr>
462
+
463
+ <tr class="fields" style="display:none;">
464
+ <td colspan="3">
465
+ <h1>Field Selection:</h1>
466
+ <script type="text/plain" id="default_field_template">
467
+ <!--FIELD_TEMPLATE-->
468
+ </script>
469
+ <table style="margin-left:150px;" id="field_table">
470
+ <!--ALL_FIELDS-->
471
+ </table>
472
+ <table style="margin-left:150px;">
473
+ <tr>
474
+ <td colspan="3">
475
+ <!--ADD_FIELD_BUTTON-->
476
+ </td>
477
+ </tr>
478
+ </table>
479
+ </td>
480
+ </tr>
481
+
482
+ <tr class="fields" style="display:none;">
483
+ <td style="width:300px;">
484
+ <h3>Hidden Fields?:</h3>
485
+ </td>
486
+ <td>
487
+ <input type="checkbox" name="showHidden" onchange="ShowHiddenOptions();" id="showHidden" value="1" <!--SHOW_HIDDEN_CHECKED-->/>
488
+ </td>
489
+ <td>
490
+ <!--HIDDEN_HELP_BUTTON-->
491
+ </td>
492
+ </tr>
493
+
494
+ <tr class="fields hidden_fields_dependent" style="display:none;">
495
+
496
+ <td colspan="3">
497
+ <h1 style="margin-left: 75px;">Hidden Field Selection:</h1>
498
+ <script type="text/plain" id="default_hidden_field_template">
499
+ <!--HIDDEN_FIELD_TEMPLATE-->
500
+ </script>
501
+ <table style="margin-left:150px;" id="hidden_field_table">
502
+ <!--ALL_HIDDEN_FIELDS-->
503
+ </table>
504
+ <table style="margin-left:150px;">
505
+ <tr>
506
+ <td colspan="3">
507
+ <!--ADD_HIDDEN_FIELD_BUTTON-->
508
+ </td>
509
+ </tr>
510
+ </table>
511
+ </td>
512
+ </tr>
513
+
514
+ <tr class="fields" style="display:none;">
515
+ <td style="width:300px;">
516
+ <h3>Field Function?:</h3>
517
+ </td>
518
+ <td>
519
+ <input type="checkbox" name="fieldFunctionOn" onchange="ShowFunctionOptions();" id="fieldFunctionOn" value="1" <!--SHOW_FUNCTION_CHECKED-->/>
520
+ </td>
521
+ <td>
522
+ <!--FUNC_HELP_BUTTON-->
523
+ </td>
524
+ </tr>
525
+
526
+ <tr class="fields function_dependent" style="display:none;">
527
+ <td colspan="3">
528
+ <h1 style="margin-left: 75px;">Field Functions To Wrap Around Fields:</h1>
529
+ <script type="text/plain" id="default_field_function_template">
530
+ <!--FIELD_FUNCTION_TEMPLATE-->
531
+ </script>
532
+ <table style="margin-left:150px;" id="field_function_table">
533
+ <!--ALL_FIELD_FUNCTIONS-->
534
+ </table>
535
+ <table style="margin-left:150px;">
536
+ <tr>
537
+ <td colspan="3">
538
+ <!--ADD_FIELD_FUNCTION_BUTTON-->
539
+ </td>
540
+ </tr>
541
+ </table>
542
+ </td>
543
+ </tr>
544
+
545
+ <!--ROWS SECTION-->
546
+ <tr class="rows" style="display:none;">
547
+ <td>
548
+ <h3>Row Limit</h3>
549
+ </td>
550
+ <td>
551
+ <input type="text" name="rowLimit" id="rowLimit" value="<!--ROW_LIMIT_VALUE-->"/>
552
+ </td>
553
+ <td>
554
+ <!--ROW_HELP_BUTTON-->
555
+ </td>
556
+ </tr>
557
+
558
+
559
+
560
+ <tr class="rows" style="display:none;">
561
+ <td style="width:300px;">
562
+ <h3>Row Buttons?:</h3>
563
+ </td>
564
+ <td>
565
+ <input type="checkbox" name="rowButtonsOn" onchange="ShowButtonOptions();" id="rowButtonsOn" value="1" <!--BUTTONS_ON_CHECKED-->/>
566
+ </td>
567
+ <td>
568
+ <!--BUTTON_HELP_BUTTON-->
569
+ </td>
570
+ </tr>
571
+
572
+ <tr class="rows button_dependent" style="display:none;">
573
+ <td colspan="3">
574
+ <table style="margin-left:75px;">
575
+ <tr>
576
+ <td>
577
+ <h3>Row Button Column Name</h3>
578
+ </td>
579
+ <td>
580
+ <input type="text" name="rowButtonsName" id="rowButtonsName" value="<!--BUTTON_NAME_VALUE-->"/>
581
+ </td>
582
+ <td>
583
+ &#160;
584
+ </td>
585
+ </tr>
586
+ </table>
587
+ </td>
588
+ </tr>
589
+
590
+ <tr class="rows button_dependent" style="display:none;">
591
+ <td colspan="3">
592
+ <h1 style="margin-left:75px;">Buttons:</h1>
593
+ <script type="text/plain" id="default_button_template">
594
+ <!--THE_BUTTON_TEMPLATE-->
595
+ </script>
596
+ <table style="margin-left:150px;" id="button_table">
597
+ <!--ALL_BUTTONS-->
598
+ </table>
599
+ <table style="margin-left:150px;">
600
+ <tr>
601
+ <td colspan="3">
602
+ <!--ADD_THE_BUTTON_BUTTON-->
603
+ </td>
604
+ </tr>
605
+ </table>
606
+ </td>
607
+ </tr>
608
+
609
+
610
+
611
+
612
+ <tr class="rows" style="display:none;">
613
+ <td style="width:300px;">
614
+ <h3>Drill Down Columns?:</h3>
615
+ </td>
616
+ <td>
617
+ <input type="checkbox" name="drillDownsOn" onchange="ShowDrillDownOptions();" id="drillDownsOn" value="1" <!--DRILL_DOWN_CHECKED-->/>
618
+ </td>
619
+ <td>
620
+ <!--DRILL_DOWN_HELP_BUTTON-->
621
+ </td>
622
+ </tr>
623
+
624
+ <tr class="rows drill_down_dependent" style="display:none;">
625
+ <td colspan="3">
626
+ <script type="text/plain" id="default_drill_down_template">
627
+ <!--THE_DRILL_DOWN_TEMPLATE-->
628
+ </script>
629
+ <table style="margin-left:150px;" id="drill_down_table">
630
+ <!--ALL_DRILL_DOWNS-->
631
+ </table>
632
+ <table style="margin-left:150px;">
633
+ <tr>
634
+ <td colspan="3">
635
+ <!--ADD_DRILL_DOWN_BUTTON-->
636
+ </td>
637
+ </tr>
638
+ </table>
639
+ </td>
640
+ </tr>
641
+
642
+
643
+ <!--SEARCH SECTION-->
644
+ <tr class="search" style="display:none;">
645
+ <td style="width:300px;">
646
+ <h3>Show Search?:</h3>
647
+ </td>
648
+ <td>
649
+ <input type="checkbox" name="showSearch" onchange="ShowSearchOptions(function() {ShowGroupingOptions();})" id="showSearch" value="1" <!--SHOW_SEARCH_CHECKED-->/>
650
+ </td>
651
+ <td>
652
+ &#160;
653
+ </td>
654
+ </tr>
655
+
656
+ <tr class="search search_dependent" style="display:none;">
657
+ <td style="width:300px;">
658
+ <h3>Show Export Button?:</h3>
659
+ </td>
660
+ <td>
661
+ <input type="checkbox" name="showExport" onchange="ShowExportOptions();" id="showExport" value="1" <!--SHOW_EXPORT_CHECKED-->/>
662
+ </td>
663
+ <td>
664
+ &#160;
665
+ </td>
666
+ </tr>
667
+
668
+ <tr class="search search_dependent export_dependent" style="display:none;">
669
+ <td colspan="3">
670
+ <table style="margin-left:75px;">
671
+ <tr>
672
+ <td>
673
+ <h3>Export Button Title:</h3>
674
+ </td>
675
+ <td>
676
+ <input type="text" name="exportButtonTitle" id="exportButtonTitle" value="<!--EXPORT_VALUE-->"/>
677
+ </td>
678
+ <td>
679
+ &#160;
680
+ </td>
681
+ </tr>
682
+ </table>
683
+ </td>
684
+ </tr>
685
+
686
+ <tr class="search search_dependent" style="display:none;">
687
+ <td>
688
+ <h3>Search Description/Title:</h3>
689
+ </td>
690
+ <td>
691
+ <input type="text" name="searchTitle" id="searchTitle" value="<!--SEARCH_TITLE-->"/>
692
+ </td>
693
+ <td>
694
+ <!--SEARCH_TITLE_BUTTON-->
695
+ </td>
696
+ </tr>
697
+
698
+ <tr class="search search_dependent" style="display:none;">
699
+ <td>
700
+ <h3>Use Ransack Advanced Search?:</h3>
701
+ </td>
702
+ <td>
703
+ <input type="checkbox" name="useRansack" onchange="ShowRansackOptions()" id="useRansack" value="1" <!--USE_RANSACK-->/>
704
+ </td>
705
+ <td>
706
+ <!--RANSACK_HELP_BUTTON-->
707
+ </td>
708
+ </tr>
709
+
710
+ <tr class="search search_dependent ransack_dependent" style="display:none;">
711
+ <td colspan="3">
712
+ <table style="margin-left:75px;">
713
+ <tr>
714
+ <td>
715
+ <h3>Customized Ransack Form?:</h3>
716
+ </td>
717
+ <td>
718
+ <input type="checkbox" name="ransackAdvancedForm" id="ransackAdvancedForm" value="1" <!--USE_RANSACK_ADV-->/>
719
+ </td>
720
+ <td>
721
+ <!--ADV_RANSACK_HELP_BUTTON-->
722
+ </td>
723
+ </tr>
724
+ </table>
725
+ </td>
726
+ </tr>
727
+
728
+ <tr class="search search_dependent" style="display:none;">
729
+ <td>
730
+ <h3>Use Grouping?:</h3>
731
+ </td>
732
+ <td>
733
+ <input type="checkbox" name="useGrouping" onchange="ShowGroupingOptions()" id="useGrouping" value="1" <!--USE_GROUPING-->/>
734
+ </td>
735
+ <td>
736
+ <!--GROUP_BY_HELP_BUTTON-->
737
+ </td>
738
+ </tr>
739
+
740
+ <tr class="search search_dependent grouping_dependent" style="display:none;">
741
+ <td colspan="3">
742
+ <h1 style="margin-left: 75px;">Custom Items To Group By:</h1>
743
+ <table>
744
+ <tr>
745
+ <td>
746
+ <script type="text/plain" id="default_grouping_template">
747
+ <!--DEFAULT_GROUPING-->
748
+ </script>
749
+ <table style="margin-left:150px;" id="grouping_table">
750
+ <!--GROUPING_ITEMS-->
751
+ </table>
752
+ <table style="margin-left:150px;">
753
+ <tr>
754
+ <td colspan="3">
755
+ <!--ADD_GROUP_BY_BUTTON-->
756
+ </td>
757
+ </tr>
758
+ </table>
759
+ </td>
760
+ </tr>
761
+ </table>
762
+
763
+ <table style="margin-left:150px;">
764
+ <tr>
765
+ <td colspan="3">
766
+ <!--ADD_GROUPING_BUTTON-->
767
+ </td>
768
+ </tr>
769
+ </table>
770
+ </td>
771
+ </tr>
772
+
773
+ <!--FOOTER SECTION-->
774
+ <tr class="footer" style="display:none;">
775
+ <td style="width:300px;">
776
+ <h3>Build Customized Footer?:</h3>
777
+ </td>
778
+ <td>
779
+ <input type="checkbox" name="footerOn" onchange="ShowFooterOptions();" id="footerOn" value="1" <!--FOOTER_CHECKED-->/>
780
+ </td>
781
+ <td>
782
+
783
+ </td>
784
+ </tr>
785
+ <tr class="footer footer_dependent" style="display:none;">
786
+ <td colspan="3">
787
+ <h1 style="margin-left:75px;">Footer Buttons:</h1>
788
+ <script type="text/plain" id="default_footer_template">
789
+ <!--FOOTER_BUTTON_TEMPLATE-->
790
+ </script>
791
+ <table style="margin-left:150px;" id="footer_table">
792
+ <!--ALL_FOOTER_BUTTONS-->
793
+ </table>
794
+ <table style="margin-left:150px;">
795
+ <tr>
796
+ <td colspan="3">
797
+ <!--ADD_THE_FOOTER_BUTTON-->
798
+ </td>
799
+ </tr>
800
+ </table>
801
+ </td>
802
+ </tr>
803
+
804
+ <!--MISC & SUBMIT SECTION-->
805
+
806
+ <tr class="misc_submit" style="display:none;">
807
+ <td style="width:300px;">
808
+ <h3>Add Row Checkbox?:</h3>
809
+ </td>
810
+ <td>
811
+ <input type="checkbox" name="checkboxEnabled" onchange="ShowCheckboxOptions();" id="checkboxEnabled" value="1" <!--SHOW_CHECKBOX_CHECKED-->/>
812
+ </td>
813
+ <td>
814
+ &#160;
815
+ </td>
816
+ </tr>
817
+
818
+ <tr class="misc_submit checkbox_dependent" style="display:none;">
819
+ <td colspan="3">
820
+ <table style="margin-left:75px;">
821
+ <tr>
822
+ <td>
823
+ <h3>Checkbox Value:</h3>
824
+ </td>
825
+ <td>
826
+ <select name="checkboxField" id="checkboxField">
827
+ <!--CHECKBOX_SELECTED_FIELDS-->
828
+ </select>
829
+ </td>
830
+ <td>
831
+ <!--CHECK_HELP_BUTTON-->
832
+ </td>
833
+ </tr>
834
+ </table>
835
+ </td>
836
+ </tr>
837
+ <tr class="misc_submit" style="display:none;" >
838
+ <td>
839
+ <h3>Submit:</h3>
840
+ </td>
841
+ <td>
842
+ <!--SUBMIT_WIDGET_LIST-->
843
+ </td>
844
+ <td>
845
+ &#160;
846
+ </td>
847
+ </tr>
848
+
849
+ <tr>
850
+ <td colspan="3">
851
+ <iframe src="" id="preview"></iframe>
852
+ </td>
853
+ </tr>
854
+
855
+ </table>
856
+ </form>