Commit 8d0bfa0ce23ffc60c879841d5e71ba95b49d493d
Committed by
Gabriela Navarro
1 parent
845ef636
Exists in
master
and in
5 other branches
Remove filter button of software search
Signed-off-by: Fabio Teixeira <fabio1079@gmail.com> Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
Showing
4 changed files
with
26 additions
and
13 deletions
Show diff stats
features/software_catalog.feature
... | ... | @@ -34,23 +34,24 @@ Feature: Search software |
34 | 34 | Then I should see "Software One" |
35 | 35 | Then I should see "Software Two" |
36 | 36 | |
37 | + @selenium | |
37 | 38 | Scenario: Show software "One" when searching for "Software One" |
38 | 39 | Given I go to /search/software_infos |
39 | 40 | And I fill in "search-input" with "Software One" |
40 | - And I press "Filter" | |
41 | + And I keyup on selector "#search-input" | |
41 | 42 | Then I should see "Software One" |
42 | 43 | Then I should not see "Software Two" |
43 | 44 | |
45 | + @selenium | |
44 | 46 | Scenario: Show software ordered by name when "Name A-Z" is selected |
45 | 47 | Given I go to /search/software_infos |
46 | 48 | And I select "Name A-Z" from "sort" |
47 | - And I press "Filter" | |
48 | 49 | Then I should see "Software One" before "Software Two" |
49 | 50 | |
51 | + @selenium | |
50 | 52 | Scenario: Show software in reverse order by name when "Name Z-A" is selected |
51 | 53 | Given I go to /search/software_infos |
52 | 54 | And I select "Name Z-A" from "sort" |
53 | - And I press "Filter" | |
54 | 55 | Then I should see "Software Two" before "Software One" |
55 | 56 | |
56 | 57 | Scenario: Show softwares with selected category in filter | ... | ... |
features/step_definitions/mpog_steps.rb
... | ... | @@ -235,3 +235,8 @@ end |
235 | 235 | Given /^I should see "([^"]*)" before "([^"]*)"$/ do |before, after| |
236 | 236 | assert page.body.index("#{before}") < page.body.index("#{after}") |
237 | 237 | end |
238 | + | |
239 | +Given /^I keyup on selector "([^"]*)"$/ do |selector| | |
240 | + selector_founded = evaluate_script("jQuery('#{selector}').trigger('keyup').length != 0") | |
241 | + selector_founded.should be_true | |
242 | +end | ... | ... |
public/software-catalog.js
... | ... | @@ -43,7 +43,7 @@ |
43 | 43 | $(this).prop('checked', false); |
44 | 44 | }); |
45 | 45 | |
46 | - dispatch_search_ajax(update_search_page_on_ajax); | |
46 | + dispatch_search_ajax(update_search_page_on_ajax, true); | |
47 | 47 | } |
48 | 48 | |
49 | 49 | |
... | ... | @@ -52,16 +52,16 @@ |
52 | 52 | $("#filter-categories-select-catalog").show(); |
53 | 53 | $("#filter-option-catalog-software").hide(); |
54 | 54 | |
55 | - dispatch_search_ajax(update_search_page_on_ajax); | |
55 | + dispatch_search_ajax(update_search_page_on_ajax, true); | |
56 | 56 | } |
57 | 57 | |
58 | 58 | |
59 | - function dispatch_search_ajax(callback) { | |
59 | + function dispatch_search_ajax(callback, enable_load) { | |
60 | 60 | var search_params = get_search_params(); |
61 | 61 | |
62 | - console.log(search_params); | |
63 | - | |
64 | - open_loading("Loading"); | |
62 | + if(enable_load) { | |
63 | + open_loading("Loading"); | |
64 | + } | |
65 | 65 | |
66 | 66 | $.ajax({ |
67 | 67 | url: AJAX_URL.software_infos, |
... | ... | @@ -117,12 +117,20 @@ |
117 | 117 | $("#filter-categories-select-catalog").show(); |
118 | 118 | $("#filter-option-catalog-software").hide(); |
119 | 119 | |
120 | - dispatch_search_ajax(update_search_page_on_ajax); | |
120 | + dispatch_search_ajax(update_search_page_on_ajax, true); | |
121 | 121 | show_head_message(); |
122 | 122 | } |
123 | 123 | |
124 | 124 | function update_page_by_ajax_on_select_change() { |
125 | - dispatch_search_ajax(update_search_page_on_ajax); | |
125 | + dispatch_search_ajax(update_search_page_on_ajax, true); | |
126 | + } | |
127 | + | |
128 | + function update_page_by_text_filter() { | |
129 | + var text = this.value; | |
130 | + | |
131 | + if (text.length >= 3) { | |
132 | + dispatch_search_ajax(update_search_page_on_ajax, false); | |
133 | + } | |
126 | 134 | } |
127 | 135 | |
128 | 136 | function set_events() { |
... | ... | @@ -134,6 +142,7 @@ |
134 | 142 | $(".project-software").click(selectProjectSoftwareCheckbox); |
135 | 143 | $("#software_display").change(update_page_by_ajax_on_select_change); |
136 | 144 | $("#sort").change(update_page_by_ajax_on_select_change); |
145 | + $("#search-input").keyup(update_page_by_text_filter); | |
137 | 146 | } |
138 | 147 | |
139 | 148 | ... | ... |
views/search/_mpog_search_form.html.erb
... | ... | @@ -11,8 +11,6 @@ |
11 | 11 | <span class="formfield"> |
12 | 12 | <%= text_field_tag 'query', @query, :id => 'search-input', :size => 50, :placeholder=>_("Type words about the software_info you're looking for") %> |
13 | 13 | </span> |
14 | - | |
15 | - <%= submit_button(:search, _('Filter')) %> | |
16 | 14 | </div> |
17 | 15 | <%= render :partial => 'search_form_extra_fields' %> |
18 | 16 | <%= render :partial => 'catalog_filter' %> | ... | ... |