Commit 4be88df75bb3f7e416efaac54fbaeec77b0458c5
Exists in
master
and in
29 other branches
Merge commit 'refs/merge-requests/346' of git://gitorious.org/noosfero/noosfero …
…into merge-requests/346
Showing
20 changed files
with
82 additions
and
67 deletions
Show diff stats
app/views/search/_full_article.html.erb
1 | <li class="search-article-item article-item"> | 1 | <li class="search-article-item article-item"> |
2 | - <%= link_to(article.title, article.url, :class => "search-result-title") %> | 2 | + <div> |
3 | + <%= link_to(article.title, article.url, :class => "search-result-title") %> | ||
4 | + </div> | ||
5 | + | ||
3 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
4 | <%= render :partial => 'image', :object => article %> | 7 | <%= render :partial => 'image', :object => article %> |
5 | </div> | 8 | </div> |
9 | + | ||
6 | <table class="noborder search-content-second-column"> | 10 | <table class="noborder search-content-second-column"> |
7 | <%= render :partial => 'article_common', :object => article %> | 11 | <%= render :partial => 'article_common', :object => article %> |
8 | </table> | 12 | </table> |
app/views/search/_full_blog.html.erb
1 | <li class="search-blog article-item"> | 1 | <li class="search-blog article-item"> |
2 | - <%= link_to blog.title, blog.view_url, :class => 'search-result-title' %> | 2 | + <div> |
3 | + <%= link_to blog.title, blog.view_url, :class => 'search-result-title' %> | ||
4 | + </div> | ||
5 | + | ||
3 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
4 | <%= render :partial => 'image', :object => blog %> | 7 | <%= render :partial => 'image', :object => blog %> |
5 | </div> | 8 | </div> |
9 | + | ||
6 | <table class="noborder search-content-second-column"> | 10 | <table class="noborder search-content-second-column"> |
7 | <tr class="search-blog-items"> | 11 | <tr class="search-blog-items"> |
8 | <td class="search-field-label"><%= _("Last posts") %></td> | 12 | <td class="search-field-label"><%= _("Last posts") %></td> |
app/views/search/_full_event.html.erb
1 | <li class="search-event-item article-item"> | 1 | <li class="search-event-item article-item"> |
2 | -<%= link_to(event.title, event.url, :class => "search-result-title") %> | ||
3 | -<div class="search-content-first-column"> | ||
4 | - <%= render :partial => 'image', :object => event %> | ||
5 | -</div> | ||
6 | -<table class="noborder search-content-second-column"> | ||
7 | - <% if event.start_date %> | ||
8 | - <tr class="search-article-event-date"> | ||
9 | - <td class="search-field-label"><%= _('Start date') %></td> | ||
10 | - <td class="article-item-date"><%= event.start_date %></td> | ||
11 | - </tr> | ||
12 | - <% end %> | ||
13 | - <% if event.end_date %> | ||
14 | - <tr class="search-article-event-date"> | ||
15 | - <td class="search-field-label"><%= _('End date') %></td> | ||
16 | - <td class="article-item-date"><%= event.end_date %></td> | ||
17 | - </tr> | ||
18 | - <% end %> | 2 | + <div> |
3 | + <%= link_to(event.title, event.url, :class => "search-result-title") %> | ||
4 | + </div> | ||
19 | 5 | ||
20 | - <%= render :partial => 'article_common', :object => event %> | ||
21 | -</table> | ||
22 | -<%= render :partial => 'article_last_change', :object => event %> | 6 | + <div class="search-content-first-column"> |
7 | + <%= render :partial => 'image', :object => event %> | ||
8 | + </div> | ||
23 | 9 | ||
24 | -<div style="clear: both"></div> | 10 | + <table class="noborder search-content-second-column"> |
11 | + <% if event.start_date %> | ||
12 | + <tr class="search-article-event-date"> | ||
13 | + <td class="search-field-label"><%= _('Start date') %></td> | ||
14 | + <td class="article-item-date"><%= event.start_date %></td> | ||
15 | + </tr> | ||
16 | + <% end %> | ||
17 | + <% if event.end_date %> | ||
18 | + <tr class="search-article-event-date"> | ||
19 | + <td class="search-field-label"><%= _('End date') %></td> | ||
20 | + <td class="article-item-date"><%= event.end_date %></td> | ||
21 | + </tr> | ||
22 | + <% end %> | ||
23 | + | ||
24 | + <%= render :partial => 'article_common', :object => event %> | ||
25 | + </table> | ||
26 | + <%= render :partial => 'article_last_change', :object => event %> | ||
27 | + | ||
28 | + <div style="clear: both"></div> | ||
25 | </li> | 29 | </li> |
app/views/search/_full_folder.html.erb
1 | <li class="search-folder-item article-item"> | 1 | <li class="search-folder-item article-item"> |
2 | - <%= link_to folder.title, folder.view_url, :class => 'search-result-title' %> | 2 | + <div> |
3 | + <%= link_to folder.title, folder.view_url, :class => 'search-result-title' %> | ||
4 | + </div> | ||
5 | + | ||
3 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
4 | <%= render :partial => 'image', :object => folder %> | 7 | <%= render :partial => 'image', :object => folder %> |
5 | </div> | 8 | </div> |
9 | + | ||
6 | <table class="noborder search-content-second-column"> | 10 | <table class="noborder search-content-second-column"> |
7 | <tr class="search-folder-items"> | 11 | <tr class="search-folder-items"> |
8 | <td class="search-field-label"><%= _("Last items") %></td> | 12 | <td class="search-field-label"><%= _("Last items") %></td> |
app/views/search/_full_forum.html.erb
1 | <li class="search-forum-item article-item"> | 1 | <li class="search-forum-item article-item"> |
2 | - <%= link_to forum.title, forum.view_url, :class => 'search-result-title' %> | 2 | + <div> |
3 | + <%= link_to forum.title, forum.view_url, :class => 'search-result-title' %> | ||
4 | + </div> | ||
5 | + | ||
3 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
4 | <%= render :partial => 'image', :object => forum %> | 7 | <%= render :partial => 'image', :object => forum %> |
5 | </div> | 8 | </div> |
9 | + | ||
6 | <table class="noborder search-content-second-column"> | 10 | <table class="noborder search-content-second-column"> |
7 | <tr class="search-forum-items"> | 11 | <tr class="search-forum-items"> |
8 | <td class="search-field-label"><%= _("Last topics") %></td> | 12 | <td class="search-field-label"><%= _("Last topics") %></td> |
app/views/search/_full_gallery.html.erb
1 | <li class="search-gallery article-item"> | 1 | <li class="search-gallery article-item"> |
2 | - <%= link_to gallery.title, gallery.view_url, :class => 'search-result-title' %> | 2 | + <div> |
3 | + <%= link_to gallery.title, gallery.view_url, :class => 'search-result-title' %> | ||
4 | + </div> | ||
5 | + | ||
3 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
4 | <%= render :partial => 'image', :object => gallery %> | 7 | <%= render :partial => 'image', :object => gallery %> |
5 | </div> | 8 | </div> |
9 | + | ||
6 | <table class="noborder search-content-second-column"> | 10 | <table class="noborder search-content-second-column"> |
7 | <%= render :partial => 'article_common', :object => gallery %> | 11 | <%= render :partial => 'article_common', :object => gallery %> |
8 | </table> | 12 | </table> |
app/views/search/_full_text_article.html.erb
1 | <li class="search-text-article-item article-item"> | 1 | <li class="search-text-article-item article-item"> |
2 | - <%= link_to(text_article.title, text_article.url, :class => "search-result-title") %> | 2 | + <div> |
3 | + <%= link_to(text_article.title, text_article.url, :class => "search-result-title") %> | ||
4 | + </div> | ||
3 | 5 | ||
4 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
5 | <%= render :partial => 'image', :object => text_article %> | 7 | <%= render :partial => 'image', :object => text_article %> |
app/views/search/_full_uploaded_file.html.erb
1 | <li class="search-uploaded-file-item article-item"> | 1 | <li class="search-uploaded-file-item article-item"> |
2 | - <%= link_to uploaded_file.filename, uploaded_file.view_url, :class => 'search-result-title' %> | 2 | + <div> |
3 | + <%= link_to uploaded_file.filename, uploaded_file.view_url, :class => 'search-result-title' %> | ||
4 | + </div> | ||
3 | 5 | ||
4 | <div class="search-content-first-column"> | 6 | <div class="search-content-first-column"> |
5 | <%= render :partial => 'image', :object => uploaded_file %> | 7 | <%= render :partial => 'image', :object => uploaded_file %> |
plugins/solr/features/.search_products.feature.swp
No preview for this file type
plugins/solr/lib/.solr_plugin.rb.swp
No preview for this file type
plugins/solr/lib/solr_plugin.rb
@@ -6,8 +6,6 @@ class SolrPlugin < Noosfero::Plugin | @@ -6,8 +6,6 @@ class SolrPlugin < Noosfero::Plugin | ||
6 | 6 | ||
7 | include SolrPlugin::SearchHelper | 7 | include SolrPlugin::SearchHelper |
8 | 8 | ||
9 | - delegate :params, :current_user, :to => :context | ||
10 | - | ||
11 | def self.plugin_name | 9 | def self.plugin_name |
12 | "Solr" | 10 | "Solr" |
13 | end | 11 | end |
@@ -28,11 +26,18 @@ class SolrPlugin < Noosfero::Plugin | @@ -28,11 +26,18 @@ class SolrPlugin < Noosfero::Plugin | ||
28 | return if empty_query?(query, category) && klass != Product | 26 | return if empty_query?(query, category) && klass != Product |
29 | 27 | ||
30 | solr_options = solr_options(class_asset(klass), category) | 28 | solr_options = solr_options(class_asset(klass), category) |
31 | - user = context.send(:logged_in?) ? context.send(:user) : nil | ||
32 | solr_options.merge!(products_options(user)) if klass == Product && empty_query?(query, category) | 29 | solr_options.merge!(products_options(user)) if klass == Product && empty_query?(query, category) |
33 | klass.find_by_contents(query, paginate_options, solr_options.merge(options)) | 30 | klass.find_by_contents(query, paginate_options, solr_options.merge(options)) |
34 | end | 31 | end |
35 | 32 | ||
33 | + def method_missing method, *args, &block | ||
34 | + if self.context.respond_to? method | ||
35 | + self.context.send method, *args, &block | ||
36 | + else | ||
37 | + super method, *args, &block | ||
38 | + end | ||
39 | + end | ||
40 | + | ||
36 | end | 41 | end |
37 | 42 | ||
38 | Dir[File.join(SolrPlugin.root_path, 'lib', 'ext', '*.rb')].each {|file| require_dependency file } | 43 | Dir[File.join(SolrPlugin.root_path, 'lib', 'ext', '*.rb')].each {|file| require_dependency file } |
plugins/solr/lib/solr_plugin/.search_helper.rb.swp
No preview for this file type
plugins/solr/lib/solr_plugin/search_helper.rb
@@ -54,7 +54,7 @@ module SolrPlugin::SearchHelper | @@ -54,7 +54,7 @@ module SolrPlugin::SearchHelper | ||
54 | end | 54 | end |
55 | 55 | ||
56 | def results_only? | 56 | def results_only? |
57 | - context.params[:action] == 'index' | 57 | + params[:action] == 'index' |
58 | end | 58 | end |
59 | 59 | ||
60 | def empty_query?(query, category) | 60 | def empty_query?(query, category) |
@@ -84,18 +84,18 @@ module SolrPlugin::SearchHelper | @@ -84,18 +84,18 @@ module SolrPlugin::SearchHelper | ||
84 | solr_options = {} | 84 | solr_options = {} |
85 | if !multiple_search? | 85 | if !multiple_search? |
86 | if !results_only? and asset_class.respond_to? :facets | 86 | if !results_only? and asset_class.respond_to? :facets |
87 | - solr_options.merge! asset_class.facets_find_options(context.params[:facet]) | 87 | + solr_options.merge! asset_class.facets_find_options(params[:facet]) |
88 | solr_options[:all_facets] = true | 88 | solr_options[:all_facets] = true |
89 | end | 89 | end |
90 | solr_options[:filter_queries] ||= [] | 90 | solr_options[:filter_queries] ||= [] |
91 | solr_options[:filter_queries] += filters(asset) | 91 | solr_options[:filter_queries] += filters(asset) |
92 | - solr_options[:filter_queries] << "environment_id:#{context.environment.id}" | 92 | + solr_options[:filter_queries] << "environment_id:#{environment.id}" |
93 | solr_options[:filter_queries] << asset_class.facet_category_query.call(category) if category | 93 | solr_options[:filter_queries] << asset_class.facet_category_query.call(category) if category |
94 | 94 | ||
95 | solr_options[:boost_functions] ||= [] | 95 | solr_options[:boost_functions] ||= [] |
96 | - context.params[:order_by] = nil if context.params[:order_by] == 'none' | ||
97 | - if context.params[:order_by] | ||
98 | - order = SortOptions[asset][context.params[:order_by].to_sym] | 96 | + params[:order_by] = nil if params[:order_by] == 'none' |
97 | + if params[:order_by] | ||
98 | + order = SortOptions[asset][params[:order_by].to_sym] | ||
99 | raise "Unknown order by" if order.nil? | 99 | raise "Unknown order by" if order.nil? |
100 | order[:solr_opts].each do |opt, value| | 100 | order[:solr_opts].each do |opt, value| |
101 | solr_options[opt] = value.is_a?(Proc) ? instance_eval(&value) : value | 101 | solr_options[opt] = value.is_a?(Proc) ? instance_eval(&value) : value |
plugins/solr/public/style.css
1 | .controller-search #search-column-right .search-field .formfield { | 1 | .controller-search #search-column-right .search-field .formfield { |
2 | width: 594px; | 2 | width: 594px; |
3 | - display: inline-block; | 3 | + display: inline; |
4 | } | 4 | } |
5 | 5 | ||
6 | #search-column-right .search-customize-options { | 6 | #search-column-right .search-customize-options { |
7 | - position: absolute; | ||
8 | margin: 0; | 7 | margin: 0; |
9 | padding: 5px 0; | 8 | padding: 5px 0; |
10 | - bottom: 0; | ||
11 | - left: 0; | ||
12 | } | 9 | } |
13 | 10 | ||
14 | #search-column-right .search-results-box .vcard { | 11 | #search-column-right .search-results-box .vcard { |
plugins/solr/test/functional/.search_controller_test.rb.swp
No preview for this file type
plugins/solr/views/search/.communities.rhtml.swp
No preview for this file type
plugins/solr/views/search/.people.rhtml.swp
No preview for this file type
plugins/solr/views/search/_facets.html.erb
1 | -<% if logged_in? %> | ||
2 | - <% button_bar do %> | ||
3 | - <%# FIXME shouldn't the user create the community in the current environment instead of going to its home environment? %> | ||
4 | - <%= button(:add, __('New community'), user.url.merge(:controller => 'memberships', :action => 'new_community', :profile => user.identifier)) if @asset == :communities %> | ||
5 | - <%= button(:add, __('New enterprise'), {:controller => 'enterprise_registration'}) if @asset == :enterprises && environment.enabled?('enterprise_registration') %> | ||
6 | - <% end %> | ||
7 | -<% end %> | ||
8 | <% if !@empty_query %> | 1 | <% if !@empty_query %> |
9 | <%= facets_menu(@asset, @facets) %> | 2 | <%= facets_menu(@asset, @facets) %> |
10 | <% end %> | 3 | <% end %> |
4 | + |
plugins/solr/views/search/search_page.html.erb
@@ -3,17 +3,13 @@ | @@ -3,17 +3,13 @@ | ||
3 | 3 | ||
4 | <%= search_page_title( @titles[@asset], @category ) %> | 4 | <%= search_page_title( @titles[@asset], @category ) %> |
5 | 5 | ||
6 | -<% if !@empty_query %> | ||
7 | - <div id='search-column-left'> | ||
8 | - <%= render :partial => 'facets' %> | ||
9 | - </div> | 6 | +<div id='search-column-left'> |
7 | + <%= render :partial => 'facets' if !@empty_query %> | ||
8 | +</div> | ||
10 | 9 | ||
11 | - <div id='search-column-right'> | ||
12 | - <%= render :partial => 'results' %> | ||
13 | - </div> | ||
14 | -<% else %> | 10 | +<div id='search-column-right'> |
15 | <%= render :partial => 'results' %> | 11 | <%= render :partial => 'results' %> |
16 | -<% end %> | 12 | +</div> |
17 | 13 | ||
18 | <div style="clear: both"></div> | 14 | <div style="clear: both"></div> |
19 | 15 |
public/stylesheets/search.css
@@ -753,19 +753,13 @@ li.search-product-item hr { | @@ -753,19 +753,13 @@ li.search-product-item hr { | ||
753 | .search-content-first-column { | 753 | .search-content-first-column { |
754 | width: 130px; | 754 | width: 130px; |
755 | min-height: 98px; | 755 | min-height: 98px; |
756 | - position: absolute; | ||
757 | -} | ||
758 | -.search-gallery .search-content-first-column { | ||
759 | - width: 190px; | 756 | + float: left; |
760 | } | 757 | } |
761 | 758 | ||
762 | .search-content-second-column { | 759 | .search-content-second-column { |
763 | margin-left: 140px; | 760 | margin-left: 140px; |
764 | width: auto; | 761 | width: auto; |
765 | } | 762 | } |
766 | -.search-gallery .search-content-second-column { | ||
767 | - margin-left: 200px; | ||
768 | -} | ||
769 | 763 | ||
770 | .search-content-second-column tr:hover { | 764 | .search-content-second-column tr:hover { |
771 | background-color: none; | 765 | background-color: none; |
@@ -789,7 +783,7 @@ ul.clean-list .search-content-second-column { | @@ -789,7 +783,7 @@ ul.clean-list .search-content-second-column { | ||
789 | width:795px; | 783 | width:795px; |
790 | } | 784 | } |
791 | ul.clean-list .search-gallery-content { | 785 | ul.clean-list .search-gallery-content { |
792 | - width:655px | 786 | + width:655px; |
793 | } | 787 | } |
794 | a.search-image-pic { | 788 | a.search-image-pic { |
795 | border: 1px solid #F2F2F2; | 789 | border: 1px solid #F2F2F2; |
@@ -819,7 +813,7 @@ a.search-image-pic { | @@ -819,7 +813,7 @@ a.search-image-pic { | ||
819 | font-weight: bold; | 813 | font-weight: bold; |
820 | text-transform: uppercase; | 814 | text-transform: uppercase; |
821 | letter-spacing: 1px; | 815 | letter-spacing: 1px; |
822 | - user-select: none; | 816 | + user-select: none; |
823 | border-radius: 5px; | 817 | border-radius: 5px; |
824 | -moz-user-select: none; | 818 | -moz-user-select: none; |
825 | -khtml-user-select: none; | 819 | -khtml-user-select: none; |
@@ -844,8 +838,9 @@ a.search-image-pic { | @@ -844,8 +838,9 @@ a.search-image-pic { | ||
844 | .search-gallery .search-gallery-items { | 838 | .search-gallery .search-gallery-items { |
845 | float: left; | 839 | float: left; |
846 | margin: 0; | 840 | margin: 0; |
847 | - min-width: 130px; | 841 | + width: 130px; |
848 | position: relative; | 842 | position: relative; |
843 | + overflow: hidden; | ||
849 | } | 844 | } |
850 | 845 | ||
851 | .search-gallery .search-gallery-items a.search-image-pic { | 846 | .search-gallery .search-gallery-items a.search-image-pic { |