src/pyams_utils/fanstatic.py
branchdev-tf
changeset 408 cf2304af0fab
parent 380 c062ab4db6cd
equal deleted inserted replaced
407:0037199881fb 408:cf2304af0fab
    16 
    16 
    17 It includes several TALES extensions which can be used to include resources from a Chameleon
    17 It includes several TALES extensions which can be used to include resources from a Chameleon
    18 template, or to get path of a given resources from a template.
    18 template, or to get path of a given resources from a template.
    19 """
    19 """
    20 
    20 
    21 __docformat__ = 'restructuredtext'
       
    22 
       
    23 from fanstatic import Resource
    21 from fanstatic import Resource
    24 from fanstatic.core import NeededResources, render_css, set_resource_file_existence_checking
    22 from fanstatic.core import NeededResources, render_css, set_resource_file_existence_checking
    25 from pyramid.path import DottedNameResolver
    23 from pyramid.path import DottedNameResolver
    26 from zope.interface import Interface
    24 from zope.interface import Interface
    27 
    25 
    28 from pyams_utils.adapter import ContextRequestViewAdapter, adapter_config
    26 from pyams_utils.adapter import ContextRequestViewAdapter, adapter_config
    29 from pyams_utils.interfaces.tales import ITALESExtension
    27 from pyams_utils.interfaces.tales import ITALESExtension
       
    28 
       
    29 
       
    30 __docformat__ = 'restructuredtext'
    30 
    31 
    31 
    32 
    32 def render_js(url, defer=False):
    33 def render_js(url, defer=False):
    33     """Render tag to include Javascript resource"""
    34     """Render tag to include Javascript resource"""
    34     return '<script type="text/javascript" src="%s" %s></script>' % (url, 'defer' if defer else '')
    35     return '<script type="text/javascript" src="%s" %s></script>' % (url, 'defer' if defer else '')
    57 
    58 
    58     def render(self, library_url):
    59     def render(self, library_url):
    59         """Render resource tag"""
    60         """Render resource tag"""
    60         if self.resource_type == 'css':
    61         if self.resource_type == 'css':
    61             return render_css(self.relpath)
    62             return render_css(self.relpath)
    62         elif self.resource_type == 'js':
    63         if self.resource_type == 'js':
    63             return render_js(self.relpath, self.defer)
    64             return render_js(self.relpath, self.defer)
    64         else:
    65         return ''
    65             return ''
       
    66 
    66 
    67 
    67 
    68 def get_resource_path(resource, signature='--static--', versioning=True):
    68 def get_resource_path(resource, signature='--static--', versioning=True):
    69     """Get path for given resource"""
    69     """Get path for given resource"""
    70     res = NeededResources(publisher_signature=signature, versioning=versioning)
    70     res = NeededResources(publisher_signature=signature, versioning=versioning)