~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/lp/bugs/browser/bugtarget.py

  • Committer: Curtis Hovey
  • Date: 2011-12-18 15:13:07 UTC
  • mto: This revision was merged to the branch mainline in revision 14547.
  • Revision ID: curtis.hovey@canonical.com-20111218151307-sdm2gzobt5tplbe0
Moved badges to lp.app.

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
from cStringIO import StringIO
25
25
from datetime import datetime
26
26
from functools import partial
 
27
from operator import itemgetter
27
28
import httplib
28
 
from operator import itemgetter
29
29
import urllib
30
30
from urlparse import urljoin
31
31
 
53
53
from zope.schema.vocabulary import SimpleVocabulary
54
54
from zope.security.proxy import removeSecurityProxy
55
55
 
56
 
from lp import _
 
56
from canonical.config import config
 
57
from canonical.launchpad import _
 
58
from canonical.launchpad.browser.librarian import ProxiedLibraryFileAlias
 
59
from canonical.launchpad.webapp import (
 
60
    canonical_url,
 
61
    LaunchpadView,
 
62
    urlappend,
 
63
    )
 
64
from canonical.launchpad.webapp.authorization import check_permission
 
65
from canonical.launchpad.webapp.batching import BatchNavigator
 
66
from canonical.launchpad.webapp.breadcrumb import Breadcrumb
 
67
from canonical.launchpad.webapp.interfaces import ILaunchBag
 
68
from canonical.launchpad.webapp.menu import structured
57
69
from lp.app.browser.launchpadform import (
58
70
    action,
59
71
    custom_widget,
125
137
from lp.registry.interfaces.projectgroup import IProjectGroup
126
138
from lp.registry.interfaces.sourcepackage import ISourcePackage
127
139
from lp.registry.vocabularies import ValidPersonOrTeamVocabulary
128
 
from lp.services.config import config
129
140
from lp.services.job.interfaces.job import JobStatus
130
 
from lp.services.librarian.browser import ProxiedLibraryFileAlias
131
141
from lp.services.propertycache import cachedproperty
132
 
from lp.services.webapp import (
133
 
    canonical_url,
134
 
    LaunchpadView,
135
 
    urlappend,
136
 
    )
137
 
from lp.services.webapp.authorization import check_permission
138
 
from lp.services.webapp.batching import BatchNavigator
139
 
from lp.services.webapp.breadcrumb import Breadcrumb
140
 
from lp.services.webapp.interfaces import ILaunchBag
141
 
from lp.services.webapp.menu import structured
142
142
 
143
143
# A simple vocabulary for the subscribe_to_existing_bug form field.
144
144
SUBSCRIBE_TO_BUG_VOCABULARY = SimpleVocabulary.fromItems(
1220
1220
        elif IProduct(self.context, None):
1221
1221
            milestone_resultset = self.context.milestones
1222
1222
        else:
1223
 
            raise AssertionError(
1224
 
                "milestones_list called with illegal context")
 
1223
            raise AssertionError("milestones_list called with illegal context")
1225
1224
        return list(milestone_resultset)
1226
1225
 
1227
1226
    @property
1321
1320
        official_tags = self.context.official_bug_tags
1322
1321
        tags = self.context.getUsedBugTagsWithOpenCounts(
1323
1322
            self.user, 10, official_tags)
 
1323
        max_count = float(max([1] + tags.values()))
1324
1324
 
1325
1325
        return sorted(
1326
1326
            [dict(