will_filter 3.0.5 → 3.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +6 -0
- data/.rspec +1 -0
- data/.rvmrc +1 -0
- data/CHANGELOG.rdoc +2 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +156 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +78 -0
- data/Rakefile +68 -0
- data/app/.DS_Store +0 -0
- data/app/assets/images/.DS_Store +0 -0
- data/{public/favicon.ico → app/assets/images/will_filter/.gitkeep} +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/buttons.png +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/calendar.png +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/clock.png +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/close.gif +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/sort_arrow_all.gif +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/sort_bg.gif +0 -0
- data/{public/will_filter/images → app/assets/images/will_filter}/spinner.gif +0 -0
- data/{public/will_filter/javascripts/will_filter.js → app/assets/javascripts/will_filter/filter.js} +7 -7
- data/app/assets/javascripts/will_filter/filter_prototype_effects.js +38 -0
- data/app/assets/stylesheets/will_filter/actions.css.scss +27 -0
- data/app/assets/stylesheets/will_filter/buttons.css.scss +24 -0
- data/app/assets/stylesheets/will_filter/calendar.css.scss +55 -0
- data/app/assets/stylesheets/will_filter/exporter.css.scss +43 -0
- data/app/assets/stylesheets/will_filter/filter.css.scss +152 -0
- data/app/assets/stylesheets/will_filter/results.css.scss +63 -0
- data/app/controllers/{application_controller.rb → will_filter/application_controller.rb} +4 -4
- data/app/controllers/will_filter/calendar_controller.rb +1 -1
- data/app/controllers/will_filter/exporter_controller.rb +1 -1
- data/app/controllers/will_filter/filter_controller.rb +1 -7
- data/app/models/will_filter/filter.rb +12 -40
- data/app/views/.DS_Store +0 -0
- data/app/views/layouts/will_filter/application.html.erb +14 -0
- data/app/views/will_filter/.DS_Store +0 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.10120~ +32 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.2839~ +14 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.58862~ +14 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.64846~ +14 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.68789~ +32 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.93003~ +14 -0
- data/app/views/will_filter/calendar/.tmp__annual.html.erb.93827~ +32 -0
- data/app/views/will_filter/calendar/.tmp__month.html.erb.756~ +39 -0
- data/app/views/will_filter/calendar/.tmp__quarter.html.erb.69400~ +24 -0
- data/app/views/will_filter/calendar/.tmp_index.html.erb.11043~ +52 -0
- data/app/views/will_filter/calendar/.tmp_index.html.erb.33725~ +52 -0
- data/app/views/will_filter/calendar/.tmp_index.html.erb.56447~ +66 -0
- data/app/views/will_filter/calendar/.tmp_index.html.erb.85379~ +70 -0
- data/app/views/will_filter/calendar/.tmp_index.html.erb.86425~ +70 -0
- data/app/views/will_filter/calendar/.tmp_index.html.erb.95884~ +52 -0
- data/app/views/will_filter/calendar/index.html.erb +3 -3
- data/app/views/will_filter/common/.tmp__results_table.html.erb.47785~ +87 -0
- data/app/views/will_filter/common/.tmp__results_table.html.erb.88043~ +87 -0
- data/app/views/will_filter/common/.tmp__scripts.html.erb.51111~ +0 -0
- data/app/views/will_filter/common/.tmp__scripts.html.erb.6990~ +2 -0
- data/app/views/will_filter/common/.tmp__scripts.html.erb.88469~ +6 -0
- data/app/views/will_filter/common/_results_table.html.erb +6 -2
- data/app/views/will_filter/common/_scripts.html.erb +8 -2
- data/app/views/will_filter/exporter/.tmp_export.html.erb.10837~ +9 -0
- data/app/views/will_filter/exporter/.tmp_export.html.erb.1415~ +29 -0
- data/app/views/will_filter/exporter/.tmp_export.html.erb.60681~ +29 -0
- data/app/views/will_filter/exporter/.tmp_export.html.erb.61343~ +29 -0
- data/app/views/will_filter/exporter/.tmp_export_dialog.html.erb.22940~ +38 -0
- data/app/views/will_filter/exporter/.tmp_index.html.erb.13538~ +47 -0
- data/app/views/will_filter/exporter/.tmp_index.html.erb.23276~ +47 -0
- data/app/views/will_filter/exporter/.tmp_index.html.erb.28308~ +44 -0
- data/app/views/will_filter/exporter/.tmp_index.html.erb.29049~ +44 -0
- data/app/views/will_filter/exporter/index.html.erb +1 -1
- data/app/views/will_filter/filter/.tmp__condition.html.erb.24762~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.27587~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.45362~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.49252~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.58234~ +30 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.60688~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.66557~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.68032~ +30 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.73740~ +28 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.81041~ +30 -0
- data/app/views/will_filter/filter/.tmp__condition.html.erb.98638~ +28 -0
- data/app/views/will_filter/filter/.tmp__conditions.html.erb.23216~ +50 -0
- data/app/views/will_filter/filter/.tmp__conditions.html.erb.53568~ +50 -0
- data/app/views/will_filter/filter/.tmp__conditions.html.erb.5788~ +56 -0
- data/app/views/will_filter/filter/.tmp__conditions.html.erb.79521~ +50 -0
- data/app/views/will_filter/filter/.tmp__conditions.html.erb.92102~ +56 -0
- data/app/views/will_filter/filter/.tmp__conditions.html.erb.97034~ +52 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.23178~ +30 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.25113~ +31 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.29332~ +36 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.31412~ +32 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.57958~ +32 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.80588~ +30 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.89054~ +30 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.92260~ +32 -0
- data/app/views/will_filter/filter/.tmp__container.html.erb.92798~ +36 -0
- data/app/views/will_filter/filter/.tmp__filter_conditions.html.erb.70617~ +78 -0
- data/app/views/will_filter/filter/.tmp_calendar.html.erb.30839~ +66 -0
- data/app/views/will_filter/filter/.tmp_calendar.html.erb.52766~ +66 -0
- data/app/views/will_filter/filter/.tmp_calendar.html.erb.83182~ +66 -0
- data/app/views/will_filter/filter/.tmp_export_data.html.erb.50322~ +44 -0
- data/app/views/will_filter/filter/.tmp_index.html.erb.40957~ +4 -0
- data/app/views/will_filter/filter/_condition.html.erb +5 -5
- data/app/views/will_filter/filter/_conditions.html.erb +4 -7
- data/app/views/will_filter/filter/_container.html.erb +5 -5
- data/app/views/will_filter/filter/containers/_boolean.html.erb +2 -2
- data/app/views/will_filter/filter/containers/_date.html.erb +3 -5
- data/app/views/will_filter/filter/containers/_date_range.html.erb +5 -9
- data/app/views/will_filter/filter/containers/_date_time.html.erb +3 -5
- data/app/views/will_filter/filter/containers/_date_time_range.html.erb +5 -9
- data/app/views/will_filter/filter/containers/_list.html.erb +1 -1
- data/app/views/will_filter/filter/containers/_numeric_range.html.erb +3 -3
- data/app/views/will_filter/filter/containers/_text.html.erb +2 -2
- data/app/views/will_filter/filter/index.html.erb +1 -1
- data/config/routes.rb +39 -17
- data/db/migrate/20110924023807_create_will_filter_filters.rb +15 -0
- data/lib/generators/.DS_Store +0 -0
- data/lib/generators/will_filter/templates/config.yml +0 -28
- data/lib/generators/will_filter/templates/create_will_filter_filters.rb +15 -0
- data/lib/generators/will_filter/will_filter_generator.rb +27 -4
- data/lib/tasks/will_filter_tasks.rake +1 -2
- data/lib/will_filter.rb +26 -1
- data/lib/will_filter/calendar.rb +1 -1
- data/lib/will_filter/config.rb +1 -6
- data/lib/will_filter/containers/filter_list.rb +2 -2
- data/lib/will_filter/engine.rb +23 -17
- data/lib/will_filter/{common_methods.rb → extensions/action_controller_extension.rb} +18 -20
- data/lib/will_filter/extensions/action_view_extension.rb +50 -0
- data/lib/{core_ext/active_record/base.rb → will_filter/extensions/active_record_extension.rb} +22 -17
- data/lib/{core_ext/array.rb → will_filter/extensions/array_extension.rb} +1 -1
- data/lib/{application_helper.rb → will_filter/railtie.rb} +30 -20
- data/{app/helpers/application_helper.rb → lib/will_filter/version.rb} +3 -3
- data/script/rails +6 -0
- data/spec/spec_helper.rb +27 -0
- data/test/.DS_Store +0 -0
- data/test/dummy/.DS_Store +0 -0
- data/test/dummy/.sass-cache/f9cb1ef521115be73f1c61d3d5d64f66c947af63/actions.css.scssc +0 -0
- data/test/dummy/.sass-cache/f9cb1ef521115be73f1c61d3d5d64f66c947af63/buttons.css.scssc +0 -0
- data/test/dummy/.sass-cache/f9cb1ef521115be73f1c61d3d5d64f66c947af63/calendar.css.scssc +0 -0
- data/test/dummy/.sass-cache/f9cb1ef521115be73f1c61d3d5d64f66c947af63/exporter.css.scssc +0 -0
- data/test/dummy/.sass-cache/f9cb1ef521115be73f1c61d3d5d64f66c947af63/filter.css.scssc +0 -0
- data/test/dummy/.sass-cache/f9cb1ef521115be73f1c61d3d5d64f66c947af63/results.css.scssc +0 -0
- data/test/dummy/Rakefile +7 -0
- data/test/dummy/app/.DS_Store +0 -0
- data/test/dummy/app/assets/javascripts/application.js +7 -0
- data/test/dummy/app/assets/stylesheets/application.css +7 -0
- data/test/dummy/app/assets/stylesheets/kaminari.css +10 -0
- data/test/dummy/app/controllers/advanced_controller.rb +19 -0
- data/test/dummy/app/controllers/application_controller.rb +8 -0
- data/test/dummy/app/controllers/simple_controller.rb +15 -0
- data/test/dummy/app/helpers/application_helper.rb +3 -0
- data/test/dummy/app/mailers/.gitkeep +0 -0
- data/test/dummy/app/models/.gitkeep +0 -0
- data/test/dummy/app/models/event.rb +15 -0
- data/test/dummy/app/models/event_filter.rb +41 -0
- data/test/dummy/app/models/event_user.rb +10 -0
- data/test/dummy/app/models/event_user_filter.rb +40 -0
- data/test/dummy/app/models/user.rb +42 -0
- data/test/dummy/app/models/user_filter.rb +57 -0
- data/test/dummy/app/views/advanced/event_members.html.erb +2 -0
- data/test/dummy/app/views/advanced/events.html.erb +2 -0
- data/test/dummy/app/views/advanced/users.html.erb +2 -0
- data/test/dummy/app/views/advanced/users_with_actions.html.erb +12 -0
- data/test/dummy/app/views/common/_event_members.html.erb +2 -0
- data/test/dummy/app/views/common/_events.html.erb +2 -0
- data/test/dummy/app/views/common/_menu.html.erb +23 -0
- data/test/dummy/app/views/common/_users.html.erb +2 -0
- data/test/dummy/app/views/kaminari/_first_page.html.erb +11 -0
- data/test/dummy/app/views/kaminari/_gap.html.erb +8 -0
- data/test/dummy/app/views/kaminari/_last_page.html.erb +11 -0
- data/test/dummy/app/views/kaminari/_next_page.html.erb +11 -0
- data/test/dummy/app/views/kaminari/_page.html.erb +12 -0
- data/test/dummy/app/views/kaminari/_paginator.html.erb +23 -0
- data/test/dummy/app/views/kaminari/_prev_page.html.erb +11 -0
- data/test/dummy/app/views/layouts/application.html.erb +17 -0
- data/test/dummy/app/views/simple/event_members.html.erb +2 -0
- data/test/dummy/app/views/simple/events.html.erb +3 -0
- data/test/dummy/app/views/simple/users.html.erb +2 -0
- data/test/dummy/config.ru +4 -0
- data/{config → test/dummy/config}/application.rb +11 -10
- data/test/dummy/config/boot.rb +10 -0
- data/test/dummy/config/data/female_names.txt +26 -0
- data/test/dummy/config/data/last_names.txt +50 -0
- data/test/dummy/config/data/male_names.txt +25 -0
- data/{config → test/dummy/config}/database.yml +3 -0
- data/test/dummy/config/environment.rb +5 -0
- data/{config → test/dummy/config}/environments/development.rb +8 -4
- data/{config → test/dummy/config}/environments/production.rb +24 -13
- data/{config → test/dummy/config}/environments/test.rb +9 -5
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/inflections.rb +10 -0
- data/test/dummy/config/initializers/mime_types.rb +5 -0
- data/test/dummy/config/initializers/secret_token.rb +7 -0
- data/test/dummy/config/initializers/session_store.rb +8 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +5 -0
- data/test/dummy/config/routes.rb +13 -0
- data/test/dummy/config/will_filter/config.yml +97 -0
- data/test/dummy/db/migrate/.DS_Store +0 -0
- data/test/dummy/db/migrate/20090416182137_create_users.rb +15 -0
- data/test/dummy/db/migrate/20090418042757_create_events.rb +20 -0
- data/test/dummy/db/migrate/20090418062225_create_event_users.rb +17 -0
- data/test/dummy/db/schema.rb +61 -0
- data/test/dummy/lib/assets/.gitkeep +0 -0
- data/test/dummy/lib/tasks/dummy.rake +14 -0
- data/test/dummy/log/.gitkeep +0 -0
- data/{public → test/dummy/public}/404.html +0 -0
- data/{public → test/dummy/public}/422.html +0 -0
- data/{public → test/dummy/public}/500.html +0 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/script/rails +6 -0
- data/test/dummy/test/functional/welcome_controller_test.rb +9 -0
- data/test/dummy/test/unit/helpers/welcome_helper_test.rb +4 -0
- data/test/fixtures/will_filter/filters.yml +11 -0
- data/test/functional/will_filter/calendar_controller_test.rb +9 -0
- data/test/functional/will_filter/exporter_controller_test.rb +9 -0
- data/test/functional/will_filter/filter_controller_test.rb +9 -0
- data/test/integration/navigation_test.rb +10 -0
- data/test/test_helper.rb +10 -0
- data/test/unit/helpers/will_filter/calendar_helper_test.rb +6 -0
- data/test/unit/helpers/will_filter/exporter_helper_test.rb +6 -0
- data/test/unit/helpers/will_filter/filter_helper_test.rb +6 -0
- data/test/unit/will_filter/filter_test.rb +9 -0
- data/test/will_filter_test.rb +7 -0
- data/will_filter.gemspec +38 -0
- metadata +446 -45
- data/app/views/layouts/application.html.erb +0 -11
- data/config/boot.rb +0 -6
- data/config/environment.rb +0 -15
- data/lib/core_ext/object.rb +0 -34
- data/lib/generators/will_filter/templates/create_will_filter_tables.rb +0 -19
- data/public/robots.txt +0 -5
- data/public/will_filter/images/results_table_th_active.gif +0 -0
- data/public/will_filter/javascripts/will_filter_prototype_effects.js +0 -15
- data/public/will_filter/stylesheets/will_filter.css +0 -168
data/.gitignore
ADDED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--colour
|
data/.rvmrc
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
rvm 1.9.2 --create
|
data/CHANGELOG.rdoc
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,156 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
will_filter (3.1.1)
|
5
|
+
coffee-script
|
6
|
+
kaminari
|
7
|
+
rails (>= 3.1.0)
|
8
|
+
sass
|
9
|
+
|
10
|
+
GEM
|
11
|
+
remote: http://rubygems.org/
|
12
|
+
specs:
|
13
|
+
actionmailer (3.1.0)
|
14
|
+
actionpack (= 3.1.0)
|
15
|
+
mail (~> 2.3.0)
|
16
|
+
actionpack (3.1.0)
|
17
|
+
activemodel (= 3.1.0)
|
18
|
+
activesupport (= 3.1.0)
|
19
|
+
builder (~> 3.0.0)
|
20
|
+
erubis (~> 2.7.0)
|
21
|
+
i18n (~> 0.6)
|
22
|
+
rack (~> 1.3.2)
|
23
|
+
rack-cache (~> 1.0.3)
|
24
|
+
rack-mount (~> 0.8.2)
|
25
|
+
rack-test (~> 0.6.1)
|
26
|
+
sprockets (~> 2.0.0)
|
27
|
+
activemodel (3.1.0)
|
28
|
+
activesupport (= 3.1.0)
|
29
|
+
bcrypt-ruby (~> 3.0.0)
|
30
|
+
builder (~> 3.0.0)
|
31
|
+
i18n (~> 0.6)
|
32
|
+
activerecord (3.1.0)
|
33
|
+
activemodel (= 3.1.0)
|
34
|
+
activesupport (= 3.1.0)
|
35
|
+
arel (~> 2.2.1)
|
36
|
+
tzinfo (~> 0.3.29)
|
37
|
+
activeresource (3.1.0)
|
38
|
+
activemodel (= 3.1.0)
|
39
|
+
activesupport (= 3.1.0)
|
40
|
+
activesupport (3.1.0)
|
41
|
+
multi_json (~> 1.0)
|
42
|
+
arel (2.2.1)
|
43
|
+
bcrypt-ruby (3.0.1)
|
44
|
+
builder (3.0.0)
|
45
|
+
capybara (1.1.1)
|
46
|
+
mime-types (>= 1.16)
|
47
|
+
nokogiri (>= 1.3.3)
|
48
|
+
rack (>= 1.0.0)
|
49
|
+
rack-test (>= 0.5.4)
|
50
|
+
selenium-webdriver (~> 2.0)
|
51
|
+
xpath (~> 0.1.4)
|
52
|
+
childprocess (0.2.2)
|
53
|
+
ffi (~> 1.0.6)
|
54
|
+
coffee-script (2.2.0)
|
55
|
+
coffee-script-source
|
56
|
+
execjs
|
57
|
+
coffee-script-source (1.1.2)
|
58
|
+
database_cleaner (0.6.7)
|
59
|
+
diff-lcs (1.1.3)
|
60
|
+
erubis (2.7.0)
|
61
|
+
execjs (1.2.9)
|
62
|
+
multi_json (~> 1.0)
|
63
|
+
factory_girl (2.1.2)
|
64
|
+
activesupport
|
65
|
+
ffi (1.0.9)
|
66
|
+
hike (1.2.1)
|
67
|
+
i18n (0.6.0)
|
68
|
+
json_pure (1.6.1)
|
69
|
+
kaminari (0.12.4)
|
70
|
+
rails (>= 3.0.0)
|
71
|
+
mail (2.3.0)
|
72
|
+
i18n (>= 0.4.0)
|
73
|
+
mime-types (~> 1.16)
|
74
|
+
treetop (~> 1.4.8)
|
75
|
+
mime-types (1.16)
|
76
|
+
multi_json (1.0.3)
|
77
|
+
nokogiri (1.5.0)
|
78
|
+
polyglot (0.3.2)
|
79
|
+
rack (1.3.3)
|
80
|
+
rack-cache (1.0.3)
|
81
|
+
rack (>= 0.4)
|
82
|
+
rack-mount (0.8.3)
|
83
|
+
rack (>= 1.0.0)
|
84
|
+
rack-ssl (1.3.2)
|
85
|
+
rack
|
86
|
+
rack-test (0.6.1)
|
87
|
+
rack (>= 1.0)
|
88
|
+
rails (3.1.0)
|
89
|
+
actionmailer (= 3.1.0)
|
90
|
+
actionpack (= 3.1.0)
|
91
|
+
activerecord (= 3.1.0)
|
92
|
+
activeresource (= 3.1.0)
|
93
|
+
activesupport (= 3.1.0)
|
94
|
+
bundler (~> 1.0)
|
95
|
+
railties (= 3.1.0)
|
96
|
+
railties (3.1.0)
|
97
|
+
actionpack (= 3.1.0)
|
98
|
+
activesupport (= 3.1.0)
|
99
|
+
rack-ssl (~> 1.3.2)
|
100
|
+
rake (>= 0.8.7)
|
101
|
+
rdoc (~> 3.4)
|
102
|
+
thor (~> 0.14.6)
|
103
|
+
rake (0.9.2)
|
104
|
+
rdoc (3.9.4)
|
105
|
+
rr (1.0.4)
|
106
|
+
rspec (2.6.0)
|
107
|
+
rspec-core (~> 2.6.0)
|
108
|
+
rspec-expectations (~> 2.6.0)
|
109
|
+
rspec-mocks (~> 2.6.0)
|
110
|
+
rspec-core (2.6.4)
|
111
|
+
rspec-expectations (2.6.0)
|
112
|
+
diff-lcs (~> 1.1.2)
|
113
|
+
rspec-mocks (2.6.0)
|
114
|
+
rspec-rails (2.6.1)
|
115
|
+
actionpack (~> 3.0)
|
116
|
+
activesupport (~> 3.0)
|
117
|
+
railties (~> 3.0)
|
118
|
+
rspec (~> 2.6.0)
|
119
|
+
rubyzip (0.9.4)
|
120
|
+
sass (3.1.7)
|
121
|
+
selenium-webdriver (2.7.0)
|
122
|
+
childprocess (>= 0.2.1)
|
123
|
+
ffi (>= 1.0.7)
|
124
|
+
json_pure
|
125
|
+
rubyzip
|
126
|
+
sprockets (2.0.0)
|
127
|
+
hike (~> 1.2)
|
128
|
+
rack (~> 1.0)
|
129
|
+
tilt (!= 1.3.0, ~> 1.1)
|
130
|
+
sqlite3 (1.3.4)
|
131
|
+
steak (2.0.0)
|
132
|
+
capybara (>= 1.0.0)
|
133
|
+
rspec-rails (>= 2.5.0)
|
134
|
+
thor (0.14.6)
|
135
|
+
tilt (1.3.3)
|
136
|
+
treetop (1.4.10)
|
137
|
+
polyglot
|
138
|
+
polyglot (>= 0.3.1)
|
139
|
+
tzinfo (0.3.29)
|
140
|
+
xpath (0.1.4)
|
141
|
+
nokogiri (~> 1.3)
|
142
|
+
|
143
|
+
PLATFORMS
|
144
|
+
ruby
|
145
|
+
|
146
|
+
DEPENDENCIES
|
147
|
+
bundler (>= 1.0.0)
|
148
|
+
capybara
|
149
|
+
database_cleaner
|
150
|
+
factory_girl
|
151
|
+
rr
|
152
|
+
rspec
|
153
|
+
rspec-rails
|
154
|
+
sqlite3
|
155
|
+
steak
|
156
|
+
will_filter!
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2010-2011 Michael Berkovich
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
@@ -0,0 +1,78 @@
|
|
1
|
+
= WillFilter
|
2
|
+
|
3
|
+
will_filter is a Rails engine plugin that provides a GUI for filtering your ActiveRecord models.
|
4
|
+
|
5
|
+
== Preamble
|
6
|
+
|
7
|
+
If you ever had to build an admin tool for your web site that displayed a list of objects that can be filtered using
|
8
|
+
various criteria, this plugin will make your life easier. Adding a filtered page can now be
|
9
|
+
a matter of adding two lines of code - one to your controller and one to your view. See examples below.
|
10
|
+
|
11
|
+
== Installation Instructions
|
12
|
+
|
13
|
+
Add the following gems to your Gemfile:
|
14
|
+
|
15
|
+
gem 'will_filter', "~> 3.1.0"
|
16
|
+
|
17
|
+
And run:
|
18
|
+
|
19
|
+
$ bundle
|
20
|
+
|
21
|
+
To configure and initialize will_filter engine, run the following commands:
|
22
|
+
|
23
|
+
$ rails generate will_filter
|
24
|
+
$ rake db:migrate
|
25
|
+
|
26
|
+
== Examples
|
27
|
+
|
28
|
+
To add a filtered result-set to your controller use the following method call:
|
29
|
+
|
30
|
+
class UsersController < ApplicationController
|
31
|
+
|
32
|
+
def index
|
33
|
+
@users = User.filter(:params => params)
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
Note: 'User' is a Rails ActiveRecord model
|
39
|
+
|
40
|
+
Now all you have to do is create a view for this action and add the following tag where you want the filter to be rendered:
|
41
|
+
|
42
|
+
<%= will_filter_tag(@users) %>
|
43
|
+
|
44
|
+
And optionally you can do (for results table):
|
45
|
+
|
46
|
+
<%= will_filter_table_tag(@users) %>
|
47
|
+
|
48
|
+
That's it. This will render a filter box with various conditions, operators and values for the model object you selected.
|
49
|
+
|
50
|
+
Below are a couple of screenshot of what the filter looks like when it is rendered on a page:
|
51
|
+
|
52
|
+
http://wiki.tr8n.org/images/e/e1/Wf1.png
|
53
|
+
|
54
|
+
http://wiki.tr8n.org/images/5/50/Wf2.png
|
55
|
+
|
56
|
+
|
57
|
+
This plugin comes with a dummy test project. To try out some of the examples, run the following commands:
|
58
|
+
|
59
|
+
$ git clone git://github.com/berk/will_filter.git
|
60
|
+
$ cd will_filter/test/dummy
|
61
|
+
$ rake db:migrate
|
62
|
+
$ rake samples:init
|
63
|
+
$ rails server
|
64
|
+
|
65
|
+
Open your browser and point to:
|
66
|
+
|
67
|
+
http://localhost:3000
|
68
|
+
|
69
|
+
Live will_filter_examples application is running here:
|
70
|
+
|
71
|
+
http://wf.tr8n.org
|
72
|
+
|
73
|
+
If you have any questions, comments or suggestions, email me at theiceberk@gmail.com
|
74
|
+
|
75
|
+
== Authors and credits
|
76
|
+
|
77
|
+
Authors:: Michael Berkovich
|
78
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,68 @@
|
|
1
|
+
#--
|
2
|
+
# Copyright (c) 2010-2011 Michael Berkovich
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
# a copy of this software and associated documentation files (the
|
6
|
+
# "Software"), to deal in the Software without restriction, including
|
7
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
# the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be
|
13
|
+
# included in all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
#++
|
23
|
+
|
24
|
+
#!/usr/bin/env rake
|
25
|
+
begin
|
26
|
+
require 'bundler/setup'
|
27
|
+
rescue LoadError
|
28
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
29
|
+
end
|
30
|
+
begin
|
31
|
+
require 'rdoc/task'
|
32
|
+
rescue LoadError
|
33
|
+
require 'rdoc/rdoc'
|
34
|
+
require 'rake/rdoctask'
|
35
|
+
RDoc::Task = Rake::RDocTask
|
36
|
+
end
|
37
|
+
|
38
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
39
|
+
require 'will_filter/version'
|
40
|
+
|
41
|
+
rdoc.rdoc_dir = 'rdoc'
|
42
|
+
rdoc.title = 'WillFilter #{WillFilter::VERSION}'
|
43
|
+
rdoc.options << '--line-numbers'
|
44
|
+
rdoc.rdoc_files.include('README.rdoc')
|
45
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
46
|
+
end
|
47
|
+
|
48
|
+
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
49
|
+
load 'rails/tasks/engine.rake'
|
50
|
+
|
51
|
+
Bundler::GemHelper.install_tasks
|
52
|
+
|
53
|
+
require 'rake/testtask'
|
54
|
+
|
55
|
+
Rake::TestTask.new(:test) do |t|
|
56
|
+
t.libs << 'lib'
|
57
|
+
t.libs << 'test'
|
58
|
+
t.pattern = 'test/**/*_test.rb'
|
59
|
+
t.verbose = false
|
60
|
+
end
|
61
|
+
|
62
|
+
require 'rspec/core'
|
63
|
+
require 'rspec/core/rake_task'
|
64
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
65
|
+
spec.pattern = FileList['spec/**/*_spec.rb']
|
66
|
+
end
|
67
|
+
|
68
|
+
task :default => :spec
|
data/app/.DS_Store
ADDED
Binary file
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/{public/will_filter/javascripts/will_filter.js → app/assets/javascripts/will_filter/filter.js}
RENAMED
@@ -1,5 +1,5 @@
|
|
1
1
|
/****************************************************************************
|
2
|
-
Copyright (c) 2011 Michael Berkovich
|
2
|
+
Copyright (c) 2010-2011 Michael Berkovich
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person obtaining
|
5
5
|
a copy of this software and associated documentation files (the
|
@@ -234,9 +234,9 @@ Wf.Calendar.prototype = {
|
|
234
234
|
onComplete: function(transport) {
|
235
235
|
var trigger_position = Wf.Utils.cumulativeOffset(wfCalendar.trigger);
|
236
236
|
var calendar_container = Wf.element("wf_calendar");
|
237
|
-
calendar_container.style.left = (trigger_position[0] -
|
238
|
-
calendar_container.style.top = trigger_position[1] + "px";
|
239
|
-
calendar_container.style.width = "
|
237
|
+
calendar_container.style.left = (trigger_position[0] - 273) + "px";
|
238
|
+
calendar_container.style.top = trigger_position[1] - 6 + "px";
|
239
|
+
calendar_container.style.width = "260px";
|
240
240
|
Wf.Effects.appear("wf_calendar");
|
241
241
|
}
|
242
242
|
});
|
@@ -260,8 +260,8 @@ Wf.Calendar.prototype = {
|
|
260
260
|
var trigger_position = Wf.Utils.cumulativeOffset(wfCalendar.trigger);
|
261
261
|
var width = (mode=='annual' ? 760 : 400);
|
262
262
|
var calendar_container = Wf.element("wf_calendar");
|
263
|
-
calendar_container.style.left = (trigger_position[0] - width -
|
264
|
-
calendar_container.style.top = trigger_position[1] + "px";
|
263
|
+
calendar_container.style.left = (trigger_position[0] - width - 13) + "px";
|
264
|
+
calendar_container.style.top = trigger_position[1] - 6 + "px";
|
265
265
|
calendar_container.style.width = width + "px";
|
266
266
|
}
|
267
267
|
});
|
@@ -340,7 +340,7 @@ Wf.Exporter.prototype = {
|
|
340
340
|
onComplete: function(transport) {
|
341
341
|
var trigger_position = Wf.Utils.cumulativeOffset(trigger);
|
342
342
|
var exporter_container = Wf.element("wf_exporter");
|
343
|
-
exporter_container.style.left = (trigger_position[0] -
|
343
|
+
exporter_container.style.left = (trigger_position[0] - 245) + "px";
|
344
344
|
exporter_container.style.top = trigger_position[1] + "px";
|
345
345
|
Wf.Effects.appear("wf_exporter");
|
346
346
|
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
/****************************************************************************
|
2
|
+
Copyright (c) 2010-2011 Michael Berkovich
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
a copy of this software and associated documentation files (the
|
6
|
+
"Software"), to deal in the Software without restriction, including
|
7
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be
|
13
|
+
included in all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
****************************************************************************/
|
23
|
+
|
24
|
+
var Wf = Wf || {};
|
25
|
+
Wf.Effects = {
|
26
|
+
blindUp: function(element_id) {
|
27
|
+
Effect.BlindUp(element_id, { duration: 0.25 });
|
28
|
+
},
|
29
|
+
blindDown: function(element_id) {
|
30
|
+
Effect.BlindDown(element_id, { duration: 0.25 });
|
31
|
+
},
|
32
|
+
appear: function(element_id) {
|
33
|
+
Effect.Appear(element_id, { duration: 0.25 });
|
34
|
+
},
|
35
|
+
fade: function(element_id) {
|
36
|
+
Effect.Fade(element_id, { duration: 0.25 });
|
37
|
+
}
|
38
|
+
}
|