Rebuild navigation for dashboard

* projects from explore page are available from dashboard
* use dashboard sidebar for both logged in and not users
* move explroe projects under projects tab
* move explore groups under groups tab
* move public snippets under snippets tab

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
Dmitriy Zaporozhets 2015-08-20 11:59:14 +02:00
parent b1c1a3d3cc
commit f82c14259b
19 changed files with 112 additions and 97 deletions

View file

@ -6,3 +6,11 @@
font-size: 30px;
}
}
.explore-trending-block {
.lead {
line-height: 32px;
font-size: 18px;
margin-top: 10px;
}
}

View file

@ -9,7 +9,7 @@ class SnippetsController < ApplicationController
skip_before_action :authenticate_user!, only: [:index, :user_index, :show, :raw]
layout 'dashboard'
layout 'snippets'
respond_to :html
def index

View file

@ -10,7 +10,7 @@ module ExploreHelper
options = exist_opts.merge(options)
path = request.path
path = explore_projects_path
path << "?#{options.to_param}"
path
end

View file

@ -68,7 +68,13 @@ module TabHelper
current_path?(single_path)
end
elsif page = options.delete(:page)
current_page?(page)
unless page.respond_to?(:each)
page = [page]
end
page.any? do |single_page|
current_page?(single_page)
end
else
c = options.delete(:controller)
a = options.delete(:action)

View file

@ -0,0 +1,7 @@
%ul.center-top-menu
= nav_link(page: [dashboard_groups_path]) do
= link_to dashboard_groups_path, title: 'Your groups', data: {placement: 'right'} do
Your Groups
= nav_link(page: [explore_groups_path]) do
= link_to explore_groups_path, title: 'Explore groups', data: {toggle: 'tooltip', placement: 'bottom'} do
Explore Groups

View file

@ -1,10 +1,10 @@
%ul.center-top-menu
= nav_link(path: ['dashboard#show', 'root#show'], html_options: {class: 'home'}) do
= nav_link(path: ['dashboard#show', 'root#show']) do
= link_to dashboard_path, title: 'Home', class: 'shortcuts-activity', data: {placement: 'right'} do
Your Projects
= nav_link(path: 'projects#starred') do
= nav_link(page: starred_dashboard_projects_path) do
= link_to starred_dashboard_projects_path, title: 'Starred Projects', data: {placement: 'right'} do
Starred Projects
= nav_link(controller: :explore) do
= nav_link(page: [explore_root_path, trending_explore_projects_path, starred_explore_projects_path, explore_projects_path]) do
= link_to explore_root_path, title: 'Explore', data: {toggle: 'tooltip', placement: 'bottom'} do
Explore Projects

View file

@ -1,4 +1,6 @@
- page_title "Groups"
= render 'dashboard/groups_head'
%h3.page-title
Group Membership
- if current_user.can_create_group?

View file

@ -1,4 +1,6 @@
- page_title "Groups"
- if current_user
= render 'dashboard/groups_head'
.clearfix
.pull-left
= form_tag explore_groups_path, method: :get, class: 'form-inline form-tiny' do |f|

View file

@ -0,0 +1,27 @@
.dropdown.inline
%button.dropdown-toggle.btn{type: 'button', 'data-toggle' => 'dropdown'}
%span.light sort:
- if @sort.present?
= sort_options_hash[@sort]
- elsif current_page?(trending_explore_projects_path) || current_page?(explore_root_path)
Trending projects
- elsif current_page?(starred_explore_projects_path)
Most stars
- else
= sort_title_recently_created
%b.caret
%ul.dropdown-menu
%li
= link_to trending_explore_projects_path do
Trending projects
= link_to starred_explore_projects_path do
Most stars
= link_to explore_projects_filter_path(sort: sort_value_recently_created) do
= sort_title_recently_created
= link_to explore_projects_filter_path(sort: sort_value_oldest_created) do
= sort_title_oldest_created
= link_to explore_projects_filter_path(sort: sort_value_recently_updated) do
= sort_title_recently_updated
= link_to explore_projects_filter_path(sort: sort_value_oldest_updated) do
= sort_title_oldest_updated

View file

@ -46,22 +46,4 @@
= link_to explore_projects_filter_path(tag: tag.name) do
%i.fa.fa-tag
= tag.name
.dropdown.inline
%button.dropdown-toggle.btn{type: 'button', 'data-toggle' => 'dropdown'}
%span.light sort:
- if @sort.present?
= sort_options_hash[@sort]
- else
= sort_title_recently_created
%b.caret
%ul.dropdown-menu
%li
= link_to explore_projects_filter_path(sort: sort_value_recently_created) do
= sort_title_recently_created
= link_to explore_projects_filter_path(sort: sort_value_oldest_created) do
= sort_title_oldest_created
= link_to explore_projects_filter_path(sort: sort_value_recently_updated) do
= sort_title_recently_updated
= link_to explore_projects_filter_path(sort: sort_value_oldest_updated) do
= sort_title_oldest_updated
= render 'explore/projects/dropdown'

View file

@ -1,8 +1,9 @@
- page_title "Projects"
- if current_user
= render 'dashboard/projects_head'
.clearfix
= render 'filter'
%hr
%br
.public-projects
%ul.bordered-list.top-list
= render @projects

View file

@ -1,9 +1,12 @@
- page_title "Starred Projects"
- if current_user
= render 'dashboard/projects_head'
.explore-trending-block
%p.lead
.lead
%i.fa.fa-star
See most starred projects
%hr
.pull-right
= render 'explore/projects/dropdown'
.public-projects
%ul.bordered-list
= render @starred_projects

View file

@ -1,4 +1,6 @@
- page_title "Trending Projects"
- if current_user
= render 'dashboard/projects_head'
.explore-title
%h3
Explore GitLab
@ -6,10 +8,11 @@
Discover projects and groups. Share your projects with others
%hr
.explore-trending-block
%p.lead
.lead
%i.fa.fa-comments-o
See most discussed projects for last month
%hr
.pull-right
= render 'explore/projects/dropdown'
.public-projects
%ul.bordered-list
= render @trending_projects

View file

@ -1,5 +1,8 @@
- page_title "Explore"
- header_title "Explore GitLab", explore_root_path
- sidebar "explore"
- if current_user
- header_title "Dashboard", root_path
- else
- header_title "Explore GitLab", explore_root_path
- sidebar "dashboard"
= render template: "layouts/application"

View file

@ -1,46 +1,43 @@
%ul.nav.nav-sidebar
= nav_link(path: ['dashboard#show', 'root#show', 'projects#starred'], html_options: {class: 'home'}) do
= link_to root_path, title: 'Home', class: 'shortcuts-activity', data: {placement: 'right'} do
= nav_link(path: ['dashboard#show', 'root#show', 'projects#trending', 'projects#starred', 'projects#index'], html_options: {class: 'home'}) do
= link_to (current_user ? root_path : explore_root_path), title: 'Home', class: 'shortcuts-activity', data: {placement: 'right'} do
= icon('dashboard fw')
%span
Projects
-#= nav_link(path: 'projects#starred') do
-#= link_to starred_dashboard_projects_path, title: 'Starred Projects', data: {placement: 'right'} do
-#= icon('star fw')
-#%span
-#Starred Projects
= nav_link(controller: :groups) do
= link_to dashboard_groups_path, title: 'Groups', data: {placement: 'right'} do
= link_to (current_user ? dashboard_groups_path : explore_groups_path), title: 'Groups', data: {placement: 'right'} do
= icon('group fw')
%span
Groups
= nav_link(controller: :milestones) do
= link_to dashboard_milestones_path, title: 'Milestones', data: {placement: 'right'} do
= icon('clock-o fw')
%span
Milestones
= nav_link(path: 'dashboard#issues') do
= link_to assigned_issues_dashboard_path, title: 'Issues', class: 'shortcuts-issues', data: {placement: 'right'} do
= icon('exclamation-circle fw')
%span
Issues
%span.count= current_user.assigned_issues.opened.count
= nav_link(path: 'dashboard#merge_requests') do
= link_to assigned_mrs_dashboard_path, title: 'Merge Requests', class: 'shortcuts-merge_requests', data: {placement: 'right'} do
= icon('tasks fw')
%span
Merge Requests
%span.count= current_user.assigned_merge_requests.opened.count
- if current_user
= nav_link(controller: :milestones) do
= link_to dashboard_milestones_path, title: 'Milestones', data: {placement: 'right'} do
= icon('clock-o fw')
%span
Milestones
= nav_link(path: 'dashboard#issues') do
= link_to assigned_issues_dashboard_path, title: 'Issues', class: 'shortcuts-issues', data: {placement: 'right'} do
= icon('exclamation-circle fw')
%span
Issues
%span.count= current_user.assigned_issues.opened.count
= nav_link(path: 'dashboard#merge_requests') do
= link_to assigned_mrs_dashboard_path, title: 'Merge Requests', class: 'shortcuts-merge_requests', data: {placement: 'right'} do
= icon('tasks fw')
%span
Merge Requests
%span.count= current_user.assigned_merge_requests.opened.count
= nav_link(controller: :snippets) do
= link_to user_snippets_path(current_user), title: 'Your snippets', data: {placement: 'right'} do
= link_to (current_user ? user_snippets_path(current_user) : snippets_path), title: 'Your snippets', data: {placement: 'right'} do
= icon('dashboard fw')
%span
Snippets
= nav_link(controller: :profile) do
= link_to profile_path, title: 'Profile settings', data: {toggle: 'tooltip', placement: 'bottom'} do
= icon('user fw')
%span
Profile
- if current_user
= nav_link(controller: :profile) do
= link_to profile_path, title: 'Profile settings', data: {toggle: 'tooltip', placement: 'bottom'} do
= icon('user fw')
%span
Profile
= nav_link(controller: :help) do
= link_to help_path, title: 'Help', data: {placement: 'right'} do
= icon('question-circle fw')

View file

@ -1,18 +0,0 @@
%ul.nav.nav-sidebar
= nav_link(path: 'projects#trending') do
= link_to explore_root_path, title: 'Trending Projects', data: {placement: 'right'} do
= icon('comments fw')
%span Trending Projects
= nav_link(path: 'projects#starred') do
= link_to starred_explore_projects_path, title: 'Most-starred Projects', data: {placement: 'right'} do
= icon('star fw')
%span Most-starred Projects
= nav_link(path: 'projects#index') do
= link_to explore_projects_path, title: 'All Projects', data: {placement: 'right'} do
= icon('bookmark fw')
%span All Projects
= nav_link(controller: :groups) do
= link_to explore_groups_path, title: 'All Groups', data: {placement: 'right'} do
= icon('group fw')
%span All Groups

View file

@ -1,12 +0,0 @@
%ul.nav.nav-sidebar
- if current_user
= nav_link(path: user_snippets_path(current_user), html_options: {class: 'home'}) do
= link_to user_snippets_path(current_user), title: 'Your snippets', data: {placement: 'right'} do
= icon('dashboard fw')
%span
Your Snippets
= nav_link(path: snippets_path) do
= link_to snippets_path, title: 'Discover snippets', data: {placement: 'right'} do
= icon('globe fw')
%span
Discover Snippets

View file

@ -1,5 +1,8 @@
- page_title 'Snippets'
- header_title 'Snippets', snippets_path
- sidebar "snippets"
- if current_user
- header_title "Dashboard", root_path
- else
- header_title 'Snippets', snippets_path
- sidebar "dashboard"
= render template: "layouts/application"

View file

@ -1,5 +1,6 @@
- page_title "Public Snippets"
= render 'head'
- if current_user
= render 'head'
%h3.page-title
Public snippets