Commit 94db8a1c authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Usability & design improvements

parent 9a24ccde
......@@ -10,8 +10,12 @@ a {
color: $link_color !important;
}
.pills a:hover {
background-color:#ccc;
}
.pills .active a {
background-color: #474D57;
background-color: #aaa;
}
.label {
......@@ -83,7 +87,7 @@ a {
}
.container .sidebar {
width: 250px;
width: 220px;
height:100%;
min-height:450px;
float:right;
......@@ -131,6 +135,15 @@ nav.main_menu {
margin: 0;
float:left;
text-shadow:0 1px 1px white;
&.home {
padding:7px 35px;
img {
position:relative;
top:4px;
}
}
&.current {
background:#DDD;
}
......@@ -182,7 +195,7 @@ img.lil_av {
p { padding-top:5px; margin:0; color:$style_color;}
.author { color: #999; }
p {
color:$style_color;
color:#222;
margin-bottom: 0;
img {
position:relative;
......@@ -230,6 +243,27 @@ img.lil_av {
.widget {
padding:20px;
margin-bottom:20px;
background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, #fff), to(#f1f1f1));
background-image: -webkit-linear-gradient(#fff 6.6%, #f1f1f1);
background-image: -moz-linear-gradient(#fff 6.6%, #f1f1f1);
background-image: -o-linear-gradient(#fff 6.6%, #f1f1f1);
border: 1px solid #DDD;
border-radius: 5px;
.link_holder {
background:#eee;
position:relative;
left:-20px;
top:20px;
padding:10px 20px;
width:100%;
border-top:1px solid #ccc;
a {
font-size:14px;
color:#666;
}
}
}
......@@ -242,15 +276,20 @@ img.lil_av {
margin:0;
}
h5 {
h5, .title {
padding: 0 10px;
background:#f5f5f5;
border-bottom: 1px solid #ccc;
@include round-borders-top(4px);
border-top:none;
form {
padding-top:16px;
}
}
li {
li, .wll {
padding:10px;
&:first-child {
@include round-borders-top(4px);
......@@ -266,3 +305,11 @@ img.lil_av {
}
.help li { color:#111 }
.back_link {
text-decoration:underline;
font-size:14px;
font-weight:bold;
padding:10px 0;
padding-bottom:0;
}
......@@ -130,14 +130,21 @@ table.highlighttable .linenodiv pre {
}
}
.breadcrumb a {
color:$style_color;
font-weight:bold;
.breadcrumb {
background:white;
border:none;
a {
color:$link_color;
font-weight:bold;
font-size:13px;
}
}
#tree-slider {
td {
padding:7px;
border-color:#f1f1f1;
}
th {
......
......@@ -24,7 +24,9 @@ class MergeRequestsController < ApplicationController
@merge_requests = @project.merge_requests
@merge_requests = case params[:f].to_i
when 1 then @merge_requests
when 2 then @merge_requests.closed
when 2 then @merge_requests.opened.assigned(current_user)
else @merge_requests.opened
end
......
......@@ -42,7 +42,7 @@ class Commit
end
def author_name
author.name
author.name.force_encoding("UTF-8")
end
def committer_name
......
......@@ -65,7 +65,11 @@ class User < ActiveRecord::Base
def self.generate_random_password
(0...8).map{ ('a'..'z').to_a[rand(26)] }.join
end
end
def first_name
name.split(" ").first unless name.blank?
end
def self.find_for_ldap_auth(omniauth)
username = omniauth.sAMAccountName[0]
......
......@@ -12,7 +12,7 @@
= image_tag gravatar_icon(issue.assignee_email), :class => "avatar"
%span.update-author
assigned to
%strong= link_to_issue_assignee(issue)
%strong= issue.assignee_name
- if issue.critical
%span.label.important critical
- if issue.today?
......
......@@ -9,30 +9,30 @@
= link_to new_project_issue_path(@project), :class => "right btn small", :title => "New Issue", :remote => true do
New Issue
%hr
%div#issues-table-holder
.row
.span8
%ul.pills.left
%li{:class => ("active" if (params[:f] == "0" || !params[:f]))}
= link_to project_issues_path(@project, :f => 0) do
Open
%li{:class => ("active" if params[:f] == "2")}
= link_to project_issues_path(@project, :f => 2) do
Closed
%li{:class => ("active" if params[:f] == "3")}
= link_to project_issues_path(@project, :f => 3) do
To Me
%li{:class => ("active" if params[:f] == "1")}
= link_to project_issues_path(@project, :f => 1) do
All
%div#issues-table-holder.ui-box
.title
.row
.span8
%ul.pills.left
%li{:class => ("active" if (params[:f] == "0" || !params[:f]))}
= link_to project_issues_path(@project, :f => 0) do
Open
%li{:class => ("active" if params[:f] == "2")}
= link_to project_issues_path(@project, :f => 2) do
Closed
%li{:class => ("active" if params[:f] == "3")}
= link_to project_issues_path(@project, :f => 3) do
To Me
%li{:class => ("active" if params[:f] == "1")}
= link_to project_issues_path(@project, :f => 1) do
All
.span2.right
= form_tag search_project_issues_path(@project), :method => :get, :remote => true, :id => "issue_search_form", :class => :right do
= hidden_field_tag :project_id, @project.id, { :id => 'project_id' }
= hidden_field_tag :status, params[:f]
= search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' }
.span3.right
= form_tag search_project_issues_path(@project), :method => :get, :remote => true, :id => "issue_search_form", :class => :right do
= hidden_field_tag :project_id, @project.id, { :id => 'project_id' }
= hidden_field_tag :status, params[:f]
= search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' }
%hr
%ul#issues-table.unstyled= render "issues"
:javascript
......
......@@ -14,6 +14,11 @@
= link_to edit_project_issue_path(@project, @issue), :class => "btn small" do
Edit
.back_link
= link_to project_issues_path(@project) do
&larr; To issues list
%hr
- if @issue.closed
.alert-message.error Closed
......
......@@ -4,7 +4,7 @@
%hr
%div#keys-table{ :class => "update-data ui-box ui-box-small ui-box-big" }
%div#keys-table
%ul.unstyled
- @keys.each do |key|
= render(:partial => 'show', :locals => {:key => key})
%nav.main_menu
= link_to project_path(@project), :class => project_tab_class do
= link_to project_path(@project), :class => "#{project_tab_class}", :title => "Project" do
Project
- if @project.repo_exists?
......
......@@ -4,16 +4,16 @@
You can create at least
= current_user.projects_limit
projects. Click on button to add a new one
%hr
= link_to new_project_path, :class => "btn small" do
New Project »
.link_holder
= link_to new_project_path, :class => "" do
New Project »
- if current_user.is_admin?
.widget
You have administrator privilegies. You can configure application following this button:
%hr
= link_to admin_root_path, :class => "btn small", :title => "Admin" do
Visit Admin Area »
.link_holder
= link_to admin_root_path, :class => "", :title => "Admin" do
Visit Admin Area »
- if current_user.projects.count > 0
= render "widgets/recent_projects"
......
......@@ -10,7 +10,7 @@
= link_to "Password & token", profile_password_path, :class => current_page?(:controller => "profile", :action => :password) ? "current" : nil
= link_to "Design", profile_design_path, :class => current_page?(:controller => "profile", :action => :design) ? "current" : nil
= link_to keys_path, :class => controller.controller_name == "keys" ? "current" : nil do
Keys
SSH Keys
.content
.row
.span12= yield
......
%li.wll
= image_tag gravatar_icon(merge_request.author_email), :class => "avatar"
%span.update-author
%strong= link_to_merge_request_author(merge_request)
%strong= merge_request.author_name
authored
= time_ago_in_words(merge_request.created_at)
ago
......
......@@ -6,14 +6,21 @@
%hr
%ul.pills
%li{:class => ("active" if (params[:f] == "0" || !params[:f]))}
= link_to project_merge_requests_path(@project, :f => 0) do
Open
%li{:class => ("active" if params[:f] == "2")}
= link_to project_merge_requests_path(@project, :f => 2) do
Closed
.ui-box
.title
%ul.pills
%li{:class => ("active" if (params[:f] == "0" || !params[:f]))}
= link_to project_merge_requests_path(@project, :f => 0) do
Open
%li{:class => ("active" if params[:f] == "2")}
= link_to project_merge_requests_path(@project, :f => 2) do
Closed
%li{:class => ("active" if params[:f] == "3")}
= link_to project_merge_requests_path(@project, :f => 3) do
To Me
%li{:class => ("active" if params[:f] == "1")}
= link_to project_merge_requests_path(@project, :f => 1) do
All
%hr
%ul.unstyled= render @merge_requests
%ul.unstyled= render @merge_requests
......@@ -19,6 +19,9 @@
= link_to edit_project_merge_request_path(@project, @merge_request), :class => "btn small" do
Edit
.back_link
= link_to project_merge_requests_path(@project) do
&larr; To merge requests
%hr
- if @merge_request.closed
.alert-message.error Closed
......
= render "project_head"
%h3
= @project.name
- if can? current_user, :download_code, @project
= link_to "Download", archive_project_repository_path(@project), :class => "btn small right"
.back_link
= link_to projects_path do
&larr; To projects list
%hr
.alert-message.block-message.warning
.input
......@@ -10,7 +15,8 @@
= simple_format @project.description
%h5.cgray Recent Activity
.content_list= render "feed"
.ui-box
%h5.cgray Recent Activity
.content_list= render "feed"
......@@ -6,6 +6,16 @@
%hr
.entry
%p
Last commit was
%small
%code= @activities.first.commit.id.to_s[0..10]
= time_ago_in_words(@activities.first.commit.committed_date)
ago to
= link_to project_commits_path(@project, :ref => @activities.first.head.name), :class => "visible_link" do
%span.label= @activities.first.head.name
.alert-message.block-message.warning
.input
.input-prepend
......@@ -13,20 +23,12 @@
= text_field_tag :project_clone, @project.url_to_repo, :class => "xlarge one_click_select git_clone_url"
%p
Last commit was
%small
%code= @activities.first.commit.id.to_s[0..10]
= time_ago_in_words(@activities.first.commit.committed_date)
ago to
= link_to project_commits_path(@project, :ref => @activities.first.head.name), :class => "visible_link" do
%span.label= @activities.first.head.name
.ui-box
%h5.cgray
Recent Branches
%h4.cgray
Recent Branches
%ul.unstyled
- @activities.each do |update|
= render "repositories/feed", :update => update, :project => @project
%ul.unstyled
- @activities.each do |update|
= render "repositories/feed", :update => update, :project => @project
- allow_admin = can? current_user, :admin_project, @project
- user = @team_member.user
%div
= link_to team_project_path(@project), :class => "btn right" do
Team »
.media-grid
= link_to "#" do
= image_tag gravatar_icon(user.email, 90), :class => "thumbnail"
%h3.media_h= user.name
.media-grid
= link_to "#" do
= image_tag gravatar_icon(user.email, 60), :class => "thumbnail", :width => 60
%h3.media_h
= user.name
%br
%small= user.email
.back_link
= link_to team_project_path(@project), :class => "" do
&larr; To team list
%hr
%table.no-borders
%tr
%td Name
......@@ -23,7 +27,10 @@
%td= @team_member.created_at.stamp("Aug 21, 2011")
%tr
%td Project Access
%td
Project Access
(#{link_to "read more", help_permissions_path, :class => "vlink"})
%td
= form_for(@team_member, :as => :team_member, :url => project_team_member_path(@project, @team_member)) do |f|
= f.select :project_access, options_for_select(Project.access_options, @team_member.project_access), {}, :class => "project-access-select", :disabled => !allow_admin
......
......@@ -3,20 +3,31 @@
.media-grid
%li
= link_to project_team_member_path(@project, member), :title => current_user.name do
= image_tag gravatar_icon(current_user.email, 90), :class => "thumbnail"
.row
.span4
%h4
= truncate(current_user.name, :lenght => 24)
- if @project.owner == current_user
%span.label Project Owner
= image_tag gravatar_icon(current_user.email, 60), :class => "thumbnail", :width => 60
%h4
Hi,
= truncate current_user.first_name, :lenght => 24
!
%p
- if @project.issues_enabled
Assigned issues:
= current_user.assigned_issues.count
%br
- if @project.merge_requests_enabled
Assigned merge request:
= current_user.assigned_merge_requests.count
%br
Your merge requests:
= current_user.assigned_merge_requests.count
.link_holder
= link_to project_team_member_path(@project, member), :title => current_user.name do
= "Access: #{member.project_access_human} »"
.span3
%span.label= member.project_access_human
- if can? current_user, :write_project, @project
-#- if can? current_user, :write_project, @project
.widget
- if @project.issues_enabled && @project.merge_requests_enabled
%hr
.span3
%p You have access to create new issue or merge request.
%div
......
......@@ -7,4 +7,5 @@
%li
= link_to project_path(project) do
= project.name
= link_to "More » ", projects_path
.link_holder
= link_to "Projects » ", projects_path
......@@ -21,7 +21,6 @@ describe "Snippets" do
it { should have_content(@snippet.title[0..10]) }
it { should have_content(@snippet.project.name) }
it { should have_content(@snippet.author.name) }
describe "Destroy" do
before do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment