summaryrefslogtreecommitdiff
path: root/app/views/search
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-11-06 09:58:43 +0200
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-11-06 09:58:43 +0200
commitd618a5fec361b85fafffd5cf4a53d044e82bdb5a (patch)
treeb3dc111c1335a676bd927cc56846356c3a1908e0 /app/views/search
parent593b05ea945f63fde39689eb62cf890d417b39bc (diff)
downloadgitlab-ce-d618a5fec361b85fafffd5cf4a53d044e82bdb5a.tar.gz
Refactor search views
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/views/search')
-rw-r--r--app/views/search/_global_results.html.haml5
-rw-r--r--app/views/search/_project_results.html.haml17
-rw-r--r--app/views/search/_result.html.haml62
-rw-r--r--app/views/search/_results.html.haml13
-rw-r--r--app/views/search/results/_blob.html.haml (renamed from app/views/search/_blob.html.haml)2
-rw-r--r--app/views/search/results/_issue.html.haml9
-rw-r--r--app/views/search/results/_merge_request.html.haml12
-rw-r--r--app/views/search/results/_project.html.haml7
-rw-r--r--app/views/search/show.html.haml2
9 files changed, 65 insertions, 64 deletions
diff --git a/app/views/search/_global_results.html.haml b/app/views/search/_global_results.html.haml
new file mode 100644
index 00000000000..6e6feeb6c5a
--- /dev/null
+++ b/app/views/search/_global_results.html.haml
@@ -0,0 +1,5 @@
+.search_results
+ %ul.bordered-list
+ = render partial: "search/results/project", collection: @projects
+ = render partial: "search/results/merge_request", collection: @merge_requests
+ = render partial: "search/results/issue", collection: @issues
diff --git a/app/views/search/_project_results.html.haml b/app/views/search/_project_results.html.haml
new file mode 100644
index 00000000000..8d04dd27cca
--- /dev/null
+++ b/app/views/search/_project_results.html.haml
@@ -0,0 +1,17 @@
+%ul.nav.nav-pills
+ %li{class: ("active" if params[:search_code].present?)}
+ = link_to search_path(params.merge(search_code: true)) do
+ Repository Code
+ %li{class: ("active" if params[:search_code].blank?)}
+ = link_to search_path(params.merge(search_code: nil)) do
+ Everything else
+
+.search_results
+ - if params[:search_code].present?
+ .blob-results
+ = render partial: "search/results/blob", collection: @blobs
+ = paginate @blobs, theme: 'gitlab'
+ - else
+ %ul.bordered-list
+ = render partial: "search/results/merge_request", collection: @merge_requests
+ = render partial: "search/results/issue", collection: @issues
diff --git a/app/views/search/_result.html.haml b/app/views/search/_result.html.haml
deleted file mode 100644
index 5f7540d1b16..00000000000
--- a/app/views/search/_result.html.haml
+++ /dev/null
@@ -1,62 +0,0 @@
-%fieldset
- %legend
- Search results
- %span.cgray (#{@total_results})
-
-- if @project
- %ul.nav.nav-pills
- %li{class: ("active" if params[:search_code].present?)}
- = link_to search_path(params.merge(search_code: true)) do
- Repository Code
- %li{class: ("active" if params[:search_code].blank?)}
- = link_to search_path(params.merge(search_code: nil)) do
- Everything else
-
-.search_results
- %ul.bordered-list
- - @projects.each do |project|
- %li
- project:
- = link_to project do
- %strong.term= project.name_with_namespace
- - @merge_requests.each do |merge_request|
- %li
- merge request:
- = link_to [merge_request.target_project, merge_request] do
- %span ##{merge_request.iid}
- %strong.term
- = truncate merge_request.title, length: 50
- - if merge_request.for_fork?
- %span.light (#{merge_request.source_project.name_with_namespace}:#{merge_request.source_branch} &rarr; #{merge_request.target_project.name_with_namespace}:#{merge_request.target_branch})
- - else
- %span.light (#{merge_request.source_branch} &rarr; #{merge_request.target_branch})
- - if merge_request.closed?
- %span.label Closed
-
- - @issues.each do |issue|
- %li
- issue:
- = link_to [issue.project, issue] do
- %span ##{issue.iid}
- %strong.term
- = truncate issue.title, length: 50
- %span.light (#{issue.project.name_with_namespace})
- - if issue.closed?
- %span.label Closed
-
- - @wiki_pages.each do |wiki_page|
- %li
- wiki:
- = link_to project_wiki_path(wiki_page.project, wiki_page) do
- %strong.term
- = truncate wiki_page.title, length: 50
- %span.light (#{wiki_page.project.name_with_namespace})
-
- - @blobs.each do |blob|
- = render 'blob', blob: blob
-
- = paginate @blobs, theme: 'gitlab'
-
-:javascript
- $(".search_results .term").highlight("#{escape_javascript(params[:search])}");
-
diff --git a/app/views/search/_results.html.haml b/app/views/search/_results.html.haml
new file mode 100644
index 00000000000..75f134aae66
--- /dev/null
+++ b/app/views/search/_results.html.haml
@@ -0,0 +1,13 @@
+%fieldset
+ %legend
+ Search results
+ %span.cgray (#{@total_results})
+
+- if @project
+ = render "project_results"
+- else
+ = render "global_results"
+
+:javascript
+ $(".search_results .term").highlight("#{escape_javascript(params[:search])}");
+
diff --git a/app/views/search/_blob.html.haml b/app/views/search/results/_blob.html.haml
index 559fdd794fc..a2e4a00b718 100644
--- a/app/views/search/_blob.html.haml
+++ b/app/views/search/results/_blob.html.haml
@@ -1,4 +1,4 @@
-%li
+.blob-result
.file-holder
.file-title
= link_to project_blob_path(@project, tree_join(blob.ref, blob.filename), :anchor => "L" + blob.startline.to_s) do
diff --git a/app/views/search/results/_issue.html.haml b/app/views/search/results/_issue.html.haml
new file mode 100644
index 00000000000..7a24b76bced
--- /dev/null
+++ b/app/views/search/results/_issue.html.haml
@@ -0,0 +1,9 @@
+%li
+ issue:
+ = link_to [issue.project, issue] do
+ %span ##{issue.iid}
+ %strong.term
+ = truncate issue.title, length: 50
+ %span.light (#{issue.project.name_with_namespace})
+ - if issue.closed?
+ %span.label Closed
diff --git a/app/views/search/results/_merge_request.html.haml b/app/views/search/results/_merge_request.html.haml
new file mode 100644
index 00000000000..22d7587f6c1
--- /dev/null
+++ b/app/views/search/results/_merge_request.html.haml
@@ -0,0 +1,12 @@
+%li
+ merge request:
+ = link_to [merge_request.target_project, merge_request] do
+ %span ##{merge_request.iid}
+ %strong.term
+ = truncate merge_request.title, length: 50
+ - if merge_request.for_fork?
+ %span.light (#{merge_request.source_project.name_with_namespace}:#{merge_request.source_branch} &rarr; #{merge_request.target_project.name_with_namespace}:#{merge_request.target_branch})
+ - else
+ %span.light (#{merge_request.source_branch} &rarr; #{merge_request.target_branch})
+ - if merge_request.closed?
+ %span.label Closed
diff --git a/app/views/search/results/_project.html.haml b/app/views/search/results/_project.html.haml
new file mode 100644
index 00000000000..abc86c72bef
--- /dev/null
+++ b/app/views/search/results/_project.html.haml
@@ -0,0 +1,7 @@
+%li
+ project:
+ = link_to project do
+ %strong.term= project.name_with_namespace
+ - if project.description.present?
+ &ndash;
+ %span.light.term= project.description
diff --git a/app/views/search/show.html.haml b/app/views/search/show.html.haml
index f1f65981b37..25e8c00888a 100644
--- a/app/views/search/show.html.haml
+++ b/app/views/search/show.html.haml
@@ -13,4 +13,4 @@
.results.prepend-top-10
- if params[:search].present?
- = render 'search/result'
+ = render 'search/results'