From: Dmitriy Zaporozhets Date: Wed, 19 Jun 2013 14:48:43 +0000 (+0300) Subject: Remove second search. More compact list. Additional filter X-Git-Tag: v6.0.0~215^2~128^2~1 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=63a67bb4abff7690ef5f1c91b924c6aaf7f90985;p=wvm%2Fgitlab.git Remove second search. More compact list. Additional filter --- diff --git a/app/controllers/dashboard_controller.rb b/app/controllers/dashboard_controller.rb index fc7dc3fab..4b9bfcf84 100644 --- a/app/controllers/dashboard_controller.rb +++ b/app/controllers/dashboard_controller.rb @@ -1,7 +1,7 @@ class DashboardController < ApplicationController respond_to :html - before_filter :load_projects + before_filter :load_projects, except: [:projects] before_filter :event_filter, only: :show def show @@ -26,16 +26,18 @@ class DashboardController < ApplicationController def projects @projects = case params[:scope] when 'personal' then - @projects.personal(current_user) + current_user.namespace.projects when 'joined' then - @projects.joined(current_user) + current_user.authorized_projects.joined(current_user) + when 'owned' then + current_user.owned_projects else - @projects - end + current_user.authorized_projects + end.sorted_by_activity @projects = @projects.search(params[:search]) if params[:search].present? - @labels = Project.where(id: @projects.map(&:id)).tags_on(:labels) + @labels = current_user.authorized_projects.tags_on(:labels) @projects = @projects.tagged_with(params[:label]) if params[:label].present? @projects = @projects.page(params[:page]).per(30) diff --git a/app/views/dashboard/projects.html.haml b/app/views/dashboard/projects.html.haml index 9b16db340..683052ead 100644 --- a/app/views/dashboard/projects.html.haml +++ b/app/views/dashboard/projects.html.haml @@ -1,15 +1,3 @@ -%h3.page_title - Projects - %span - (#{@projects.total_count}) - - if current_user.can_create_project? - %span.pull-right - = link_to new_project_path, class: "btn btn-tiny info" do - %i.icon-plus - New Project - - -%hr .row .span3 %ul.nav.nav-pills.nav-stacked @@ -19,58 +7,43 @@ = link_to "Personal", projects_dashboard_path(scope: 'personal') = nav_tab :scope, 'joined' do = link_to "Joined", projects_dashboard_path(scope: 'joined') + = nav_tab :scope, 'owned' do + = link_to "Owned", projects_dashboard_path(scope: 'owned') - %p.light Filter by label: - %ul.bordered-list - - @labels.each do |label| - %li{ class: (label.name == params[:label]) ? 'active' : 'light' } - = link_to projects_dashboard_path(scope: params[:scope], label: label.name) do - %i.icon-tag - = label.name + - if @labels.present? + %p.light Filter by label: + %ul.bordered-list + - @labels.each do |label| + %li{ class: (label.name == params[:label]) ? 'active' : 'light' } + = link_to projects_dashboard_path(scope: params[:scope], label: label.name) do + %i.icon-tag + = label.name .span9 - = form_tag projects_dashboard_path, method: 'get' do - %fieldset.dashboard-search-filter - = hidden_field_tag "scope", params[:scope] - = search_field_tag "search", params[:search], { id: 'dashboard_projects_search', placeholder: 'Search', class: 'left input-xxlarge'} - = button_tag type: 'submit', class: 'btn' do - %i.icon-search - - %ul.bordered-list - - @projects.each do |project| - %li.clearfix - .clearfix - %h5 - = link_to project_path(project), class: dom_class(project) do - - if project.namespace - = project.namespace.human_name - %span= "/" - %strong - = truncate(project.name, length: 45) - .pull-right.light - - if project.owner == current_user - %i.icon-wrench - - tm = project.team.get_tm(current_user.id) - - if tm - %strong= tm.project_access_human - .clearfix - .left - - if project.description.present? - %span.light= project.description - - project.labels.each do |label| - %span.label.label-info - %i.icon-tag - = label.name + .ui-box + %h5.title + Projects (#{@projects.total_count}) + %ul.well-list + - @projects.each do |project| + %li + - if project.public + = public_icon + - else + = private_icon + = link_to project_path(project), class: dom_class(project) do + %strong + = project.name_with_namespace + - if project.description.present? + %span.light + = truncate project.description, length: 80 .pull-right.light - %small.light - Last activity #{project_last_activity(project)} + %small Last activity #{project_last_activity(project)} - - if @projects.blank? - %li - %h3.nothing_here_message There are no projects here. + - if @projects.blank? + %li + %h3.nothing_here_message There are no projects here. .bottom - %hr = paginate @projects, theme: "gitlab"