Skip to content

Commit

Permalink
show 'related' categories, divide appstore and search visually
Browse files Browse the repository at this point in the history
  • Loading branch information
digitaltom committed Mar 23, 2012
1 parent d5caa00 commit 7535c6e
Show file tree
Hide file tree
Showing 5 changed files with 76 additions and 48 deletions.
8 changes: 7 additions & 1 deletion app/controllers/package_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,13 @@ def category
mapping = @main_sections.select{|s| s[:name] == @category }
categories = ( mapping.blank? ? [@category] : mapping.first[:categories] )

@packagenames = @appdata[:apps].select{|app| !( app[:categories] & categories ).blank? }.map{|p| p[:pkgname]}.uniq
app_pkgs = @appdata[:apps].select{|app| !( app[:categories] & categories ).blank? }
@packagenames = app_pkgs.map{|p| p[:pkgname]}.uniq

app_categories = app_pkgs.map{|p| p[:categories]}.flatten
@related_categories = app_categories.uniq.map{|c| {:name => c, :weight => app_categories.select {|v| v == c }.size } }
@related_categories = @related_categories.sort_by { |c| c[:weight] }.reverse.reject{|c| categories.include? c[:name] }
@related_categories = @related_categories.reject{|c| ["GNOME", "KDE", "Qt", "GTK"].include? c[:name] }

render 'search/find'
end
Expand Down
50 changes: 26 additions & 24 deletions app/views/package/categories.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -15,39 +15,41 @@
<%= render :partial => 'search/find_form' %>


<div id="search_result_container" class="appstore-container">
<div id="search_result_container">

<div class="appstore-container">

<div class="box box-shadow grid_6 appstore-category-box alpha "
style="background: url('/images/categories/games.gif') repeat scroll 0 0 #FFFFFF;">
<h2 class="box-header">Games</h2>
<%= link_to "", {:controller => :package, :action => :category, :category =>"Games"}, :class => "appstore-category-box-hover" %>
</div>
<% @main_sections = @main_sections.delete_if{|section| section[:name] == "Games" } %>
<% @main_sections = @main_sections.delete_if{|section| section[:name] == "Multimedia" } %>

<div class="box box-shadow grid_6 appstore-category-box alpha "
style="background: url('/images/categories/games.gif') repeat scroll 0 0 #FFFFFF;">
<h2 class="box-header">Games</h2>
<%= link_to "", {:controller => :package, :action => :category, :category =>"Games"}, :class => "appstore-category-box-hover" %>
</div>
<% @main_sections = @main_sections.delete_if{|section| section[:name] == "Games" } %>
<% @main_sections = @main_sections.delete_if{|section| section[:name] == "Multimedia" } %>
<% @main_sections.each do |section| %>
<% apps = @appdata[:apps].select{|app| !(app[:categories] & section[:categories]).blank? } %>
<div class="box box-shadow grid_3 appstore-category-box alpha hidden"
style="background: url('/images/categories/<%= section[:name].downcase %>_box.png') repeat scroll 0 0 #FFFFFF;">
<h2 class="box-header"><%= section[:name] %></h2>
<%= link_to "", {:controller => :package, :action => :category, :category => section[:name]}, :class => "appstore-category-box-hover" %>
<p>
<% @main_sections.each do |section| %>
<% apps = @appdata[:apps].select{|app| !(app[:categories] & section[:categories]).blank? } %>
<div class="box box-shadow grid_3 appstore-category-box alpha hidden"
style="background: url('/images/categories/<%= section[:name].downcase %>_box.png') repeat scroll 0 0 #FFFFFF;">
<h2 class="box-header"><%= section[:name] %></h2>
<%= link_to "", {:controller => :package, :action => :category, :category => section[:name]}, :class => "appstore-category-box-hover" %>
<p>
<%# apps[0..16].each do |app| %>
<%# = link_to app[:name], :controller => :package, :action => :show, :package => app[:pkgname] %>
<%# end -%>
</p>
</div>
</p>
</div>

<% end %>
<% end %>


<div class="box box-shadow grid_6 appstore-category-box alpha "
style="background: url('/images/categories/multimedia_wide.png') repeat scroll 0 0 #FFFFFF;">
<h2 class="box-header">Multimedia</h2>
<%= link_to "", {:controller => :package, :action => :category, :category => "Multimedia" }, :class => "appstore-category-box-hover" %>
</div>

<div class="box box-shadow grid_6 appstore-category-box alpha "
style="background: url('/images/categories/multimedia_wide.png') repeat scroll 0 0 #FFFFFF;">
<h2 class="box-header">Multimedia</h2>
<%= link_to "", {:controller => :package, :action => :category, :category => "Multimedia" }, :class => "appstore-category-box-hover" %>
</div>

</div>
</div>
12 changes: 8 additions & 4 deletions app/views/search/_find_form.rhtml
Original file line number Diff line number Diff line change
Expand Up @@ -69,10 +69,14 @@

</script>

<div class="box box-shadow pkg-search-box" style="width: 300px; ">
<h1><%= link_to "openSUSE Apps", {:controller => :package, :action => :categories}, :id => "apps-headline" %></h1>
</div>


<div class="box box-shadow pkg-search-box">
<div class="box box-shadow pkg-search-box" style="width: 600px">
<% form_tag( {:controller => 'search', :action => :searchresult}, :method => :get ) do %>
<h1><%= link_to "openSUSE Apps", {:controller => :package, :action => :categories}, :id => "apps-headline" %></h1>
<h1><%= link_to "Package Search", {:controller => :search, :action => :find}, :id => "apps-headline" %></h1>
<%= text_field_tag 'q', @search_term, :size => 30, :id => "search-form", :autocomplete => "off" %>
<div id='search-loader' class="hidden"><span id="search-loader-txt"></span> <%= image_tag "ajax-loader.gif" %></div>
<%= submit_tag _('Search'), :name => nil, :class => "search-go-button" %>
Expand All @@ -91,11 +95,11 @@
<%= select_tag 'baseproject', options_for_select((@distributions.map{|d| [d[:name], d[:project]]} || ["ALL"]), (@baseproject or default_baseproject)) %>
</p>
</div>

<% end -%>

</div>

<div style="clear:both"/>

<div class="hidden" id="search-messages" >
<div class="ui-state-highlight ui-corner-all" style="margin-bottom: 5px;">
<p id="msg">
Expand Down
41 changes: 27 additions & 14 deletions app/views/search/_find_results.rhtml
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@
<div id="search-result-list">

<% @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?
<% 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?
%>
<div class="search-result-box <%= "search-result-box-grey" if( (idx%4 == 0) || ( (idx-3)%4 == 0) ) %> rounded-corner">
<div class="app-screenshot-search">
Expand All @@ -50,15 +50,15 @@
<div class="search-result-txt">
<h3><%= link_to highlight(package_name, @search_term), :controller => :package, :action => :show, :package => package, :search_term => @search_term %>

<div class="search-result-rating hidden">
<%= image_tag "star_color.png" %>
<%= image_tag "star_color.png" %>
<%= image_tag "star_color.png" %>
<%= image_tag "star_bw.png" %>
<%= image_tag "star_bw.png" %>
</div>
</h3>
<div class="search-result-rating hidden">
<%= image_tag "star_color.png" %>
<%= image_tag "star_color.png" %>
<%= image_tag "star_color.png" %>
<%= image_tag "star_bw.png" %>
<%= image_tag "star_bw.png" %>
</div>
</h3>

<% if( appdata_pkg.blank? || appdata_pkg.first[:summary].blank? )
desc_package = search_for_description( package, @packages )
unless desc_package.blank?
Expand Down Expand Up @@ -93,14 +93,27 @@
<% end -%>
</div>
</div>
<% end %>
<% end -%>
<div style="clear: both; "></div>


<% unless @related_categories.blank? %>
<div id="related-categories">
<p>
Related categories:
<% @related_categories[0..5].each do |cat| %>
<%= link_to cat[:name], :controller => :package, :action => :category, :category => cat[:name] %>
<% end -%>
</p>
</div>
<% end -%>
<% if @packagenames.size > 81 %>
<div id="show-more-button" class="rounded-corner hidden">
<p><a href="#">Show more...</a></p>
</div>
<% end %>
<% end -%>

</div>
<div class="box-footer"> </div>
Expand Down
13 changes: 8 additions & 5 deletions public/stylesheets/software.css
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,9 @@ body {
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666', endColorstr='#333',GradientType=0 ); /* IE6-9 */
background: linear-gradient(top, #666 0%,#333 100%); /* W3C */
text-align: center;

float: left;
height: 90px;
margin-left: 10px;
}
.pkg-search-box * {
font-size: 1.2em;
Expand Down Expand Up @@ -552,22 +554,23 @@ select {

#category-header {
background: none repeat scroll 0 0 #FFFFFF;
font-size: 12em;
font-weight: bold;
height: 80px;
margin: 10px 0;
text-align: center;
overflow: hidden;
text-align: center;
}

#category-text {
font-size: 12em;
font-weight: bold;
position: relative;
top: -0.28em;
opacity:0.4;
filter:alpha(opacity=40); /* For IE8 and earlier */

}

.search-result-rating {
float: right;
position: relative;
}
}

0 comments on commit 7535c6e

Please sign in to comment.