Commit 6e1ee1fea6400c3621005f1b79e1b8dab43cd000

Authored by Dmitriy Zaporozhets
1 parent f1126f49

made some ui enhancement for search page

app/controllers/search_controller.rb
... ... @@ -6,7 +6,8 @@ class SearchController < ApplicationController
6 6 project_ids = current_user.authorized_projects.map(&:id)
7 7  
8 8 if group_id.present?
9   - group_project_ids = Group.find(group_id).projects.map(&:id)
  9 + @group = Group.find(group_id)
  10 + group_project_ids = @group.projects.map(&:id)
10 11 project_ids.select! { |id| group_project_ids.include?(id)}
11 12 elsif project_id.present?
12 13 project_ids.select! { |id| id == project_id.to_i}
... ...
app/views/search/_filter.html.haml
1   -%fieldset
2   - %legend Groups:
3   - .clearfix
4   - = select_tag 'group_id', options_from_collection_for_select(current_user.authorized_groups, :id, :name, params[:group_id]), prompt: 'All', include_blank: true, class: 'trigger-submit chosen'
5   -
6   -
7   -%fieldset
8   - %legend Teams:
9   - .clearfix
10   - = select_tag 'team_id', options_from_collection_for_select(current_user.authorized_teams, :id, :name, params[:team_id]), prompt: 'All', include_blank: true, class: 'trigger-submit chosen'
11   -
12   -%fieldset
13   - %legend Projects:
14   - .clearfix
15   - = select_tag 'project_id', options_from_collection_for_select(current_user.authorized_projects, :id, :name_with_namespace, params[:project_id]), prompt: 'All', include_blank: true, class: 'trigger-submit chosen'
  1 +.dropdown.inline
  2 + %a.dropdown-toggle.btn.btn-small{href: '#', "data-toggle" => "dropdown"}
  3 + %i.icon-tags
  4 + %span.light Group:
  5 + - if @group.present?
  6 + %strong= @group.name
  7 + - else
  8 + Any
  9 + %b.caret
  10 + %ul.dropdown-menu
  11 + %li
  12 + = link_to search_path(group_id: nil) do
  13 + Any
  14 + - current_user.authorized_groups.sort_by(&:name).each do |group|
  15 + %li
  16 + = link_to search_path(group_id: group.id, search: params[:search]) do
  17 + = group.name
16 18  
  19 +.dropdown.inline.prepend-left-10
  20 + %a.dropdown-toggle.btn.btn-small{href: '#', "data-toggle" => "dropdown"}
  21 + %i.icon-tags
  22 + %span.light Project:
  23 + - if @project.present?
  24 + %strong= @project.name_with_namespace
  25 + - else
  26 + Any
  27 + %b.caret
  28 + %ul.dropdown-menu
  29 + %li
  30 + = link_to search_path(project_id: nil) do
  31 + Any
  32 + - current_user.authorized_projects.sort_by(&:name_with_namespace).each do |project|
  33 + %li
  34 + = link_to search_path(project_id: project.id, search: params[:search]) do
  35 + = project.name_with_namespace
... ...
app/views/search/show.html.haml
... ... @@ -6,11 +6,9 @@
6 6 = search_field_tag :search, params[:search], placeholder: "issue 143", class: "input-xxlarge search-text-input", id: "dashboard_search"
7 7 = hidden_field_tag :search_code, params[:search_code]
8 8 = submit_tag 'Search', class: "btn btn-primary wide"
9   - .clearfix
10   - .row
11   - .span3
12   - = render 'filter', f: f
13   - .span9
14   - .results
15   - - if params[:search].present?
16   - = render 'search/result'
  9 + .prepend-top-10
  10 + = render 'filter', f: f
  11 +
  12 + .results.prepend-top-10
  13 + - if params[:search].present?
  14 + = render 'search/result'
... ...
features/steps/project/project_search_code.rb
... ... @@ -6,6 +6,7 @@ class ProjectSearchCode < Spinach::FeatureSteps
6 6 When 'I search for term "Welcome to Gitlab"' do
7 7 fill_in "search", with: "Welcome to Gitlab"
8 8 click_button "Go"
  9 + click_link 'Repository Code'
9 10 end
10 11  
11 12 Then 'I should see files from repository containing "Welcome to Gitlab"' do
... ...