Commit fbdb1da2ab450a49357feb8306dcced6ce61ab50
1 parent
d4ad3623
Exists in
master
and in
4 other branches
Bootstrap: issues, notes css
Showing
12 changed files
with
104 additions
and
171 deletions
Show diff stats
app/assets/javascripts/issues.js
1 | 1 | function switchToNewIssue(form){ |
2 | - $("#issues-table-holder").hide("slide", { direction: "left" }, 150, function(){ | |
3 | - $(".project-content").append(form); | |
2 | + $("#issues-table").hide("slide", { direction: "left" }, 150, function(){ | |
3 | + $("#issues-table").after(form); | |
4 | 4 | $('select#issue_assignee_id').chosen(); |
5 | 5 | $("#new_issue_dialog").show("slide", { direction: "right" }, 150); |
6 | 6 | $('.top-tabs .add_new').hide(); |
... | ... | @@ -8,11 +8,11 @@ function switchToNewIssue(form){ |
8 | 8 | } |
9 | 9 | |
10 | 10 | function switchToEditIssue(form){ |
11 | - $("#issues-table-holder").hide("slide", { direction: "left" }, 150, function(){ | |
12 | - $(".project-content").append(form); | |
11 | + $("#issues-table").hide("slide", { direction: "left" }, 150, function(){ | |
12 | + $("#issues-table").after(form); | |
13 | 13 | $('select#issue_assignee_id').chosen(); |
14 | 14 | $("#edit_issue_dialog").show("slide", { direction: "right" }, 150); |
15 | - $('.top-tabs .add_new').hide(); | |
15 | + $('.add_new').hide(); | |
16 | 16 | }); |
17 | 17 | } |
18 | 18 | |
... | ... | @@ -26,10 +26,10 @@ function switchFromEditIssue(){ |
26 | 26 | |
27 | 27 | function backToIssues(){ |
28 | 28 | $("#edit_issue_dialog, #new_issue_dialog").hide("slide", { direction: "right" }, 150, function(){ |
29 | - $("#issues-table-holder").show("slide", { direction: "left" }, 150, function() { | |
29 | + $("#issues-table").show("slide", { direction: "left" }, 150, function() { | |
30 | 30 | $("#edit_issue_dialog").remove(); |
31 | 31 | $("#new_issue_dialog").remove(); |
32 | - $('.top-tabs .add_new').show(); | |
32 | + $('.add_new').show(); | |
33 | 33 | }); |
34 | 34 | }); |
35 | 35 | } | ... | ... |
app/assets/stylesheets/common.scss
... | ... | @@ -87,6 +87,9 @@ $blue_link: "#2fa0bb"; |
87 | 87 | .no-padding { |
88 | 88 | padding:0 !important; |
89 | 89 | } |
90 | +.underlined { | |
91 | + border-bottom: 1px solid $border_color; | |
92 | +} | |
90 | 93 | |
91 | 94 | /** LAYOUT **/ |
92 | 95 | |
... | ... | @@ -94,7 +97,7 @@ $blue_link: "#2fa0bb"; |
94 | 97 | min-width:$min_app_width; |
95 | 98 | max-width:$max_app_width; |
96 | 99 | margin:auto; |
97 | - margin-top:60px; | |
100 | + margin-top:51px; | |
98 | 101 | } |
99 | 102 | |
100 | 103 | .container-fluid > .sidebar { |
... | ... | @@ -106,6 +109,7 @@ $blue_link: "#2fa0bb"; |
106 | 109 | |
107 | 110 | .container-fluid > .content { |
108 | 111 | margin-left: 160px; |
112 | + margin-top:20px; | |
109 | 113 | } |
110 | 114 | |
111 | 115 | @import "reset_bootstrap.scss"; |
... | ... | @@ -113,12 +117,12 @@ $blue_link: "#2fa0bb"; |
113 | 117 | @import "projects.css.scss"; |
114 | 118 | @import "commits.css.scss"; |
115 | 119 | @import "tree.scss"; |
120 | +@import "issues.css.scss"; | |
121 | +@import "merge_requests.css.scss"; | |
122 | +@import "notes.css.scss"; | |
116 | 123 | |
117 | 124 | //@import "style.scss"; |
118 | -//@import "notes.css.scss"; | |
119 | -//@import "merge_requests.css.scss"; | |
120 | 125 | |
121 | -//@import "issues.css.scss"; | |
122 | 126 | //@import "commits.css.scss"; |
123 | 127 | |
124 | 128 | //@import "dashboard.scss"; | ... | ... |
app/assets/stylesheets/issues.css.scss
... | ... | @@ -10,61 +10,6 @@ |
10 | 10 | color: #444; |
11 | 11 | } |
12 | 12 | |
13 | -.issues_filter { | |
14 | - margin:10px 0; | |
15 | - .left { | |
16 | - margin-right:15px; | |
17 | - } | |
18 | -} | |
19 | - | |
20 | -.top_panel_issues{ | |
21 | - #issue_search_form { | |
22 | - margin:5px 0; | |
23 | - input { | |
24 | - border:1px solid #D3D3D3; | |
25 | - padding: 3px; | |
26 | - height: 28px; | |
27 | - width: 250px; | |
28 | - -webkit-appearance:none; | |
29 | - box-sizing: border-box; | |
30 | - -moz-box-sizing: border-box; | |
31 | - | |
32 | - &:focus { | |
33 | - border-color:#c2e1ef; | |
34 | - } | |
35 | - } | |
36 | - } | |
37 | -} | |
38 | - | |
39 | -/** ISSUES LIST **/ | |
40 | -.issue .action-links { | |
41 | - display:none; | |
42 | - a { | |
43 | - margin-left:10px; | |
44 | - } | |
45 | -} | |
46 | -.issue:hover .action-links { display:block; } | |
47 | -.issue-show-holder { | |
48 | - width:100%; | |
49 | - .data p { font-size:16px } | |
50 | -} | |
51 | - | |
52 | 13 | #issue_assignee_id { |
53 | 14 | width:300px; |
54 | 15 | } |
55 | - | |
56 | -.issue-form-holder .ui-box .data { | |
57 | - margin: 0; | |
58 | - padding: 0; | |
59 | -} | |
60 | - | |
61 | - | |
62 | -#issues-table { | |
63 | - tr { | |
64 | - border-top: 1px solid $lite_border_color; | |
65 | - &:first-child { | |
66 | - border:none; | |
67 | - } | |
68 | - } | |
69 | - | |
70 | -} | ... | ... |
app/assets/stylesheets/merge_requests.css.scss
app/assets/stylesheets/notes.css.scss
... | ... | @@ -32,7 +32,6 @@ |
32 | 32 | |
33 | 33 | #notes-list .note .delete-note { display:none; } |
34 | 34 | #notes-list .note:hover .delete-note { display:block; } |
35 | - | |
36 | 35 | #notes-list .note {padding: 10px 0; border-bottom: 1px solid #eee; overflow: hidden; display: block;} |
37 | 36 | #notes-list .note img{float: left; margin-right: 10px;} |
38 | 37 | #notes-list .note span.note-title{display: block;} | ... | ... |
app/views/commits/_commits.html.haml
1 | 1 | - @commits.group_by { |c| c.committed_date.to_date }.each do |day, commits| |
2 | 2 | %div{ :class => "commits-date ui-box ui-box-small ui-box-big" } |
3 | 3 | .day-commits-table |
4 | - %div.alert-message.info | |
5 | - %p= day.stamp("28 Aug, 2010") | |
6 | - .data | |
4 | + %h5.underlined= day.stamp("28 Aug, 2010") | |
5 | + %ul.unstyled | |
7 | 6 | - commits.each do |commit| |
8 | - %a{ :class => "commit", :href => project_commit_path(@project, :id => commit.id) } | |
9 | - %span.commit-info | |
10 | - %data.commit-button | |
11 | - = truncate(commit.id.to_s, :length => 16) | |
12 | - %i | |
13 | - %data.commit-browse{ :onclick => "location.href='#{tree_project_ref_path(@project, commit.id)}';return false;"} | |
14 | - Browse Code | |
15 | - - if commit.author_email | |
16 | - = image_tag gravatar_icon(commit.author_email), :class => "left", :width => 40, :style => "padding-right:5px;" | |
17 | - - else | |
18 | - = image_tag "no_avatar.png", :class => "left", :width => 40, :style => "padding-right:5px;" | |
19 | - %span.commit-title | |
20 | - %strong | |
21 | - = truncate(commit.safe_message, :length => 70) | |
22 | - %span.commit-author | |
23 | - %strong= commit.author_name | |
24 | - = time_ago_in_words(commit.committed_date) | |
25 | - ago | |
7 | + %li | |
8 | + %a{ :class => "commit", :href => project_commit_path(@project, :id => commit.id) } | |
9 | + %span.commit-info | |
10 | + %data.commit-button | |
11 | + = truncate(commit.id.to_s, :length => 16) | |
12 | + %i | |
13 | + %data.commit-browse{ :onclick => "location.href='#{tree_project_ref_path(@project, commit.id)}';return false;"} | |
14 | + Browse Code | |
15 | + - if commit.author_email | |
16 | + = image_tag gravatar_icon(commit.author_email), :class => "left", :width => 40, :style => "padding-right:5px;" | |
17 | + - else | |
18 | + = image_tag "no_avatar.png", :class => "left", :width => 40, :style => "padding-right:5px;" | |
19 | + %span.commit-title | |
20 | + %strong | |
21 | + = truncate(commit.safe_message, :length => 70) | |
22 | + %span.commit-author | |
23 | + %strong= commit.author_name | |
24 | + = time_ago_in_words(commit.committed_date) | |
25 | + ago | ... | ... |
app/views/commits/show.html.haml
1 | 1 | .commit |
2 | 2 | %span.commit-info |
3 | - = link_to tree_project_ref_path(@project, @commit.id) do | |
4 | - %data.commit-button | |
5 | - Browse Code | |
6 | - %i | |
3 | + = link_to tree_project_ref_path(@project, @commit.id), :class => "btn" do | |
4 | + Browse Code » | |
7 | 5 | - if @commit.author_email |
8 | 6 | = image_tag gravatar_icon(@commit.author_email), :class => "left", :width => 40, :style => "padding-right:5px;" |
9 | 7 | - else | ... | ... |
app/views/issues/_head.html.haml
1 | -.top-tabs | |
2 | - = link_to project_issues_path(@project), :class => "tab #{'active' if current_page?(project_issues_path(@project)) }" do | |
3 | - %span | |
4 | - Issues | |
1 | +.tabs | |
2 | + %li{:class => "#{'active' if current_page?(project_issues_path(@project))}"} | |
3 | + = link_to project_issues_path(@project), :class => "tab" do | |
4 | + Issues | |
5 | 5 | |
6 | 6 | -#= link_to project_issues_path(@project), :class => "tab" do |
7 | 7 | %span |
... | ... | @@ -9,6 +9,7 @@ |
9 | 9 | |
10 | 10 | - if current_page?(project_issues_path(@project)) |
11 | 11 | - if can? current_user, :write_issue, @project |
12 | - = link_to new_project_issue_path(@project), :class => "add_new", :title => "New Issue", :remote => true do | |
13 | - Add new | |
12 | + %li | |
13 | + = link_to new_project_issue_path(@project), :class => "add_new", :title => "New Issue", :remote => true do | |
14 | + Add new | |
14 | 15 | ... | ... |
app/views/issues/_show.html.haml
1 | 1 | %tr{ :id => dom_id(issue), :class => "issue #{issue.critical ? "critical" : ""}", :url => project_issue_path(issue.project, issue) } |
2 | 2 | %td |
3 | - %strong.issue-number{:class => sort_class}= "##{issue.id}" | |
3 | + = image_tag gravatar_icon(issue.assignee_email), :class => "left", :width => 40, :style => "padding-right:5px;" | |
4 | 4 | %span |
5 | 5 | = truncate(html_escape(issue.title), :length => 100) |
6 | - %br | |
7 | - %br | |
8 | 6 | %div.note-author |
9 | 7 | %strong= issue.assignee.name |
10 | 8 | %cite.cgray | ... | ... |
app/views/issues/index.html.haml
... | ... | @@ -6,31 +6,25 @@ |
6 | 6 | = image_tag "Rss-UI.PNG", :width => 22, :title => "feed" |
7 | 7 | |
8 | 8 | %div#issues-table-holder |
9 | - .top_panel_issues | |
10 | - = form_tag search_project_issues_path(@project), :method => :get, :remote => true, :class => :right, :id => "issue_search_form" do | |
9 | + .well | |
10 | + = form_tag project_issues_path(@project), :method => :get, :class => :left do | |
11 | + = label_tag "open_issues" do | |
12 | + = radio_button_tag :f, 0, (params[:f] || "0") == "0", :onclick => "setIssueFilter(this.form, 0)", :id => "open_issues", :class => "status" | |
13 | + %span.tag.open Open | |
14 | + = label_tag "closed_issues" do | |
15 | + = radio_button_tag :f, 2, params[:f] == "2", :onclick => "setIssueFilter(this.form, 2)", :id => "closed_issues", :class => "status" | |
16 | + %span.tag.closed Closed | |
17 | + = label_tag "my_issues" do | |
18 | + = radio_button_tag :f, 3, params[:f] == "3", :onclick => "setIssueFilter(this.form, 3)", :id => "my_issues", :class => "status" | |
19 | + %span To Me | |
20 | + = label_tag "all_issues" do | |
21 | + = radio_button_tag :f, 1, params[:f] == "1", :onclick => "setIssueFilter(this.form, 1)", :id => "all_issues", :class => "status" | |
22 | + %span All | |
23 | + = form_tag search_project_issues_path(@project), :method => :get, :remote => true, :id => "issue_search_form", :class => :right do | |
11 | 24 | = hidden_field_tag :project_id, @project.id, { :id => 'project_id' } |
12 | 25 | = search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' } |
13 | 26 | |
14 | - .left.issues_filter | |
15 | - = form_tag project_issues_path(@project), :method => :get do | |
16 | - .left | |
17 | - = radio_button_tag :f, 0, (params[:f] || "0") == "0", :onclick => "setIssueFilter(this.form, 0)", :id => "open_issues", :class => "status" | |
18 | - = label_tag "open_issues" do | |
19 | - %span.tag.open Open | |
20 | - .left | |
21 | - = radio_button_tag :f, 2, params[:f] == "2", :onclick => "setIssueFilter(this.form, 2)", :id => "closed_issues", :class => "status" | |
22 | - = label_tag "closed_issues" do | |
23 | - %span.tag.closed Closed | |
24 | - .left | |
25 | - = radio_button_tag :f, 3, params[:f] == "3", :onclick => "setIssueFilter(this.form, 3)", :id => "my_issues", :class => "status" | |
26 | - = label_tag "my_issues","To Me" | |
27 | - .left | |
28 | - = radio_button_tag :f, 1, params[:f] == "1", :onclick => "setIssueFilter(this.form, 1)", :id => "all_issues", :class => "status" | |
29 | - = label_tag "all_issues","All" | |
30 | - | |
31 | - .clear | |
32 | - %hr | |
33 | - %table.no-borders#issues-table | |
27 | + %table#issues-table | |
34 | 28 | = render "issues" |
35 | 29 | %br |
36 | 30 | :javascript | ... | ... |
app/views/notes/_form.html.haml
1 | 1 | %div |
2 | + %h3 Leave a note | |
2 | 3 | = form_for [@project, @note], :remote => "true", :multipart => true do |f| |
3 | 4 | -if @note.errors.any? |
4 | 5 | .errors.error |
... | ... | @@ -7,30 +8,25 @@ |
7 | 8 | |
8 | 9 | = f.hidden_field :noteable_id |
9 | 10 | = f.hidden_field :noteable_type |
11 | + = f.text_area :note, :size => 255 | |
10 | 12 | |
11 | - %div | |
12 | - = f.label :note | |
13 | - %cite.cgray markdown supported | |
14 | - %br | |
15 | - %br | |
16 | - = f.text_area :note, :size => 255 | |
13 | + .row | |
14 | + .span6 | |
15 | + %h5 Notify via email: | |
16 | + .clearfix | |
17 | + = label_tag :notify do | |
18 | + = check_box_tag :notify, 1, @note.noteable_type != "Commit" | |
19 | + %span Project team | |
17 | 20 | |
18 | - %div.attach_holder | |
19 | - %br | |
20 | - = f.label :attachment | |
21 | - %cite.cgray (less than 10 MB) | |
22 | - | |
23 | - = f.file_field :attachment | |
24 | - | |
25 | - %p.notify_controls | |
26 | - %span Notify: | |
27 | - = check_box_tag :notify, 1, @note.noteable_type != "Commit" | |
28 | - = label_tag :notify, "Project team" | |
21 | + -if @note.noteable_type == "Commit" | |
22 | + = label_tag :notify_author do | |
23 | + = check_box_tag :notify_author, 1 , @note.noteable_type == "Commit" | |
24 | + %span Commit author | |
25 | + .span6 | |
26 | + %h5 Attachment: | |
27 | + .clearfix | |
28 | + = f.label :attachment, "Any file, < 10 MB" | |
29 | + .input= f.file_field :attachment, :class => "input-file" | |
29 | 30 | |
30 | - -if @note.noteable_type == "Commit" | |
31 | - = check_box_tag :notify_author, 1 , @note.noteable_type == "Commit" | |
32 | - = label_tag :notify_author, "Commit author" | |
33 | 31 | |
34 | - .clear | |
35 | - %br | |
36 | - = f.submit 'Add note', :class => "positive-button", :id => "submit_note" | |
32 | + = f.submit 'Add note', :class => "btn primary", :id => "submit_note" | ... | ... |
app/views/projects/_project_head.html.haml
1 | -.top-tabs | |
2 | - = link_to project_path(@project), :class => "activities-tab tab #{'active' if current_page?(project_path(@project)) }" do | |
3 | - %span | |
4 | - Activities | |
5 | - = link_to info_project_path(@project), :class => "stat-tab tab #{'active' if current_page?(info_project_path(@project)) || current_page?(edit_project_path(@project)) }" do | |
6 | - %span | |
7 | - Info | |
8 | - = link_to team_project_path(@project), :class => "team-tab tab #{'active' if current_page?(team_project_path(@project)) }" do | |
9 | - %span | |
10 | - Team | |
11 | - = link_to files_project_path(@project), :class => "files-tab tab #{'active' if current_page?(files_project_path(@project)) }" do | |
12 | - %span | |
13 | - Files | |
14 | - = link_to project_snippets_path(@project), :class => "snippets-tab tab #{'active' if current_page?(project_snippets_path(@project)) }" do | |
15 | - %span | |
16 | - Snippets | |
1 | +%ul.tabs | |
2 | + %li{ :class => "#{'active' if current_page?(project_path(@project)) }" } | |
3 | + = link_to project_path(@project), :class => "activities-tab tab" do | |
4 | + Activities | |
5 | + %li{ :class => "#{'active' if current_page?(info_project_path(@project)) || current_page?(edit_project_path(@project)) }" } | |
6 | + = link_to info_project_path(@project), :class => "stat-tab tab " do | |
7 | + Info | |
8 | + | |
9 | + %li{ :class => " #{'active' if current_page?(team_project_path(@project)) }" } | |
10 | + = link_to team_project_path(@project), :class => "team-tab tab" do | |
11 | + Team | |
12 | + %li{ :class => "#{'active' if current_page?(files_project_path(@project)) }" } | |
13 | + = link_to files_project_path(@project), :class => "files-tab tab " do | |
14 | + Files | |
15 | + %li{ :class => " #{'active' if current_page?(project_snippets_path(@project)) }" } | |
16 | + = link_to project_snippets_path(@project), :class => "snippets-tab tab" do | |
17 | + Snippets | |
17 | 18 | |
18 | 19 | - if current_page?(project_snippets_path(@project)) |
19 | 20 | - if can? current_user, :write_snippet, @project |
20 | - = link_to new_project_snippet_path(@project), :class => "add_new", :title => "New Snippet" do | |
21 | - Add new | |
21 | + %li | |
22 | + = link_to new_project_snippet_path(@project), :class => "add_new", :title => "New Snippet" do | |
23 | + Add new | |
22 | 24 | |
23 | 25 | |
24 | 26 | - if current_page?(team_project_path(@project)) |
25 | 27 | - if can? current_user, :admin_team_member, @project |
26 | - = link_to new_project_team_member_path(@project), :class => "add_new", :title => "New Team Member" do | |
27 | - Add New | |
28 | + %li | |
29 | + = link_to new_project_team_member_path(@project), :class => "add_new", :title => "New Team Member" do | |
30 | + Add New | ... | ... |