Commit 809413d9e758547241530001efa35dececfcf787
1 parent
ffc6ab41
Exists in
master
and in
4 other branches
minimalistic UI: issues index, css refactoring
Showing
17 changed files
with
279 additions
and
268 deletions
Show diff stats
app/assets/stylesheets/common.scss
1 | $text_color:#222; | 1 | $text_color:#222; |
2 | $lite_text_color: #666; | 2 | $lite_text_color: #666; |
3 | -$link_color:#FFF; | 3 | +$link_color:#111; |
4 | $active_link_color:#2FA0BB; | 4 | $active_link_color:#2FA0BB; |
5 | $active_bg_color:#79C3E0; | 5 | $active_bg_color:#79C3E0; |
6 | $active_bd_color: #2FA0BB; | 6 | $active_bd_color: #2FA0BB; |
7 | -$border_color:#FFF; | 7 | +$border_color:#CCC; |
8 | +$lite_border_color:#EEE; | ||
8 | $app_width:980px; | 9 | $app_width:980px; |
9 | $app_padding:20px; | 10 | $app_padding:20px; |
10 | $bg_color: #FFF; | 11 | $bg_color: #FFF; |
@@ -95,6 +96,9 @@ body.collapsed { | @@ -95,6 +96,9 @@ body.collapsed { | ||
95 | } | 96 | } |
96 | } | 97 | } |
97 | 98 | ||
99 | +a { | ||
100 | + color: $link_color; | ||
101 | +} | ||
98 | 102 | ||
99 | @import "style.scss"; | 103 | @import "style.scss"; |
100 | @import "projects.css.scss"; | 104 | @import "projects.css.scss"; |
@@ -108,3 +112,4 @@ body.collapsed { | @@ -108,3 +112,4 @@ body.collapsed { | ||
108 | 112 | ||
109 | @import "top_panel.scss"; | 113 | @import "top_panel.scss"; |
110 | @import "dashboard.scss"; | 114 | @import "dashboard.scss"; |
115 | +@import "tree.scss"; |
app/assets/stylesheets/dashboard.scss
@@ -3,24 +3,28 @@ body.dashboard-page header{margin-bottom: 0} | @@ -3,24 +3,28 @@ body.dashboard-page header{margin-bottom: 0} | ||
3 | body.dashboard-page .news-feed{margin-left: 285px; min-height: 600px; margin-top: 20px; margin-right:2px; padding:20px;} | 3 | body.dashboard-page .news-feed{margin-left: 285px; min-height: 600px; margin-top: 20px; margin-right:2px; padding:20px;} |
4 | body.dashboard-page .dashboard-content{ position: relative; float: left; width: 100%; height: 100%; } | 4 | body.dashboard-page .dashboard-content{ position: relative; float: left; width: 100%; height: 100%; } |
5 | body.dashboard-page .news-feed h2{float: left;} | 5 | body.dashboard-page .news-feed h2{float: left;} |
6 | -body.dashboard-page aside{ min-height: 820px; position: relative; top: 0; bottom: 0; right: 0; width: 260px; float: left; border-right: 1px solid #ccc; padding:20px; padding-right:0; } | ||
7 | -body.dashboard-page aside h4{margin: 0; border-bottom: 1px solid #ccc; padding: 20px 20px 20px 0px; font-size: 11px; font-weight: bold; text-transform: uppercase;} | ||
8 | -body.dashboard-page aside h4 a.button-small{float: right; text-transform: none; border-radius: 4px; margin-right: 2%; margin-top: -4px; display: block;} | ||
9 | -body.dashboard-page aside .project-list {list-style: none; margin: 0; padding: 0;} | ||
10 | -body.dashboard-page aside .project-list li a {background: white; color: #{$blue_link}; display: block; border-bottom: 1px solid #eee; padding: 14px 6% 14px 0px;} | ||
11 | -//body.dashboard-page aside .project-list li a:hover {background: #f1f1f1} | ||
12 | -//body.dashboard-page aside .project-list li a:hover span.arrow{background-color: #E3E5EA;} | ||
13 | -body.dashboard-page aside .project-list li a span.project-name{font-size: 14px; display: block; margin-bottom: 8px} | ||
14 | -body.dashboard-page aside .project-list li a span.time{color: #666; font-weight: normal; font-size: 11px} | ||
15 | -body.dashboard-page aside .project-list li a span.arrow{float: right; background: #E3E5EA; padding: 10px; border-radius: 5px; margin-top: 2px; text-shadow: none; color: #999} | ||
16 | -body.dashboard-page .news-feed .project-updates {margin-bottom: 20px; display: block; width: 100%;} | ||
17 | -body.dashboard-page .news-feed .project-updates .data{ padding: 0} | ||
18 | -body.dashboard-page .news-feed .project-updates a.project-update {padding: 10px; overflow: hidden; display: block;} | ||
19 | -body.dashboard-page .news-feed .project-updates a.project-update:last-child{border-bottom: 0} | ||
20 | -body.dashboard-page .news-feed .project-updates a.project-update img{float: left; margin-right: 10px;} | ||
21 | -body.dashboard-page .news-feed .project-updates a.project-update span.update-title, .dashboard-page .news-feed .project-updates li a span.update-author{display: block;} | ||
22 | -body.dashboard-page .news-feed .project-updates a.project-update span.update-title{margin-bottom: 10px} | ||
23 | -body.dashboard-page .news-feed .project-updates a.project-update span.update-author{color: #999; font-weight: normal; font-style: italic;} | ||
24 | -body.dashboard-page .news-feed .project-updates a.project-update span.update-author strong{font-weight: bold; font-style: normal;} | 6 | + |
7 | +body.dashboard-page aside{ | ||
8 | + min-height: 820px; position: relative; top: 0; bottom: 0; right: 0; width: 260px; float: left; border-right: 1px solid $border_color; padding:20px; padding-right:0; | ||
9 | + h4{margin: 0; border-bottom: 1px solid #ccc; padding: 20px 20px 20px 0px; font-size: 11px; font-weight: bold; text-transform: uppercase;} | ||
10 | + h4 a.button-small{float: right; text-transform: none; border-radius: 4px; margin-right: 2%; margin-top: -4px; display: block;} | ||
11 | + .project-list {list-style: none; margin: 0; padding: 0;} | ||
12 | + .project-list li a {background: white; color: #{$blue_link}; display: block; border-bottom: 1px solid $lite_border_color; padding: 14px 6% 14px 0px;} | ||
13 | + .project-list li a span.project-name{font-size: 14px; display: block; margin-bottom: 8px} | ||
14 | + .project-list li a span.time{color: #666; font-weight: normal; font-size: 11px} | ||
15 | + .project-list li a span.arrow{float: right; background: #E3E5EA; padding: 10px; border-radius: 5px; margin-top: 2px; text-shadow: none; color: #999} | ||
16 | +} | ||
17 | + | ||
18 | +body.dashboard-page .news-feed .project-updates { | ||
19 | + margin-bottom: 20px; display: block; width: 100%; | ||
20 | + .data{ padding: 0} | ||
21 | + a.project-update {padding: 10px; overflow: hidden; display: block;} | ||
22 | + a.project-update:last-child{border-bottom: 0} | ||
23 | + a.project-update img{float: left; margin-right: 10px;} | ||
24 | + a.project-update span.update-title, .dashboard-page .news-feed .project-updates li a span.update-author{display: block;} | ||
25 | + a.project-update span.update-title{margin-bottom: 10px} | ||
26 | + a.project-update span.update-author{color: #999; font-weight: normal; font-style: italic;} | ||
27 | + a.project-update span.update-author strong{font-weight: bold; font-style: normal;} | ||
28 | +} | ||
25 | /* eo Dashboard Page */ | 29 | /* eo Dashboard Page */ |
26 | 30 |
app/assets/stylesheets/issues.css.scss
app/assets/stylesheets/projects.css.scss
@@ -26,7 +26,7 @@ body.project-page .project-sidebar { | @@ -26,7 +26,7 @@ body.project-page .project-sidebar { | ||
26 | padding: $app_padding; | 26 | padding: $app_padding; |
27 | padding-right:0px; | 27 | padding-right:0px; |
28 | margin: 0; | 28 | margin: 0; |
29 | - border-right: 1px solid #ddd; | 29 | + border-right: 1px solid $border_color; |
30 | } | 30 | } |
31 | 31 | ||
32 | body.projects-page input.text.git-url { font-size: 12px; border-radius: 5px; color: #666; box-shadow: 0 1px 2px rgba(0,0,0,.2) inset; padding: 8px 0 8px 30px; margin-bottom: 20px; background: white url('images.png') no-repeat 8px -40px; width: 136px} | 32 | body.projects-page input.text.git-url { font-size: 12px; border-radius: 5px; color: #666; box-shadow: 0 1px 2px rgba(0,0,0,.2) inset; padding: 8px 0 8px 30px; margin-bottom: 20px; background: white url('images.png') no-repeat 8px -40px; width: 136px} |
@@ -95,90 +95,7 @@ table.round-borders { | @@ -95,90 +95,7 @@ table.round-borders { | ||
95 | text-align: left; | 95 | text-align: left; |
96 | } | 96 | } |
97 | 97 | ||
98 | -a { | ||
99 | - color: #111; | ||
100 | -} | ||
101 | 98 | ||
102 | -/** FILE CONTENT VIEW **/ | ||
103 | -.view_file_content{ | ||
104 | - .old_line, .new_line { | ||
105 | - background:#ECECEC; | ||
106 | - color:#777; | ||
107 | - width:15px; | ||
108 | - float:left; | ||
109 | - padding: 0px 10px; | ||
110 | - border-right: 1px solid #ccc; | ||
111 | - } | ||
112 | - .old_line{ | ||
113 | - display:none; | ||
114 | - } | ||
115 | -} | ||
116 | - | ||
117 | -.view_file .view_file_header, | ||
118 | -.diff_file .diff_file_header { | ||
119 | - background-image: -webkit-gradient(linear, 0 0, 0 26, color-stop(0.076, #fefefe), to(#F6F7F8)); | ||
120 | - background-image: -webkit-linear-gradient(#fefefe 7.6%, #F6F7F8); | ||
121 | - background-image: -moz-linear-gradient(#fefefe 7.6%, #F6F7F8); | ||
122 | - background-image: -o-linear-gradient(#fefefe 7.6%, #F6F7F8); | ||
123 | - margin: 0; | ||
124 | - font-weight: normal; | ||
125 | - font-weight: bold; | ||
126 | - text-align: left; | ||
127 | - color: #666; | ||
128 | - border-bottom: 1px solid #DEE2E3; | ||
129 | - padding: 7px 10px; | ||
130 | -} | ||
131 | - | ||
132 | -.view_file { | ||
133 | - border:1px solid #CCC; | ||
134 | - margin-bottom:1em; | ||
135 | - | ||
136 | - .view_file_content { | ||
137 | - background:#fff; | ||
138 | - color:#514721; | ||
139 | - font-size: 11px; | ||
140 | - } | ||
141 | - .view_file_content_image { | ||
142 | - background:#eee; | ||
143 | - text-align:center; | ||
144 | - img { | ||
145 | - padding:100px; | ||
146 | - max-width:300px; | ||
147 | - } | ||
148 | - } | ||
149 | -} | ||
150 | - | ||
151 | -td.code { | ||
152 | - width: 100%; | ||
153 | - .highlight { | ||
154 | - margin-left: 55px; | ||
155 | - overflow:auto; | ||
156 | - overflow-y:hidden; | ||
157 | - border-left: 1px solid #DEE2E3; | ||
158 | - background: white; | ||
159 | - } | ||
160 | -} | ||
161 | -.highlight pre { | ||
162 | - white-space: pre; | ||
163 | - word-wrap:normal; | ||
164 | -} | ||
165 | - | ||
166 | -table.highlighttable { | ||
167 | - border: none; | ||
168 | - background: #F7F7F7; | ||
169 | -} | ||
170 | -body.project-page table.highlighttable td { border: none } | ||
171 | -table.highlighttable tr:hover { background:none;} | ||
172 | - | ||
173 | -table.highlighttable pre{ | ||
174 | - line-height:16px !important; | ||
175 | - font-size:12px !important; | ||
176 | -} | ||
177 | - | ||
178 | -table.highlighttable .linenodiv pre { | ||
179 | - text-align: right; | ||
180 | - padding-right: 4px; | ||
181 | -} | ||
182 | 99 | ||
183 | /** PROJECTS **/ | 100 | /** PROJECTS **/ |
184 | input.ssh_project_url { | 101 | input.ssh_project_url { |
@@ -204,68 +121,6 @@ input.ssh_project_url { | @@ -204,68 +121,6 @@ input.ssh_project_url { | ||
204 | clear: both; | 121 | clear: both; |
205 | } | 122 | } |
206 | 123 | ||
207 | -/** FORM INPUTS **/ | ||
208 | -.new_merge_request, | ||
209 | -.edit_merge_request, | ||
210 | -.user_new, | ||
211 | -.new_key, | ||
212 | -.new_issue, | ||
213 | -.new_note, | ||
214 | -.edit_user, | ||
215 | -.edit_issue, | ||
216 | -.new_project, | ||
217 | -.new_snippet, | ||
218 | -.edit_snippet, | ||
219 | -.edit_project { | ||
220 | - input[type='text'], | ||
221 | - input[type='email'], | ||
222 | - input[type='password'], | ||
223 | - textarea { | ||
224 | - width:400px; | ||
225 | - padding:8px; | ||
226 | - font-size:14px; | ||
227 | - @include round-borders-all(4px); | ||
228 | - } | ||
229 | -} | ||
230 | - | ||
231 | -.text_field { | ||
232 | - width:400px; | ||
233 | - padding:8px; | ||
234 | - font-size:14px; | ||
235 | - @include round-borders-all(4px); | ||
236 | -} | ||
237 | - | ||
238 | -.input_button { | ||
239 | - padding:8px; | ||
240 | - font-size:14px; | ||
241 | - cursor:pointer; | ||
242 | - background-color: #F5F5F5; | ||
243 | - border-color: #EEEEEE #DEDEDE #DEDEDE #EEEEEE; | ||
244 | - border-right: 1px solid #DEDEDE; | ||
245 | - border-style: solid; | ||
246 | - border-width: 1px; | ||
247 | -} | ||
248 | - | ||
249 | -/** FLASH **/ | ||
250 | -#flash_container { | ||
251 | - height:45px; | ||
252 | - position:fixed; | ||
253 | - z-index:10001; | ||
254 | - top:0px; | ||
255 | - width:100%; | ||
256 | - margin-bottom:15px; | ||
257 | - overflow:hidden; | ||
258 | - background:white; | ||
259 | - cursor:pointer; | ||
260 | - border-bottom:1px solid #777; | ||
261 | - | ||
262 | - h4 { | ||
263 | - color:#444; | ||
264 | - font-size:22px; | ||
265 | - padding-top:5px; | ||
266 | - margin:2px; | ||
267 | - } | ||
268 | -} | ||
269 | 124 | ||
270 | /** Buttons **/ | 125 | /** Buttons **/ |
271 | .lbutton, | 126 | .lbutton, |
@@ -434,7 +289,8 @@ body.project-page table .commit { | @@ -434,7 +289,8 @@ body.project-page table .commit { | ||
434 | } | 289 | } |
435 | 290 | ||
436 | #holder { | 291 | #holder { |
437 | - border: solid 1px #999; | 292 | + background:#FAFAFA; |
293 | + border: 1px solid #EEE; | ||
438 | cursor: move; | 294 | cursor: move; |
439 | height: 70%; | 295 | height: 70%; |
440 | overflow: hidden; | 296 | overflow: hidden; |
@@ -673,20 +529,6 @@ h4.dash-tabs { | @@ -673,20 +529,6 @@ h4.dash-tabs { | ||
673 | color: white; | 529 | color: white; |
674 | } | 530 | } |
675 | 531 | ||
676 | -.rss-icon { | ||
677 | - margin:0 15px; | ||
678 | - padding:5px; | ||
679 | - border:1px solid #ccc; | ||
680 | - border-radius:3px; | ||
681 | - float:left; | ||
682 | -} | ||
683 | - | ||
684 | -body.project-page h2.icon.loading { | ||
685 | - span { | ||
686 | - background-position: 0px 0px; | ||
687 | - background: url("ajax-loader-tree.gif") no-repeat; | ||
688 | - } | ||
689 | -} | ||
690 | 532 | ||
691 | .dark_scheme_box { | 533 | .dark_scheme_box { |
692 | padding:20px 0; | 534 | padding:20px 0; |
@@ -718,24 +560,6 @@ a.project-update.titled { | @@ -718,24 +560,6 @@ a.project-update.titled { | ||
718 | padding: 6px 12px; | 560 | padding: 6px 12px; |
719 | } | 561 | } |
720 | 562 | ||
721 | -.tree_progress { | ||
722 | - float:left; | ||
723 | - width:16px; | ||
724 | - height:16px; | ||
725 | - margin:6px; | ||
726 | - &.loading { | ||
727 | - background-position: 0px 0px; | ||
728 | - background: url("ajax-loader-facebook.gif") no-repeat; | ||
729 | - } | ||
730 | -} | ||
731 | - | ||
732 | -#tree-breadcrumbs { | ||
733 | - h2 { | ||
734 | - margin:0; | ||
735 | - margin-bottom:20px; | ||
736 | - float:left; | ||
737 | - } | ||
738 | -} | ||
739 | 563 | ||
740 | tr.line_notes_row { | 564 | tr.line_notes_row { |
741 | &:hover { | 565 | &:hover { |
@@ -764,9 +588,3 @@ tr.line_notes_row { | @@ -764,9 +588,3 @@ tr.line_notes_row { | ||
764 | } | 588 | } |
765 | } | 589 | } |
766 | } | 590 | } |
767 | - | ||
768 | - | ||
769 | - | ||
770 | - | ||
771 | - | ||
772 | - |
app/assets/stylesheets/style.scss
@@ -646,12 +646,70 @@ body.projects-page .browse-code{margin-right: 10px} | @@ -646,12 +646,70 @@ body.projects-page .browse-code{margin-right: 10px} | ||
646 | h2, h3 { page-break-after: avoid; } | 646 | h2, h3 { page-break-after: avoid; } |
647 | } | 647 | } |
648 | 648 | ||
649 | -/** | ||
650 | - * author:DZ | ||
651 | - * date: Nov 09 | ||
652 | - * fix different fonts for firefox & webkit | ||
653 | - */ | ||
654 | body, button, input, select, textarea { | 649 | body, button, input, select, textarea { |
655 | font-family: "Helvetica", sans-serif; | 650 | font-family: "Helvetica", sans-serif; |
656 | } | 651 | } |
657 | 652 | ||
653 | +/** FORM INPUTS **/ | ||
654 | +.new_merge_request, | ||
655 | +.edit_merge_request, | ||
656 | +.user_new, | ||
657 | +.new_key, | ||
658 | +.new_issue, | ||
659 | +.new_note, | ||
660 | +.edit_user, | ||
661 | +.edit_issue, | ||
662 | +.new_project, | ||
663 | +.new_snippet, | ||
664 | +.edit_snippet, | ||
665 | +.edit_project { | ||
666 | + input[type='text'], | ||
667 | + input[type='email'], | ||
668 | + input[type='password'], | ||
669 | + textarea { | ||
670 | + width:400px; | ||
671 | + padding:8px; | ||
672 | + font-size:14px; | ||
673 | + @include round-borders-all(4px); | ||
674 | + } | ||
675 | +} | ||
676 | + | ||
677 | +.text_field { | ||
678 | + width:400px; | ||
679 | + padding:8px; | ||
680 | + font-size:14px; | ||
681 | + @include round-borders-all(4px); | ||
682 | +} | ||
683 | + | ||
684 | +.input_button { | ||
685 | + padding:8px; | ||
686 | + font-size:14px; | ||
687 | + cursor:pointer; | ||
688 | + background-color: #F5F5F5; | ||
689 | + border-color: #EEEEEE #DEDEDE #DEDEDE #EEEEEE; | ||
690 | + border-right: 1px solid #DEDEDE; | ||
691 | + border-style: solid; | ||
692 | + border-width: 1px; | ||
693 | +} | ||
694 | + | ||
695 | +/** FLASH **/ | ||
696 | +#flash_container { | ||
697 | + height:45px; | ||
698 | + position:fixed; | ||
699 | + z-index:10001; | ||
700 | + top:0px; | ||
701 | + width:100%; | ||
702 | + margin-bottom:15px; | ||
703 | + overflow:hidden; | ||
704 | + background:white; | ||
705 | + cursor:pointer; | ||
706 | + border-bottom:1px solid #777; | ||
707 | + | ||
708 | + h4 { | ||
709 | + color:#444; | ||
710 | + font-size:22px; | ||
711 | + padding-top:5px; | ||
712 | + margin:2px; | ||
713 | + } | ||
714 | +} | ||
715 | + |
app/assets/stylesheets/top_panel.scss
@@ -0,0 +1,115 @@ | @@ -0,0 +1,115 @@ | ||
1 | +#tree-breadcrumbs { | ||
2 | + div { | ||
3 | + margin:0; | ||
4 | + margin-bottom:20px; | ||
5 | + float:left; | ||
6 | + font-size:14px; | ||
7 | + } | ||
8 | +} | ||
9 | + | ||
10 | +.tree_progress { | ||
11 | + float:left; | ||
12 | + width:16px; | ||
13 | + height:16px; | ||
14 | + margin:2px 6px; | ||
15 | + &.loading { | ||
16 | + background-position: 0px 0px; | ||
17 | + background: url("ajax-loader-facebook.gif") no-repeat; | ||
18 | + } | ||
19 | +} | ||
20 | + | ||
21 | + | ||
22 | +/** FILE CONTENT VIEW **/ | ||
23 | +.view_file_content{ | ||
24 | + .old_line, .new_line { | ||
25 | + background:#ECECEC; | ||
26 | + color:#777; | ||
27 | + width:15px; | ||
28 | + float:left; | ||
29 | + padding: 0px 10px; | ||
30 | + border-right: 1px solid #ccc; | ||
31 | + } | ||
32 | + .old_line{ | ||
33 | + display:none; | ||
34 | + } | ||
35 | +} | ||
36 | + | ||
37 | +.view_file .view_file_header, | ||
38 | +.diff_file .diff_file_header { | ||
39 | + background-image: -webkit-gradient(linear, 0 0, 0 26, color-stop(0.076, #fefefe), to(#F6F7F8)); | ||
40 | + background-image: -webkit-linear-gradient(#fefefe 7.6%, #F6F7F8); | ||
41 | + background-image: -moz-linear-gradient(#fefefe 7.6%, #F6F7F8); | ||
42 | + background-image: -o-linear-gradient(#fefefe 7.6%, #F6F7F8); | ||
43 | + margin: 0; | ||
44 | + font-weight: normal; | ||
45 | + font-weight: bold; | ||
46 | + text-align: left; | ||
47 | + color: #666; | ||
48 | + border-bottom: 1px solid #DEE2E3; | ||
49 | + padding: 7px 10px; | ||
50 | + | ||
51 | + .mode_text, | ||
52 | + .file_icon { | ||
53 | + margin-right:15px; | ||
54 | + padding-right:15px; | ||
55 | + border-right:1px solid $lite_border_color; | ||
56 | + float:left; | ||
57 | + color:#aaa; | ||
58 | + } | ||
59 | + | ||
60 | + .file_icon { | ||
61 | + padding-left:15px; | ||
62 | + } | ||
63 | +} | ||
64 | + | ||
65 | +.view_file { | ||
66 | + border:1px solid #CCC; | ||
67 | + margin-bottom:1em; | ||
68 | + | ||
69 | + .view_file_content { | ||
70 | + background:#fff; | ||
71 | + color:#514721; | ||
72 | + font-size: 11px; | ||
73 | + } | ||
74 | + .view_file_content_image { | ||
75 | + background:#eee; | ||
76 | + text-align:center; | ||
77 | + img { | ||
78 | + padding:100px; | ||
79 | + max-width:300px; | ||
80 | + } | ||
81 | + } | ||
82 | +} | ||
83 | + | ||
84 | +td.code { | ||
85 | + width: 100%; | ||
86 | + .highlight { | ||
87 | + margin-left: 55px; | ||
88 | + overflow:auto; | ||
89 | + overflow-y:hidden; | ||
90 | + border-left: 1px solid #DEE2E3; | ||
91 | + background: white; | ||
92 | + } | ||
93 | +} | ||
94 | +.highlight pre { | ||
95 | + white-space: pre; | ||
96 | + word-wrap:normal; | ||
97 | +} | ||
98 | + | ||
99 | +table.highlighttable { | ||
100 | + border: none; | ||
101 | + background: #F7F7F7; | ||
102 | +} | ||
103 | +body.project-page table.highlighttable td { border: none } | ||
104 | +table.highlighttable tr:hover { background:none;} | ||
105 | + | ||
106 | +table.highlighttable pre{ | ||
107 | + line-height:16px !important; | ||
108 | + font-size:12px !important; | ||
109 | +} | ||
110 | + | ||
111 | +table.highlighttable .linenodiv pre { | ||
112 | + text-align: right; | ||
113 | + padding-right: 4px; | ||
114 | + color:#888; | ||
115 | +} |
app/decorators/tree_decorator.rb
@@ -6,7 +6,7 @@ class TreeDecorator < ApplicationDecorator | @@ -6,7 +6,7 @@ class TreeDecorator < ApplicationDecorator | ||
6 | part_path = "" | 6 | part_path = "" |
7 | parts = path.split("\/") | 7 | parts = path.split("\/") |
8 | 8 | ||
9 | - parts = parts[0...-1] if is_blob? | 9 | + #parts = parts[0...-1] if is_blob? |
10 | 10 | ||
11 | yield(h.link_to("..", "#", :remote => :true)) if parts.count > max_links | 11 | yield(h.link_to("..", "#", :remote => :true)) if parts.count > max_links |
12 | 12 |
app/views/issues/index.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 | ||
5 | + | ||
6 | + -#= link_to project_issues_path(@project), :class => "tab" do | ||
7 | + %span | ||
8 | + Milestones | ||
9 | + | ||
10 | + - if current_page?(project_issues_path(@project)) | ||
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 | + = image_tag "add_new.png", :width => 14 | ||
14 | + | ||
15 | + | ||
1 | - if current_user.private_token | 16 | - if current_user.private_token |
2 | = content_for :rss_icon do | 17 | = content_for :rss_icon do |
3 | .rss-icon | 18 | .rss-icon |
@@ -5,32 +20,29 @@ | @@ -5,32 +20,29 @@ | ||
5 | = image_tag "rss_icon_gray.png", :width => 16, :title => "feed" | 20 | = image_tag "rss_icon_gray.png", :width => 16, :title => "feed" |
6 | 21 | ||
7 | %div#issues-table-holder | 22 | %div#issues-table-holder |
8 | - %table.round-borders#issues-table | ||
9 | - %thead | ||
10 | - %th | ||
11 | - .top_panel_issues | ||
12 | - - if can? current_user, :write_issue, @project | ||
13 | - %div{:class => "left", :style => "margin-right: 10px;" } | ||
14 | - = link_to 'New Issue', new_project_issue_path(@project), :remote => true, :class => "grey-button", :style => "margin-top:5px;" | ||
15 | - = form_tag search_project_issues_path(@project), :method => :get, :remote => true, :class => :left, :id => "issue_search_form" do | ||
16 | - = hidden_field_tag :project_id, @project.id, { :id => 'project_id' } | ||
17 | - = search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' } | 23 | + .top_panel_issues |
24 | + = form_tag search_project_issues_path(@project), :method => :get, :remote => true, :class => :left, :id => "issue_search_form" do | ||
25 | + = hidden_field_tag :project_id, @project.id, { :id => 'project_id' } | ||
26 | + = search_field_tag :issue_search, nil, { :placeholder => 'Search', :class => 'issue_search' } | ||
18 | 27 | ||
19 | - .right.issues_filter | ||
20 | - = form_tag project_issues_path(@project), :method => :get do | ||
21 | - .left | ||
22 | - = radio_button_tag :f, 0, (params[:f] || "0") == "0", :onclick => "setIssueFilter(this.form, 0)", :id => "open_issues", :class => "status" | ||
23 | - = label_tag "open_issues","Open" | ||
24 | - .left | ||
25 | - = radio_button_tag :f, 2, params[:f] == "2", :onclick => "setIssueFilter(this.form, 2)", :id => "closed_issues", :class => "status" | ||
26 | - = label_tag "closed_issues","Closed" | ||
27 | - .left | ||
28 | - = radio_button_tag :f, 3, params[:f] == "3", :onclick => "setIssueFilter(this.form, 3)", :id => "my_issues", :class => "status" | ||
29 | - = label_tag "my_issues","To Me" | ||
30 | - .left | ||
31 | - = radio_button_tag :f, 1, params[:f] == "1", :onclick => "setIssueFilter(this.form, 1)", :id => "all_issues", :class => "status" | ||
32 | - = label_tag "all_issues","All" | 28 | + .right.issues_filter |
29 | + = form_tag project_issues_path(@project), :method => :get do | ||
30 | + .left | ||
31 | + = radio_button_tag :f, 0, (params[:f] || "0") == "0", :onclick => "setIssueFilter(this.form, 0)", :id => "open_issues", :class => "status" | ||
32 | + = label_tag "open_issues","Open" | ||
33 | + .left | ||
34 | + = radio_button_tag :f, 2, params[:f] == "2", :onclick => "setIssueFilter(this.form, 2)", :id => "closed_issues", :class => "status" | ||
35 | + = label_tag "closed_issues","Closed" | ||
36 | + .left | ||
37 | + = radio_button_tag :f, 3, params[:f] == "3", :onclick => "setIssueFilter(this.form, 3)", :id => "my_issues", :class => "status" | ||
38 | + = label_tag "my_issues","To Me" | ||
39 | + .left | ||
40 | + = radio_button_tag :f, 1, params[:f] == "1", :onclick => "setIssueFilter(this.form, 1)", :id => "all_issues", :class => "status" | ||
41 | + = label_tag "all_issues","All" | ||
33 | 42 | ||
43 | + .clear | ||
44 | + %hr | ||
45 | + %table.no-borders#issues-table | ||
34 | = render "issues" | 46 | = render "issues" |
35 | %br | 47 | %br |
36 | :javascript | 48 | :javascript |
app/views/layouts/_head_panel.html.haml
@@ -9,8 +9,6 @@ | @@ -9,8 +9,6 @@ | ||
9 | = link_to admin_root_path, :class => "admin", :title => "Admin" do | 9 | = link_to admin_root_path, :class => "admin", :title => "Admin" do |
10 | = image_tag "Gear-UI.PNG", :width => 20 | 10 | = image_tag "Gear-UI.PNG", :width => 20 |
11 | 11 | ||
12 | - | ||
13 | - | ||
14 | - if project_layout | 12 | - if project_layout |
15 | .project_name | 13 | .project_name |
16 | = truncate @project.name, :length => 28 | 14 | = truncate @project.name, :length => 28 |
@@ -24,7 +22,7 @@ | @@ -24,7 +22,7 @@ | ||
24 | - elsif profile_layout | 22 | - elsif profile_layout |
25 | .dashboard_links | 23 | .dashboard_links |
26 | = link_to "Activities", dashboard_path, :class => "#{"active" if current_page?(dashboard_path) || current_page?(root_path) }" | 24 | = link_to "Activities", dashboard_path, :class => "#{"active" if current_page?(dashboard_path) || current_page?(root_path) }" |
27 | - = link_to "Projects", projects_path, :class => "#{"active" if current_page?(projects_path)}" | 25 | + -#= link_to "Projects", projects_path, :class => "#{"active" if current_page?(projects_path)}" |
28 | = link_to "Issues", dashboard_issues_path, :class => "#{"active" if current_page?(dashboard_issues_path)}", :id => "issues_slide" | 26 | = link_to "Issues", dashboard_issues_path, :class => "#{"active" if current_page?(dashboard_issues_path)}", :id => "issues_slide" |
29 | = link_to "Merge Requests", dashboard_merge_requests_path, :class => "#{"active" if current_page?(dashboard_merge_requests_path)}", :id => "merge_requests_slide" | 27 | = link_to "Merge Requests", dashboard_merge_requests_path, :class => "#{"active" if current_page?(dashboard_merge_requests_path)}", :id => "merge_requests_slide" |
30 | .search | 28 | .search |
app/views/layouts/project.html.haml
@@ -32,16 +32,12 @@ | @@ -32,16 +32,12 @@ | ||
32 | = link_to "Network", graph_project_path(@project), :class => current_page?(:controller => "projects", :action => "graph", :id => @project) ? "current" : nil | 32 | = link_to "Network", graph_project_path(@project), :class => current_page?(:controller => "projects", :action => "graph", :id => @project) ? "current" : nil |
33 | = link_to project_issues_filter_path(@project), :class => (controller.controller_name == "issues") ? "current" : nil do | 33 | = link_to project_issues_filter_path(@project), :class => (controller.controller_name == "issues") ? "current" : nil do |
34 | Issues | 34 | Issues |
35 | - -#- if @project.issues.open_for(current_user).count > 0 | ||
36 | - %span{ :class => "number" }= @project.issues.open_for(current_user).count | ||
37 | = link_to wall_project_path(@project), :class => current_page?(:controller => "projects", :action => "wall", :id => @project) ? "current" : nil do | 35 | = link_to wall_project_path(@project), :class => current_page?(:controller => "projects", :action => "wall", :id => @project) ? "current" : nil do |
38 | Wall | 36 | Wall |
39 | - if @project.common_notes.today.count > 0 | 37 | - if @project.common_notes.today.count > 0 |
40 | %span{ :class => "number" }= @project.common_notes.today.count | 38 | %span{ :class => "number" }= @project.common_notes.today.count |
41 | = link_to project_merge_requests_path(@project), :class => (controller.controller_name == "merge_requests") ? "current" : nil do | 39 | = link_to project_merge_requests_path(@project), :class => (controller.controller_name == "merge_requests") ? "current" : nil do |
42 | Requests | 40 | Requests |
43 | - -#- if @project.merge_requests.opened.count > 0 | ||
44 | - %span{ :class => "number" }= @project.merge_requests.opened.count | ||
45 | 41 | ||
46 | 42 | ||
47 | 43 |
app/views/projects/_side_panel.html.haml
@@ -1,14 +0,0 @@ | @@ -1,14 +0,0 @@ | ||
1 | -%h3.notice{:style => "width:235px;"} | ||
2 | - = @project.name | ||
3 | -%p | ||
4 | - %b Path: | ||
5 | - = @project.path | ||
6 | -%p | ||
7 | - %b Description: | ||
8 | - = truncate @project.description | ||
9 | -.left.append-bottom | ||
10 | - = link_to "Tree", tree_project_path(@project), :class => "button" | ||
11 | - = link_to "Commits", project_commits_path(@project), :class => "button" | ||
12 | - = link_to 'Team', team_project_path(@project), :class => "button" | ||
13 | - - if can? current_user, :admin_project, @project | ||
14 | - = link_to 'Edit', edit_project_path(@project), :class => "button positive" |
app/views/projects/graph.html.haml
app/views/refs/_tree.html.haml
1 | #tree-breadcrumbs | 1 | #tree-breadcrumbs |
2 | - %h2 | 2 | + %div |
3 | = link_to tree_project_ref_path(@project, @ref, :path => nil), :remote => true do | 3 | = link_to tree_project_ref_path(@project, @ref, :path => nil), :remote => true do |
4 | = @project.code | 4 | = @project.code |
5 | - - tree.breadcrumbs(4) do |link| | 5 | + - tree.breadcrumbs(6) do |link| |
6 | \/ | 6 | \/ |
7 | = link | 7 | = link |
8 | | 8 | |
@@ -19,7 +19,7 @@ | @@ -19,7 +19,7 @@ | ||
19 | %th Last Update | 19 | %th Last Update |
20 | %th | 20 | %th |
21 | Last commit | 21 | Last commit |
22 | - = link_to "history", tree.history_path, :class => "right" | 22 | + = link_to "History", tree.history_path, :class => "right" |
23 | 23 | ||
24 | - if tree.up_dir? | 24 | - if tree.up_dir? |
25 | %tr{ :class => "tree-item", :url => tree.up_dir_path } | 25 | %tr{ :class => "tree-item", :url => tree.up_dir_path } |
app/views/refs/_tree_file.html.haml
@@ -2,10 +2,11 @@ | @@ -2,10 +2,11 @@ | ||
2 | .view_file | 2 | .view_file |
3 | .view_file_header | 3 | .view_file_header |
4 | %strong | 4 | %strong |
5 | - = name | 5 | + %span.file_icon= image_tag "txt.png" |
6 | + %span.mode_text= file.mode | ||
7 | + %span.file_name= name | ||
6 | = link_to "raw", blob_project_ref_path(@project, @ref, :path => params[:path] ), :class => "right", :target => "_blank" | 8 | = link_to "raw", blob_project_ref_path(@project, @ref, :path => params[:path] ), :class => "right", :target => "_blank" |
7 | = link_to "history", project_commits_path(@project, :path => params[:path], :ref => @ref ), :class => "right", :style => "margin-right:10px;" | 9 | = link_to "history", project_commits_path(@project, :path => params[:path], :ref => @ref ), :class => "right", :style => "margin-right:10px;" |
8 | - -#= switch_colorscheme_link(:class => "right", :style => "margin-right:10px;color:orange") | ||
9 | %br/ | 10 | %br/ |
10 | - if file.text? | 11 | - if file.text? |
11 | .view_file_content | 12 | .view_file_content |
app/views/refs/_tree_item.html.haml
@@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
8 | - else | 8 | - else |
9 | = image_tag "dir.png" | 9 | = image_tag "dir.png" |
10 | = link_to truncate(content.name, :length => 40), tree_file_project_ref_path(@project, @ref || @commit.id, file), :remote => :true | 10 | = link_to truncate(content.name, :length => 40), tree_file_project_ref_path(@project, @ref || @commit.id, file), :remote => :true |
11 | - %td | 11 | + %td.cgray |
12 | = time_ago_in_words(content_commit.committed_date) | 12 | = time_ago_in_words(content_commit.committed_date) |
13 | ago | 13 | ago |
14 | %td.commit | 14 | %td.commit |
spec/support/shared_examples.rb
@@ -11,7 +11,7 @@ shared_examples_for :tree_view do | @@ -11,7 +11,7 @@ shared_examples_for :tree_view do | ||
11 | 11 | ||
12 | it "should have Tree View of project" do | 12 | it "should have Tree View of project" do |
13 | should have_content("app") | 13 | should have_content("app") |
14 | - should have_content("history") | 14 | + should have_content("History") |
15 | should have_content("Gemfile") | 15 | should have_content("Gemfile") |
16 | end | 16 | end |
17 | end | 17 | end |