utils.py
changeset 4899 c666d265fb95
parent 4881 39fc30001a20
parent 4860 cedb6afdb7da
child 4903 627fcd90e08f
equal deleted inserted replaced
4897:e402e0b32075 4899:c666d265fb95
   158     def add_onload(self, jscode, jsoncall=_MARKER):
   158     def add_onload(self, jscode, jsoncall=_MARKER):
   159         if jsoncall is not _MARKER:
   159         if jsoncall is not _MARKER:
   160             warn('[3.7] specifying jsoncall is not needed anymore',
   160             warn('[3.7] specifying jsoncall is not needed anymore',
   161                  DeprecationWarning, stacklevel=2)
   161                  DeprecationWarning, stacklevel=2)
   162         self.add_post_inline_script(u"""jQuery(CubicWeb).one('server-response', function(event) {
   162         self.add_post_inline_script(u"""jQuery(CubicWeb).one('server-response', function(event) {
   163 %s
       
   164 });""" % jscode)
   163 });""" % jscode)
   165 
   164 
   166 
   165 
   167     def add_js(self, jsfile):
   166     def add_js(self, jsfile):
   168         """adds `jsfile` to the list of javascripts used in the webpage
   167         """adds `jsfile` to the list of javascripts used in the webpage
   180         :param cssfile: the stylesheet's URL
   179         :param cssfile: the stylesheet's URL
   181         """
   180         """
   182         if (cssfile, media) not in self.cssfiles:
   181         if (cssfile, media) not in self.cssfiles:
   183             self.cssfiles.append( (cssfile, media) )
   182             self.cssfiles.append( (cssfile, media) )
   184 
   183 
   185     def add_ie_css(self, cssfile, media='all'):
   184     def add_ie_css(self, cssfile, media='all', iespec=u'[if lt IE 8]'):
   186         """registers some IE specific CSS"""
   185         """registers some IE specific CSS"""
   187         if (cssfile, media) not in self.ie_cssfiles:
   186         if (cssfile, media, iespec) not in self.ie_cssfiles:
   188             self.ie_cssfiles.append( (cssfile, media) )
   187             self.ie_cssfiles.append( (cssfile, media, iespec) )
   189 
   188 
   190     def add_unload_pagedata(self):
   189     def add_unload_pagedata(self):
   191         """registers onunload callback to clean page data on server"""
   190         """registers onunload callback to clean page data on server"""
   192         if not self.pagedata_unload:
   191         if not self.pagedata_unload:
   193             self.post_inlined_scripts.append(self.js_unload_code)
   192             self.post_inlined_scripts.append(self.js_unload_code)
   213         for cssfile, media in self.cssfiles:
   212         for cssfile, media in self.cssfiles:
   214             w(u'<link rel="stylesheet" type="text/css" media="%s" href="%s"/>\n' %
   213             w(u'<link rel="stylesheet" type="text/css" media="%s" href="%s"/>\n' %
   215               (media, xml_escape(cssfile)))
   214               (media, xml_escape(cssfile)))
   216         # 3/ ie css if necessary
   215         # 3/ ie css if necessary
   217         if self.ie_cssfiles:
   216         if self.ie_cssfiles:
   218             w(u'<!--[if lt IE 8]>\n')
   217             for cssfile, media, iespec in self.ie_cssfiles:
   219             for cssfile, media in self.ie_cssfiles:
   218                 w(u'<!--%s>\n' % iespec)
   220                 w(u'<link rel="stylesheet" type="text/css" media="%s" href="%s"/>\n' %
   219                 w(u'<link rel="stylesheet" type="text/css" media="%s" href="%s"/>\n' %
   221                   (media, xml_escape(cssfile)))
   220                   (media, xml_escape(cssfile)))
   222             w(u'<![endif]--> \n')
   221             w(u'<![endif]--> \n')
   223         # 4/ js files
   222         # 4/ js files
   224         for jsfile in self.jsfiles:
   223         for jsfile in self.jsfiles: