Changeset 3215

Show
Ignore:
Timestamp:
07/03/07 10:12:46 (1 year ago)
Author:
faide
Message:

Applied patch from Simon Wittber on ticket #1284

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/1.1/turbogears/controllers.py

    r2967 r3215  
    1919unicodechars = re.compile(r"([^\x00-\x7F])") 
    2020 
    21 if config.get("session_filter.on",None) == True: 
    22     if config.get("session_filter.storage_type",None) == "PostgreSQL": 
     21if config.get("session_filter.on", None) == True: 
     22    if config.get("session_filter.storage_type", None) == "PostgreSQL": 
    2323        import psycopg2  
    24         config.update({'session_filter.get_db':psycopg2.connect(psycopg2.get('sessions.postgres.dsn'))}) 
     24        config.update( 
     25                {'session_filter.get_db': psycopg2.connect( 
     26                    psycopg2.get('sessions.postgres.dsn')) 
     27                    }) 
    2528    # support for mysql/sqlite/etc here 
    2629 
    27 def _process_output(output, template, format, content_type, mapping, fragment=False): 
    28     """Produces final output form from the data returned from a 
     30def _process_output(output, template, format, content_type, 
     31        mapping, fragment=False): 
     32    """ 
     33    Produces final output form from the data returned from a 
    2934    controller method. 
    3035 
    31     @param tg_format: format of desired output (html or json) 
    32     @param output: the output returned by the controller 
    33     @param template: HTML template to use 
     36    See the expose() arguments for more info in theses ones since 
     37    they are the same. 
    3438    """ 
    3539    if isinstance(output, dict): 
     
    98102        if isinstance(output, str): 
    99103            output = output.decode(enc) 
     104        elif isinstance(output, types.GeneratorType): 
     105            output = "".join(output) 
     106 
    100107        output = unicodechars.sub( 
    101108            lambda m: "&#x%x;" % ord(m.group(1)), output).encode("ascii") 
     109 
    102110    if isinstance(output, unicode): 
    103111        output = output.encode(enc)