##// END OF EJS Templates
reviewers: fixed UI issues on reviewers for big screens.
milka -
r4577:40ea091b stable
parent child Browse files
Show More
@@ -1,267 +1,266 b''
1 1 <%text>
2 2 <div style="display: none">
3 3
4 4 <script>
5 5 var CG = new ColorGenerator();
6 6 </script>
7 7
8 8 <script id="ejs_gravatarWithUser" type="text/template" class="ejsTemplate">
9 9
10 10 <%
11 11 if (size > 16) {
12 12 var gravatar_class = 'gravatar gravatar-large';
13 13 } else {
14 14 var gravatar_class = 'gravatar';
15 15 }
16 16
17 17 if (tooltip) {
18 18 var gravatar_class = gravatar_class + ' tooltip-hovercard';
19 19 }
20 20
21 21 var data_hovercard_alt = username;
22 22
23 23 %>
24 24
25 25 <%
26 26 if (show_disabled) {
27 27 var user_cls = 'user user-disabled';
28 28 } else {
29 29 var user_cls = 'user';
30 30 }
31 31 var data_hovercard_url = pyroutes.url('hovercard_user', {"user_id": user_id})
32 32 %>
33 33
34 34 <div class="rc-user">
35 35 <img class="<%= gravatar_class %>" height="<%= size %>" width="<%= size %>" data-hovercard-url="<%= data_hovercard_url %>" data-hovercard-alt="<%= data_hovercard_alt %>" src="<%- gravatar_url -%>">
36 36 <span class="<%= user_cls %>"> <%- user_link -%> </span>
37 37 </div>
38 38
39 39 </script>
40 40
41 41 <script id="ejs_reviewMemberEntry" type="text/template" class="ejsTemplate">
42 42 <%
43 43 if (create) {
44 44 var edit_visibility = 'visible';
45 45 } else {
46 46 var edit_visibility = 'hidden';
47 47 }
48 48
49 49 if (member.user_group && member.user_group.vote_rule) {
50 50 var reviewGroup = '<i class="icon-user-group"></i>';
51 51 var reviewGroupColor = CG.asRGB(CG.getColor(member.user_group.vote_rule));
52 52 } else {
53 53 var reviewGroup = null;
54 54 var reviewGroupColor = 'transparent';
55 55 }
56 56 var rule_show = rule_show || false;
57 57
58 58 if (rule_show) {
59 59 var rule_visibility = 'table-cell';
60 60 } else {
61 61 var rule_visibility = 'none';
62 62 }
63 63
64 64 %>
65 65
66 66 <tr id="reviewer_<%= member.user_id %>" class="reviewer_entry" tooltip="Review Group" data-reviewer-user-id="<%= member.user_id %>">
67 67
68 <% if (!create) { %>
68 69 <td style="width: 20px">
69 70 <div class="tooltip presence-state" style="display: none; position: absolute; left: 2px" title="This users is currently at this page">
70 71 <i class="icon-eye" style="color: #0ac878"></i>
71 72 </div>
72 73 <% if (role === 'reviewer') { %>
73 74 <div class="reviewer_status tooltip" title="<%= review_status_label %>">
74 75 <i class="icon-circle review-status-<%= review_status %>"></i>
75 76 </div>
76 77 <% } else if (role === 'observer') { %>
77 78 <div class="tooltip" title="Observer without voting right.">
78 79 <i class="icon-circle-thin"></i>
79 80 </div>
80 81 <% } %>
81 82 </td>
83 <% } %>
84
85 <% if (mandatory) { %>
86 <td style="text-align: right;width: 10px;">
87 <div class="reviewer_member_mandatory tooltip" title="Mandatory reviewer">
88 <i class="icon-lock"></i>
89 </div>
90 </td>
91
92 <% } else { %>
93 <td style="text-align: right;width: 10px;">
94 <% if (allowed_to_update) { %>
95 <div class="<%=role %>_member_remove" onclick="reviewersController.removeMember(<%= member.user_id %>, true)" style="visibility: <%= edit_visibility %>;">
96 <i class="icon-remove" style="color: #e85e4d;"></i>
97 </div>
98 <% } %>
99 </td>
100 <% } %>
82 101
83 102 <td>
84 103 <div id="reviewer_<%= member.user_id %>_name" class="reviewer_name">
85 104 <%-
86 105 renderTemplate('gravatarWithUser', {
87 106 'size': 16,
88 107 'show_disabled': false,
89 108 'tooltip': true,
90 109 'username': member.username,
91 110 'user_id': member.user_id,
92 111 'user_link': member.user_link,
93 112 'gravatar_url': member.gravatar_link
94 113 })
95 114 %>
96 115 </div>
97 </td>
98
99 <td style="width: 10px">
100 116 <% if (reviewGroup !== null) { %>
101 117 <span class="tooltip" title="Member of review group from rule: `<%= member.user_group.name %>`" style="color: <%= reviewGroupColor %>">
102 118 <%- reviewGroup %>
103 119 </span>
104 120 <% } %>
105 121 </td>
106 122
107 <% if (mandatory) { %>
108 <td style="text-align: right;width: 10px;">
109 <div class="reviewer_member_mandatory tooltip" title="Mandatory reviewer">
110 <i class="icon-lock"></i>
111 </div>
112 </td>
113
114 <% } else { %>
115 <td style="text-align: right;width: 10px;">
116 <% if (allowed_to_update) { %>
117 <div class="<%=role %>_member_remove" onclick="reviewersController.removeMember(<%= member.user_id %>, true)" style="visibility: <%= edit_visibility %>;">
118 <i class="icon-remove"></i>
119 </div>
120 <% } %>
121 </td>
122 <% } %>
123
124 123 </tr>
125 124
126 125 <tr id="reviewer_<%= member.user_id %>_rules">
127 126 <td colspan="4" style="display: <%= rule_visibility %>" class="pr-user-rule-container">
128 127 <input type="hidden" name="__start__" value="reviewer:mapping">
129 128
130 129 <%if (member.user_group && member.user_group.vote_rule) { %>
131 130 <div class="reviewer_reason">
132 131
133 132 <%if (member.user_group.vote_rule == -1) {%>
134 133 - group votes required: ALL
135 134 <%} else {%>
136 135 - group votes required: <%= member.user_group.vote_rule %>
137 136 <%}%>
138 137 </div>
139 138 <%} %>
140 139
141 140 <input type="hidden" name="__start__" value="reasons:sequence">
142 141 <% for (var i = 0; i < reasons.length; i++) { %>
143 142 <% var reason = reasons[i] %>
144 143 <div class="reviewer_reason">- <%= reason %></div>
145 144 <input type="hidden" name="reason" value="<%= reason %>">
146 145 <% } %>
147 146 <input type="hidden" name="__end__" value="reasons:sequence">
148 147
149 148 <input type="hidden" name="__start__" value="rules:sequence">
150 149 <% for (var i = 0; i < member.rules.length; i++) { %>
151 150 <% var rule = member.rules[i] %>
152 151 <input type="hidden" name="rule_id" value="<%= rule %>">
153 152 <% } %>
154 153 <input type="hidden" name="__end__" value="rules:sequence">
155 154
156 155 <input id="reviewer_<%= member.user_id %>_input" type="hidden" value="<%= member.user_id %>" name="user_id" />
157 156 <input type="hidden" name="mandatory" value="<%= mandatory %>"/>
158 157 <input type="hidden" name="role" value="<%= role %>"/>
159 158
160 159 <input type="hidden" name="__end__" value="reviewer:mapping">
161 160 </td>
162 161 </tr>
163 162
164 163 </script>
165 164
166 165 <script id="ejs_commentVersion" type="text/template" class="ejsTemplate">
167 166
168 167 <%
169 168 if (size > 16) {
170 169 var gravatar_class = 'gravatar gravatar-large';
171 170 } else {
172 171 var gravatar_class = 'gravatar';
173 172 }
174 173
175 174 %>
176 175
177 176 <%
178 177 if (show_disabled) {
179 178 var user_cls = 'user user-disabled';
180 179 } else {
181 180 var user_cls = 'user';
182 181 }
183 182
184 183 %>
185 184
186 185 <div style='line-height: 20px'>
187 186 <img style="margin: -3px 0" class="<%= gravatar_class %>" height="<%= size %>" width="<%= size %>" src="<%- gravatar_url -%>">
188 187 <strong><%- user_name -%></strong>, <code>v<%- version -%></code> edited <%- timeago_component -%>
189 188 </div>
190 189
191 190 </script>
192 191
193 192
194 193 <script id="ejs_sideBarCommentHovercard" type="text/template" class="ejsTemplate">
195 194
196 195 <div>
197 196 <% if (is_todo) { %>
198 197 <% if (inline) { %>
199 198 <strong>Inline</strong> TODO on line: <%= line_no %>
200 199 <% if (version_info) { %>
201 200 <%= version_info %>
202 201 <% } %>
203 202 <br/>
204 203 File: <code><%- file_name -%></code>
205 204 <% } else { %>
206 205 <% if (review_status) { %>
207 206 <i class="icon-circle review-status-<%= review_status %>"></i>
208 207 <% } %>
209 208 <strong>General</strong> TODO
210 209 <% if (version_info) { %>
211 210 <%= version_info %>
212 211 <% } %>
213 212 <% } %>
214 213 <% } else { %>
215 214 <% if (inline) { %>
216 215 <strong>Inline</strong> comment on line: <%= line_no %>
217 216 <% if (version_info) { %>
218 217 <%= version_info %>
219 218 <% } %>
220 219 <br/>
221 220 File: <code><%- file_name -%></code>
222 221 <% } else { %>
223 222 <% if (review_status) { %>
224 223 <i class="icon-circle review-status-<%= review_status %>"></i>
225 224 <% } %>
226 225 <strong>General</strong> comment
227 226 <% if (version_info) { %>
228 227 <%= version_info %>
229 228 <% } %>
230 229 <% } %>
231 230 <% } %>
232 231 <br/>
233 232 Created:
234 233 <time class="timeago" title="<%= created_on %>" datetime="<%= datetime %>"><%= $.timeago(datetime) %></time>
235 234
236 235 </div>
237 236
238 237 </script>
239 238
240 239 <script id="ejs_commentHelpHovercard" type="text/template" class="ejsTemplate">
241 240
242 241 <div>
243 242 Use <strong>@username</strong> mention syntax to send direct notification to this RhodeCode user.<br/>
244 243 Typing / starts autocomplete for certain action, e.g set review status, or comment type. <br/>
245 244 <br/>
246 245 Use <strong>Cmd/ctrl+enter</strong> to submit comment, or <strong>Shift+Cmd/ctrl+enter</strong> to submit a draft.<br/>
247 246 <br/>
248 247 <strong>Draft comments</strong> are private to the author, and trigger no notification to others.<br/>
249 248 They are permanent until deleted, or converted to regular comments.<br/>
250 249 <br/>
251 250 <br/>
252 251 </div>
253 252
254 253 </script>
255 254
256 255
257 256
258 257 ##// END OF EJS Templates
259 258 </div>
260 259
261 260
262 261 <script>
263 262 // registers the templates into global cache
264 263 registerTemplates();
265 264 </script>
266 265
267 266 </%text>
General Comments 0
You need to be logged in to leave comments. Login now