1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# Copyright 2009 Canonical Ltd. This software is licensed under the
# GNU Affero General Public License version 3 (see the file LICENSE).
__metaclass__ = type
__all__ = [
'DistroSeriesBinaryPackageBreadcrumb',
'DistroSeriesBinaryPackageFacets',
'DistroSeriesBinaryPackageNavigation',
'DistroSeriesBinaryPackageView',
]
from lazr.restful.utils import smartquote
from lp.services.webapp import (
ApplicationMenu,
LaunchpadView,
Navigation,
StandardLaunchpadFacets,
)
from lp.services.webapp.breadcrumb import Breadcrumb
from lp.soyuz.interfaces.distroseriesbinarypackage import (
IDistroSeriesBinaryPackage,
)
class DistroSeriesBinaryPackageFacets(StandardLaunchpadFacets):
# XXX mpt 2006-10-04: A DistroArchSeriesBinaryPackage is not a structural
# object. It should inherit all navigation from its distro series.
usedfor = IDistroSeriesBinaryPackage
enable_only = ['overview']
class DistroSeriesBinaryPackageOverviewMenu(ApplicationMenu):
usedfor = IDistroSeriesBinaryPackage
facet = 'overview'
links = []
class DistroSeriesBinaryPackageNavigation(Navigation):
usedfor = IDistroSeriesBinaryPackage
class DistroSeriesBinaryPackageBreadcrumb(Breadcrumb):
"""Builds a breadcrumb for an `IDistroSeriesBinaryPackage`."""
@property
def text(self):
return self.context.binarypackagename.name
class DistroSeriesBinaryPackageView(LaunchpadView):
def __init__(self, context, request):
self.context = context
self.request = request
@property
def page_title(self):
return smartquote(self.context.title)
|