widget_list 1.3.5 → 1.3.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/README.md +24 -4
- data/app/views/widget_list/administration/_output.html.erb +1 -1
- data/app/views/widget_list/list_partials/_outer_shell.html.erb +1 -1
- data/app/views/widget_list/list_partials/_pagination_next_active.html.erb +1 -1
- data/app/views/widget_list/list_partials/_pagination_next_disabled.html.erb +1 -1
- data/app/views/widget_list/list_partials/_pagination_previous_active.html.erb +1 -1
- data/app/views/widget_list/list_partials/_pagination_previous_disabled.html.erb +1 -1
- data/lib/widget_list.rb +21 -17
- data/lib/widget_list/tpl.rb +1 -1
- data/lib/widget_list/utils.rb +3 -1
- data/lib/widget_list/version.rb +1 -1
- data/lib/widget_list/widgets.rb +11 -4
- data/vendor/assets/javascripts/widget_list.js +4 -1
- data/vendor/assets/stylesheets/widget_list.css +47 -28
- data/widget_list.gemspec +3 -1
- metadata +52 -66
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ODA4YTI4ZTkxNzFjZTdkZDJhNmRiNTBkYmFhMjk1MTY2ZWViZDI0NQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
M2NkOTVmNzJlNGNmMzkwNDQ4MGYwMmNkMThhZDM1YTNhYjY2ZWYyMQ==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
YjcwNDliYWRiNTYyNTNlOWFlOTIyZGIxNWMzZDMzNDY3ZDljOWNjNjE1ZWI2
|
10
|
+
ZGM5M2U4NzBjNzk2YjBkZTRkM2ExNDFiZGZhZDViNThiNDRmMDdjMTg3NzUx
|
11
|
+
NzgwYTdkNjFiZGY5YjRmMzU0N2JkYzk3MzdjZjk5ZWZjYjYwYjk=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MTI3NDM5YmYzOTgyOTZkYzk5YTFhM2NkMTRiYjg3MWRmODIxNjBjYWNkMzUz
|
14
|
+
OGIxZGQyMjlmZTY5OWNhZGI0Nzk0ZjEyZDIzYjU4NTA4Y2E1MTAxNjllODMy
|
15
|
+
NDI3YWJlOTY0Y2VmMTYwOGM3NjAwYzE5M2MyNWQ2Y2Q4MzA1MGQ=
|
data/README.md
CHANGED
@@ -9,6 +9,17 @@
|
|
9
9
|
https://www.youtube.com/watch?v=A6mZa8Ge2Rk
|
10
10
|
|
11
11
|
|
12
|
+
****
|
13
|
+
|
14
|
+
## Slides and video from Barcamp 2013
|
15
|
+
|
16
|
+
****
|
17
|
+
|
18
|
+
http://youtu.be/K4pe4ESIbc0
|
19
|
+
|
20
|
+
https://docs.google.com/presentation/d/1gnybf8f7afRM8w5UjTMoV82-0S5HftPewn4pAuIybk8/edit?usp=sharing
|
21
|
+
|
22
|
+
|
12
23
|
****
|
13
24
|
|
14
25
|
## Introduction
|
@@ -166,7 +177,7 @@ widget_list features and configurations primarily work by a single large hash pa
|
|
166
177
|
|
167
178
|
`listDescription` - This adds a grey header box. It is useful for describing the main query `default=''`
|
168
179
|
|
169
|
-
`pageId` - Base path for requests (typically you never need to change this) `default=$_SERVER['PATH_INFO']`
|
180
|
+
`pageId` - Base path for requests (typically you never need to change this) `default=$_SERVER['SCRIPT_NAME'] + $_SERVER['PATH_INFO']`
|
170
181
|
|
171
182
|
`view` - A sub-select query to your database (ALWAYS ALIASED) `default=''`
|
172
183
|
|
@@ -356,11 +367,20 @@ Style a row based on the value of the column.
|
|
356
367
|
*= require widget_list
|
357
368
|
*= require widgets
|
358
369
|
```
|
359
|
-
|
370
|
+
|
371
|
+
Change application.js to:
|
372
|
+
|
360
373
|
```ruby
|
361
374
|
//= require widget_list
|
362
375
|
```
|
363
|
-
|
376
|
+
|
377
|
+
Compile the new assets:
|
378
|
+
|
379
|
+
```
|
380
|
+
rake assets:precompile
|
381
|
+
```
|
382
|
+
|
383
|
+
### #2 - Run `bundle exec rails s` to have widget_list create config/widget-list.yml which will point to your active record database.yml
|
364
384
|
|
365
385
|
Configure your connection settings for your primary or secondary widget_list connections.
|
366
386
|
|
@@ -734,4 +754,4 @@ See the License for the specific language governing permissions and
|
|
734
754
|
limitations under the License.
|
735
755
|
|
736
756
|
[1]: https://github.com/davidrenne/widget_list_example/blob/master/app/helpers/widget_list_helper.rb
|
737
|
-
[2]: https://github.com/davidrenne/widget_list_theme_blue_sky_basin
|
757
|
+
[2]: https://github.com/davidrenne/widget_list_theme_blue_sky_basin
|
@@ -498,7 +498,7 @@
|
|
498
498
|
if(jQuery(obj).val() != '') {
|
499
499
|
jQuery.post(jQuery('#widget_list_administration').attr('action'), 'ajax=1&model=' + jQuery(obj).val(), function(response)
|
500
500
|
{
|
501
|
-
jQuery('#name').val(jQuery(obj).val().toLowerCase() + '_listing');
|
501
|
+
jQuery('#name,#desiredAction').val(jQuery(obj).val().toLowerCase() + '_listing');
|
502
502
|
jQuery('#field_table').html(response['fields']);
|
503
503
|
jQuery('#hidden_field_table').html(response['fields_hidden']);
|
504
504
|
jQuery('#checkboxField').html(response['checked_fields']);
|
@@ -1 +1 @@
|
|
1
|
-
<li><span id="<!--LIST_NAME-->_next" onclick="<!--FUNCTION-->('<!--NEXT_URL-->','<!--LIST_NAME-->');<!--FUNCTION_ALL-->"
|
1
|
+
<li><span id="<!--LIST_NAME-->_next" onclick="<!--FUNCTION-->('<!--NEXT_URL-->','<!--LIST_NAME-->');<!--FUNCTION_ALL-->" class="next-active"> </span></li>
|
@@ -1 +1 @@
|
|
1
|
-
<li><span id="<!--LIST_NAME-->_next"
|
1
|
+
<li><span id="<!--LIST_NAME-->_next" class="next-disabled"> </span></li>
|
@@ -1 +1 @@
|
|
1
|
-
<li><span id="<!--LIST_NAME-->_previous" onclick="<!--FUNCTION-->('<!--PREVIOUS_URL-->','<!--LIST_NAME-->');<!--FUNCTION_ALL-->"
|
1
|
+
<li><span id="<!--LIST_NAME-->_previous" onclick="<!--FUNCTION-->('<!--PREVIOUS_URL-->','<!--LIST_NAME-->');<!--FUNCTION_ALL-->" class="previous-active"> </span></li>
|
@@ -1 +1 @@
|
|
1
|
-
<li><span id="<!--LIST_NAME-->_previous"
|
1
|
+
<li><span id="<!--LIST_NAME-->_previous" class="previous-disabled"> </span></li>
|
data/lib/widget_list.rb
CHANGED
@@ -99,7 +99,7 @@ module WidgetList
|
|
99
99
|
#
|
100
100
|
# BASE
|
101
101
|
#
|
102
|
-
@fill['<!--POST_URL-->'] = $_SERVER['PATH_INFO']
|
102
|
+
@fill['<!--POST_URL-->'] = $_SERVER['SCRIPT_NAME'] + $_SERVER['PATH_INFO']
|
103
103
|
@fill['<!--BUTTONS-->'] = WidgetList::Widgets::widget_button('Step One - Start ->', {'id' => 'start' , 'onclick' => "ShowStart();" , 'innerClass' => "primary" } ) +
|
104
104
|
WidgetList::Widgets::widget_button('Step Two - Fields ->', {'id' => 'fields' , 'onclick' => "ShowFields();" , 'innerClass' => "primary disabled" } ) +
|
105
105
|
WidgetList::Widgets::widget_button('Step Three - Rows ->', {'id' => 'rows' , 'onclick' => "ShowRows();" , 'innerClass' => "primary disabled" } ) +
|
@@ -1042,11 +1042,11 @@ module WidgetList
|
|
1042
1042
|
controller = ($_REQUEST.key?('desiredController') ? $_REQUEST['desiredController'] : $_REQUEST['controller'] )
|
1043
1043
|
|
1044
1044
|
if $_REQUEST.key?('ajax')
|
1045
|
-
model = model_name.constantize
|
1046
|
-
model.
|
1047
|
-
fields[field] = field.gsub(/_/,' _').camelize
|
1048
|
-
all_fields[field] = field.gsub(/_/,' _').camelize
|
1049
|
-
fields_function[field] = 'CNT(' + field + ') or NVL(' + field + ') or TO_DATE(' + field + ') etc...'
|
1045
|
+
model = model_name.constantize
|
1046
|
+
model.columns.each { |field|
|
1047
|
+
fields[field.name] = field.name.gsub(/_/,' _').camelize
|
1048
|
+
all_fields[field.name] = field.name.gsub(/_/,' _').camelize
|
1049
|
+
fields_function[field.name] = 'CNT(' + field.name + ') or NVL(' + field.name + ') or TO_DATE(' + field.name + ') etc...'
|
1050
1050
|
}
|
1051
1051
|
footer_buttons['Add New ' + model_name] = {}
|
1052
1052
|
footer_buttons['Add New ' + model_name]['url'] = '/' + controller + '/add/'
|
@@ -1920,7 +1920,7 @@ module WidgetList
|
|
1920
1920
|
'database' => 'primary', #
|
1921
1921
|
'title' => '',
|
1922
1922
|
'listDescription' => '',
|
1923
|
-
'pageId' => $_SERVER['PATH_INFO'],
|
1923
|
+
'pageId' => $_SERVER['SCRIPT_NAME'] + $_SERVER['PATH_INFO'],
|
1924
1924
|
'view' => '',
|
1925
1925
|
'data' => {},
|
1926
1926
|
'bindVars' => [],
|
@@ -2034,7 +2034,7 @@ module WidgetList
|
|
2034
2034
|
#
|
2035
2035
|
# Font
|
2036
2036
|
#
|
2037
|
-
'fontFamily' => '"Times New Roman", Times, serif',
|
2037
|
+
'fontFamily' => false, #'"Times New Roman", Times, serif',
|
2038
2038
|
'headerFooterFontSize' => '14px',
|
2039
2039
|
'dataFontSize' => '14px',
|
2040
2040
|
'titleFontSize' => '24px',
|
@@ -2434,7 +2434,9 @@ module WidgetList
|
|
2434
2434
|
@templateFill['<!--SHADOW_SPREAD-->'] = get_shadow_spread_value()
|
2435
2435
|
@templateFill['<!--SHADOW_COLOR-->'] = @items['shadowColor']
|
2436
2436
|
@templateFill['<!--BORDER_HEAD_FOOT_TOP-->'] = @items['borderHeadFoot'] ? 'border-top:' + @items['headFootBorderStyle'] + ';' : ''
|
2437
|
-
|
2437
|
+
if @items['fontFamily']
|
2438
|
+
@templateFill['<!--FONT-->'] = 'font-family:' + @items['fontFamily'] + ';'
|
2439
|
+
end
|
2438
2440
|
@templateFill['<!--FONT_HEADER-->'] = @items['headerFooterFontSize']
|
2439
2441
|
|
2440
2442
|
|
@@ -2523,11 +2525,11 @@ module WidgetList
|
|
2523
2525
|
list_search['name'] = 'list_search_name_' + @items['name']
|
2524
2526
|
list_search['class'] = 'inputOuter widget-search-outer ' + @items['name'].downcase + '-search'
|
2525
2527
|
list_search['search_ahead'] = {
|
2526
|
-
'url'
|
2527
|
-
'skip_queue'
|
2528
|
-
'target'
|
2529
|
-
'search_form'
|
2530
|
-
'onkeyup'
|
2528
|
+
'url' => searchUrl,
|
2529
|
+
'skip_queue' => false,
|
2530
|
+
'target' => @items['name'],
|
2531
|
+
'search_form' => @items['listSearchForm'],
|
2532
|
+
'onkeyup' => (! @items['searchOnkeyup'].empty?) ? WidgetList::Utils::fill({'<!--URL-->'=>searchUrl, '<!--TARGET-->' => @items['name'], '<!--FUNCTION_ALL-->' => @items['ajaxFunctionAll']}, @items['searchOnkeyup'] + '<!--FUNCTION_ALL-->') : ''
|
2531
2533
|
}
|
2532
2534
|
|
2533
2535
|
fillRansack = {}
|
@@ -3483,8 +3485,10 @@ module WidgetList
|
|
3483
3485
|
function = @items['linkFunction']
|
3484
3486
|
parameters = ''
|
3485
3487
|
renderButton = true
|
3486
|
-
|
3487
|
-
|
3488
|
+
page = ''
|
3489
|
+
if buttonAttribs.key?('page')
|
3490
|
+
page = buttonAttribs['page'].dup
|
3491
|
+
end
|
3488
3492
|
if buttonAttribs.key?('tags')
|
3489
3493
|
tags = buttonAttribs['tags'].dup
|
3490
3494
|
all_wildcard = false
|
@@ -3508,7 +3512,7 @@ module WidgetList
|
|
3508
3512
|
#
|
3509
3513
|
# Will build ?tagname=XXXX based on your hash passed to your page
|
3510
3514
|
#
|
3511
|
-
buttonAttribs.deep_merge!({ 'args' => { tagName => @results[tag.upcase][j] } })
|
3515
|
+
buttonAttribs.deep_merge!({ 'args' => { tagName => @results[tag.upcase][j] } })
|
3512
3516
|
end
|
3513
3517
|
else
|
3514
3518
|
|
data/lib/widget_list/tpl.rb
CHANGED
@@ -146,7 +146,7 @@ $G_TEMPLATE.deep_merge!({'widget' =>
|
|
146
146
|
{'default' =>
|
147
147
|
'
|
148
148
|
<!--FRM_SUBMIT-->
|
149
|
-
<a class="<!--BUTTON_CLASS-->" style="<!--BUTTON_STYLE-->" onclick="<!--BUTTON_ONCLICK-->" onmouseover="<!--MOUSEOVER-->" onmouseout="<!--MOUSEOUT-->" name="<!--NAME-->" id="<!--ID-->"
|
149
|
+
<a class="<!--BUTTON_CLASS-->" style="<!--BUTTON_STYLE-->" onclick="<!--BUTTON_ONCLICK-->" onmouseover="<!--MOUSEOVER-->" onmouseout="<!--MOUSEOUT-->" name="<!--NAME-->" id="<!--ID-->" <!--ATTRS-->>
|
150
150
|
<!--BUTTON_LABEL-->
|
151
151
|
</a>'
|
152
152
|
}
|
data/lib/widget_list/utils.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'cgi'
|
2
|
+
|
1
3
|
module WidgetList
|
2
4
|
|
3
5
|
class Utils
|
@@ -26,7 +28,7 @@ module WidgetList
|
|
26
28
|
if v.class.name == 'Hash'
|
27
29
|
q << {k => v}.to_params
|
28
30
|
else
|
29
|
-
q << k.to_s + '=' +
|
31
|
+
q << k.to_s + '=' + CGI.escape(URI.decode(v.to_s))
|
30
32
|
end
|
31
33
|
}
|
32
34
|
q.join('&')
|
data/lib/widget_list/version.rb
CHANGED
data/lib/widget_list/widgets.rb
CHANGED
@@ -107,7 +107,7 @@ module WidgetList
|
|
107
107
|
#
|
108
108
|
# Select box attributes
|
109
109
|
#
|
110
|
-
items['attribs'] =
|
110
|
+
items['attribs'] = []
|
111
111
|
items['size'] = 1
|
112
112
|
items['disabled'] = false
|
113
113
|
items['noDataMsg'] = 'No Data'
|
@@ -616,6 +616,7 @@ module WidgetList
|
|
616
616
|
'name' => '',
|
617
617
|
'id' => '',
|
618
618
|
'url' => '',
|
619
|
+
'attribs' => [],
|
619
620
|
'link' => '', #alias of url
|
620
621
|
'href' => '', #alias of url
|
621
622
|
'page' => '',
|
@@ -624,7 +625,7 @@ module WidgetList
|
|
624
625
|
'frmSubmit' => '', #this option adds hidden frmbutton
|
625
626
|
'submit' => '',
|
626
627
|
'args' => {},
|
627
|
-
'class' => 'btn', #Always stays the same
|
628
|
+
'class' => 'wl-btn', #Always stays the same
|
628
629
|
'innerClass' => 'info', #.primary(blue) .info(light-blue) .success(green) .danger(red) .disabled(light grey) .default(grey)
|
629
630
|
'passive' => false,
|
630
631
|
'function' => 'ButtonLinkPost',
|
@@ -653,7 +654,7 @@ module WidgetList
|
|
653
654
|
end
|
654
655
|
|
655
656
|
if items['url'].empty? && !items['page'].empty?
|
656
|
-
items['url'] =
|
657
|
+
items['url'] = items['page']
|
657
658
|
end
|
658
659
|
|
659
660
|
if !items['href'].empty? && items['onclick'].empty?
|
@@ -690,6 +691,7 @@ module WidgetList
|
|
690
691
|
'<!--BUTTON_ONCLICK-->' => items['onclick'].gsub(/\"/,"'"),
|
691
692
|
'<!--BUTTON_LABEL-->' => items['label'],
|
692
693
|
'<!--NAME-->' => items['name'],
|
694
|
+
'<!--ATTRS-->' => items['attribs'].join(' '),
|
693
695
|
'<!--ID-->' => items['id'],
|
694
696
|
'<!--BUTTON_STYLE-->' => items['style'],
|
695
697
|
'<!--BUTTON_CLASS_INNER-->' => items['innerClass'],
|
@@ -754,4 +756,9 @@ module WidgetList
|
|
754
756
|
output_final
|
755
757
|
end
|
756
758
|
end
|
757
|
-
end
|
759
|
+
end
|
760
|
+
|
761
|
+
# require 'widget_list/utils'
|
762
|
+
# require 'widget_list/hash'
|
763
|
+
# require 'widget_list/tpl'
|
764
|
+
# puts WidgetList::Widgets.test_all
|
@@ -12,12 +12,10 @@
|
|
12
12
|
height:3px;
|
13
13
|
}
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
border: 1px solid #CCCCCC;
|
15
|
+
input.info-input:focus {
|
16
|
+
outline-width: 0;
|
18
17
|
}
|
19
18
|
|
20
|
-
|
21
19
|
table.widget_list tbody tr td span
|
22
20
|
{
|
23
21
|
width:auto;
|
@@ -392,29 +390,29 @@ table.searchBox td.label
|
|
392
390
|
padding:0px;
|
393
391
|
}
|
394
392
|
|
395
|
-
.btn.danger,
|
393
|
+
.wl-btn.danger,
|
396
394
|
.alert-message.danger,
|
397
|
-
.btn.danger:hover,
|
395
|
+
.wl-btn.danger:hover,
|
398
396
|
.alert-message.danger:hover,
|
399
|
-
.btn.error,
|
397
|
+
.wl-btn.error,
|
400
398
|
.alert-message.error,
|
401
|
-
.btn.error:hover,
|
399
|
+
.wl-btn.error:hover,
|
402
400
|
.alert-message.error:hover,
|
403
|
-
.btn.success,
|
401
|
+
.wl-btn.success,
|
404
402
|
.alert-message.success,
|
405
|
-
.btn.success:hover,
|
403
|
+
.wl-btn.success:hover,
|
406
404
|
.alert-message.success:hover,
|
407
|
-
.btn.info,
|
405
|
+
.wl-btn.info,
|
408
406
|
.alert-message.info,
|
409
|
-
.btn.info:hover,
|
407
|
+
.wl-btn.info:hover,
|
410
408
|
.alert-message.info:hover
|
411
409
|
{
|
412
410
|
color: #ffffff;
|
413
411
|
}
|
414
412
|
|
415
|
-
.btn.danger,
|
413
|
+
.wl-btn.danger,
|
416
414
|
.alert-message.danger,
|
417
|
-
.btn.error,
|
415
|
+
.wl-btn.error,
|
418
416
|
.alert-message.error
|
419
417
|
{
|
420
418
|
background-color: #c43c35;
|
@@ -432,7 +430,7 @@ table.searchBox td.label
|
|
432
430
|
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
433
431
|
}
|
434
432
|
|
435
|
-
.btn.success, .alert-message.success
|
433
|
+
.wl-btn.success, .alert-message.success
|
436
434
|
{
|
437
435
|
background-color: #91b32b;
|
438
436
|
background-repeat: repeat-x;
|
@@ -450,7 +448,7 @@ table.searchBox td.label
|
|
450
448
|
}
|
451
449
|
|
452
450
|
|
453
|
-
.btn.info, .alert-message.info
|
451
|
+
.wl-btn.info, .alert-message.info
|
454
452
|
{
|
455
453
|
background-color: #339bb9;
|
456
454
|
background-repeat: repeat-x;
|
@@ -467,7 +465,7 @@ table.searchBox td.label
|
|
467
465
|
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
468
466
|
}
|
469
467
|
|
470
|
-
a.btn
|
468
|
+
a.wl-btn
|
471
469
|
{
|
472
470
|
cursor: pointer;
|
473
471
|
display: inline-block;
|
@@ -502,7 +500,7 @@ a.btn
|
|
502
500
|
}
|
503
501
|
|
504
502
|
|
505
|
-
.btn:hover
|
503
|
+
.wl-btn:hover
|
506
504
|
{
|
507
505
|
background-position: 0 -15px;
|
508
506
|
color: #333;
|
@@ -510,7 +508,7 @@ a.btn
|
|
510
508
|
}
|
511
509
|
|
512
510
|
|
513
|
-
.btn.primary
|
511
|
+
.wl-btn.primary
|
514
512
|
{
|
515
513
|
color: #fff;
|
516
514
|
background-color: #0064cd;
|
@@ -528,14 +526,14 @@ a.btn
|
|
528
526
|
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
529
527
|
}
|
530
528
|
|
531
|
-
.btn:active
|
529
|
+
.wl-btn:active
|
532
530
|
{
|
533
531
|
-webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
|
534
532
|
-moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
|
535
533
|
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
|
536
534
|
}
|
537
535
|
|
538
|
-
.btn.disabled
|
536
|
+
.wl-btn.disabled
|
539
537
|
{
|
540
538
|
cursor: default;
|
541
539
|
background-image: none;
|
@@ -550,7 +548,7 @@ a.btn
|
|
550
548
|
}
|
551
549
|
|
552
550
|
|
553
|
-
.btn[disabled]
|
551
|
+
.wl-btn[disabled]
|
554
552
|
{
|
555
553
|
cursor: default;
|
556
554
|
background-image: none;
|
@@ -564,7 +562,7 @@ a.btn
|
|
564
562
|
box-shadow: none;
|
565
563
|
}
|
566
564
|
|
567
|
-
.btn.large
|
565
|
+
.wl-btn.large
|
568
566
|
{
|
569
567
|
font-size: 16px;
|
570
568
|
line-height: normal;
|
@@ -575,14 +573,14 @@ a.btn
|
|
575
573
|
}
|
576
574
|
|
577
575
|
|
578
|
-
.btn.small
|
576
|
+
.wl-btn.small
|
579
577
|
{
|
580
578
|
padding: 4px 9px 4px;
|
581
579
|
font-size: 11px;
|
582
580
|
font-weight: normal !important;
|
583
581
|
}
|
584
582
|
|
585
|
-
button.btn::-moz-focus-inner, input[type=submit].btn::-moz-focus-inner
|
583
|
+
button.wl-btn::-moz-focus-inner, input[type=submit].wl-btn::-moz-focus-inner
|
586
584
|
{
|
587
585
|
padding: 0;
|
588
586
|
border: 0;
|
@@ -606,7 +604,7 @@ div.inputOuter
|
|
606
604
|
|
607
605
|
|
608
606
|
div.inputOuter .inputInner {position:relative;background: transparent url('../assets/images/input_text_left.png') no-repeat scroll top left;border: none;height: 27px;line-height: 27px;padding-left: 6px;width: auto;padding-right: 7px;}
|
609
|
-
div.inputOuter .inputInner input {
|
607
|
+
div.inputOuter .inputInner input { border:none;background:transparent;width:100%}
|
610
608
|
div.inputOuter .inputInner input.search-ahead {width:97%}
|
611
609
|
|
612
610
|
/**
|
@@ -676,8 +674,6 @@ div.inputOuter .inputInner input.search-ahead-advanced {width: 90% !important;}
|
|
676
674
|
float:left;
|
677
675
|
text-align:left;
|
678
676
|
width:100%;
|
679
|
-
margin:0px;
|
680
|
-
padding:0px;
|
681
677
|
}
|
682
678
|
|
683
679
|
.pagination div
|
@@ -811,3 +807,26 @@ div#advanced-search-container ul.advanced-search-container-inline input.info-inp
|
|
811
807
|
*+html ul#pagination li div {display:inline}
|
812
808
|
*+html ul#pagination li div.select-outer {background: url("../assets/images/input_text_right.png") no-repeat scroll right 2px transparent;}
|
813
809
|
*+html ul#pagination li div.select-outer div.select-inner select {margin-top: -4px !important;}
|
810
|
+
|
811
|
+
|
812
|
+
.next-active {
|
813
|
+
cursor:pointer;
|
814
|
+
background: transparent url("../assets/images/page-next.gif") no-repeat;
|
815
|
+
}
|
816
|
+
|
817
|
+
.next-disabled {
|
818
|
+
opacity:0.4;
|
819
|
+
filter:alpha(opacity=40);
|
820
|
+
background: transparent url("../assets/images/page-next.gif") no-repeat;
|
821
|
+
}
|
822
|
+
|
823
|
+
.previous-active {
|
824
|
+
cursor:pointer;
|
825
|
+
background: transparent url("../assets/images/page-back.gif") no-repeat;
|
826
|
+
}
|
827
|
+
|
828
|
+
.previous-disabled {
|
829
|
+
opacity:0.4;
|
830
|
+
filter:alpha(opacity=40);
|
831
|
+
background: transparent url("../assets/images/page-back.gif") no-repeat;
|
832
|
+
}
|
data/widget_list.gemspec
CHANGED
@@ -6,12 +6,14 @@ require 'widget_list/version'
|
|
6
6
|
Gem::Specification.new do |gem|
|
7
7
|
|
8
8
|
gem.name = "widget_list"
|
9
|
+
|
10
|
+
gem.licenses = ['MIT']
|
9
11
|
|
10
12
|
gem.version = WidgetList::VERSION
|
11
13
|
|
12
14
|
gem.authors = ["David Renne"]
|
13
15
|
|
14
|
-
gem.email = ["
|
16
|
+
gem.email = ["widgetlist@davidrenne.com"]
|
15
17
|
|
16
18
|
gem.description = %q{An Advanced and flexible ajax data grid. Supports several databases where data is pulled from either using Sequel ORM (optional even though is a dependency), Active Record Models or Raw SQL.}
|
17
19
|
|
metadata
CHANGED
@@ -1,60 +1,52 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: widget_list
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
segments:
|
6
|
-
- 1
|
7
|
-
- 3
|
8
|
-
- 5
|
9
|
-
version: 1.3.5
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.3.6
|
10
5
|
platform: ruby
|
11
|
-
authors:
|
6
|
+
authors:
|
12
7
|
- David Renne
|
13
8
|
autorequire:
|
14
9
|
bindir: bin
|
15
10
|
cert_chain: []
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
dependencies:
|
20
|
-
- !ruby/object:Gem::Dependency
|
11
|
+
date: 2014-10-28 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
21
14
|
name: sequel
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
- !ruby/object:Gem::Version
|
27
|
-
segments:
|
28
|
-
- 3
|
29
|
-
- 42
|
30
|
-
- 0
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '='
|
18
|
+
- !ruby/object:Gem::Version
|
31
19
|
version: 3.42.0
|
32
20
|
type: :runtime
|
33
|
-
version_requirements: *id001
|
34
|
-
- !ruby/object:Gem::Dependency
|
35
|
-
name: ransack
|
36
21
|
prerelease: false
|
37
|
-
|
38
|
-
requirements:
|
39
|
-
- -
|
40
|
-
- !ruby/object:Gem::Version
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 3.42.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: ransack
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '='
|
32
|
+
- !ruby/object:Gem::Version
|
45
33
|
version: 0.7.2
|
46
34
|
type: :runtime
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
-
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.7.2
|
41
|
+
description: An Advanced and flexible ajax data grid. Supports several databases where
|
42
|
+
data is pulled from either using Sequel ORM (optional even though is a dependency),
|
43
|
+
Active Record Models or Raw SQL.
|
44
|
+
email:
|
45
|
+
- widgetlist@davidrenne.com
|
51
46
|
executables: []
|
52
|
-
|
53
47
|
extensions: []
|
54
|
-
|
55
48
|
extra_rdoc_files: []
|
56
|
-
|
57
|
-
files:
|
49
|
+
files:
|
58
50
|
- .gitignore
|
59
51
|
- .idea/.name
|
60
52
|
- .idea/encodings.xml
|
@@ -326,35 +318,29 @@ files:
|
|
326
318
|
- vendor/assets/stylesheets/widget_list.css
|
327
319
|
- vendor/assets/stylesheets/widgets.css
|
328
320
|
- widget_list.gemspec
|
329
|
-
has_rdoc: true
|
330
321
|
homepage: https://github.com/davidrenne/widget_list
|
331
|
-
licenses:
|
332
|
-
|
322
|
+
licenses:
|
323
|
+
- MIT
|
324
|
+
metadata: {}
|
333
325
|
post_install_message:
|
334
326
|
rdoc_options: []
|
335
|
-
|
336
|
-
require_paths:
|
327
|
+
require_paths:
|
337
328
|
- lib
|
338
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
339
|
-
requirements:
|
340
|
-
- -
|
341
|
-
- !ruby/object:Gem::Version
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
- !ruby/object:Gem::Version
|
349
|
-
segments:
|
350
|
-
- 0
|
351
|
-
version: "0"
|
329
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
330
|
+
requirements:
|
331
|
+
- - ! '>='
|
332
|
+
- !ruby/object:Gem::Version
|
333
|
+
version: '0'
|
334
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
335
|
+
requirements:
|
336
|
+
- - ! '>='
|
337
|
+
- !ruby/object:Gem::Version
|
338
|
+
version: '0'
|
352
339
|
requirements: []
|
353
|
-
|
354
340
|
rubyforge_project:
|
355
|
-
rubygems_version:
|
341
|
+
rubygems_version: 2.2.2
|
356
342
|
signing_key:
|
357
|
-
specification_version:
|
358
|
-
summary: In rails you have will_paginate and other gems like it using the ActiveRecord
|
343
|
+
specification_version: 4
|
344
|
+
summary: In rails you have will_paginate and other gems like it using the ActiveRecord
|
345
|
+
approach, but widget_list adds some awesome treats to standard boring pagers
|
359
346
|
test_files: []
|
360
|
-
|