web/request.py
changeset 3890 d7a270f50f54
parent 3653 ef71abb1e77b
parent 3838 9cc134372bf8
child 4004 c52619c738a5
equal deleted inserted replaced
3810:5b75fd66c80e 3890:d7a270f50f54
    25 from logilab.mtconverter import xml_escape
    25 from logilab.mtconverter import xml_escape
    26 
    26 
    27 from cubicweb.dbapi import DBAPIRequest
    27 from cubicweb.dbapi import DBAPIRequest
    28 from cubicweb.common.mail import header
    28 from cubicweb.common.mail import header
    29 from cubicweb.common.uilib import remove_html_tags
    29 from cubicweb.common.uilib import remove_html_tags
    30 from cubicweb.utils import SizeConstrainedList, HTMLHead
    30 from cubicweb.utils import SizeConstrainedList, HTMLHead, make_uid
    31 from cubicweb.view import STRICT_DOCTYPE, TRANSITIONAL_DOCTYPE_NOEXT
    31 from cubicweb.view import STRICT_DOCTYPE, TRANSITIONAL_DOCTYPE_NOEXT
    32 from cubicweb.web import (INTERNAL_FIELD_VALUE, LOGGER, NothingToEdit,
    32 from cubicweb.web import (INTERNAL_FIELD_VALUE, LOGGER, NothingToEdit,
    33                           RequestError, StatusResponse)
    33                           RequestError, StatusResponse)
    34 
    34 
    35 _MARKER = object()
    35 _MARKER = object()
    85         # tabindex generator
    85         # tabindex generator
    86         self.tabindexgen = count(1)
    86         self.tabindexgen = count(1)
    87         self.next_tabindex = self.tabindexgen.next
    87         self.next_tabindex = self.tabindexgen.next
    88         # page id, set by htmlheader template
    88         # page id, set by htmlheader template
    89         self.pageid = None
    89         self.pageid = None
       
    90         self.varmaker = rqlvar_maker()
    90         self.datadir_url = self._datadir_url()
    91         self.datadir_url = self._datadir_url()
       
    92         self._set_pageid()
       
    93 
       
    94     def _set_pageid(self):
       
    95         """initialize self.pageid
       
    96         if req.form provides a specific pageid, use it, otherwise build a
       
    97         new one.
       
    98         """
       
    99         pid = self.form.get('pageid')
       
   100         if pid is None:
       
   101             pid = make_uid(id(self))
       
   102         self.pageid = pid
       
   103         self.html_headers.define_var('pageid', pid, override=False)
    91 
   104 
    92     @property
   105     @property
    93     def varmaker(self):
   106     def varmaker(self):
    94         varmaker = self.get_page_data('rql_varmaker')
   107         varmaker = self.get_page_data('rql_varmaker')
    95         if varmaker is None:
   108         if varmaker is None: