Merge lp://staging/~allenap/launchpad/ui-convert-malone-index-3.0-bug-416942 into lp://staging/launchpad
- ui-convert-malone-index-3.0-bug-416942
- Merge into devel
Status: | Merged | ||||
---|---|---|---|---|---|
Merged at revision: | not available | ||||
Proposed branch: | lp://staging/~allenap/launchpad/ui-convert-malone-index-3.0-bug-416942 | ||||
Merge into: | lp://staging/launchpad | ||||
Diff against target: | None lines | ||||
To merge this branch: | bzr merge lp://staging/~allenap/launchpad/ui-convert-malone-index-3.0-bug-416942 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Eleanor Berger (community) | ui | Approve | |
Abel Deuring (community) | Approve | ||
Review via email:
|
Commit message
Description of the change
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Gavin Panella (allenap) wrote : | # |
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Gavin Panella (allenap) wrote : | # |
I also remembered I meant to remove MaloneContextMenu as it's unused, so here's a small additional diff for that:
=== modified file 'lib/canonical/
--- lib/canonical/
+++ lib/canonical/
@@ -322,11 +322,6 @@
/>
- <browser:menus
- module=
- classes=
- />
-
<!-- This is a view on TALES CONTEXTS rather than all dicts. -->
<browser:page
for="*"
=== modified file 'lib/lp/
--- lib/lp/
+++ lib/lp/
@@ -6,7 +6,7 @@
__metaclass__ = type
__all__ = [
'MaloneApp
- 'MaloneContextM
+ 'MaloneRelatedP
]
@@ -16,7 +16,7 @@
import canonical.
from canonical.
- ContextMenu, Link, Navigation, canonical_url, stepto)
+ Link, Navigation, canonical_url, stepto)
from canonical.
from canonical.
@@ -69,16 +69,6 @@
return bug
-class MaloneContextMe
- # XXX mpt 2006-03-27: No longer visible on Bugs front page.
- usedfor = IMaloneApplication
- links = ['cvetracker']
-
- def cvetracker(self):
- text = 'CVE tracker'
- return Link('cve/', text, icon='cve')
-
-
class MaloneRelatedPa
facet = 'bugs'
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Abel Deuring (adeuring) : | # |
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Eleanor Berger (intellectronica) wrote : | # |
We agreed that this page could do with a redesign at some point, but for now this conversion is sufficient.
Preview Diff
1 | === modified file 'lib/lp/bugs/browser/configure.zcml' | |||
2 | --- lib/lp/bugs/browser/configure.zcml 2009-08-27 15:11:38 +0000 | |||
3 | +++ lib/lp/bugs/browser/configure.zcml 2009-09-04 15:06:34 +0000 | |||
4 | @@ -209,12 +209,12 @@ | |||
5 | 209 | facet="bugs" | 209 | facet="bugs" |
6 | 210 | permission="zope.Public"> | 210 | permission="zope.Public"> |
7 | 211 | <browser:page | 211 | <browser:page |
8 | 212 | name="+about" | ||
9 | 213 | template="../templates/malone-about.pt"/> | ||
10 | 214 | <browser:page | ||
11 | 215 | name="+portlet-stats" | 212 | name="+portlet-stats" |
12 | 216 | template="../templates/malone-portlet-stats.pt"/> | 213 | template="../templates/malone-portlet-stats.pt"/> |
13 | 217 | </browser:pages> | 214 | </browser:pages> |
14 | 215 | <browser:menus | ||
15 | 216 | classes="MaloneRelatedPages" | ||
16 | 217 | module="lp.bugs.browser.malone"/> | ||
17 | 218 | <browser:page | 218 | <browser:page |
18 | 219 | name="+filebug" | 219 | name="+filebug" |
19 | 220 | for="lp.bugs.interfaces.malone.IMaloneApplication" | 220 | for="lp.bugs.interfaces.malone.IMaloneApplication" |
20 | 221 | 221 | ||
21 | === modified file 'lib/lp/bugs/browser/malone.py' | |||
22 | --- lib/lp/bugs/browser/malone.py 2009-06-25 00:40:31 +0000 | |||
23 | +++ lib/lp/bugs/browser/malone.py 2009-09-04 15:06:34 +0000 | |||
24 | @@ -18,7 +18,9 @@ | |||
25 | 18 | from canonical.launchpad.webapp import ( | 18 | from canonical.launchpad.webapp import ( |
26 | 19 | ContextMenu, Link, Navigation, canonical_url, stepto) | 19 | ContextMenu, Link, Navigation, canonical_url, stepto) |
27 | 20 | from canonical.launchpad.webapp.authorization import check_permission | 20 | from canonical.launchpad.webapp.authorization import check_permission |
28 | 21 | from canonical.launchpad.webapp.menu import NavigationMenu | ||
29 | 21 | 22 | ||
30 | 23 | from lp.bugs.browser.bug import MaloneView | ||
31 | 22 | from lp.bugs.interfaces.bug import IBugSet | 24 | from lp.bugs.interfaces.bug import IBugSet |
32 | 23 | from lp.bugs.interfaces.bugtracker import IBugTrackerSet | 25 | from lp.bugs.interfaces.bugtracker import IBugTrackerSet |
33 | 24 | from lp.bugs.interfaces.cve import ICveSet | 26 | from lp.bugs.interfaces.cve import ICveSet |
34 | @@ -75,3 +77,20 @@ | |||
35 | 75 | def cvetracker(self): | 77 | def cvetracker(self): |
36 | 76 | text = 'CVE tracker' | 78 | text = 'CVE tracker' |
37 | 77 | return Link('cve/', text, icon='cve') | 79 | return Link('cve/', text, icon='cve') |
38 | 80 | |||
39 | 81 | |||
40 | 82 | class MaloneRelatedPages(NavigationMenu): | ||
41 | 83 | |||
42 | 84 | facet = 'bugs' | ||
43 | 85 | title = 'Related pages' | ||
44 | 86 | usedfor = MaloneView | ||
45 | 87 | links = ['bugtrackers', 'cvetracker'] | ||
46 | 88 | |||
47 | 89 | def bugtrackers(self): | ||
48 | 90 | url = canonical_url(getUtility(IBugTrackerSet)) | ||
49 | 91 | text = "Bug trackers" | ||
50 | 92 | return Link(url, text, icon='bug') | ||
51 | 93 | |||
52 | 94 | def cvetracker(self): | ||
53 | 95 | text = 'CVE tracker' | ||
54 | 96 | return Link('cve/', text, icon='cve') | ||
55 | 78 | 97 | ||
56 | === modified file 'lib/lp/bugs/stories/bugs/xx-front-page-statistics.txt' | |||
57 | --- lib/lp/bugs/stories/bugs/xx-front-page-statistics.txt 2009-06-12 16:36:02 +0000 | |||
58 | +++ lib/lp/bugs/stories/bugs/xx-front-page-statistics.txt 2009-09-04 15:05:26 +0000 | |||
59 | @@ -8,11 +8,10 @@ | |||
60 | 8 | * number of CVE bug links | 8 | * number of CVE bug links |
61 | 9 | 9 | ||
62 | 10 | >>> anon_browser.open('http://bugs.launchpad.dev/') | 10 | >>> anon_browser.open('http://bugs.launchpad.dev/') |
68 | 11 | >>> statistics = find_tag_by_id( | 11 | >>> statistics = find_portlet( |
69 | 12 | ... anon_browser.contents, 'application-footer') | 12 | ... anon_browser.contents, 'Statistics') |
70 | 13 | >>> for text in statistics.findAll(text=True): | 13 | >>> print extract_text(statistics) |
71 | 14 | ... if text.strip(): | 14 | Statistics |
67 | 15 | ... print text | ||
72 | 16 | 14 bugs reported across 7 projects | 15 | 14 bugs reported across 7 projects |
73 | 17 | including 12 links to 8 bug trackers | 16 | including 12 links to 8 bug trackers |
74 | 18 | 4 bugs are shared across multiple projects | 17 | 4 bugs are shared across multiple projects |
75 | @@ -31,4 +30,3 @@ | |||
76 | 31 | >>> anon_browser.getLink('CVE entries').click() | 30 | >>> anon_browser.getLink('CVE entries').click() |
77 | 32 | >>> anon_browser.title | 31 | >>> anon_browser.title |
78 | 33 | 'Launchpad CVE tracker' | 32 | 'Launchpad CVE tracker' |
79 | 34 | |||
80 | 35 | 33 | ||
81 | === modified file 'lib/lp/bugs/stories/bugs/xx-malone-homepage.txt' | |||
82 | --- lib/lp/bugs/stories/bugs/xx-malone-homepage.txt 2009-06-12 16:36:02 +0000 | |||
83 | +++ lib/lp/bugs/stories/bugs/xx-malone-homepage.txt 2009-09-04 15:06:34 +0000 | |||
84 | @@ -3,7 +3,24 @@ | |||
85 | 3 | >>> browser.open('http://bugs.launchpad.dev/') | 3 | >>> browser.open('http://bugs.launchpad.dev/') |
86 | 4 | >>> browser.url | 4 | >>> browser.url |
87 | 5 | 'http://bugs.launchpad.dev/' | 5 | 'http://bugs.launchpad.dev/' |
92 | 6 | >>> print browser.contents | 6 | |
93 | 7 | <!DOCTYPE... | 7 | >>> print_location(browser.contents) |
94 | 8 | ...Bug tracking... | 8 | Hierarchy: None displayed |
95 | 9 | ... | 9 | Tabs: |
96 | 10 | * Launchpad Home - http://launchpad.dev/ | ||
97 | 11 | * Code - http://code.launchpad.dev/ | ||
98 | 12 | * Bugs (selected) - http://bugs.launchpad.dev/ | ||
99 | 13 | * Blueprints - http://blueprints.launchpad.dev/ | ||
100 | 14 | * Translations - http://translations.launchpad.dev/ | ||
101 | 15 | * Answers - http://answers.launchpad.dev/ | ||
102 | 16 | Main heading: Bug tracking | ||
103 | 17 | |||
104 | 18 | There are a few related pages linked in a portlet: | ||
105 | 19 | |||
106 | 20 | >>> related_pages = find_portlet(browser.contents, 'Related pages') | ||
107 | 21 | >>> for link in related_pages.findAll('a'): | ||
108 | 22 | ... print "%s\n --> %s" % (extract_text(link), link.get('href')) | ||
109 | 23 | Bug trackers | ||
110 | 24 | --> http://bugs.launchpad.dev/bugs/bugtrackers | ||
111 | 25 | CVE tracker | ||
112 | 26 | --> http://bugs.launchpad.dev/bugs/cve | ||
113 | 10 | 27 | ||
114 | === modified file 'lib/lp/bugs/stories/guided-filebug/xx-filing-security-bugs.txt' | |||
115 | --- lib/lp/bugs/stories/guided-filebug/xx-filing-security-bugs.txt 2009-06-12 16:36:02 +0000 | |||
116 | +++ lib/lp/bugs/stories/guided-filebug/xx-filing-security-bugs.txt 2009-08-24 15:27:48 +0000 | |||
117 | @@ -3,8 +3,7 @@ | |||
118 | 3 | There's an option to file a security related bug on the +filebug page. | 3 | There's an option to file a security related bug on the +filebug page. |
119 | 4 | It's only visible on the second step, after the summary has been submitted. | 4 | It's only visible on the second step, after the summary has been submitted. |
120 | 5 | 5 | ||
123 | 6 | >>> user_browser.open('http://bugs.launchpad.dev/') | 6 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
122 | 7 | >>> user_browser.getLink('Report a bug').click() | ||
124 | 8 | >>> user_browser.getControl('This bug is a security vulnerability') | 7 | >>> user_browser.getControl('This bug is a security vulnerability') |
125 | 9 | Traceback (most recent call last): | 8 | Traceback (most recent call last): |
126 | 10 | ... | 9 | ... |
127 | 11 | 10 | ||
128 | === modified file 'lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-distribution.txt' | |||
129 | --- lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-distribution.txt 2009-07-24 15:35:47 +0000 | |||
130 | +++ lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-distribution.txt 2009-08-24 15:27:48 +0000 | |||
131 | @@ -2,8 +2,7 @@ | |||
132 | 2 | 2 | ||
133 | 3 | On the Bugs front page there is a link to file a bug. | 3 | On the Bugs front page there is a link to file a bug. |
134 | 4 | 4 | ||
137 | 5 | >>> user_browser.open('http://bugs.launchpad.dev/') | 5 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
136 | 6 | >>> user_browser.getLink('Report a bug').click() | ||
138 | 7 | >>> user_browser.title | 6 | >>> user_browser.title |
139 | 8 | 'Report a bug' | 7 | 'Report a bug' |
140 | 9 | 8 | ||
141 | @@ -41,8 +40,7 @@ | |||
142 | 41 | After we selected a target and entered a summary, a list of possible | 40 | After we selected a target and entered a summary, a list of possible |
143 | 42 | duplicates are presented. | 41 | duplicates are presented. |
144 | 43 | 42 | ||
147 | 44 | >>> user_browser.open('http://bugs.launchpad.dev/') | 43 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
146 | 45 | >>> user_browser.getLink('Report a bug').click() | ||
148 | 46 | 44 | ||
149 | 47 | >>> user_browser.getControl('Distribution').selected = True | 45 | >>> user_browser.getControl('Distribution').selected = True |
150 | 48 | >>> user_browser.getControl( | 46 | >>> user_browser.getControl( |
151 | @@ -72,8 +70,7 @@ | |||
152 | 72 | When reporting a new bug a user might enter a summary, leaving the | 70 | When reporting a new bug a user might enter a summary, leaving the |
153 | 73 | location as it is (which is Ubuntu, no package): | 71 | location as it is (which is Ubuntu, no package): |
154 | 74 | 72 | ||
157 | 75 | >>> user_browser.open('http://bugs.launchpad.dev/') | 73 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
156 | 76 | >>> user_browser.getLink('Report a bug').click() | ||
158 | 77 | >>> user_browser.getControl('Summary').value = 'Foo' | 74 | >>> user_browser.getControl('Summary').value = 'Foo' |
159 | 78 | >>> user_browser.getControl('Continue').click() | 75 | >>> user_browser.getControl('Continue').click() |
160 | 79 | >>> user_browser.url | 76 | >>> user_browser.url |
161 | 80 | 77 | ||
162 | === modified file 'lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-package.txt' | |||
163 | --- lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-package.txt 2009-07-24 15:35:47 +0000 | |||
164 | +++ lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-package.txt 2009-08-24 15:27:48 +0000 | |||
165 | @@ -2,8 +2,7 @@ | |||
166 | 2 | 2 | ||
167 | 3 | On the Bugs front page there is a link to file a bug. | 3 | On the Bugs front page there is a link to file a bug. |
168 | 4 | 4 | ||
171 | 5 | >>> user_browser.open('http://bugs.launchpad.dev/') | 5 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
170 | 6 | >>> user_browser.getLink('Report a bug').click() | ||
172 | 7 | >>> user_browser.title | 6 | >>> user_browser.title |
173 | 8 | 'Report a bug' | 7 | 'Report a bug' |
174 | 9 | 8 | ||
175 | @@ -39,8 +38,7 @@ | |||
176 | 39 | 38 | ||
177 | 40 | If we enter an non-existent package, we get an error message. | 39 | If we enter an non-existent package, we get an error message. |
178 | 41 | 40 | ||
181 | 42 | >>> user_browser.open('http://bugs.launchpad.dev/') | 41 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
180 | 43 | >>> user_browser.getLink('Report a bug').click() | ||
182 | 44 | >>> user_browser.getControl('Distribution').selected = True | 42 | >>> user_browser.getControl('Distribution').selected = True |
183 | 45 | >>> user_browser.getControl( | 43 | >>> user_browser.getControl( |
184 | 46 | ... name='field.bugtarget.distribution').value = ['ubuntu'] | 44 | ... name='field.bugtarget.distribution').value = ['ubuntu'] |
185 | 47 | 45 | ||
186 | === modified file 'lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-product.txt' | |||
187 | --- lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-product.txt 2009-07-24 15:35:47 +0000 | |||
188 | +++ lib/lp/bugs/stories/guided-filebug/xx-frontpage-filebug-product.txt 2009-08-24 16:11:21 +0000 | |||
189 | @@ -2,8 +2,7 @@ | |||
190 | 2 | 2 | ||
191 | 3 | On the Bugs front page there is a link to file a bug. | 3 | On the Bugs front page there is a link to file a bug. |
192 | 4 | 4 | ||
195 | 5 | >>> user_browser.open('http://bugs.launchpad.dev/') | 5 | >>> user_browser.open('http://bugs.launchpad.dev/bugs/+filebug') |
194 | 6 | >>> user_browser.getLink('Report a bug').click() | ||
196 | 7 | >>> user_browser.title | 6 | >>> user_browser.title |
197 | 8 | 'Report a bug' | 7 | 'Report a bug' |
198 | 9 | 8 | ||
199 | 10 | 9 | ||
200 | === removed file 'lib/lp/bugs/templates/malone-about.pt' | |||
201 | --- lib/lp/bugs/templates/malone-about.pt 2009-07-17 17:59:07 +0000 | |||
202 | +++ lib/lp/bugs/templates/malone-about.pt 1970-01-01 00:00:00 +0000 | |||
203 | @@ -1,56 +0,0 @@ | |||
204 | 1 | <html | ||
205 | 2 | xmlns="http://www.w3.org/1999/xhtml" | ||
206 | 3 | xmlns:tal="http://xml.zope.org/namespaces/tal" | ||
207 | 4 | xmlns:metal="http://xml.zope.org/namespaces/metal" | ||
208 | 5 | xmlns:i18n="http://xml.zope.org/namespaces/i18n" | ||
209 | 6 | xml:lang="en" | ||
210 | 7 | lang="en" | ||
211 | 8 | dir="ltr" | ||
212 | 9 | metal:use-macro="context/@@main_template/master" | ||
213 | 10 | i18n:domain="malone" | ||
214 | 11 | > | ||
215 | 12 | <body> | ||
216 | 13 | <metal:heading fill-slot="pageheading"> | ||
217 | 14 | <h1>About the Launchpad Bug Tracker</h1> | ||
218 | 15 | </metal:heading> | ||
219 | 16 | |||
220 | 17 | <metal:leftportlets fill-slot="portlets_one"> | ||
221 | 18 | <div tal:replace="structure context/@@+portlet-stats" /> | ||
222 | 19 | </metal:leftportlets> | ||
223 | 20 | |||
224 | 21 | <div metal:fill-slot="main"> | ||
225 | 22 | |||
226 | 23 | <p> | ||
227 | 24 | The Launchpad Bug Tracker is a collaborative bug tracker for the | ||
228 | 25 | Free Software universe. It works a bit differently from other | ||
229 | 26 | trackers. | ||
230 | 27 | </p> | ||
231 | 28 | <h2>One bug, many places</h2> | ||
232 | 29 | <p> | ||
233 | 30 | Some people find bugs in software they install directly from its | ||
234 | 31 | developers. | ||
235 | 32 | Other people find bugs in software packages they install as part of | ||
236 | 33 | a distribution. | ||
237 | 34 | </p> | ||
238 | 35 | <p> | ||
239 | 36 | When these are the same bug, Launchpad can link them together. | ||
240 | 37 | Once one team fixes the bug, others can share the fix. | ||
241 | 38 | </p> | ||
242 | 39 | <h2>One world, many bug trackers</h2> | ||
243 | 40 | <p> | ||
244 | 41 | The more software teams use Launchpad, the more useful it becomes. | ||
245 | 42 | But if a team uses Bugzilla, Sourceforge, or debbugs, | ||
246 | 43 | Launchpad can link their bug reports with those in Launchpad, | ||
247 | 44 | and let you know when they’re fixed. | ||
248 | 45 | </p> | ||
249 | 46 | <h2>How to get started</h2> | ||
250 | 47 | <p> | ||
251 | 48 | To use Launchpad for your project, first | ||
252 | 49 | <a href="/projects">check whether it’s registered already</a>. | ||
253 | 50 | The admin for a project can set that project to use Launchpad | ||
254 | 51 | (this is off by default so that people don’t report bugs that | ||
255 | 52 | nobody reads). | ||
256 | 53 | </p> | ||
257 | 54 | </div> | ||
258 | 55 | </body> | ||
259 | 56 | </html> | ||
260 | 57 | 0 | ||
261 | === modified file 'lib/lp/bugs/templates/malone-index.pt' | |||
262 | --- lib/lp/bugs/templates/malone-index.pt 2009-07-17 17:59:07 +0000 | |||
263 | +++ lib/lp/bugs/templates/malone-index.pt 2009-09-04 15:06:34 +0000 | |||
264 | @@ -1,77 +1,30 @@ | |||
266 | 1 | <html | 1 | <malone-index |
267 | 2 | xmlns="http://www.w3.org/1999/xhtml" | 2 | xmlns="http://www.w3.org/1999/xhtml" |
268 | 3 | xmlns:tal="http://xml.zope.org/namespaces/tal" | 3 | xmlns:tal="http://xml.zope.org/namespaces/tal" |
269 | 4 | xmlns:metal="http://xml.zope.org/namespaces/metal" | 4 | xmlns:metal="http://xml.zope.org/namespaces/metal" |
270 | 5 | xmlns:i18n="http://xml.zope.org/namespaces/i18n" | 5 | xmlns:i18n="http://xml.zope.org/namespaces/i18n" |
284 | 6 | xml:lang="en" | 6 | metal:use-macro="view/macro:page/main_only" |
285 | 7 | lang="en" | 7 | i18n:domain="malone"> |
286 | 8 | dir="ltr" | 8 | |
287 | 9 | metal:use-macro="view/macro:page/applicationhome" | 9 | <h1 metal:fill-slot="heading">Bug tracking</h1> |
288 | 10 | i18n:domain="malone" | 10 | |
289 | 11 | > | 11 | <div metal:fill-slot="main"> |
290 | 12 | <body> | 12 | |
291 | 13 | 13 | <div class="top-portlet"> | |
292 | 14 | <div metal:fill-slot="help"> | 14 | <p class="error message" |
293 | 15 | <p> | 15 | tal:condition="view/error_message" |
294 | 16 | Read more <a href="+about">about the Launchpad Bug Tracker</a>, | 16 | tal:content="view/error_message"> |
295 | 17 | the collaborative bug tracker for the open source world, and how you | 17 | Error message. |
283 | 18 | can share information about bugs in distributions and upstream. | ||
296 | 19 | </p> | 18 | </p> |
297 | 20 | <ul class="info"> | ||
298 | 21 | <li> | ||
299 | 22 | <a href="https://help.launchpad.net/BugTrackerEmailInterface" | ||
300 | 23 | >Sending commands by e-mail</a> | ||
301 | 24 | </li> | ||
302 | 25 | </ul> | ||
303 | 26 | </div> | ||
304 | 27 | |||
305 | 28 | <h1 metal:fill-slot="heading">Bug tracking</h1> | ||
306 | 29 | |||
307 | 30 | <div metal:fill-slot="main"> | ||
308 | 31 | |||
309 | 32 | <ul class="rollover buttons"> | ||
310 | 33 | <li> | ||
311 | 34 | <a href="/+tour/bugs" | ||
312 | 35 | tal:attributes="href string:${rooturl}+tour/bugs"> | ||
313 | 36 | <img | ||
314 | 37 | alt="Take a tour" | ||
315 | 38 | src="/+icing/but-lrg-takeatour.gif" | ||
316 | 39 | /> | ||
317 | 40 | </a> | ||
318 | 41 | </li> | ||
319 | 42 | <li> | ||
320 | 43 | <a href="+filebug"> | ||
321 | 44 | <img | ||
322 | 45 | alt="Report a bug" | ||
323 | 46 | src="/+icing/but-lrg-reportabug.gif" | ||
324 | 47 | /> | ||
325 | 48 | </a> | ||
326 | 49 | </li> | ||
327 | 50 | </ul> | ||
328 | 51 | <p | ||
329 | 52 | tal:condition="view/error_message" | ||
330 | 53 | tal:content="view/error_message" | ||
331 | 54 | class="error message" | ||
332 | 55 | >Error message.</p> | ||
333 | 56 | <form class="central" action="/bugs/+bugs" method="get"> | 19 | <form class="central" action="/bugs/+bugs" method="get"> |
334 | 57 | <table> | 20 | <table> |
335 | 58 | <tbody> | 21 | <tbody> |
336 | 59 | <tr> | 22 | <tr> |
337 | 60 | <td style="text-align: right;"> | 23 | <td style="text-align: right;"> |
345 | 61 | <input | 24 | <input tal:replace="structure view/widgets/searchtext" /> |
339 | 62 | tal:replace="structure view/widgets/searchtext" | ||
340 | 63 | id="text" | ||
341 | 64 | type="text" | ||
342 | 65 | name="field.searchtext" | ||
343 | 66 | size="50" | ||
344 | 67 | /> | ||
346 | 68 | </td> | 25 | </td> |
347 | 69 | <td> | 26 | <td> |
353 | 70 | <input | 27 | <input type="submit" name="search" value="Search Bug Reports" /> |
349 | 71 | type="submit" | ||
350 | 72 | name="search" | ||
351 | 73 | value="Search Bug Reports" | ||
352 | 74 | /> | ||
354 | 75 | </td> | 28 | </td> |
355 | 76 | </tr> | 29 | </tr> |
356 | 77 | <tr tal:define="options nocall:view/widgets/scope/options; | 30 | <tr tal:define="options nocall:view/widgets/scope/options; |
357 | @@ -80,24 +33,11 @@ | |||
358 | 80 | style="text-align: right;"> | 33 | style="text-align: right;"> |
359 | 81 | <div> | 34 | <div> |
360 | 82 | <label> | 35 | <label> |
368 | 83 | <input | 36 | <input tal:replace="structure options/all" /> |
362 | 84 | tal:replace="structure options/all" | ||
363 | 85 | name="scope" | ||
364 | 86 | type="radio" | ||
365 | 87 | value="all" | ||
366 | 88 | checked="checked" | ||
367 | 89 | /> | ||
369 | 90 | All projects | 37 | All projects |
370 | 91 | </label> | 38 | </label> |
371 | 92 | <label> | 39 | <label> |
380 | 93 | <input | 40 | <input tal:replace="structure options/project" /> |
373 | 94 | tal:replace="structure options/project" | ||
374 | 95 | name="scope" | ||
375 | 96 | id="scope.project" | ||
376 | 97 | type="radio" | ||
377 | 98 | value="project" | ||
378 | 99 | onclick="document.getElementById('field.target').focus();" | ||
379 | 100 | /> | ||
381 | 101 | One project: | 41 | One project: |
382 | 102 | <tal:input replace="structure target_widget/inputField" /> | 42 | <tal:input replace="structure target_widget/inputField" /> |
383 | 103 | </label> | 43 | </label> |
384 | @@ -118,41 +58,47 @@ | |||
385 | 118 | tal:content="structure script" /> | 58 | tal:content="structure script" /> |
386 | 119 | </form> | 59 | </form> |
387 | 120 | <p id="application-summary"> | 60 | <p id="application-summary"> |
391 | 121 | Launchpad’s bug tracker helps software teams to | 61 | Launchpad’s bug tracker helps software teams to |
392 | 122 | collaborate on bug reports and fixes. | 62 | collaborate on bug reports and fixes. |
393 | 123 | (<a href="https://help.launchpad.net/Bugs">Read our guide</a>) | 63 | (<a href="https://help.launchpad.net/Bugs">Read our guide</a> or |
394 | 64 | <a href="/+tour">take a tour</a>) | ||
395 | 124 | </p> | 65 | </p> |
398 | 125 | <div class="columns"> | 66 | </div> |
399 | 126 | <div class="two column left"> | 67 | |
400 | 68 | <div class="yui-g"> | ||
401 | 69 | <div class="first yui-u"> | ||
402 | 70 | <div class="portlet"> | ||
403 | 127 | <h2>Recently reported</h2> | 71 | <h2>Recently reported</h2> |
404 | 128 | <table> | 72 | <table> |
405 | 129 | <tbody> | 73 | <tbody> |
410 | 130 | <tr | 74 | <tr tal:repeat="bug context/latest_bugs" |
411 | 131 | tal:repeat="bug context/latest_bugs" | 75 | tal:replace="structure bug/@@+listing-detailed" /> |
408 | 132 | tal:replace="structure bug/@@+listing-detailed" | ||
409 | 133 | /> | ||
412 | 134 | </tbody> | 76 | </tbody> |
413 | 135 | </table> | 77 | </table> |
414 | 136 | </div> | 78 | </div> |
416 | 137 | <div class="two column right"> | 79 | </div> |
417 | 80 | <div class="yui-u"> | ||
418 | 81 | <div class="portlet"> | ||
419 | 138 | <h2>Recently fixed</h2> | 82 | <h2>Recently fixed</h2> |
420 | 139 | <table id="fixed-bugs"> | 83 | <table id="fixed-bugs"> |
421 | 140 | <tbody> | 84 | <tbody> |
426 | 141 | <tr | 85 | <tr tal:repeat="fixed_bug view/getMostRecentlyFixedBugs" |
427 | 142 | tal:repeat="fixed_bug view/getMostRecentlyFixedBugs" | 86 | tal:replace="structure fixed_bug/@@+listing-detailed" /> |
424 | 143 | tal:replace="structure fixed_bug/@@+listing-detailed" | ||
425 | 144 | /> | ||
428 | 145 | </tbody> | 87 | </tbody> |
429 | 146 | </table> | 88 | </table> |
430 | 147 | </div> | 89 | </div> |
442 | 148 | </div><!--columns--> | 90 | </div> |
443 | 149 | <div class="clear"></div> | 91 | </div> |
444 | 150 | <div | 92 | |
445 | 151 | id="application-footer" | 93 | <div class="yui-g"> |
446 | 152 | tal:content="structure context/@@+portlet-stats" | 94 | <div class="first yui-u"> |
447 | 153 | /> | 95 | <div tal:replace="structure context/@@+portlet-stats" /> |
448 | 154 | 96 | </div> | |
449 | 155 | 97 | <div class="yui-u"> | |
450 | 156 | </div><!--main--> | 98 | <tal:menu replace="structure view/@@+related-pages" /> |
451 | 157 | </body> | 99 | </div> |
452 | 158 | </html> | 100 | </div> |
453 | 101 | |||
454 | 102 | </div> | ||
455 | 103 | |||
456 | 104 | </malone-index> | ||
457 | 159 | 105 | ||
458 | === modified file 'lib/lp/bugs/templates/malone-portlet-stats.pt' | |||
459 | --- lib/lp/bugs/templates/malone-portlet-stats.pt 2009-07-17 17:59:07 +0000 | |||
460 | +++ lib/lp/bugs/templates/malone-portlet-stats.pt 2009-09-04 15:05:26 +0000 | |||
461 | @@ -1,24 +1,28 @@ | |||
463 | 1 | <tal:root | 1 | <div |
464 | 2 | xmlns:tal="http://xml.zope.org/namespaces/tal" | 2 | xmlns:tal="http://xml.zope.org/namespaces/tal" |
465 | 3 | xmlns:metal="http://xml.zope.org/namespaces/metal" | 3 | xmlns:metal="http://xml.zope.org/namespaces/metal" |
466 | 4 | xmlns:i18n="http://xml.zope.org/namespaces/i18n" | 4 | xmlns:i18n="http://xml.zope.org/namespaces/i18n" |
487 | 5 | omit-tag=""> | 5 | class="portlet"> |
488 | 6 | <div> | 6 | <h2>Statistics</h2> |
489 | 7 | <strong tal:content="context/bug_count">5</strong> bugs reported across | 7 | <ul> |
490 | 8 | <strong tal:content="context/projects_with_bugs_count">5</strong> projects | 8 | <li> |
491 | 9 | </div> | 9 | <strong tal:content="context/bug_count">5</strong> bugs reported |
492 | 10 | <div> | 10 | across <strong tal:content="context/projects_with_bugs_count" /> |
493 | 11 | including <strong tal:content="context/bugwatch_count">5</strong> links | 11 | projects |
494 | 12 | to <strong tal:content="context/bugtracker_count">5</strong> | 12 | </li> |
495 | 13 | <a href="/bugs/bugtrackers">bug trackers</a> | 13 | <li> |
496 | 14 | </div> | 14 | including <strong tal:content="context/bugwatch_count" /> links |
497 | 15 | <div> | 15 | to <strong tal:content="context/bugtracker_count">5</strong> <a |
498 | 16 | <strong tal:content="context/shared_bug_count">7</strong> bugs are | 16 | href="/bugs/bugtrackers">bug trackers</a> |
499 | 17 | <a href="http://help.launchpad.net/CrossProjectBugTracking">shared across | 17 | </li> |
500 | 18 | multiple projects</a> | 18 | <li> |
501 | 19 | </div> | 19 | <strong tal:content="context/shared_bug_count">7</strong> bugs are |
502 | 20 | <div> | 20 | <a href="http://help.launchpad.net/CrossProjectBugTracking">shared |
503 | 21 | and <strong tal:content="view/getCveBugLinkCount">5</strong> | 21 | across multiple projects</a> |
504 | 22 | bugs are related to <a href="/bugs/cve">CVE entries</a> | 22 | </li> |
505 | 23 | </div> | 23 | <li> |
506 | 24 | </tal:root> | 24 | and <strong tal:content="view/getCveBugLinkCount">5</strong> |
507 | 25 | bugs are related to <a href="/bugs/cve">CVE entries</a> | ||
508 | 26 | </li> | ||
509 | 27 | </ul> | ||
510 | 28 | </div> |
This does the mechanical changes to the malone index page /bugs.launchpad .dev/) to convert it to 3.0 layout. It
(i.e. https:/
looks okay, but frankly, it needs some design before it'll make much
sense.
I manually changed the side links (Report a bug and Take a tour) into
an involvement menu, but it was suggested (don't remember who by) that
the links it contained (Take a tour and Report a bug) should be folded
into the main content of the page (Take a tour) or dropped from the
page (Report a bug). Apparently, we're going to phase out reporting
bugs from the bugs front page, so this makes sense.
I changed the stats portlet into a 3.0 stats portlet and dropped the
application-footer class, because it looked wrong. As I said before,
this pages needs more design, but it looks crap in production already
so I don't think it'll do any harm to land this as-is.
I've also added a Related pages portlet, just because I've noticed
before that the only link to the list of external bug trackers is from
the stats blurb. I think it needs a better link, if only to have
something concrete to refer to from the help wiki. It also has a link
to the CVE tracker, just for good measure, and because it has a cool
icon.
./bin/test -vvct 'lp/bugs. *(malone| front-? page)'
Lint free.