~replaceafill/schooltool/trunk_fixes

« back to all changes in this revision

Viewing changes to src/schooltool/table/pdf.py

  • Committer: Justas Sadzevicius
  • Date: 2013-05-28 12:12:34 UTC
  • mfrom: (3585.1.4 flourish_trunk)
  • Revision ID: justas@pov.lt-20130528121234-uzr7ke5pz1ihn101
Merge file archive reprorts and minor report tweaks and fixes

Show diffs side-by-side

added added

removed removed

Lines of Context:
36
36
from schooltool.common import SchoolToolMessage as _
37
37
 
38
38
 
 
39
def minimal_escape_rml(value):
 
40
    return value and unicode(value).replace(
 
41
        '&', '&').replace(
 
42
        '<', '&lt;').replace(
 
43
        '>', '&gt;').strip() or ''
 
44
 
 
45
 
39
46
def getRMLTable(formatter, request):
40
47
    table = zope.component.queryMultiAdapter(
41
48
        (formatter.context, request, formatter.view, formatter),
182
189
        rows = []
183
190
        current_group = None
184
191
        for item in items:
185
 
            group = self.formatter.getSubGroup(item)
 
192
            group = minimal_escape_rml(self.formatter.getSubGroup(item))
186
193
            if group != current_group:
187
194
                if rows:
188
195
                    tables.append({
269
276
        return self.column.title
270
277
 
271
278
    def renderHeader(self, formatter):
272
 
        header = self.column.renderHeader(formatter)
 
279
        header = self.escape(self.column.renderHeader(formatter))
273
280
        return header
274
281
 
275
282
    def renderCell(self, item, formatter):
276
283
        return ''
277
284
 
278
 
    def escape(self, value):
279
 
        return value and unicode(value).replace(
280
 
            '&', '&amp;').replace(
281
 
            '<', '&lt;').replace(
282
 
            '>', '&gt;').strip() or ''
 
285
    escape = lambda self, value: minimal_escape_rml(value)
283
286
 
284
287
 
285
288
class HiddenRMLColumn(RMLColumn):