1
# Copyright 2011 Canonical Ltd. This software is licensed under the
2
# GNU Affero General Public License version 3 (see the file LICENSE).
4
"""Bug domain vocabularies"""
8
'UsesBugsDistributionVocabulary',
11
from sqlobject import OR
13
from lp.registry.interfaces.distribution import IDistribution
14
from lp.registry.vocabularies import DistributionVocabulary
17
class UsesBugsDistributionVocabulary(DistributionVocabulary):
18
"""Distributions that use Launchpad to track bugs.
20
If the context is a distribution, it is always included in the
21
vocabulary. Historic data is not invalidated if a distro stops
22
using Launchpad to track bugs. This vocabulary offers the correct
23
choices of distributions at this moment.
26
def __init__(self, context=None):
27
super(UsesBugsDistributionVocabulary, self).__init__(context=context)
28
self.distribution = IDistribution(self.context, None)
32
if self.distribution is None:
35
distro_id = self.distribution.id
37
self._table.q.official_malone == True,
38
self._table.id == distro_id)