Merge lp:~barry/launchpad/445713-menus into lp:launchpad
- 445713-menus
- Merge into devel
Proposed by
Barry Warsaw
Status: | Merged |
---|---|
Merged at revision: | not available |
Proposed branch: | lp:~barry/launchpad/445713-menus |
Merge into: | lp:launchpad |
Diff against target: |
511 lines 10 files modified
lib/lp/registry/browser/configure.zcml (+3/-4) lib/lp/registry/browser/product.py (+1/-10) lib/lp/registry/browser/tests/product-menus.txt (+7/-12) lib/lp/registry/stories/product/xx-product-driver.txt (+9/-11) lib/lp/registry/stories/product/xx-product-edit.txt (+12/-10) lib/lp/registry/templates/product-admin.pt (+0/-17) lib/lp/registry/templates/product-edit-people.pt (+0/-18) lib/lp/registry/templates/product-edit.pt (+0/-23) lib/lp/registry/templates/product-index.pt (+12/-4) lib/lp/registry/templates/product-review-license.pt (+45/-45) |
To merge this branch: | bzr merge lp:~barry/launchpad/445713-menus |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Paul Hummer (community) | code ui | Approve | |
Brad Crittenden (community) | ui* | Approve | |
Review via email: mp+13093@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Revision history for this message
Barry Warsaw (barry) wrote : | # |
Revision history for this message
Brad Crittenden (bac) wrote : | # |
Hi Barry,
You've asked me to do a UI review but I should confess I'm not even a UI reviewer mentat. So this review isn't really worth the paper it's written on.
Despite the shady nature of my credentials I think the changes you've made are great. (Your screenshot was awful, though, as it didn't show the good bits.)
So you get an enthusiastic +0 from me. Don't spend it all in one place.
review:
Approve
(ui*)
Revision history for this message
Paul Hummer (rockstar) wrote : | # |
Looks good. One thing I'd suggest for next time with a UI review is screenshots. That way, I don't actually have to set the branch up to run and such.
review:
Approve
(code ui)
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'lib/lp/registry/browser/configure.zcml' |
2 | --- lib/lp/registry/browser/configure.zcml 2009-10-05 22:14:18 +0000 |
3 | +++ lib/lp/registry/browser/configure.zcml 2009-10-08 21:10:25 +0000 |
4 | @@ -1477,7 +1477,7 @@ |
5 | class="lp.registry.browser.product.ProductEditPeopleView"> |
6 | <browser:page |
7 | name="+edit-people" |
8 | - template="../templates/product-edit-people.pt"/> |
9 | + template="../../app/templates/generic-edit.pt"/> |
10 | </browser:pages> |
11 | <browser:page |
12 | name="+edit" |
13 | @@ -1485,7 +1485,7 @@ |
14 | facet="overview" |
15 | class="lp.registry.browser.product.ProductEditView" |
16 | permission="launchpad.Edit" |
17 | - template="../templates/product-edit.pt"/> |
18 | + template="../../app/templates/generic-edit.pt"/> |
19 | <browser:page |
20 | name="+branding" |
21 | for="lp.registry.interfaces.product.IProduct" |
22 | @@ -1499,7 +1499,7 @@ |
23 | facet="overview" |
24 | class="lp.registry.browser.product.ProductAdminView" |
25 | permission="launchpad.Admin" |
26 | - template="../templates/product-admin.pt"/> |
27 | + template="../../app/templates/generic-edit.pt"/> |
28 | <browser:page |
29 | name="+review-license" |
30 | for="lp.registry.interfaces.product.IProduct" |
31 | @@ -1567,7 +1567,6 @@ |
32 | classes=" |
33 | ProductActionNavigationMenu |
34 | ProductBugsMenu |
35 | - ProductEditNavigationMenu |
36 | ProductFacets |
37 | ProductNavigationMenu |
38 | ProductOverviewMenu |
39 | |
40 | === modified file 'lib/lp/registry/browser/product.py' |
41 | --- lib/lp/registry/browser/product.py 2009-10-01 16:10:42 +0000 |
42 | +++ lib/lp/registry/browser/product.py 2009-10-08 21:10:25 +0000 |
43 | @@ -15,7 +15,6 @@ |
44 | 'ProductDistributionsView', |
45 | 'ProductDownloadFileMixin', |
46 | 'ProductDownloadFilesView', |
47 | - 'ProductEditNavigationMenu', |
48 | 'ProductEditPeopleView', |
49 | 'ProductEditView', |
50 | 'ProductFacets', |
51 | @@ -349,15 +348,6 @@ |
52 | """A marker interface for the 'Change details' navigation menu.""" |
53 | |
54 | |
55 | -class ProductEditNavigationMenu(NavigationMenu, ProductEditLinksMixin): |
56 | - """A sub-menu for different aspects of editing a Product's details.""" |
57 | - |
58 | - usedfor = IProductEditMenu |
59 | - facet = 'overview' |
60 | - title = 'Change project' |
61 | - links = ('edit', 'branding', 'reassign', 'review_license', 'administer') |
62 | - |
63 | - |
64 | class IProductActionMenu(Interface): |
65 | """A marker interface for the global action navigation menu.""" |
66 | |
67 | @@ -390,6 +380,7 @@ |
68 | 'review_license', |
69 | 'branchvisibility', |
70 | 'rdf', |
71 | + 'branding', |
72 | ] |
73 | |
74 | def top_contributors(self): |
75 | |
76 | === modified file 'lib/lp/registry/browser/tests/product-menus.txt' |
77 | --- lib/lp/registry/browser/tests/product-menus.txt 2009-08-12 04:27:34 +0000 |
78 | +++ lib/lp/registry/browser/tests/product-menus.txt 2009-10-08 21:10:25 +0000 |
79 | @@ -1,4 +1,6 @@ |
80 | -= The product menu classes = |
81 | +======================== |
82 | +The product menu classes |
83 | +======================== |
84 | |
85 | Each link specified by menu classes for products should be accessible. |
86 | In most cases, the context for links will be the product itself, which |
87 | @@ -7,11 +9,7 @@ |
88 | The check_menu_links() function is defined here to make it simple to |
89 | test all the product menu classes below. |
90 | |
91 | - >>> import traceback |
92 | - >>> import sys |
93 | - >>> import os |
94 | >>> from zope.component import getMultiAdapter |
95 | - >>> from canonical.lazr.utils import safe_hasattr |
96 | >>> from canonical.lazr.testing.menus import make_fake_request |
97 | >>> from canonical.launchpad.webapp.publisher import canonical_url |
98 | >>> from lp.registry.interfaces.product import IProductSet |
99 | @@ -34,8 +32,7 @@ |
100 | ... print is_sane_menu |
101 | |
102 | >>> from lp.registry.browser.product import ( |
103 | - ... ProductBugsMenu, |
104 | - ... ProductEditNavigationMenu, ProductNavigationMenu, |
105 | + ... ProductBugsMenu, ProductNavigationMenu, |
106 | ... ProductOverviewMenu, ProductSpecificationsMenu) |
107 | >>> product = getUtility(IProductSet)['firefox'] |
108 | |
109 | @@ -51,11 +48,9 @@ |
110 | >>> check_menu_links(ProductNavigationMenu(product)) |
111 | True |
112 | |
113 | - >>> check_menu_links(ProductEditNavigationMenu(product)) |
114 | - True |
115 | - |
116 | - |
117 | -== ProductBranchesMenu and ProductTranslationsMenu == |
118 | + |
119 | +ProductBranchesMenu and ProductTranslationsMenu |
120 | +=============================================== |
121 | |
122 | We are not testing ProductBranchesMenu.code_import because it |
123 | points to a view (/+code-imports/+new), which is not easily tested. |
124 | |
125 | === modified file 'lib/lp/registry/stories/product/xx-product-driver.txt' |
126 | --- lib/lp/registry/stories/product/xx-product-driver.txt 2009-09-18 17:38:50 +0000 |
127 | +++ lib/lp/registry/stories/product/xx-product-driver.txt 2009-10-08 21:10:25 +0000 |
128 | @@ -1,3 +1,4 @@ |
129 | +=========================== |
130 | Appointing a Product Driver |
131 | =========================== |
132 | |
133 | @@ -5,13 +6,9 @@ |
134 | |
135 | >>> browser = setupBrowser(auth='Basic test@canonical.com:test') |
136 | >>> browser.open('http://launchpad.dev/firefox') |
137 | - >>> browser.getLink('Change details').click() |
138 | - >>> browser.url |
139 | - 'http://launchpad.dev/firefox/+edit' |
140 | - |
141 | - >>> browser.getLink('Change people').click() |
142 | - >>> browser.url |
143 | - 'http://launchpad.dev/firefox/+edit-people' |
144 | + >>> browser.getLink(url='+edit-people').click() |
145 | + >>> print browser.url |
146 | + http://launchpad.dev/firefox/+edit-people |
147 | |
148 | >>> print browser.title |
149 | Change the roles of Mozilla Firefox's people... |
150 | @@ -22,15 +19,16 @@ |
151 | After changing the driver, the user is redirected to the overview page |
152 | where a message inform him of the driver change. |
153 | |
154 | - >>> browser.url |
155 | - 'http://launchpad.dev/firefox' |
156 | + >>> print browser.url |
157 | + http://launchpad.dev/firefox |
158 | |
159 | >>> for tag in find_tags_by_class(browser.contents, 'informational'): |
160 | - ... tag.renderContents() |
161 | - 'Successfully changed the driver to Sample Person' |
162 | + ... print tag.renderContents() |
163 | + Successfully changed the driver to Sample Person |
164 | |
165 | Sample Person is listed as the driver of the product. |
166 | |
167 | >>> main = find_main_content(browser.contents) |
168 | >>> print extract_text(main.find(id='driver')) |
169 | Driver: Sample Person |
170 | + ... |
171 | |
172 | === modified file 'lib/lp/registry/stories/product/xx-product-edit.txt' |
173 | --- lib/lp/registry/stories/product/xx-product-edit.txt 2009-09-23 10:17:34 +0000 |
174 | +++ lib/lp/registry/stories/product/xx-product-edit.txt 2009-10-08 21:10:25 +0000 |
175 | @@ -1,3 +1,4 @@ |
176 | +=========================== |
177 | Product Edit and Administer |
178 | =========================== |
179 | |
180 | @@ -39,7 +40,7 @@ |
181 | |
182 | |
183 | Setting Development Focus |
184 | -------------------------- |
185 | +========================= |
186 | |
187 | The Firefox product's trunk series is set as the development focus: |
188 | |
189 | @@ -72,7 +73,7 @@ |
190 | |
191 | |
192 | Administering Products |
193 | ----------------------- |
194 | +====================== |
195 | |
196 | Regular users can't access the 'Administer' link. |
197 | |
198 | @@ -114,7 +115,7 @@ |
199 | |
200 | |
201 | Renaming Products |
202 | ------------------ |
203 | +================= |
204 | |
205 | First a user adds a product named newproductname. |
206 | |
207 | @@ -175,7 +176,7 @@ |
208 | |
209 | |
210 | Changing Maintainer and Registrant |
211 | ----------------------------------- |
212 | +================================== |
213 | |
214 | Administrators can change the owner of a project. |
215 | |
216 | @@ -183,6 +184,7 @@ |
217 | ... 'http://launchpad.dev/newproductname3') |
218 | >>> print extract_text(find_tag_by_id(admin_browser.contents, 'owner')) |
219 | Maintainer: No Privileges Person |
220 | + ... |
221 | |
222 | >>> admin_browser.open( |
223 | ... 'http://launchpad.dev/newproductname3/+admin') |
224 | @@ -190,6 +192,7 @@ |
225 | >>> admin_browser.getControl(name='field.actions.change').click() |
226 | >>> print extract_text(find_tag_by_id(admin_browser.contents, 'owner')) |
227 | Maintainer: Celso Providelo |
228 | + ... |
229 | |
230 | And the registrant can also be changed, even though this should rarely |
231 | happen. The registrant is a read-only field that is set when the product |
232 | @@ -222,7 +225,7 @@ |
233 | |
234 | |
235 | Registry Experts |
236 | ----------------- |
237 | +================ |
238 | |
239 | Regular Joes can't edit any old project: |
240 | |
241 | @@ -254,7 +257,7 @@ |
242 | |
243 | |
244 | Display error when trying to remove all licenses |
245 | ------------------------------------------------- |
246 | +================================================ |
247 | |
248 | After a product has one or more licenses selected, it can never again |
249 | have zero licenses. |
250 | @@ -272,7 +275,7 @@ |
251 | |
252 | |
253 | Launchpad developers can use the reviewer whiteboard |
254 | ----------------------------------------------------- |
255 | +==================================================== |
256 | |
257 | A member of the Registry Experts team can use the reviewer whiteboard on |
258 | the +review-license page for storing random notes about a project. At |
259 | @@ -325,7 +328,7 @@ |
260 | |
261 | |
262 | Deactivate a product |
263 | --------------------- |
264 | +==================== |
265 | |
266 | The Admins and Registry Experts can deactivate a project. |
267 | |
268 | @@ -379,7 +382,7 @@ |
269 | |
270 | |
271 | Setting the remote project |
272 | --------------------------- |
273 | +========================== |
274 | |
275 | The remote_product field - which stores a Product's ID on the remote bug |
276 | tracker - can be set from the +edit page, too. |
277 | @@ -391,4 +394,3 @@ |
278 | >>> user_browser.open('http://launchpad.dev/thunderbird/+edit') |
279 | >>> print user_browser.getControl('Remote project').value |
280 | Thunderbird |
281 | - |
282 | |
283 | === removed file 'lib/lp/registry/templates/product-admin.pt' |
284 | --- lib/lp/registry/templates/product-admin.pt 2009-08-03 14:38:55 +0000 |
285 | +++ lib/lp/registry/templates/product-admin.pt 1970-01-01 00:00:00 +0000 |
286 | @@ -1,17 +0,0 @@ |
287 | -<html |
288 | - xmlns="http://www.w3.org/1999/xhtml" |
289 | - xmlns:tal="http://xml.zope.org/namespaces/tal" |
290 | - xmlns:metal="http://xml.zope.org/namespaces/metal" |
291 | - xmlns:i18n="http://xml.zope.org/namespaces/i18n" |
292 | - metal:use-macro="view/macro:page/main_only" |
293 | - i18n:domain="launchpad"> |
294 | - <body> |
295 | - <div metal:fill-slot="main"> |
296 | - <div class="top-portlet"> |
297 | - <div metal:use-macro="context/@@launchpad_form/form" /> |
298 | - </div> |
299 | - |
300 | - <tal:menu replace="structure view/@@+related-pages" /> |
301 | - </div> |
302 | - </body> |
303 | -</html> |
304 | |
305 | === removed file 'lib/lp/registry/templates/product-edit-people.pt' |
306 | --- lib/lp/registry/templates/product-edit-people.pt 2009-08-03 14:38:55 +0000 |
307 | +++ lib/lp/registry/templates/product-edit-people.pt 1970-01-01 00:00:00 +0000 |
308 | @@ -1,18 +0,0 @@ |
309 | -<html |
310 | - xmlns="http://www.w3.org/1999/xhtml" |
311 | - xmlns:tal="http://xml.zope.org/namespaces/tal" |
312 | - xmlns:metal="http://xml.zope.org/namespaces/metal" |
313 | - xmlns:i18n="http://xml.zope.org/namespaces/i18n" |
314 | - metal:use-macro="view/macro:page/main_only" |
315 | - i18n:domain="launchpad"> |
316 | -<body> |
317 | - <div metal:fill-slot="main"> |
318 | - <div class="top-portlet"> |
319 | - <div metal:use-macro="context/@@launchpad_form/form" /> |
320 | - </div> |
321 | - |
322 | - <tal:menu replace="structure view/@@+related-pages" /> |
323 | - </div> |
324 | -</body> |
325 | -</html> |
326 | - |
327 | |
328 | === removed file 'lib/lp/registry/templates/product-edit.pt' |
329 | --- lib/lp/registry/templates/product-edit.pt 2009-08-03 14:38:55 +0000 |
330 | +++ lib/lp/registry/templates/product-edit.pt 1970-01-01 00:00:00 +0000 |
331 | @@ -1,23 +0,0 @@ |
332 | -<html |
333 | - xmlns="http://www.w3.org/1999/xhtml" |
334 | - xmlns:tal="http://xml.zope.org/namespaces/tal" |
335 | - xmlns:metal="http://xml.zope.org/namespaces/metal" |
336 | - xmlns:i18n="http://xml.zope.org/namespaces/i18n" |
337 | - metal:use-macro="view/macro:page/main_only" |
338 | - i18n:domain="launchpad"> |
339 | - <body> |
340 | - <div metal:fill-slot="main"> |
341 | - <div class="top-portlet"> |
342 | - <div metal:use-macro="context/@@launchpad_form/form"> |
343 | - <p metal:fill-slot="extra_info"> |
344 | - Your changes to the <span tal:replace="context/displayname"> |
345 | - project</span> details below will be visible to other users |
346 | - after you submit them. |
347 | - </p> |
348 | - </div> |
349 | - </div> |
350 | - |
351 | - <tal:menu replace="structure view/@@+related-pages" /> |
352 | - </div> |
353 | - </body> |
354 | -</html> |
355 | |
356 | === modified file 'lib/lp/registry/templates/product-index.pt' |
357 | --- lib/lp/registry/templates/product-index.pt 2009-09-22 17:39:22 +0000 |
358 | +++ lib/lp/registry/templates/product-index.pt 2009-10-08 21:10:25 +0000 |
359 | @@ -36,6 +36,7 @@ |
360 | detailed information about the open source project in question. |
361 | </div> |
362 | |
363 | + <div tal:replace="structure overview_menu/branding/fmt:link" /> |
364 | <ul id="external-links" class="horizontal" |
365 | tal:condition="view/has_external_links"> |
366 | <li tal:condition="view/should_display_homepage"> |
367 | @@ -62,7 +63,10 @@ |
368 | |
369 | <dl id="owner" tal:condition="context/owner"> |
370 | <dt>Maintainer:</dt> |
371 | - <dd><a tal:replace="structure context/owner/fmt:link" /></dd> |
372 | + <dd> |
373 | + <a tal:replace="structure context/owner/fmt:link" /> |
374 | + <a tal:replace="structure overview_menu/reassign/fmt:icon" /> |
375 | + </dd> |
376 | </dl> |
377 | |
378 | <dl id="aliases" tal:condition="context/aliases"> |
379 | @@ -76,9 +80,13 @@ |
380 | <dl id="driver"> |
381 | <dt>Driver:</dt> |
382 | <dd tal:condition="view/effective_driver"> |
383 | - <a tal:replace="structure view/effective_driver/fmt:link" /></dd> |
384 | + <a tal:replace="structure view/effective_driver/fmt:link" /> |
385 | + <a tal:replace="structure overview_menu/reassign/fmt:icon" /> |
386 | + </dd> |
387 | <dd tal:condition="not: view/effective_driver"> |
388 | - Not yet appointed.</dd> |
389 | + Not yet appointed. |
390 | + <a tal:replace="structure overview_menu/reassign/fmt:icon" /> |
391 | + </dd> |
392 | </dl> |
393 | |
394 | <dl id="uses" tal:define="uses_launchpad view/uses_launchpad_for"> |
395 | @@ -122,7 +130,7 @@ |
396 | </div> |
397 | |
398 | <p> |
399 | - <a tal:replace="structure overview_menu/rdf/fmt:link" /> |
400 | + <a tal:replace="structure overview_menu/rdf/fmt:link" /> |
401 | </p> |
402 | |
403 | <div id="project-admin-whiteboard" class="whiteboard" |
404 | |
405 | === modified file 'lib/lp/registry/templates/product-review-license.pt' |
406 | --- lib/lp/registry/templates/product-review-license.pt 2009-08-01 02:08:09 +0000 |
407 | +++ lib/lp/registry/templates/product-review-license.pt 2009-10-08 21:10:25 +0000 |
408 | @@ -12,49 +12,51 @@ |
409 | <div metal:fill-slot="main"> |
410 | <div class="top-portlet"> |
411 | <div metal:use-macro="context/@@launchpad_form/form"> |
412 | - <div metal:fill-slot="extra_info"> |
413 | - <p> |
414 | - Examine the project's overview tab first, then examine if the |
415 | - project is using code, bugs, etc.... Mark the project reviewed now. |
416 | - </p> |
417 | - |
418 | - <p> |
419 | - Does the project appear to be legitimate? Are its licenses simple |
420 | - and clearly open and free? Mark the project approved now. |
421 | - </p> |
422 | - |
423 | - <p> |
424 | - If the project appears legitimate, yet incomplete, that is fine. |
425 | - Approve the project, consider sending a request to ask the owner to |
426 | - update his project with more details because it will help him |
427 | - get contributors. |
428 | - </p> |
429 | - |
430 | - <p> |
431 | - There are a few reasons you may want to withhold approval, and you |
432 | - should contact the project owner if you do. |
433 | - </p> |
434 | - |
435 | - <ul class="bulleted"> |
436 | - <li> |
437 | - The project has no license. |
438 | - </li> |
439 | - <li> |
440 | - The project has only Other/Open source selected as a license and |
441 | - the license info field does not contain a URL to a license, or |
442 | - contains the whole license |
443 | - </li> |
444 | - <li> |
445 | - The Other/Open source license appears to discriminate against who |
446 | - or how the project's work is used. |
447 | - </li> |
448 | - <li> |
449 | - The project is too vague to know if it is legitimate. |
450 | - </li> |
451 | - </ul> |
452 | - |
453 | - <p> |
454 | - If the project looks like a test, a prank, or spam, deactivate it. |
455 | + <div metal:fill-slot="extra_info" class="application-summary" > |
456 | + <h2>Granting approval</h2> |
457 | + |
458 | + <ul class="bulleted"> |
459 | + <li>Does the project use any Launchpad services, such as code or |
460 | + bugs? Mark the <strong>project approved</strong> |
461 | + and <strong>reviewed</strong> now. |
462 | + </li> |
463 | + <li>Are the project's licenses simple and obviously open source |
464 | + and/or free software? Does the project smell legitimate? Mark |
465 | + the <strong>project approved</strong> |
466 | + and <strong>reviewed</strong> now. |
467 | + </li> |
468 | + <li>Does the project appear legitimate but incomplete? That's fine, |
469 | + mark the <strong>project approved</strong> |
470 | + and <strong>reviewed</strong> now. Consider also sending a |
471 | + request to the |
472 | + owner asking them to update the project with more details, so as |
473 | + to help recruit contributors. |
474 | + </li> |
475 | + </ul> |
476 | + |
477 | + <h2>Withholding approval</h2> |
478 | + <p> |
479 | + There are a few reasons you may want to withhold approval. You |
480 | + should always contact the project owner for clarification if you do |
481 | + not grant approval. |
482 | + </p> |
483 | + <ul class="bulleted"> |
484 | + <li>The project has no license.</li> |
485 | + <li>The project has only <strong>Other/Open source</strong> selected |
486 | + as a license and the license info field does not contain a URL |
487 | + to a license, or contains the whole license. |
488 | + </li> |
489 | + <li>The <strong>Other/Open source</strong> license appears to |
490 | + discriminate against who can use the project, or how the |
491 | + project's work can be used. |
492 | + </li> |
493 | + <li>The project details are too vague to know if it is legitimate. |
494 | + </li> |
495 | + </ul> |
496 | + |
497 | + <p> |
498 | + <strong>If the project looks like a test, a prank, or spam, |
499 | + deactivate it.</strong> |
500 | </p> |
501 | |
502 | <input type="hidden" name="next_url" |
503 | @@ -85,8 +87,6 @@ |
504 | </div> |
505 | </div> |
506 | </div> |
507 | - |
508 | - <tal:menu replace="structure view/@@+related-pages" /> |
509 | </div> |
510 | |
511 | </body> |
reviewer rockstar code ui
reviewer bac ui
= Summary =
Bug 445713 describes an ugliness that slipped through the cracks during the UI
3.0 conversion. A project (nee product) has a +edit page that allows you to
change the details of the project. At the bottom of this page are 4 or 5
links that allow you to
* Change details
* Change branding
* Change people
* Review project
* Administer
The problem with these is that this menu is hiding out below the "Change or
Cancel" controls. This menu should be removed and any actions which are not
already exposed, should be added to the project's +index page.
== Proposed fix ==
* Add the "Change branding" link inlined on project/+edit edit-people. pt, product-edit.pt, and product-admin.pt with gationMenu
* Add linked icons to the +edit-people page next to the maintainer and driver
sections
* Replace product-
generic-edit.pt
* Remove all traces of the ProductEditNavi
== Pre-implementation notes ==
I briefly talked with Curtis about the page redesign.
== Implementation details ==
Along the way, I re-organized the project/ +review- license page so that it was
more readable, and more accurately reflected reality. I will request that bac
review the new text.
This was my first experiment with bzr-pipelines. I ran into a few snags but I
think it generally worked well. I tried to segregate the drive-by cleanups
into a separate branch, and it would be great if you could review that too as
a follow up:
lp:~barry/launchpad/445713-cleanups
== Tests ==
% bin/test -vv -t product-menus -t xx-product-driver -t xx-product-edt
or for a more thorough regression test:
% bin/test -vv -t product
== Demo and Q/A ==
* Visit http:// launchpad. dev/firefox launchpad. dev/firefox
* Observe that the maintainer and driver has an edit icon
* Observe that under the project description, there is a "Change branding" link
* Click on "Change branding"; this takes you to the +branding page
* Observe that there is no navigation menu below the "Change Branding" button
* Go back to http://
* Click on the edit icon next to Sample Person (Maintainer)
* Observer that this takes you to the +edit-people page
* Observe that there is no navigation menu
* Enter 'salgado' in the Driver field and click "Save changes"
* Observe that Salgado is now the Driver
* Observer that the icon next to Maintainer Sample Person's name takes you to
the +edit-people page too.
* Observe that the Change details link is already on the +index page
* Observe that the Administer link is already on the +index page
* Observe that the Review project link is already on the +index page
* Observe that http:// launchpad. dev/firefox/ +edit page has no navigation menu launchpad. dev/firefox/ +admin page has no navigation menu launchpad. dev/firefox/ +review- license page has no
* Observe that http://
* Observe that http://
navigation menu
= Launchpad lint =
Checking for conflicts. and issues in doctests and templates.
Running jslint, xmllint, pyflakes, and pylint.
Using normal rules.
Linting changed files: registry/ browser/ configure. zcml registry/ templates/ product- index.pt registry/ stories/ product/ xx-product- driver. txt
lib/lp/
lib/lp/
lib/lp/
li...