equal
deleted
inserted
replaced
22 |
22 |
23 # import local interfaces |
23 # import local interfaces |
24 from interfaces import IHTMLTalesAPI |
24 from interfaces import IHTMLTalesAPI |
25 |
25 |
26 # import Zope3 packages |
26 # import Zope3 packages |
27 from zope.app import zapi |
|
28 from zope.app.renderer.plaintext import PlainTextToHTMLRenderer |
|
29 from zope.app.renderer.rest import ReStructuredTextToHTMLRenderer |
|
30 from zope.app.renderer.stx import StructuredTextToHTMLRenderer |
|
31 from zope.component import createObject |
|
32 from zope.interface import implements |
27 from zope.interface import implements |
33 |
28 |
34 # import local packages |
29 # import local packages |
35 from ztfy.utils.html import htmlToText |
30 from ztfy.utils.html import htmlToText |
|
31 from ztfy.utils.text import textToHTML |
36 |
32 |
37 |
33 |
38 class HTMLTalesAdapter(object): |
34 class HTMLTalesAdapter(object): |
39 |
35 |
40 implements(IHTMLTalesAPI, ITALESFunctionNamespace) |
36 implements(IHTMLTalesAPI, ITALESFunctionNamespace) |
51 return htmlToText(self.context) |
47 return htmlToText(self.context) |
52 |
48 |
53 def text(self): |
49 def text(self): |
54 if not self.context: |
50 if not self.context: |
55 return u'' |
51 return u'' |
56 formatter = createObject('zope.source.plaintext', self.context) |
52 return textToHTML(self.context, 'zope.source.plaintext') |
57 renderer = PlainTextToHTMLRenderer(formatter, self.request) |
|
58 return renderer.render() |
|
59 |
53 |
60 def stx(self): |
54 def stx(self): |
61 if not self.context: |
55 if not self.context: |
62 return u'' |
56 return u'' |
63 formatter = createObject('zope.source.stx', self.context) |
57 return textToHTML(self.context, 'zope.source.stx') |
64 renderer = StructuredTextToHTMLRenderer(formatter, self.request) |
|
65 return renderer.render() |
|
66 |
58 |
67 def rest(self): |
59 def rest(self): |
68 if not self.context: |
60 if not self.context: |
69 return u'' |
61 return u'' |
70 formatter = createObject('zope.source.rest', self.context) |
62 return textToHTML(self.context, 'zope.source.rest') |
71 renderer = ReStructuredTextToHTMLRenderer(formatter, self.request) |
|
72 return renderer.render() |
|