Commit 809413d9e758547241530001efa35dececfcf787

Authored by Dmitriy Zaporozhets
1 parent ffc6ab41

minimalistic UI: issues index, css refactoring

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
@@ -72,3 +72,13 @@ body.project-page .edit_snippet table td @@ -72,3 +72,13 @@ body.project-page .edit_snippet table td
72 } 72 }
73 } 73 }
74 74
  75 +
  76 +#issues-table {
  77 + tr {
  78 + border-top: 1px solid $lite_border_color;
  79 + &:first-child {
  80 + border:none;
  81 + }
  82 + }
  83 +
  84 +}
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
@@ -144,3 +144,11 @@ body header { @@ -144,3 +144,11 @@ body header {
144 } 144 }
145 } 145 }
146 } 146 }
  147 +
  148 +.rss-icon {
  149 + margin:0 15px;
  150 + padding:5px;
  151 + border:1px solid #ccc;
  152 + border-radius:3px;
  153 + float:left;
  154 +}
app/assets/stylesheets/tree.scss 0 → 100644
@@ -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
1 -%h2.icon  
2 - %span>  
3 - Network Graph  
4 -.clear 1 +.top-tabs
  2 + = link_to graph_project_path(@project), :class => "tab #{'active' if current_page?(graph_project_path(@project)) }" do
  3 + %span
  4 + Network Graph
5 #holder.graph 5 #holder.graph
6 6
7 :javascript 7 :javascript
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