From d6194328bf920754af9a780abf6478cad6458a39 Mon Sep 17 00:00:00 2001 From: Guo Yunhe Date: Fri, 30 Jun 2017 09:24:12 +0300 Subject: [PATCH] Search results --- app/assets/stylesheets/app.scss | 9 + app/assets/stylesheets/style.scss | 1 - app/models/screenshot.rb | 2 +- app/views/layouts/application.html.erb | 1 + app/views/search/_find_results.html.erb | 234 +++++++++++------------- 5 files changed, 122 insertions(+), 125 deletions(-) create mode 100644 app/assets/stylesheets/app.scss diff --git a/app/assets/stylesheets/app.scss b/app/assets/stylesheets/app.scss new file mode 100644 index 000000000..0dfc32661 --- /dev/null +++ b/app/assets/stylesheets/app.scss @@ -0,0 +1,9 @@ +// New theme +.package-card { + .card-img-top { + height: 250px; + background-size: cover; + background-position: center; + background-repeat: no-repeat; + } +} \ No newline at end of file diff --git a/app/assets/stylesheets/style.scss b/app/assets/stylesheets/style.scss index 881564d00..062cb4d59 100644 --- a/app/assets/stylesheets/style.scss +++ b/app/assets/stylesheets/style.scss @@ -623,4 +623,3 @@ select { .global-navigation-menu li span.global-navigation-icon { background-image:url('//static.opensuse.org/themes/bento/images/globalnav/globalnav-im.png'); } - diff --git a/app/models/screenshot.rb b/app/models/screenshot.rb index 1e8bb2ed3..b7f23379a 100644 --- a/app/models/screenshot.rb +++ b/app/models/screenshot.rb @@ -3,7 +3,7 @@ # Class to cache and resize the screenshot of a given package class Screenshot - THUMBNAIL_WIDTH = "160" + THUMBNAIL_WIDTH = "600" # @return [String] name of the package attr_reader :pkg_name diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 2293755b7..08a858777 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -12,6 +12,7 @@ <%= stylesheet_link_tag "/chameleon/css/app.css" %> + <%= stylesheet_link_tag "app" %> <%= javascript_include_tag "/chameleon/js/app.js" %> <%= javascript_include_tag "application" %> diff --git a/app/views/search/_find_results.html.erb b/app/views/search/_find_results.html.erb index 78639613e..524a396c1 100644 --- a/app/views/search/_find_results.html.erb +++ b/app/views/search/_find_results.html.erb @@ -1,135 +1,123 @@ -
- - <% if DEFAULT_SEARCHES[@search_term] %> -
-
-

- - <%=DEFAULT_SEARCHES[@search_term].html_safe %> -

+
+
+ + <% if DEFAULT_SEARCHES[@search_term] %> +
+
+

+ + <%=DEFAULT_SEARCHES[@search_term].html_safe %> +

+
-
- <% end %> - - <%= render :partial => 'search/category_header' if @category %> - - <% if @packagenames.blank? %> - -
-
-

- - <%= _("No packages found matching your search. ") %> - <% unless @search_devel %> -
- <%= _("You could try to extend your search to development packages or search for another base distribution (currently #{@baseproject}).") %> - <% end %> -

+ <% end %> + + <%= render :partial => 'search/category_header' if @category %> + + <% if @packagenames.blank? %> + +
+
+

+ + <%= _("No packages found matching your search. ") %> + <% unless @search_devel %> +
+ <%= _("You could try to extend your search to development packages or search for another base distribution (currently #{@baseproject}).") %> + <% end %> +

+
-
- - <% else %> - -
- - <% - @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? ) - package_img = nil - package_img = appdata_pkg.first[:screenshots].first unless ( appdata_pkg.blank? || appdata_pkg.first[:screenshots].blank? ) - thumb_url = screenshot_thumb_url(package, package_img) - %> - - <% if idx % 2 == 0 %> -
- <% end %> -
+ <% else %> + +
+ + <% + @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? ) + package_img = nil + package_img = appdata_pkg.first[:screenshots].first unless ( appdata_pkg.blank? || appdata_pkg.first[:screenshots].blank? ) + thumb_url = screenshot_thumb_url(package, package_img) + %> + +
+
+ + + +
+

<%= link_to highlight(package_name, @search_term), :controller => :package, :action => :show, :package => package %>

+ + <% if( appdata_pkg.blank? || appdata_pkg.first[:summary].blank? ) + desc_package = search_for_description( package, @packages ) + unless desc_package.blank? + summary = desc_package.summary + end + else + summary = appdata_pkg.first[:summary] + end + unless summary.blank? %> +

<%= highlight( summary, @search_term) %>

+ <% 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.start_with?("#{package}-") && @appdata[:apps].select{|a| a[:pkgname] == name}.blank? ) } -%> + + <% unless devel_packages.blank? && sub_packages.blank? %> +

+ <%= _("Show") %> + + <%= 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? -%> + + <%= _(" and ") unless (devel_packages.blank? || sub_packages.blank?) -%> + + <%= sub_packages.size.to_s + " " + _("Sub-Packages") + " " unless sub_packages.blank? -%> + +

+ <% end -%> + + <% unless devel_packages.blank? %> + + <% @packagenames.reject! {|r| devel_pack_match.include? r } -%> + <% end -%> + + <% unless sub_packages.blank? -%> + + <% @packagenames.reject! {|r| r.match(/^#{Regexp.escape( package )}-/) && @appdata[:apps].select{|a| a[:pkgname] == r}.blank? } -%> + <% end -%> - -
-

<%= link_to highlight(package_name, @search_term), :controller => :package, :action => :show, :package => package %> - - -

- - <% if( appdata_pkg.blank? || appdata_pkg.first[:summary].blank? ) - desc_package = search_for_description( package, @packages ) - unless desc_package.blank? - summary = desc_package.summary - end - else - summary = appdata_pkg.first[:summary] - end - unless summary.blank? %> -

<%= highlight( summary, @search_term) %>

- <% 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.start_with?("#{package}-") && @appdata[:apps].select{|a| a[:pkgname] == name}.blank? ) } -%> - - <% unless devel_packages.blank? && sub_packages.blank? %> -

- <%= _("Show") %> - - <%= 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? -%> - - <%= _(" and ") unless (devel_packages.blank? || sub_packages.blank?) -%> - - <%= sub_packages.size.to_s + " " + _("Sub-Packages") + " " unless sub_packages.blank? -%> - -

- <% end -%> - - <% unless devel_packages.blank? %> - - <% @packagenames.reject! {|r| devel_pack_match.include? r } -%> - <% end -%> - - <% unless sub_packages.blank? -%> - - <% @packagenames.reject! {|r| r.match(/^#{Regexp.escape( package )}-/) && @appdata[:apps].select{|a| a[:pkgname] == r}.blank? } -%> - <% end -%> - +
-
- <% end -%> -
+ <% end -%> +
- <% if @packagenames.size > 81 %> - - <% end -%> + <% if @packagenames.size > 81 %> + + <% end -%> -
+
- <% end %> + <% end %> +