Show More
@@ -960,9 +960,6 b' label {' | |||||
960 | } |
|
960 | } | |
961 |
|
961 | |||
962 |
|
962 | |||
963 | #graph_nodes { |
|
|||
964 | padding-top: 43px; |
|
|||
965 | } |
|
|||
966 |
|
963 | |||
967 | #graph_content{ |
|
964 | #graph_content{ | |
968 |
|
965 | |||
@@ -995,13 +992,12 b' label {' | |||||
995 | } |
|
992 | } | |
996 |
|
993 | |||
997 | .graph-col-wrapper { |
|
994 | .graph-col-wrapper { | |
998 | padding-left: 110px; |
|
|||
999 |
|
995 | |||
1000 | #graph_nodes { |
|
996 | #graph_nodes { | |
1001 | width: 100px; |
|
997 | width: 100px; | |
1002 | margin-left: -110px; |
|
998 | position: absolute; | |
1003 |
f |
|
999 | left: 120px; | |
1004 |
|
|
1000 | z-index: -1; | |
1005 | } |
|
1001 | } | |
1006 | } |
|
1002 | } | |
1007 |
|
1003 | |||
@@ -1018,6 +1014,16 b' label {' | |||||
1018 | } |
|
1014 | } | |
1019 | } |
|
1015 | } | |
1020 |
|
1016 | |||
|
1017 | .obsolete-toggle { | |||
|
1018 | line-height: 30px; | |||
|
1019 | margin-left: -15px; | |||
|
1020 | } | |||
|
1021 | ||||
|
1022 | #rev_range_container, #rev_range_clear, #rev_range_more { | |||
|
1023 | margin-top: -5px; | |||
|
1024 | margin-bottom: -5px; | |||
|
1025 | } | |||
|
1026 | ||||
1021 | #filter_changelog { |
|
1027 | #filter_changelog { | |
1022 | float: left; |
|
1028 | float: left; | |
1023 | } |
|
1029 | } |
@@ -621,14 +621,6 b' ul#context-pages {' | |||||
621 | font-family: @text-regular; |
|
621 | font-family: @text-regular; | |
622 | color: @grey1; |
|
622 | color: @grey1; | |
623 |
|
623 | |||
624 | &#graph_nodes { |
|
|||
625 | clear:both; |
|
|||
626 | width: auto; |
|
|||
627 | margin-left: -100px; |
|
|||
628 | padding: 0; |
|
|||
629 | border: none; |
|
|||
630 | } |
|
|||
631 |
|
||||
632 | .nav-pills { |
|
624 | .nav-pills { | |
633 | margin: 0; |
|
625 | margin: 0; | |
634 | } |
|
626 | } |
@@ -118,6 +118,10 b' table.dataTable {' | |||||
118 | } |
|
118 | } | |
119 | } |
|
119 | } | |
120 |
|
120 | |||
|
121 | &.td-graphbox { | |||
|
122 | width: 140px; | |||
|
123 | } | |||
|
124 | ||||
121 | &.td-time { |
|
125 | &.td-time { | |
122 | width: 160px; |
|
126 | width: 160px; | |
123 | white-space: nowrap; |
|
127 | white-space: nowrap; |
@@ -46,6 +46,8 b' var CommitsController = function () {' | |||||
46 | self.$graphCanvas.html(''); |
|
46 | self.$graphCanvas.html(''); | |
47 |
|
47 | |||
48 | var edgeData = $("[data-graph]").data('graph') || this.$graphCanvas.data('graph') || []; |
|
48 | var edgeData = $("[data-graph]").data('graph') || this.$graphCanvas.data('graph') || []; | |
|
49 | var prev_link = $('.load-more-commits').find('.prev-commits').get(0); | |||
|
50 | var next_link = $('.load-more-commits').find('.next-commits').get(0); | |||
49 |
|
51 | |||
50 | // Determine max number of edges per row in graph |
|
52 | // Determine max number of edges per row in graph | |
51 | var edgeCount = 1; |
|
53 | var edgeCount = 1; | |
@@ -57,10 +59,20 b' var CommitsController = function () {' | |||||
57 | }); |
|
59 | }); | |
58 | }); |
|
60 | }); | |
59 |
|
61 | |||
|
62 | if (prev_link && next_link) { | |||
|
63 | var graph_padding = -64; | |||
|
64 | } | |||
|
65 | else if (next_link) { | |||
|
66 | var graph_padding = -32; | |||
|
67 | } else { | |||
|
68 | var graph_padding = 0; | |||
|
69 | } | |||
|
70 | ||||
60 | var x_step = Math.min(10, Math.floor(86 / edgeCount)); |
|
71 | var x_step = Math.min(10, Math.floor(86 / edgeCount)); | |
|
72 | var height = $('#changesets').find('.commits-range').height() + graph_padding; | |||
61 | var graph_options = { |
|
73 | var graph_options = { | |
62 | width: 100, |
|
74 | width: 100, | |
63 | height: $('#changesets').find('.commits-range').height(), |
|
75 | height: height, | |
64 | x_step: x_step, |
|
76 | x_step: x_step, | |
65 | y_step: 42, |
|
77 | y_step: 42, | |
66 | dotRadius: 3.5, |
|
78 | dotRadius: 3.5, | |
@@ -85,11 +97,11 b' var CommitsController = function () {' | |||||
85 | this.$graphCanvas.commits(graph_options); |
|
97 | this.$graphCanvas.commits(graph_options); | |
86 |
|
98 | |||
87 | this.setLabelText(edgeData); |
|
99 | this.setLabelText(edgeData); | |
88 | if ($('.load-more-commits').find('.prev-commits').get(0)) { |
|
|||
89 | var padding = 75; |
|
|||
90 |
|
100 | |||
91 | } else { |
|
101 | var padding = 98; | |
92 | var padding = 43; |
|
102 | if (prev_link) { | |
|
103 | padding += 32; | |||
|
104 | ||||
93 | } |
|
105 | } | |
94 | $('#graph_nodes').css({'padding-top': padding}); |
|
106 | $('#graph_nodes').css({'padding-top': padding}); | |
95 | }; |
|
107 | }; |
@@ -29,10 +29,30 b'' | |||||
29 | <%def name="main()"> |
|
29 | <%def name="main()"> | |
30 |
|
30 | |||
31 | <div class="box"> |
|
31 | <div class="box"> | |
|
32 | ||||
32 | <div class="title"> |
|
33 | <div class="title"> | |
|
34 | <div id="filter_changelog"> | |||
|
35 | ${h.hidden('branch_filter')} | |||
|
36 | %if c.selected_name: | |||
|
37 | <div class="btn btn-default" id="clear_filter" > | |||
|
38 | ${_('Clear filter')} | |||
|
39 | </div> | |||
|
40 | %endif | |||
|
41 | </div> | |||
|
42 | <div class="pull-left obsolete-toggle"> | |||
|
43 | % if h.is_hg(c.rhodecode_repo): | |||
|
44 | % if c.show_hidden: | |||
|
45 | <a class="action-link" href="${h.current_route_path(request, evolve=0)}">${_('Hide obsolete/hidden')}</a> | |||
|
46 | % else: | |||
|
47 | <a class="action-link" href="${h.current_route_path(request, evolve=1)}">${_('Show obsolete/hidden')}</a> | |||
|
48 | % endif | |||
|
49 | % else: | |||
|
50 | <span class="action-link disabled">${_('Show hidden')}</span> | |||
|
51 | % endif | |||
|
52 | </div> | |||
33 | <ul class="links"> |
|
53 | <ul class="links"> | |
34 | <li> |
|
54 | <li> | |
35 | <a href="#" class="btn btn-small" id="rev_range_container" style="display:none;"></a> |
|
55 | ||
36 |
|
|
56 | %if c.rhodecode_db_repo.fork: | |
37 | <span> |
|
57 | <span> | |
38 | <a id="compare_fork_button" |
|
58 | <a id="compare_fork_button" | |
@@ -60,11 +80,6 b'' | |||||
60 | </span> |
|
80 | </span> | |
61 | %endif |
|
81 | %endif | |
62 |
|
|
82 | ||
63 | ## clear selection |
|
|||
64 | <div title="${_('Clear selection')}" class="btn" id="rev_range_clear" style="display:none"> |
|
|||
65 | ${_('Clear selection')} |
|
|||
66 | </div> |
|
|||
67 |
|
||||
68 | </li> |
|
83 | </li> | |
69 | </ul> |
|
84 | </ul> | |
70 | </div> |
|
85 | </div> | |
@@ -73,29 +88,7 b'' | |||||
73 | <script type="text/javascript" src="${h.asset('js/src/plugins/jquery.commits-graph.js')}"></script> |
|
88 | <script type="text/javascript" src="${h.asset('js/src/plugins/jquery.commits-graph.js')}"></script> | |
74 |
|
89 | |||
75 | <div class="graph-header"> |
|
90 | <div class="graph-header"> | |
76 | <div id="filter_changelog"> |
|
|||
77 | ${h.hidden('branch_filter')} |
|
|||
78 | %if c.selected_name: |
|
|||
79 | <div class="btn btn-default" id="clear_filter" > |
|
|||
80 | ${_('Clear filter')} |
|
|||
81 | </div> |
|
|||
82 | %endif |
|
|||
83 | </div> |
|
|||
84 | ${self.breadcrumbs('breadcrumbs_light')} |
|
91 | ${self.breadcrumbs('breadcrumbs_light')} | |
85 | <div class="pull-right"> |
|
|||
86 | % if h.is_hg(c.rhodecode_repo): |
|
|||
87 | % if c.show_hidden: |
|
|||
88 | <a class="action-link" href="${h.current_route_path(request, evolve=0)}">${_('Hide obsolete/hidden')}</a> |
|
|||
89 | % else: |
|
|||
90 | <a class="action-link" href="${h.current_route_path(request, evolve=1)}">${_('Show obsolete/hidden')}</a> |
|
|||
91 | % endif |
|
|||
92 | % else: |
|
|||
93 | <span class="action-link disabled">${_('Show hidden')}</span> |
|
|||
94 | % endif |
|
|||
95 | </div> |
|
|||
96 | <div id="commit-counter" data-total=${c.total_cs} class="pull-right"> |
|
|||
97 | ${_ungettext('showing %d out of %d commit', 'showing %d out of %d commits', c.showing_commits) % (c.showing_commits, c.total_cs)} |
|
|||
98 | </div> |
|
|||
99 | </div> |
|
92 | </div> | |
100 |
|
93 | |||
101 | <div id="graph"> |
|
94 | <div id="graph"> | |
@@ -103,14 +96,23 b'' | |||||
103 | <div id="graph_nodes"> |
|
96 | <div id="graph_nodes"> | |
104 | <div id="graph_canvas"></div> |
|
97 | <div id="graph_canvas"></div> | |
105 | </div> |
|
98 | </div> | |
106 |
<div id="graph_content" class=" |
|
99 | <div id="graph_content" class="graph_full_width"> | |
107 |
|
100 | |||
108 | <div class="table"> |
|
101 | <div class="table"> | |
109 | <table id="changesets" class="rctable"> |
|
102 | <table id="changesets" class="rctable"> | |
110 | <tr> |
|
103 | <tr> | |
111 | ## checkbox |
|
104 | ## checkbox | |
112 |
<th |
|
105 | <th colspan="4"> | |
113 |
|
|
106 | ## clear selection | |
|
107 | <div title="${_('Clear selection')}" class="btn btn-sm" id="rev_range_clear" style="display:none"> | |||
|
108 | <i class="icon-cancel-circled2"></i> | |||
|
109 | </div> | |||
|
110 | <div class="btn btn-sm disabled" disabled="disabled" id="rev_range_more" style="display:none;">${_('Select second commit')}</div> | |||
|
111 | <a href="#" class="btn btn-success btn-sm" id="rev_range_container" style="display:none;"></a> | |||
|
112 | </th> | |||
|
113 | ## graph | |||
|
114 | ||||
|
115 | ## review box | |||
114 |
|
116 | |||
115 | <th>${_('Commit')}</th> |
|
117 | <th>${_('Commit')}</th> | |
116 |
|
118 | |||
@@ -135,6 +137,9 b'' | |||||
135 | <div class="pagination-wh pagination-left"> |
|
137 | <div class="pagination-wh pagination-left"> | |
136 | ${c.pagination.pager('$link_previous ~2~ $link_next')} |
|
138 | ${c.pagination.pager('$link_previous ~2~ $link_next')} | |
137 | </div> |
|
139 | </div> | |
|
140 | <div id="commit-counter" data-total=${c.total_cs} class="pull-right"> | |||
|
141 | ${_ungettext('showing %d out of %d commit', 'showing %d out of %d commits', c.showing_commits) % (c.showing_commits, c.total_cs)} | |||
|
142 | </div> | |||
138 | </div> |
|
143 | </div> | |
139 |
|
144 | |||
140 | <script type="text/javascript"> |
|
145 | <script type="text/javascript"> | |
@@ -144,6 +149,7 b'' | |||||
144 | // Create links to commit ranges when range checkboxes are selected |
|
149 | // Create links to commit ranges when range checkboxes are selected | |
145 | var $commitCheckboxes = $('.commit-range'); |
|
150 | var $commitCheckboxes = $('.commit-range'); | |
146 | // cache elements |
|
151 | // cache elements | |
|
152 | var $commitRangeMore = $('#rev_range_more'); | |||
147 | var $commitRangeContainer = $('#rev_range_container'); |
|
153 | var $commitRangeContainer = $('#rev_range_container'); | |
148 | var $commitRangeClear = $('#rev_range_clear'); |
|
154 | var $commitRangeClear = $('#rev_range_clear'); | |
149 |
|
155 | |||
@@ -155,57 +161,67 b'' | |||||
155 | } |
|
161 | } | |
156 | } |
|
162 | } | |
157 | var open_new_pull_request = $('#open_new_pull_request'); |
|
163 | var open_new_pull_request = $('#open_new_pull_request'); | |
158 | if(open_new_pull_request){ |
|
164 | ||
159 | var selected_changes = selectedCheckboxes.length; |
|
165 | if (open_new_pull_request) { | |
160 | if (selected_changes > 1 || selected_changes == 1 && templateContext.repo_type == 'svn') { |
|
166 | var selected_changes = selectedCheckboxes.length; | |
161 |
|
|
167 | open_new_pull_request.hide(); | |
162 |
|
|
168 | if (selected_changes == 1) { | |
163 | if (selected_changes == 1) { |
|
169 | open_new_pull_request.html(_gettext('Open new pull request for selected commit')); | |
164 | open_new_pull_request.html(_gettext('Open new pull request for selected commit')); |
|
170 | } else { | |
165 | } else if (selected_changes == 0) { |
|
171 | open_new_pull_request.html(_gettext('Open new pull request')); | |
166 | open_new_pull_request.html(_gettext('Open new pull request')); |
|
172 | } | |
167 | } |
|
173 | open_new_pull_request.show(); | |
168 | open_new_pull_request.show(); |
|
|||
169 | } |
|
|||
170 | } |
|
174 | } | |
171 |
|
175 | |||
172 | if (selectedCheckboxes.length>0){ |
|
176 | if (selectedCheckboxes.length > 0) { | |
173 | var revEnd = selectedCheckboxes[0].name; |
|
177 | $('#compare_fork_button').hide(); | |
174 |
var |
|
178 | var commitStart = $(selectedCheckboxes[selectedCheckboxes.length-1]).data(); | |
175 | var url = pyroutes.url('repo_commit', |
|
179 | ||
176 | {'repo_name': '${c.repo_name}', |
|
180 | var revStart = commitStart.commitId; | |
177 | 'commit_id': revStart+'...'+revEnd}); |
|
181 | ||
|
182 | var commitEnd = $(selectedCheckboxes[0]).data(); | |||
|
183 | var revEnd = commitEnd.commitId; | |||
178 |
|
184 | |||
179 | var link = (revStart == revEnd) |
|
185 | var lbl_start = 'r{0}:{1}'.format(commitStart.commitIdx, commitStart.commitId.substr(0,6)); | |
180 | ? _gettext('Show selected commit __S') |
|
186 | var lbl_end = 'r{0}:{1}'.format(commitEnd.commitIdx, commitEnd.commitId.substr(0,6)); | |
181 | : _gettext('Show selected commits __S ... __E'); |
|
187 | var url = pyroutes.url('repo_commit', {'repo_name': '${c.repo_name}', 'commit_id': revStart+'...'+revEnd}); | |
|
188 | var link = _gettext('Show selected commits {0} ... {1}').format(lbl_start, lbl_end); | |||
|
189 | ||||
|
190 | if (selectedCheckboxes.length > 1) { | |||
|
191 | $commitRangeClear.show(); | |||
|
192 | $commitRangeMore.hide(); | |||
182 |
|
193 | |||
183 | link = link.replace('__S', revStart.substr(0,6)); |
|
194 | $commitRangeContainer | |
184 | link = link.replace('__E', revEnd.substr(0,6)); |
|
195 | .attr('href',url) | |
|
196 | .html(link) | |||
|
197 | .show(); | |||
|
198 | ||||
185 |
|
199 | |||
186 |
|
|
200 | } else { | |
187 | .attr('href',url) |
|
201 | $commitRangeContainer.hide(); | |
188 |
. |
|
202 | $commitRangeClear.show(); | |
189 | .show(); |
|
203 | $commitRangeMore.show(); | |
|
204 | } | |||
190 |
|
205 | |||
191 | $commitRangeClear.show(); |
|
206 | // pull-request link | |
192 | var _url = pyroutes.url('pullrequest_new', |
|
207 | if (selectedCheckboxes.length == 1){ | |
193 |
|
|
208 | var _url = pyroutes.url('pullrequest_new', {'repo_name': '${c.repo_name}', 'commit': revEnd}); | |
194 | 'commit': revEnd}); |
|
209 | open_new_pull_request.attr('href', _url); | |
195 | open_new_pull_request.attr('href', _url); |
|
210 | } else { | |
196 | $('#compare_fork_button').hide(); |
|
211 | var _url = pyroutes.url('pullrequest_new', {'repo_name': '${c.repo_name}'}); | |
|
212 | open_new_pull_request.attr('href', _url); | |||
|
213 | } | |||
|
214 | ||||
197 | } else { |
|
215 | } else { | |
198 | $commitRangeContainer.hide(); |
|
216 | $commitRangeContainer.hide(); | |
199 | $commitRangeClear.hide(); |
|
217 | $commitRangeClear.hide(); | |
|
218 | $commitRangeMore.hide(); | |||
200 |
|
219 | |||
201 | %if c.branch_name: |
|
220 | %if c.branch_name: | |
202 | var _url = pyroutes.url('pullrequest_new', |
|
221 | var _url = pyroutes.url('pullrequest_new', {'repo_name': '${c.repo_name}', 'branch':'${c.branch_name}'}); | |
203 | {'repo_name': '${c.repo_name}', |
|
|||
204 | 'branch':'${c.branch_name}'}); |
|
|||
205 | open_new_pull_request.attr('href', _url); |
|
222 | open_new_pull_request.attr('href', _url); | |
206 | %else: |
|
223 | %else: | |
207 | var _url = pyroutes.url('pullrequest_new', |
|
224 | var _url = pyroutes.url('pullrequest_new', {'repo_name': '${c.repo_name}'}); | |
208 | {'repo_name': '${c.repo_name}'}); |
|
|||
209 | open_new_pull_request.attr('href', _url); |
|
225 | open_new_pull_request.attr('href', _url); | |
210 | %endif |
|
226 | %endif | |
211 | $('#compare_fork_button').show(); |
|
227 | $('#compare_fork_button').show(); | |
@@ -247,7 +263,7 b'' | |||||
247 | $("#branch_filter").select2({ |
|
263 | $("#branch_filter").select2({ | |
248 | 'dropdownAutoWidth': true, |
|
264 | 'dropdownAutoWidth': true, | |
249 | 'width': 'resolve', |
|
265 | 'width': 'resolve', | |
250 |
'placeholder': "${c.selected_name or _(' |
|
266 | 'placeholder': "${c.selected_name or _('Branch filter')}", | |
251 | containerCssClass: "drop-menu", |
|
267 | containerCssClass: "drop-menu", | |
252 | dropdownCssClass: "drop-menu-dropdown", |
|
268 | dropdownCssClass: "drop-menu-dropdown", | |
253 | query: function(query){ |
|
269 | query: function(query){ |
@@ -21,7 +21,11 b'' | |||||
21 | <tr id="sha_${commit.raw_id}" class="changelogRow container ${'tablerow%s' % (cnt%2)}"> |
|
21 | <tr id="sha_${commit.raw_id}" class="changelogRow container ${'tablerow%s' % (cnt%2)}"> | |
22 |
|
22 | |||
23 | <td class="td-checkbox"> |
|
23 | <td class="td-checkbox"> | |
24 |
${h.checkbox(commit.raw_id,class_="commit-range" |
|
24 | ${h.checkbox(commit.raw_id,class_="commit-range", **{'data-commit-idx':commit.idx, 'data-commit-id': commit.raw_id})} | |
|
25 | </td> | |||
|
26 | ## | |||
|
27 | <td class="td-graphbox"> | |||
|
28 | ||||
25 | </td> |
|
29 | </td> | |
26 |
|
30 | |||
27 | <td class="td-status"> |
|
31 | <td class="td-status"> |
General Comments 0
You need to be logged in to leave comments.
Login now