Skip to content

Commit

Permalink
improve display of subpackages in search result list
Browse files Browse the repository at this point in the history
  • Loading branch information
digitaltom committed Apr 20, 2012
1 parent cd62e54 commit c5c0051
Show file tree
Hide file tree
Showing 4 changed files with 44 additions and 23 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ public/121
public/114
public/113
public/developer
tmp/appdata-factory.xml
1 change: 0 additions & 1 deletion TODO
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
Todo list for software.o.o:

Package Search:
- better display of 'sub-packages' in the result list
- Check if we can get the distroname into our browsers headers so software.o.o can switch automatically to the users distro
- show current distribution in the headline or so with change option

Expand Down
59 changes: 38 additions & 21 deletions app/views/search/_find_results.rhtml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,8 @@
</div>
<% end %>


<%= render :partial => 'search/category_header' if @category %>


<% if (@packagenames.include? @search_term) || (@packagenames.size == 1) -%>
<% end -%>


<% if @packagenames.blank? %>

<div id="search-result-error" >
Expand All @@ -38,13 +32,17 @@

<div id="search-result-list">

<% @packagenames.each_with_index do |package, idx| %>
<% appdata_pkg = @appdata[:apps].select{|a| a[:pkgname] == package} %>
<% package_name = package
<%
@packagenames.each_with_index do |package, idx|
appdata_pkg = @appdata[:apps].select{|a| a[:pkgname] == package}
package_name = package
package_name = appdata_pkg.first[:name] unless ( appdata_pkg.blank? || appdata_pkg.first[:name].blank? )
banner_path = "apps/#{package.downcase}.jpg"
%>

<% if idx % 2 == 0 %>
<div style="clear: both; "></div>
<% end %>

<div class="search-result-box box-shadow rounded-corner">

<div class="app-screenshot-search">
Expand Down Expand Up @@ -76,26 +74,45 @@
<p><i><%= highlight( summary, @search_term) %></i></p>
<% end -%>

<% devel_pack_match = [package + "-devel", package + "-lang", package + "-debuginfo", package + "-debugsource"] -%>
<% devel_packages = @packagenames.select{|r| devel_pack_match.include? r } -%>
<% unless devel_packages.blank? %>
<p><%= _("Development packages:") %>
<% devel_packages.sort.each do |subpackage| %>
<%= link_to subpackage.sub("#{package}-", ""), :controller => :package, :action => :show, :package => subpackage %>
<% end %>
<%
devel_pack_match = [package + "-devel", package + "-lang", package + "-debuginfo", package + "-debugsource", package + "-debuginfo-32bit",
package + "-debuginfo-x86", ]
devel_packages = @packagenames.select{|r| devel_pack_match.include? r }
sub_packages = @packagenames.sort.select{|name| ( !(devel_pack_match.include? name) && name.match(/^#{package}-/) && @appdata[:apps].select{|a| a[:pkgname] == name}.blank? ) } -%>


<% unless devel_packages.blank? && sub_packages.blank? %>
<p>
<%= _("Show") %>
<a href="#" onclick="$('#devel-packages-<%= package %>').slideToggle(); return false;">
<%= devel_packages.size.to_s + " " + _("Development-") + " " if !devel_packages.blank? && !sub_packages.blank? -%>
<%= devel_packages.size.to_s + " " + _("Development packages") + " " if !devel_packages.blank? && sub_packages.blank? -%>
</a>
<%= _(" and ") unless (devel_packages.blank? || sub_packages.blank?) -%>
<a href="#" onclick="$('#sub-packages-<%= package %>').slideToggle(); return false;">
<%= sub_packages.size.to_s + " " + _("Sub-Packages") + " " unless sub_packages.blank? -%>
</a>
</p>
<% end -%>

<% unless devel_packages.blank? %>
<ul class="hidden extra-packages" id="devel-packages-<%= package %>">
<% devel_packages.sort.each do |subpackage| %>
<li><%= link_to subpackage.sub("#{package}-", ""), :controller => :package, :action => :show, :package => subpackage %></li>
<% end %>
</ul>
<% @packagenames.reject! {|r| devel_pack_match.include? r } -%>
<% end -%>

<% sub_packages = @packagenames.sort.select{|name| ( name.match(/^#{package}-/) && @appdata[:apps].select{|a| a[:pkgname] == name}.blank? ) } -%>
<% unless sub_packages.blank? -%>
<p><%= _("Sub-packages:") %>
<ul class="hidden extra-packages" id="sub-packages-<%= package %>">
<% sub_packages.each do |subpackage| %>
<%= link_to subpackage.sub("#{package}-", ""), :controller => :package, :action => :show, :package => subpackage %>
<li><%= link_to subpackage.sub("#{package}-", ""), :controller => :package, :action => :show, :package => subpackage %></li>
<% end %>
</p>
</ul>
<% @packagenames.reject! {|r| r.match(/^#{package}-/) && @appdata[:apps].select{|a| a[:pkgname] == r}.blank? } -%>
<% end -%>

</div>
</div>
<% end -%>
Expand Down
6 changes: 5 additions & 1 deletion public/stylesheets/software.css
Original file line number Diff line number Diff line change
Expand Up @@ -595,7 +595,6 @@ select {
}

#related-categories {

}


Expand All @@ -604,6 +603,11 @@ select {
position: relative;
}

.extra-packages {
padding-top: 1px;
padding-bottom: 1px;
}

#footer {
padding-top: 15px;
}
Expand Down

0 comments on commit c5c0051

Please sign in to comment.