From 8812d9dee2340ba33d1272ed6ea0736c8eb371d0 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Sun, 10 Mar 2013 11:57:14 +0200 Subject: [PATCH] Move groups and teams to tabs on dashboard. Remember tab with cookie --- app/assets/javascripts/dashboard.js.coffee | 12 ++++++++ app/assets/stylesheets/sections/projects.scss | 4 +++ app/views/dashboard/_groups.html.haml | 3 ++ app/views/dashboard/_sidebar.html.haml | 28 +++++++++++++------ app/views/dashboard/_teams.html.haml | 7 +++-- 5 files changed, 44 insertions(+), 10 deletions(-) diff --git a/app/assets/javascripts/dashboard.js.coffee b/app/assets/javascripts/dashboard.js.coffee index 6171e0d5..4189c90b 100644 --- a/app/assets/javascripts/dashboard.js.coffee +++ b/app/assets/javascripts/dashboard.js.coffee @@ -1,5 +1,6 @@ window.dashboardPage = -> Pager.init 20, true + initSidebarTab() $(".event_filter_link").bind "click", (event) -> event.preventDefault() toggleFilter $(this) @@ -25,3 +26,14 @@ toggleFilter = (sender) -> event_filters.splice index, 1 $.cookie "event_filter", event_filters.join(",") + +initSidebarTab = -> + key = "dashboard_sidebar_filter" + + # store selection in cookie + $('.dash-sidebar-tabs a').on 'click', (e) -> + $.cookie(key, $(e.target).attr('id')) + + # show tab from cookie + sidebar_filter = $.cookie(key) + $("#" + sidebar_filter).tab('show') if sidebar_filter diff --git a/app/assets/stylesheets/sections/projects.scss b/app/assets/stylesheets/sections/projects.scss index 3abda7ee..6568d42a 100644 --- a/app/assets/stylesheets/sections/projects.scss +++ b/app/assets/stylesheets/sections/projects.scss @@ -6,6 +6,10 @@ .side { @extend .pull-right; + .projects_box, .ui-box { + margin: 3px; + } + .projects_box { > .title { padding: 2px 15px; diff --git a/app/views/dashboard/_groups.html.haml b/app/views/dashboard/_groups.html.haml index ba8d3029..89158f4d 100644 --- a/app/views/dashboard/_groups.html.haml +++ b/app/views/dashboard/_groups.html.haml @@ -16,3 +16,6 @@ %span.pull-right.light - if group.owner == current_user %i.icon-wrench + - if groups.blank? + %li + %h3.nothing_here_message You have no groups yet. diff --git a/app/views/dashboard/_sidebar.html.haml b/app/views/dashboard/_sidebar.html.haml index 7c6daf6e..876a5b61 100644 --- a/app/views/dashboard/_sidebar.html.haml +++ b/app/views/dashboard/_sidebar.html.haml @@ -1,13 +1,25 @@ -- if @teams.present? - = render "teams", teams: @teams -- if @groups.present? - = render "groups", groups: @groups -= render "projects", projects: @projects -%div +%ul.nav.nav-tabs.dash-sidebar-tabs + %li.active + = link_to 'Projects', '#projects', 'data-toggle' => 'tab', id: 'sidebar-projects-tab' + %li + = link_to 'Groups', '#groups', 'data-toggle' => 'tab', id: 'sidebar-groups-tab' + %li + = link_to 'Teams', '#teams', 'data-toggle' => 'tab', id: 'sidebar-teams-tab' + +.tab-content + .tab-pane.active#projects + = render "projects", projects: @projects + .tab-pane#groups + = render "groups", groups: @groups + .tab-pane#teams + = render "teams", teams: @teams + +.prepend-top-20 %span.rss-icon = link_to dashboard_path(:atom, { private_token: current_user.private_token }) do - = image_tag "rss_ui.png", title: "feed" - %strong News Feed + %strong + %i.icon-rss + News Feed %hr .gitlab-promo diff --git a/app/views/dashboard/_teams.html.haml b/app/views/dashboard/_teams.html.haml index f5611585..5c28f964 100644 --- a/app/views/dashboard/_teams.html.haml +++ b/app/views/dashboard/_teams.html.haml @@ -2,13 +2,13 @@ %h5.title Teams %small - (#{@teams.count}) + (#{teams.count}) %span.pull-right = link_to new_team_path, class: "btn btn-tiny info" do %i.icon-plus New Team %ul.well-list - - @teams.each do |team| + - teams.each do |team| %li = link_to team_path(id: team.path), class: dom_class(team) do %strong.well-title= truncate(team.name, length: 35) @@ -18,3 +18,6 @@ - tm = current_user.user_team_user_relationships.find_by_user_team_id(team.id) - if tm = tm.access_human + - if teams.blank? + %li + %h3.nothing_here_message You have no teams yet.