Merge lp:~sinzui/launchpad/source-package-ui into lp:launchpad

Proposed by Curtis Hovey
Status: Merged
Approved by: Aaron Bentley
Approved revision: no longer in the source branch.
Merged at revision: not available
Proposed branch: lp:~sinzui/launchpad/source-package-ui
Merge into: lp:launchpad
Diff against target: None lines
To merge this branch: bzr merge lp:~sinzui/launchpad/source-package-ui
Reviewer Review Type Date Requested Status
Aaron Bentley (community) code Approve
Martin Albisetti (community) ui Approve
Review via email: mp+11718@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Curtis Hovey (sinzui) wrote :
Download full text (3.4 KiB)

This is my branch to update the last source package pages to UI 3.0.

    lp:~sinzui/launchpad/source-package-ui
    Diff size: 651
    Launchpad bug: https://bugs.launchpad.net/bugs/429020
    Test command: ./bin/test -vv \
        -t question-add.txt \
        -t xx-sourcepackage-packaging.txt \
        -t xx-distroseries-sources
    Pre-implementation: no one
    Target release: 3.1.0

= Update the last source package pages to UI 3.0 =

sourcepackage-gethelp.pt
    * Move the template to answers. Update it to 3.0.

sourcepackage-packaging.pt
    * Linkify the items in the table so that the portlets are not needed.
    * Update the page to UI 3.0

sourcepackage-index.pt
    * Move the details portlet to the top of the first column, Move Upstream
      associations to the top right column.
    * Move Releases in Ubuntu and Upstream release series inline.
    * Move Changelog, Show builds, and Show upstream links into content
    * Change upstream link and Set upstream link are identical; merge them.
    * I considered the moving the download files to the side portlets, but
      their purpose is not really for users, be developers, so I think they
      belong on the content.

== QA ==

Compare
    http://people.canonical.com/~curtis/sourcepackage.png
With
    https://edge.launchpad.net/ubuntu/karmic/+source/alsa-utils

== Lint ==

Linting changed files:
  lib/canonical/launchpad/pagetitles.py
  lib/lp/answers/stories/question-add.txt
  lib/lp/answers/templates/sourcepackage-gethelp.pt
  lib/lp/registry/browser/configure.zcml
  lib/lp/registry/browser/sourcepackage.py
  lib/lp/registry/templates/sourcepackage-index.pt
  lib/lp/registry/templates/sourcepackage-packaging.pt
  lib/lp/registry/templates/sourcepackage-portlet-details.pt
  lib/lp/soyuz/stories/soyuz/xx-distroseries-sources.txt

== Test ==

    * lib/lp/answers/stories/question-add.txt
      * Added a test to verify that the breadcrumb shows up in the page title.
        This is a known issue that Salgado has a fix for. It is out of scope
        for this branch.
      * Updated test to show the page uses the standard link.
    * lib/lp/soyuz/stories/soyuz/xx-distroseries-sources.txt
      * Updated brittle test.

== Implementation ==

    * lib/canonical/launchpad/pagetitles.py
      * Removed unused page titles.
    * lib/lp/answers/templates/sourcepackage-gethelp.pt
      * Moved page to answers.
      * Updated the page to 3.0
      * Switched to standard links.
    * lib/lp/registry/browser/configure.zcml
      * Updated config to use the template from the lp/ansers
      * Registered +packaging as its own view.
    * lib/lp/registry/browser/sourcepackage.py
      * Added SourcePackageHelpView and SourcePackagePackaging to provide
        unique heading and titles to the pages.
    * lib/lp/registry/templates/sourcepackage-index.pt
      * Moved a lot of content around, and changed a many <ul> in <dl>.
        But as you can see from the one test change, the content has not
        changed at all. If the one test was not checking markup, there would
        have been no failures.
      * See the picture if you do not want to run the server.
    * lib/lp/registry/template...

Read more...

Revision history for this message
Martin Albisetti (beuno) wrote :

For a mechanical change, this looks great.
It needs the h1, and there are a few comments on IRC that would be great to have.

review: Approve (ui)
Revision history for this message
Aaron Bentley (abentley) :
review: Approve (code)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'lib/canonical/launchpad/pagetitles.py'
--- lib/canonical/launchpad/pagetitles.py 2009-09-14 15:16:12 +0000
+++ lib/canonical/launchpad/pagetitles.py 2009-09-14 18:06:44 +0000
@@ -904,14 +904,6 @@
904904
905sourcepackage_filebug = ContextTitle("Report a bug about %s")905sourcepackage_filebug = ContextTitle("Report a bug about %s")
906906
907sourcepackage_gethelp = ContextTitle('Help and support options for %s')
908
909sourcepackage_packaging = ContextTitle('%s upstream links')
910
911def sourcepackage_index(context, view):
912 """Return the page title for a source package in a distroseries."""
913 return '%s source packages' % context.distroseries.title
914
915sourcepackage_translate = ContextTitle('Help translate %s')907sourcepackage_translate = ContextTitle('Help translate %s')
916908
917sourcepackagenames_index = 'Source package name set'909sourcepackagenames_index = 'Source package name set'
918910
=== modified file 'lib/lp/answers/stories/question-add.txt'
--- lib/lp/answers/stories/question-add.txt 2009-09-09 06:37:22 +0000
+++ lib/lp/answers/stories/question-add.txt 2009-09-13 20:51:35 +0000
@@ -32,8 +32,9 @@
32 ... 'http://launchpad.dev/ubuntu/hoary/'32 ... 'http://launchpad.dev/ubuntu/hoary/'
33 ... '+sources/mozilla-firefox/+gethelp')33 ... '+sources/mozilla-firefox/+gethelp')
34 >>> user_browser.title34 >>> user_browser.title
35 'Help and support options for ...mozilla-firefox...'35 '+gethelp : ...mozilla-firefox... package : 5.04 : Ubuntu'
36 >>> user_browser.getLink('Submit your question').click()36
37 >>> user_browser.getLink('Ask a question').click()
37 >>> user_browser.title38 >>> user_browser.title
38 '+addquestion : \xe2\x80\x9cmozilla-firefox\xe2\x80\x9d package39 '+addquestion : \xe2\x80\x9cmozilla-firefox\xe2\x80\x9d package
39 : 5.04 : Ubuntu'40 : 5.04 : Ubuntu'
4041
=== renamed file 'lib/lp/registry/templates/sourcepackage-gethelp.pt' => 'lib/lp/answers/templates/sourcepackage-gethelp.pt'
--- lib/lp/registry/templates/sourcepackage-gethelp.pt 2009-07-17 17:59:07 +0000
+++ lib/lp/answers/templates/sourcepackage-gethelp.pt 2009-09-13 20:51:35 +0000
@@ -3,10 +3,7 @@
3 xmlns:tal="http://xml.zope.org/namespaces/tal"3 xmlns:tal="http://xml.zope.org/namespaces/tal"
4 xmlns:metal="http://xml.zope.org/namespaces/metal"4 xmlns:metal="http://xml.zope.org/namespaces/metal"
5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"
6 xml:lang="en"6 metal:use-macro="view/macro:page/main_only"
7 lang="en"
8 dir="ltr"
9 metal:use-macro="context/@@main_template/master"
10 i18n:domain="launchpad"7 i18n:domain="launchpad"
11>8>
129
@@ -14,10 +11,9 @@
1411
15<div metal:fill-slot="main">12<div metal:fill-slot="main">
1613
17 <h1>Help for <span14 <h1 tal:content="view/page_title" />
18 tal:replace="context/displayname" /> </h1>15
1916 <div class="top-portlet">
20
21 <h2>Ask your question!</h2>17 <h2>Ask your question!</h2>
2218
23 <p>19 <p>
@@ -26,13 +22,15 @@
26 modules/canonical.launchpad.webapp.vhosts/allvhosts/configs/answers/rooturl">Launchpad22 modules/canonical.launchpad.webapp.vhosts/allvhosts/configs/answers/rooturl">Launchpad
27 answer</a> tracker.23 answer</a> tracker.
28 </p>24 </p>
29 <ul>25 <ul class="horizontal">
30 <li><a tal:attributes="href26 <li><a class="sprite info"
31 string:${context/fmt:url}/+questions">Search through existing questions</a></li>27 tal:attributes="href
32 <li><a tal:attributes="href28 string:${context/fmt:url}/+questions">Search through existing questions</a></li>
33 string:${context/fmt:url}/+addquestion">Submit your question</a></li>29 <li><a tal:replace="structure context/menu:answers/new/fmt:link" /></li>
34 </ul>30 </ul>
31 </div>
3532
33 <div>
36 <h2>Other support options</h2>34 <h2>Other support options</h2>
3735
38 <p>36 <p>
@@ -63,7 +61,7 @@
63 Thanks!61 Thanks!
64 </p>62 </p>
65 </tal:needupstream>63 </tal:needupstream>
6664 </div>
67</div>65</div>
68</body>66</body>
69</html>67</html>
7068
=== modified file 'lib/lp/registry/browser/configure.zcml'
--- lib/lp/registry/browser/configure.zcml 2009-09-14 15:16:12 +0000
+++ lib/lp/registry/browser/configure.zcml 2009-09-14 18:06:44 +0000
@@ -1994,20 +1994,26 @@
1994 name="+index"1994 name="+index"
1995 facet="overview"1995 facet="overview"
1996 template="../templates/sourcepackage-index.pt"/>1996 template="../templates/sourcepackage-index.pt"/>
1997 <browser:page
1998 name="+gethelp"
1999 facet="answers"
2000 template="../templates/sourcepackage-gethelp.pt"/>
2001 <browser:page
2002 name="+packaging"
2003 facet="overview"
2004 template="../templates/sourcepackage-packaging.pt"/>
2005 <!-- SourcePackage Portlets -->1997 <!-- SourcePackage Portlets -->
2006 <browser:page1998 <browser:page
2007 name="+portlet-details"1999 name="+portlet-details"
2008 facet="overview"2000 facet="overview"
2009 template="../templates/sourcepackage-portlet-details.pt"/>2001 template="../templates/sourcepackage-portlet-details.pt"/>
2010 </browser:pages>2002 </browser:pages>
2003 <browser:page
2004 for="lp.registry.interfaces.sourcepackage.ISourcePackage"
2005 permission="zope.Public"
2006 class="lp.registry.browser.sourcepackage.SourcePackagePackaging"
2007 name="+packaging"
2008 facet="overview"
2009 template="../templates/sourcepackage-packaging.pt"/>
2010 <browser:page
2011 for="lp.registry.interfaces.sourcepackage.ISourcePackage"
2012 permission="zope.Public"
2013 class="lp.registry.browser.sourcepackage.SourcePackageHelpView"
2014 name="+gethelp"
2015 facet="answers"
2016 template="../../answers/templates/sourcepackage-gethelp.pt"/>
2011 <browser:menus2017 <browser:menus
2012 classes="2018 classes="
2013 SourcePackageFacets2019 SourcePackageFacets
20142020
=== modified file 'lib/lp/registry/browser/sourcepackage.py'
--- lib/lp/registry/browser/sourcepackage.py 2009-09-04 12:32:58 +0000
+++ lib/lp/registry/browser/sourcepackage.py 2009-09-14 04:24:20 +0000
@@ -9,7 +9,9 @@
9 'SourcePackageBreadcrumb',9 'SourcePackageBreadcrumb',
10 'SourcePackageChangeUpstreamView',10 'SourcePackageChangeUpstreamView',
11 'SourcePackageFacets',11 'SourcePackageFacets',
12 'SourcePackageHelpView',
12 'SourcePackageNavigation',13 'SourcePackageNavigation',
14 'SourcePackagePackaging',
13 'SourcePackageView',15 'SourcePackageView',
14 ]16 ]
1517
@@ -157,6 +159,11 @@
157 self.processForm()159 self.processForm()
158160
159 @property161 @property
162 def page_title(self):
163 """The HTML page title."""
164 return '%s package' % self.context.name
165
166 @property
160 def cancel_url(self):167 def cancel_url(self):
161 return canonical_url(self.context)168 return canonical_url(self.context)
162169
@@ -245,3 +252,21 @@
245 @property252 @property
246 def potemplates(self):253 def potemplates(self):
247 return list(self.context.getCurrentTranslationTemplates())254 return list(self.context.getCurrentTranslationTemplates())
255
256
257class SourcePackagePackaging:
258 """A View to show where the package is packged."""
259
260 @property
261 def page_title(self):
262 """The HTML page title."""
263 return 'Upstream links'
264
265
266class SourcePackageHelpView:
267 """A View to show Answers help."""
268
269 @property
270 def page_title(self):
271 """The HTML page title."""
272 return 'Help and support options'
248273
=== modified file 'lib/lp/registry/templates/sourcepackage-index.pt'
--- lib/lp/registry/templates/sourcepackage-index.pt 2009-08-07 22:14:06 +0000
+++ lib/lp/registry/templates/sourcepackage-index.pt 2009-09-14 04:24:20 +0000
@@ -3,148 +3,180 @@
3 xmlns:tal="http://xml.zope.org/namespaces/tal"3 xmlns:tal="http://xml.zope.org/namespaces/tal"
4 xmlns:metal="http://xml.zope.org/namespaces/metal"4 xmlns:metal="http://xml.zope.org/namespaces/metal"
5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"
6 xml:lang="en"6 metal:use-macro="view/macro:page/main_only"
7 lang="en"7 i18n:domain="launchpad">
8 dir="ltr"
9 metal:use-macro="context/@@main_template/master"
10 i18n:domain="launchpad"
11>
12 <body>8 <body>
13 <metal:heading fill-slot="pageheading">9 <div metal:fill-slot="main">
14 <h1 tal:content="context/title">source package name</h1>10 <div class="top-portlet">
15 </metal:heading>11 <h2>Versions published</h2>
1612
17 <metal:leftportlets fill-slot="portlets_one">13 <p class="warning message" tal:condition="not:context/currentrelease">
18 <div tal:replace="structure context/@@+portlet-details" />14 There is no current release of this source package
19 </metal:leftportlets>15 in <span tal:replace="context/distroseries/title" />.
2016 You can still report bugs, make translations, and so on,
21 <metal:rightportlets fill-slot="portlets_two">17 but they might not be used until the package is published.
22 <div tal:replace="structure context/@@+portlet-releases" />18 </p>
23 <div tal:replace="structure context/@@+portlet-upstream" />19
24 </metal:rightportlets>20 <dl id="publishing_history" tal:condition="view/published_by_pocket">
2521 <tal:block repeat="pocket view/published_by_pocket">
26<div metal:fill-slot="main">22 <tal:block condition="pocket/packages">
2723 <dt><dfn tal:content="pocket/pocketdetails/title">Plain</dfn></dt>
28 <h2>Versions published</h2>24 <dd>
2925 <p tal:content="pocket/pocketdetails/description">
30 <p class="warning message" tal:condition="not:context/currentrelease">26 The description of the pocket.
31 There is no current release of this source package27 </p>
32 in <span tal:replace="context/distroseries/title" />.28 <ul>
33 You can still report bugs, make translations, and so on,29 <li tal:repeat="spr pocket/packages">
34 but they might not be used until the package is published.30 <a tal:content="spr/displayname"
35 </p>31 tal:attributes="href spr/fmt:url">apache2</a>
3632 </li>
37 <dl id="publishing_history" tal:condition="view/published_by_pocket">33 </ul>
38 <tal:block repeat="pocket view/published_by_pocket">34 </dd>
39 <tal:block condition="pocket/packages">35 </tal:block>
40 <dt><dfn tal:content="pocket/pocketdetails/title">Plain</dfn></dt>36 </tal:block>
41 <dd>37 </dl>
42 <p tal:content="pocket/pocketdetails/description">38
43 The description of the pocket.39 <ul class="horizontal">
44 </p>40 <li>
45 <ul>41 <a tal:replace="structure context/menu:overview/changelog/fmt:link" />
46 <li tal:repeat="spr pocket/packages">42 </li>
47 <a tal:content="spr/displayname"43 </ul>
48 tal:attributes="href spr/fmt:url">apache2</a>44 </div>
45
46 <div class="yui-g">
47 <div class="yui-u first">
48 <div tal:replace="structure context/@@+portlet-details" />
49 </div>
50
51 <div class="yui-u">
52 <div class="portlet">
53 <h2>Upstream associations</h2>
54
55 <div id="upstreams" class="two-column-list"
56 tal:define="series context/productseries">
57 <tal:has_series condition="series">
58 <dl
59 tal:define="project series/product/project"
60 tal:condition="project">
61 <dt>Project Group:</dt>
62 <dd>
63 <a tal:replace="structure project/fmt:link" />
64 </dd>
65 </dl>
66
67 <dl>
68 <dt>Project:</dt>
69 <dd>
70 <a tal:replace="structure series/product/fmt:link" />
71 </dd>
72 </dl>
73
74 <dl>
75 <dt>Branch:</dt>
76 <dd>
77 <a
78 tal:content="series/name"
79 tal:attributes="href series/fmt:url">Series</a>
80 </dd>
81 </dl>
82 </tal:has_series>
83
84 <tal:has_no_series condition="not: context/productseries">
85 <dl>
86 <dt>Related project:</dt>
87 <dd>
88 <em>No project associated with this sourcepackage</em>
89 </dd>
90 </dl>
91 </tal:has_no_series>
92 </div>
93
94 <ul class="horizontal">
95 <li>
96 <a tal:replace="structure context/menu:overview/edit_packaging/fmt:link" />
97 </li>
98 <li>
99 <a tal:replace="structure context/menu:overview/packaging/fmt:link" />
100 </li>
101 </ul>
102 </div>
103 </div>
104 </div>
105
106 <div class="yui-g">
107 <div class="yui-u first">
108 <div tal:replace="structure context/@@+portlet-releases" />
109
110 <ul class="horizontal" style="margin-bottom: 1em;">
111 <li>
112 <a tal:replace="structure context/menu:overview/builds/fmt:link" />
49 </li>113 </li>
50 </ul>114 </ul>
51 </dd>115 </div>
52 </tal:block>116
53 </tal:block>117 <div class="yui-u">
54 </dl>118 <div tal:replace="structure context/@@+portlet-upstream" />
55119
56 <h2>Upstream associations</h2>120 <div>
57121 <h2>Binary packages</h2>
58 <ul id="upstreams" tal:define="series context/productseries">122
59 <tal:has_series condition="series">123 <div id="binaries" tal:define="binaries view/binaries">
60 <li tal:condition="series/product/project">124 <ul tal:condition="binaries">
61 <b>Project Group:</b>125 <li tal:repeat="bin_name binaries">
62 <a tal:define="project series/product/project"126 <span tal:replace="bin_name" />
63 tal:content="project/displayname"127 <span tal:repeat="archtag python:binaries[bin_name]">
64 tal:attributes="href string:/${project/name}">128 (<a tal:content="archtag" tal:attributes="href
65 Project</a>129 string:../../${archtag}/${bin_name}" />)</span>
66 </li>130 </li>
67 <li><b>Project:</b>131 </ul>
68 <a tal:condition="series/product"132
69 tal:content="series/product/displayname"133 <p tal:condition="not: binaries">
70 tal:attributes="href string:/${series/product/name}">134 No binaries have been generated for this release.
71 Project</a>135 </p>
72 </li>136 </div>
73 <li><b>Branch: </b>137 </div>
74 <a tal:define="productseries context/productseries"138 </div>
75 tal:content="productseries/name"139 </div>
76 tal:attributes="href productseries/fmt:url">140
77 ProjectSeries</a><br />141 <div class="portlet"
78 </li>142 tal:define="current context/currentrelease"
79 </tal:has_series>143 tal:condition="current">
80 <tal:has_no_series condition="not: context/productseries">144 <h2>Download files from current release (<span
81 <li><b>Related project:</b>145 tal:replace="current/version">2.1.3-4</span>)</h2>
82 <i>146
83 No project associated with this sourcepackage147 <div id="files" tal:content="structure current/@@+files" />
84 </i>148
85 </li>149 <h2>Package relationships</h2>
86 </tal:has_no_series>150
87 <small>(<a tal:attributes="href string:${context/fmt:url}/+packaging">update</a>)</small>151 <table width="100%" valign="top">
88 </ul>152 <tr>
89153 <td id="depends" tal:define="relationships view/builddepends">
90 <tal:block tal:condition="context/currentrelease"154 <h3>Build dependencies</h3>
91 tal:define="current context/currentrelease">155 <tal:block tal:condition="relationships/has_items"
92156 replace="structure relationships/@@+render-list"/>
93 <h2>Download files from current release (<span157 </td>
94 tal:replace="current/version">2.1.3-4</span>)</h2>158 <td id="dependsindep"
95159 tal:define="relationships view/builddependsindep">
96 <div id="files" tal:content="structure current/@@+files" />160 <h3>Platform-independent build dependencies</h3>
97161 <tal:block tal:condition="relationships/has_items"
98 <h2>Binary packages</h2>162 replace="structure relationships/@@+render-list"/>
99163 </td>
100 <div id="binaries" tal:define="binaries view/binaries">164 </tr>
101 <ul tal:condition="binaries">165 <tr>
102 <li tal:repeat="bin_name binaries">166 <td id="conflicts" tal:define="relationships view/build_conflicts">
103 <span tal:replace="bin_name" />167 <h3>Build conflicts</h3>
104 <span tal:repeat="archtag python:binaries[bin_name]">168 <tal:block tal:condition="relationships/has_items"
105 (<a tal:content="archtag" tal:attributes="href169 replace="structure relationships/@@+render-list"/>
106 string:../../${archtag}/${bin_name}" />)</span>170 </td>
107 </li>171 <td id="conflictsindep"
108 </ul>172 tal:define="relationships view/build_conflicts_indep">
109 <p tal:condition="not: binaries">173 <h3>Platform-independent build dependencies</h3>
110 No binaries have been generated for this release.174 <tal:block tal:condition="relationships/has_items"
111 </p>175 replace="structure relationships/@@+render-list"/>
176 </td>
177 </tr>
178 </table>
179 </div>
112 </div>180 </div>
113181 </body>
114 <h2>Package relationships</h2>
115
116 <table width="100%" valign="top">
117 <tr>
118 <td id="depends" tal:define="relationships view/builddepends">
119 <h3>Build dependencies</h3>
120 <tal:block tal:condition="relationships/has_items"
121 replace="structure relationships/@@+render-list"/>
122 </td>
123 <td id="dependsindep"
124 tal:define="relationships view/builddependsindep">
125 <h3>Platform-independent build dependencies</h3>
126 <tal:block tal:condition="relationships/has_items"
127 replace="structure relationships/@@+render-list"/>
128 </td>
129 </tr>
130 <tr>
131 <td id="conflicts" tal:define="relationships view/build_conflicts">
132 <h3>Build conflicts</h3>
133 <tal:block tal:condition="relationships/has_items"
134 replace="structure relationships/@@+render-list"/>
135 </td>
136 <td id="conflictsindep"
137 tal:define="relationships view/build_conflicts_indep">
138 <h3>Platform-independent build dependencies</h3>
139 <tal:block tal:condition="relationships/has_items"
140 replace="structure relationships/@@+render-list"/>
141 </td>
142 </tr>
143 </table>
144
145 </tal:block>
146
147</div>
148</body>
149</html>182</html>
150
151183
=== modified file 'lib/lp/registry/templates/sourcepackage-packaging.pt'
--- lib/lp/registry/templates/sourcepackage-packaging.pt 2009-09-07 09:15:02 +0000
+++ lib/lp/registry/templates/sourcepackage-packaging.pt 2009-09-13 21:40:53 +0000
@@ -3,24 +3,15 @@
3 xmlns:tal="http://xml.zope.org/namespaces/tal"3 xmlns:tal="http://xml.zope.org/namespaces/tal"
4 xmlns:metal="http://xml.zope.org/namespaces/metal"4 xmlns:metal="http://xml.zope.org/namespaces/metal"
5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"
6 xml:lang="en"6 metal:use-macro="view/macro:page/main_only"
7 lang="en"
8 dir="ltr"
9 metal:use-macro="context/@@main_template/master"
10 i18n:domain="launchpad"7 i18n:domain="launchpad"
11>8>
129
13<body>10<body>
1411
15<metal:rightportlets fill-slot="portlets_two">
16 <div tal:replace="structure context/@@+portlet-upstream" />
17</metal:rightportlets>
18
19
20<div metal:fill-slot="main">12<div metal:fill-slot="main">
2113
22 <h1>Upstream links for <span tal:replace="context/displayname">foobar in14 <h1 tal:content="view/page_title" />
23 hoary</span></h1>
2415
25 <p>16 <p>
26 Linking distribution packages to upstream series allows17 Linking distribution packages to upstream series allows
@@ -53,14 +44,14 @@
53 <tr tal:attributes="44 <tr tal:attributes="
54 class python: packaging == context.packaging and 'highlight' or None">45 class python: packaging == context.packaging and 'highlight' or None">
5546
56 <td tal:content="packaging/distroseries/distribution/displayname">47 <td>
57 ubuntu48 <a tal:replace="structure packaging/distroseries/distribution/fmt:link" />
58 </td>49 </td>
59 <td tal:content="packaging/distroseries/displayname">50 <td>
60 hoary51 <a tal:replace="structure packaging/distroseries/fmt:link" />
61 </td>52 </td>
62 <td tal:content="packaging/productseries/title">53 <td>
63 evolution main54 <a tal:replace="structure packaging/productseries/fmt:link" />
64 </td>55 </td>
6556
66 </tr>57 </tr>
6758
=== modified file 'lib/lp/registry/templates/sourcepackage-portlet-details.pt'
--- lib/lp/registry/templates/sourcepackage-portlet-details.pt 2009-07-17 17:59:07 +0000
+++ lib/lp/registry/templates/sourcepackage-portlet-details.pt 2009-09-14 04:24:20 +0000
@@ -5,30 +5,33 @@
5 omit-tag="">5 omit-tag="">
66
7<div class="portlet" id="portlet-details">7<div class="portlet" id="portlet-details">
8 <h2><span tal:replace="context/name" /> details</h2>8 <h2><span tal:replace="context/name" /> information</h2>
99
10 <div class="portletBody portletContent">10 <div class="two-column-list"
11 <tal:currentrelease tal:condition="context/currentrelease"11 tal:define="current context/currentrelease">
12 tal:define="current context/currentrelease">12 <tal:currentrelease tal:condition="current">
13 <b>Current version:</b>13 <dl>
14 <span tal:replace="current/version" /><br />14 <dt>Current version:</dt>
1515 <dd><span tal:replace="current/version" /></dd>
16 <b>Uploaded:</b>16 </dl>
17 <span17 <dl>
18 tal:attributes="title current/dateuploaded/fmt:datetime"18 <dt>Uploaded:</dt>
19 tal:content="current/dateuploaded/fmt:approximatedate" /><br />19 <dd><span
20 20 tal:attributes="title current/dateuploaded/fmt:datetime"
21 <b>Urgency:</b>21 tal:content="current/dateuploaded/fmt:approximatedate" /></dd>
22 <span tal:content="current/urgency/title" /><br />22 </dl>
2323 <dl>
24 <b>Component:</b>24 <dt>Urgency:</dt>
25 <span tal:content="current/component/name"/><br />25 <dd><span tal:content="current/urgency/title" /></dd>
2626 </dl>
27 <dl>
28 <dt>Component:</dt>
29 <dd><span tal:content="current/component/name"/></dd>
30 </dl>
27 </tal:currentrelease>31 </tal:currentrelease>
28 <tal:norelease tal:condition="not: context/currentrelease">32 <tal:norelease tal:condition="not: current">
29 <i>No published releases of this package have been uploaded in33 <em>No published releases of this package have been uploaded in
30 <tal:block content="context/distroseries/fullseriesname" />34 <tal:series content="context/distroseries/fullseriesname" /></em>
31 </i>
32 </tal:norelease>35 </tal:norelease>
33 </div>36 </div>
3437
3538
=== modified file 'lib/lp/soyuz/stories/soyuz/xx-distroseries-sources.txt'
--- lib/lp/soyuz/stories/soyuz/xx-distroseries-sources.txt 2009-09-07 13:26:02 +0000
+++ lib/lp/soyuz/stories/soyuz/xx-distroseries-sources.txt 2009-09-14 04:24:20 +0000
@@ -81,20 +81,10 @@
81It also provides the upstream relationships for this source, Project,81It also provides the upstream relationships for this source, Project,
82Product and Branches:82Product and Branches:
8383
84 >>> print find_tag_by_id(browser.contents, 'upstreams')84 >>> print extract_text(find_tag_by_id(browser.contents, 'upstreams'))
85 <ul id="upstreams">85 Project Group: the Mozilla Project
86 <li>86 Project: Mozilla Firefox ...
87 <b>Project Group:</b>87 Branch: trunk
88 <a href="/mozilla">the Mozilla Project</a>
89 </li>
90 <li><b>Project:</b>
91 <a href="/firefox">Mozilla Firefox</a>
92 </li>
93 <li><b>Branch: </b>
94 <a href="/firefox/trunk">trunk</a><br />
95 </li>
96 <small>(<a href="/ubuntu/warty/+source/mozilla-firefox/+packaging">update</a>)</small>
97 </ul>
9888
99The user can also download the files for the "currentrelease" (last89The user can also download the files for the "currentrelease" (last
100published version) if they are available:90published version) if they are available:
10191