Thanks for the review Curtis. On Aug 18, 2009, at 11:37 , Curtis Hovey wrote: > Review: Needs Fixing code > Hi Brad. > > This is very nice. I think we should tweak the layout a bit before > landing this. I explain XMLLint's spazzing below. Great. > >> === modified file 'lib/canonical/launchpad/icing/style-3-0.css' >> --- lib/canonical/launchpad/icing/style-3-0.css 2009-08-17 11:22:39 >> +0000 >> +++ lib/canonical/launchpad/icing/style-3-0.css 2009-08-17 20:36:01 >> +0000 > ... > >> @@ -581,6 +581,10 @@ >> border-top: 1px solid #d0d0d0; >> border-bottom: 1px solid #d0d0d0; >> } >> +.announcement .registered { >> + font-size: 95%; > > This is not a support font-size you must use one of the percentages > from the table to guarantee that they display the same on all > platforms. > > font-size: 93%; > > is official. Didn't see that comment in the CSS. Thanks for catching it. > >> + margin-top: -2px > > Missing semi-colon. > Duh. > + } > > ... > >> === modified file 'lib/lp/registry/browser/announcement.py' >> --- lib/lp/registry/browser/announcement.py 2009-08-11 04:00:47 +0000 >> +++ lib/lp/registry/browser/announcement.py 2009-08-17 20:36:01 +0000 > > ... > >> @@ -70,6 +69,12 @@ >> text = 'Delete announcement' >> return Link('+delete', text, icon='trash-icon') >> >> + @enabled_with_permission('launchpad.Edit') >> + def announce(self): >> + text = 'Make announcement' >> + summary = 'Publish an item of news for this project' >> + return Link('+announce', text, summary, icon='add') > > We use publish to describe the act of making public, not creating. 'Create an item...' > > ... > >> @@ -100,6 +105,19 @@ >> self.context = context >> >> >> +class IAnnouncementCreateMenu(Interface): >> + """A marker interface for creation announcement navigation >> menu.""" >> + >> + >> +class AnnouncementCreateNavigationMenu(NavigationMenu, >> AnnouncementMenuMixin): >> + """A sub-menu for different aspects of modifying an >> announcement.""" >> + >> + usedfor = IAnnouncementCreateMenu >> + facet = 'overview' >> + title = 'Create announcement' >> + links = ('announce', )xmlns:tal="http://xml.zope.org/namespaces/tal >> " > > Menus assume that links are a mutable list. This works, but may lead > to > cryptic errors if someone extends the menu, Really? From webapp/menu.py: assert isinstance(self.links, (tuple, list)), ( "self.links must be a tuple or list.") Just grepping through registry/browser/*.py I see a few other examples of links being tuples. I've changed this one and the others in this module. > > ... > >> === modified file 'lib/lp/registry/stories/announcements/xx- >> announcements.txt' >> --- lib/lp/registry/stories/announcements/xx-announcements.txt >> 2009-08-13 18:10:15 +0000 >> +++ lib/lp/registry/stories/announcements/xx-announcements.txt >> 2009-08-17 20:36:01 +0000 > > ... > >> @@ -418,47 +419,16 @@ >> Editing announcements >> --------------------- > ... > >> -If you have the necessary privileges you will see links to edit the >> -announcements. >> +To edit an announcement you must go to the individual announcement >> +page and then follow the proper links. > > Me? I am not doing anything. I think No Privileges Person is doing > this. reworded. > >>>>> priv_browser.open('http://launchpad.dev/tomcat/+announcements') >> - >>> listed_announcements = find_tag_by_id( >> - ... priv_browser.contents, 'announcements') >> - >>> edit_links = listed_announcements.fetch('a', >> text=edit_link_text) >> - >>> len(edit_links) >> - 2 >> - >> -Following a link takes you to a form where you can change the >> headline, >> -summary and URL of the announcement: >> - >> - >>> 'Modified headline' not in >> announcements(priv_browser.contents) >> - True >> - >>> 'Modified summary' not in >> announcements(priv_browser.contents) >> - True >>>>> print priv_browser.getLink('Read more').url >> http://apache.org/announcement/rocking/ >> - >>> priv_browser.getLink(edit_link_text).click() >> + >>> priv_browser.getLink('Apache announcement headline').click() >> + >>> priv_browser.getLink('Modify announcement').click() >>>>> print priv_browser.url >> - http://launchpad.dev/apache/+announcement/... >> + http://launchpad.dev/apache/+announcement/.../+edit > > I think the user cares about the title, not the url. I was following the existing style of the test. > > ... > >> === modified file 'lib/lp/registry/templates/announcement-listing- >> detailed.pt' >> --- lib/lp/registry/templates/announcement-listing-detailed.pt >> 2009-07-17 17:59:07 +0000 >> +++ lib/lp/registry/templates/announcement-listing-detailed.pt >> 2009-08-17 20:36:01 +0000 >> @@ -1,59 +1,47 @@ > > You are missing > > xmlns:tal="http://xml.zope.org/namespaces/tal" > i18n:domain="launchpad" > > in the root element, which xmllint considers to be heresy. > > ... > >> +
>> + Written for
>> +
> +
>> + There are no announcements for this project. >> +
> > This page looks like it is missing something. The announcement top- > border > is under the
>> +