/loggerhead/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/loggerhead/trunk

« back to all changes in this revision

Viewing changes to loggerhead/templatefunctions.py

  • Committer: John Arbash Meinel
  • Date: 2011-02-09 22:33:14 UTC
  • mto: This revision was merged to the branch mainline in revision 423.
  • Revision ID: john@arbash-meinel.com-20110209223314-risl8ewyp49xwoty
Make loggerhead compatible with bzr.dev again

Show diffs side-by-side

added added

removed removed

Lines of Context:
11
11
#
12
12
# You should have received a copy of the GNU General Public License
13
13
# along with this program; if not, write to the Free Software
14
 
# Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335  USA
 
14
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
15
15
#
16
16
 
 
17
import cgi
17
18
import os
18
 
import urllib
19
19
 
20
20
import pkg_resources
21
21
 
22
 
import breezy
 
22
import bzrlib
23
23
 
24
24
import loggerhead
25
25
from loggerhead.zptsupport import zpt
26
 
from loggerhead.util import html_format
27
26
 
28
27
 
29
28
templatefunctions = {}
50
49
    if style == 'fragment':
51
50
        def file_link(filename):
52
51
            if currently_showing and filename == currently_showing:
53
 
                return html_format(
54
 
                    '<b><a href="#%s">%s</a></b>',
55
 
                    urllib.quote(filename.encode('utf-8')), filename)
 
52
                return '<b><a href="#%s">%s</a></b>' % (
 
53
                    cgi.escape(filename), cgi.escape(filename))
56
54
            else:
57
55
                return revision_link(
58
 
                    url, entry.revno, filename,
59
 
                    '#' + urllib.quote(filename.encode('utf-8')))
 
56
                    url, entry.revno, filename, '#' + filename)
60
57
    else:
61
58
        def file_link(filename):
62
 
            return html_format(
63
 
                '<a href="%s%s" title="View changes to %s in revision %s">'
64
 
                '%s</a>',
65
 
                url(['/revision', entry.revno]),
66
 
                '#' + urllib.quote(filename.encode('utf-8')),
67
 
                filename, entry.revno, filename)
 
59
            return '<a href="%s%s" title="View changes to %s in revision %s">%s</a>' % (
 
60
                url(['/revision', entry.revno]), '#' + filename, cgi.escape(filename),
 
61
                cgi.escape(entry.revno), cgi.escape(filename))
68
62
    return _pt('revisionfilechanges').expand(
69
63
        entry=entry, file_changes=file_changes, file_link=file_link, **templatefunctions)
70
64
 
128
122
 
129
123
@templatefunc
130
124
def view_link(url, revno, path):
131
 
    return html_format(
132
 
        '<a href="%s" title="Annotate %s">%s</a>',
133
 
        url(['/view', revno, path]), path, path)
134
 
 
 
125
    return '<a href="%s" title="Annotate %s">%s</a>' % (
 
126
        url(['/view', revno, path]), cgi.escape(path), cgi.escape(path))
135
127
 
136
128
@templatefunc
137
129
def revision_link(url, revno, path, frag=''):
138
 
    return html_format(
139
 
        '<a href="%s%s" title="View changes to %s in revision %s">%s</a>',
140
 
        url(['/revision', revno, path]), frag, path, revno, path)
 
130
    return '<a href="%s%s" title="View changes to %s in revision %s">%s</a>' % (
 
131
        url(['/revision', revno, path]), frag, cgi.escape(path),
 
132
        cgi.escape(revno), cgi.escape(path))
141
133
 
142
134
 
143
135
@templatefunc
144
136
def loggerhead_version():
145
137
    return loggerhead.__version__
146
 
    
147
 
@templatefunc
148
 
def loggerhead_revision():
149
 
    return loggerhead.__revision__
150
138
 
151
139
_cached_generator_string = None
152
140
 
162
150
        versions.append(('Loggerhead', loggerhead.__version__))
163
151
 
164
152
        import sys
165
 
        python_version = breezy._format_version_tuple(sys.version_info)
 
153
        python_version = bzrlib._format_version_tuple(sys.version_info)
166
154
        versions.append(('Python', python_version))
167
155
 
168
 
        versions.append(('Bazaar', breezy.__version__))
 
156
        versions.append(('Bazaar', bzrlib.__version__))
169
157
 
170
158
        Paste = pkg_resources.get_distribution('Paste')
171
159
        versions.append(('Paste', Paste.version))
188
176
            versions.append(('Pygments', pygments.__version__))
189
177
 
190
178
        try:
191
 
            from breezy.plugins import search
 
179
            from bzrlib.plugins import search
192
180
        except ImportError:
193
181
            pass
194
182
        else:
195
 
            bzr_search_version = breezy._format_version_tuple(
 
183
            bzr_search_version = bzrlib._format_version_tuple(
196
184
                search.version_info)
197
185
            versions.append(('bzr-search', bzr_search_version))
198
186
 
199
187
        # TODO: On old Python versions, elementtree may be used.
200
188
 
201
 
        import simplejson
202
 
        versions.append(('simplejson', simplejson.__version__))
 
189
        try:
 
190
            import simplejson
 
191
        except ImportError:
 
192
            pass
 
193
        else:
 
194
            versions.append(('simplejson', simplejson.__version__))
203
195
 
204
196
        try:
205
197
            Dozer = pkg_resources.get_distribution('Dozer')