[cpif] r214 - trunk/frontend-web
svn at argo.es
svn at argo.es
Sat Jun 30 23:55:41 CEST 2007
Author: jcea
Date: Sat Jun 30 23:55:41 2007
New Revision: 214
Log:
Problemas menores...
Modified:
trunk/frontend-web/parser_entities.py
trunk/frontend-web/parser_eol.py
trunk/frontend-web/parsers.py
Modified: trunk/frontend-web/parser_entities.py
==============================================================================
--- trunk/frontend-web/parser_entities.py (original)
+++ trunk/frontend-web/parser_entities.py Sat Jun 30 23:55:41 2007
@@ -2,5 +2,8 @@
def parse(text):
import cgi
- return False,[(True, cgi.escape(text))]
+ # Devolvemos "False" para que si ponemos algun otro parser detras (!no lo hagas!)
+ # dicho parser no haga nada. La idea es que al investigarlo nos encontremos
+ # con que lo hemos puesto donde no es...
+ return False,[(False, cgi.escape(text))]
Modified: trunk/frontend-web/parser_eol.py
==============================================================================
--- trunk/frontend-web/parser_eol.py (original)
+++ trunk/frontend-web/parser_eol.py Sat Jun 30 23:55:41 2007
@@ -1,5 +1,11 @@
# $Id$
def parse(text):
- return False,[(True, text.replace("\r","").replace("\n","<br>\r\n"))]
+ eol=(False,"<br/>")
+ token_list=[]
+ text=text.replace("\r","")
+ for fragment in text.split("\n") :
+ token_list.extend([(True,fragment),eol])
+ token_list.pop() # Al final hay un "eol" de mas
+ return False,token_list
Modified: trunk/frontend-web/parsers.py
==============================================================================
--- trunk/frontend-web/parsers.py (original)
+++ trunk/frontend-web/parsers.py Sat Jun 30 23:55:41 2007
@@ -14,8 +14,10 @@
parsers = [
(allow_html, parser_html),
(allow_bbcode, parser_bbcode),
- (True, parser_entities),
(True, parser_eol),
+# Salvo que sepas muy bien que estas haciendo,
+# este parser debe ser el ultimo de todos.
+ (True, parser_entities)
]
for allow, parser in parsers:
@@ -25,10 +27,10 @@
token_list=[token]
must_reparse,fragment=token
if must_reparse :
- retval, token_list = parser.parse(fragments)
+ retval, token_list = parser.parse(fragment)
if retval :
return retval, None
- aux+=token
+ aux+=token_list
tokens = aux
return False, "".join([text for dummy, text in tokens])
More information about the cpif
mailing list