예제 #1
0
    def __init__(self, request):
        top_request = get_top_request(request)
        # Just add the bundle from plone.patternslib.
        # If it's not available, it wont't hurt.
        add_bundle_on_request(top_request, 'bundle-leaflet')

        super(GeolocationWidget, self).__init__(request)
    def test_add_bundle_on_request_with_subrequest(self):
        req = self.layer['request']

        # create a subrequest.
        subreq = req.clone()
        subreq['PARENT_REQUEST'] = req

        # add a bundle via the main request
        add_bundle_on_request(req, 'foo')

        scripts = ScriptsView(self.layer['portal'], subreq, None)

        # Send resource registry in development mode
        # Via a fake registry to allow accessing like this:
        # self.registry.records['plone.resources.development'].value
        scripts.registry = type(
            'reg', (object, ), {
                'records': {
                    'plone.resources.development':
                    type('val', (object, ), {'value': True})()
                }
            })()
        self.assertTrue(scripts.development)

        scripts.update()
        results = scripts.scripts()
        self.assertEqual(
            results[-1], {
                'src': 'http://nohost/plone/++resource++foo.js?version=123',
                'conditionalcomment': None,
                'bundle': 'foo'
            })
    def __init__(self, request):
        top_request = get_top_request(request)
        # Just add the bundle from plone.patternslib.
        # If it's not available, it wont't hurt.
        add_bundle_on_request(top_request, 'bundle-leaflet')

        super(GeolocationWidget, self).__init__(request)
예제 #4
0
 def __call__(self):
     images = self.context.listFolderContents(
         contentFilter={"portal_type": "Image"})
     if len(images) > 0:
         add_bundle_on_request(self.request, "spotlightjs")
         add_bundle_on_request(self.request, "flexbin")
     self.update()
     return self.index()
예제 #5
0
 def __call__(self):
     if self.request.get('assign-data') == 'yes':
         return json.dumps(self.get_assign_config())
     elif self.request.get('assign-save') == 'yes':
         self.save_assignments()
     from Products.CMFPlone.resources import add_bundle_on_request
     add_bundle_on_request(self.request, 'layouts-editor')
     return super(LayoutsEditor, self).__call__()
예제 #6
0
 def __call__(self):
     if self.request.get('assign-data') == 'yes':
         return json.dumps(self.get_assign_config())
     elif self.request.get('assign-save') == 'yes':
         self.save_assignments()
     from Products.CMFPlone.resources import add_bundle_on_request
     add_bundle_on_request(self.request, 'layouts-editor')
     return super(LayoutsEditor, self).__call__()
예제 #7
0
    def __call__(self):
        add_bundle_on_request(self.request, 'thememapper')
        self.setup()

        if self.update():
            # Evil hack to deal with the lack of implicit acquisition from
            # resource directories
            self.context = getSite()
            return self.index()
        return ''
예제 #8
0
    def __call__(self):
        add_bundle_on_request(self.request, 'thememapper')
        self.setup()

        if self.update():
            # Evil hack to deal with the lack of implicit acquisition from
            # resource directories
            self.context = getSite()
            return self.index()
        return ''
예제 #9
0
 def __call__(self):
     if self.request.form.get('list-contentlayouts'):
         return self.list_contentlayouts()
     action = self.request.form.get('action')
     if action:
         if action == 'show':
             return self.show()
         elif action == 'hide':
             return self.hide()
     from Products.CMFPlone.resources import add_bundle_on_request
     add_bundle_on_request(self.request, 'layouts-editor')
     return super(LayoutsEditor, self).__call__()
예제 #10
0
 def __call__(self):
     if self.request.form.get('list-contentlayouts'):
         return self.list_contentlayouts()
     action = self.request.form.get('action')
     if action:
         if action == 'show':
             return self.show()
         elif action == 'hide':
             return self.hide()
     from Products.CMFPlone.resources import add_bundle_on_request
     add_bundle_on_request(self.request, 'layouts-editor')
     return super(LayoutsEditor, self).__call__()
예제 #11
0
    def __call__(self):
        if self.request.form.get("list-contentlayouts"):
            return self.list_contentlayouts()
        action = self.request.form.get("action")
        if action:
            if action == "show":
                return self.show()
            elif action == "hide":
                return self.hide()
        from Products.CMFPlone.resources import add_bundle_on_request

        add_bundle_on_request(self.request, "layouts-editor")
        return super(LayoutsEditor, self).__call__()
예제 #12
0
 def __init__(self, context, request):
     super(ImportExcel, self).__init__(context, request)
     self.context = context
     self.request = request
     add_bundle_on_request(self.request, 'gene-tumour-main')
     self.request['disable_border'] = True
     for trans, invert in [
         (invert_situation_local, invert_situation_dict),
         (invert_na_types_local, invert_na_types_dict),
         (invert_result_local, invert_result_dict),
     ]:
         if not trans:
             for key in invert:
                 trans[translate(_(key), context=request)] = invert[key]
예제 #13
0
    def __init__(self, context, request):
        venue_uid = request.get('uid', None)
        if venue_uid:
            venue_obj = uuidToObject(venue_uid)
            if venue_obj:
                # Change the context to the one of the uid referenced object.
                # That's the easiest way to render a venue from a different
                # subsite on any context. However, this might lead to broken
                # urls in for the edit bar.
                context = venue_obj

        top_request = get_top_request(request)
        # Just add the bundle from plone.patternslib.
        # If it's not available, it wont't hurt.
        add_bundle_on_request(top_request, 'bundle-leaflet')

        self.context = context
        self.request = request
예제 #14
0
    def __init__(self, context, request):
        venue_uid = request.get('uid', None)
        if venue_uid:
            venue_obj = uuidToObject(venue_uid)
            if venue_obj:
                # Change the context to the one of the uid referenced object.
                # That's the easiest way to render a venue from a different
                # subsite on any context. However, this might lead to broken
                # urls in for the edit bar.
                context = venue_obj

        top_request = get_top_request(request)
        # Just add the bundle from plone.patternslib.
        # If it's not available, it wont't hurt.
        add_bundle_on_request(top_request, 'bundle-leaflet')

        self.context = context
        self.request = request
예제 #15
0
    def filter_request(self):
        """
        Manipulate the request to support the fallback theme:

        - Remove the 'normal' theme layer from the request
          to disable the diazo transform of that theme and
          fully fall back to the underlying configured theme,
          typically barceloneta.

        - Enable/disable resource bundles to restore the fallback theme.
          Typically involves removing the 'normal' theme bundle(s).
          Some control panels add a bundle to the request on rendering,
          and we make sure to play nice with that and extend rather than
          replace such request bundle settings.
        """
        if self.request.get('ploneintranet.themeswitcher.marker'):
            return
        # manipulate the same request only once
        self.request.set('ploneintranet.themeswitcher.marker', True)

        if not self.isFallbackActive():
            return

        # only on fallback, remove current theme browser layer(s)
        switcher = self.getSwitcherSettings()
        remove_layers = [
            resolveDottedName(x) for x in switcher.browserlayer_filterlist
        ]
        active_layers = [
            x for x in directlyProvidedBy(self.request)
            if x not in remove_layers
        ]
        directlyProvides(self.request, *active_layers)

        # CMFPlone/resource/browser/resource
        # supports enable/disable bundles directly on the request
        if switcher.fallback_enabled_bundles:
            for bundle in switcher.fallback_enabled_bundles:
                add_bundle_on_request(self.request, bundle)
        if switcher.fallback_disabled_bundles:
            for bundle in switcher.fallback_disabled_bundles:
                remove_bundle_on_request(self.request, bundle)
        else:
            log.warn("NO bundles disabled on fallback. That's weird.")
 def __call__(self):
     add_bundle_on_request(self.request, 'resourceregistry')
     req = self.request
     if req.REQUEST_METHOD == 'POST':
         action = req.get('action', '')
         method = action.replace('-', '_')
         if hasattr(self, method):
             return getattr(self, method)()
         else:
             return json.dumps({
                 'success': False,
                 'msg': 'Invalid action: ' + action
             })
     else:
         if RESOURCE_DEVELOPMENT_MODE:
             messages = IStatusMessage(self.request)
             messages.add(u"The FEDEV environment variable is set. No matter "
                          u"what settings are done here, all bundles will "
                          u"always be in development mode.", type=u"warn")
         return self.index()
예제 #17
0
 def __call__(self):
     add_bundle_on_request(self.request, 'resourceregistry')
     req = self.request
     if req.REQUEST_METHOD == 'POST':
         action = req.get('action', '')
         method = action.replace('-', '_')
         if hasattr(self, method):
             return getattr(self, method)()
         else:
             return json.dumps({
                 'success': False,
                 'msg': 'Invalid action: ' + action
             })
     else:
         if RESOURCE_DEVELOPMENT_MODE:
             messages = IStatusMessage(self.request)
             messages.add(u"The FEDEV environment variable is set. No matter "
                          u"what settings are done here, all bundles will "
                          u"always be in development mode.", type=u"warn")
         return self.index()
예제 #18
0
    def filter_request(self):
        """
        Manipulate the request to support the fallback theme:

        - Remove the 'normal' theme layer from the request
          to disable the diazo transform of that theme and
          fully fall back to the underlying configured theme,
          typically barceloneta.

        - Enable/disable resource bundles to restore the fallback theme.
          Typically involves removing the 'normal' theme bundle(s).
          Some control panels add a bundle to the request on rendering,
          and we make sure to play nice with that and extend rather than
          replace such request bundle settings.
        """
        if self.request.get('ploneintranet.themeswitcher.marker'):
            return
        # manipulate the same request only once
        self.request.set('ploneintranet.themeswitcher.marker', True)

        if not self.isFallbackActive():
            return

        # only on fallback, remove current theme browser layer(s)
        switcher = self.getSwitcherSettings()
        remove_layers = [resolveDottedName(x)
                         for x in switcher.browserlayer_filterlist]
        active_layers = [x for x in directlyProvidedBy(self.request)
                         if x not in remove_layers]
        directlyProvides(self.request, *active_layers)

        # CMFPlone/resource/browser/resource
        # supports enable/disable bundles directly on the request
        if switcher.fallback_enabled_bundles:
            for bundle in switcher.fallback_enabled_bundles:
                add_bundle_on_request(self.request, bundle)
        if switcher.fallback_disabled_bundles:
            for bundle in switcher.fallback_disabled_bundles:
                remove_bundle_on_request(self.request, bundle)
        else:
            log.warn("NO bundles disabled on fallback. That's weird.")
    def test_add_bundle_on_request_with_subrequest(self):
        req = self.layer['request']

        # create a subrequest.
        subreq = req.clone()
        subreq['PARENT_REQUEST'] = req

        # add a bundle via the main request
        add_bundle_on_request(req, 'foo')

        scripts = ScriptsView(self.layer['portal'], subreq, None)

        # Send resource registry in development mode
        # Via a fake registry to allow accessing like this:
        # self.registry.records['plone.resources.development'].value
        scripts.registry = type(
            'reg',
            (object, ),
            {'records': {
                'plone.resources.development': type(
                    'val',
                    (object, ),
                    {'value': True}
                )()
            }}
        )()
        self.assertTrue(scripts.development)

        scripts.update()
        results = scripts.scripts()
        self.assertEqual(
            results[-1],
            {
                'src': 'http://nohost/plone/++resource++foo.js?version=123',
                'conditionalcomment': None,
                'bundle': 'foo'
            }
        )
    def test_request_bundles_not_add_same_twice(self):
        req = self.layer['request']
        add_bundle_on_request(req, 'foo')
        add_bundle_on_request(req, 'foo')

        self.assertEqual(len(req.enabled_bundles), 1)
예제 #21
0
 def __call__(self):
     add_bundle_on_request(self.request, 'redturtle-gallery-bundle')
     return super(GalleryView, self).__call__()
    def test_request_bundles_not_add_same_twice(self):
        req = self.layer['request']
        add_bundle_on_request(req, 'foo')
        add_bundle_on_request(req, 'foo')

        self.assertEqual(len(req.enabled_bundles), 1)
예제 #23
0
 def __init__(self, context, request):
     # Each view instance receives context and request as construction parameters
     self.context = context
     self.request = request
     add_bundle_on_request(self.request, 'workspace-legacy')
     add_resource_on_request(self.request, 'iphone-style')
예제 #24
0
 def __call__(self):
     add_bundle_on_request(self.request, "z3cform-jsonwidget-bundle")
     return super(UfficiostampaSettingsControlPanel, self).__call__()
예제 #25
0
 def __init__(self, context, request):
     super(LDAPControlPanel, self).__init__(context, request)
     add_bundle_on_request(request, "yafowil")
예제 #26
0
 def __call__(self):
     add_resource_on_request(self.request, 'upload-bootstrap')
     add_bundle_on_request(self.request, 'jqueryui')
     add_resource_on_request(self.request, 'jquery-fileupload')
     return super(ChunkedFileView, self).__call__(self)
예제 #27
0
    def __init__(self, context, request):

        self.context = context
        self.request = request
        add_bundle_on_request(self.request, 'gene-tumour-main')
예제 #28
0
 def __init__(self,context, request):
     # Each view instance receives context and request as construction parameters
     self.context = context
     self.request = request
     add_bundle_on_request(self.request, 'my315ok-products-b3')
예제 #29
0
 def __init__(self,context, request):
     # Each view instance receives context and request as construction parameters
     self.context = context
     self.request = request
     add_bundle_on_request(self.request, 'xtcs-policy-datatable')
예제 #30
0
 def __call__(self):
     add_bundle_on_request(self.request, 'sitesearch')
     return super(RERSearch, self).__call__()
예제 #31
0
 def __call__(self):
     from Products.CMFPlone.resources import add_bundle_on_request
     add_bundle_on_request(self.request, 'layouts-editor')
     return super(LayoutsEditor, self).__call__()
예제 #32
0
 def __init__(self, context, request):
     super(BookingsView, self).__init__(context, request)
     add_bundle_on_request(request, 'bdajax-jquerytools')
     add_bundle_on_request(request, 'bdajax-jquerytools-overlay')
     add_bundle_on_request(request, 'datatables')
     add_bundle_on_request(request, 'bda-plone-orders')
예제 #33
0
 def __call__(self):
     add_bundle_on_request(self.request, "spotlightjs")
     add_bundle_on_request(self.request, "flexbin")
     return self.index()
예제 #34
0
 def __init__(self, context, request):
     super(LDAPControlPanel, self).__init__(context, request)
     add_bundle_on_request(request, "yafowil")
 def __init__(self, context, request):
     super(MapsTile, self).__init__(context, request)
     # TODO: does not work, because CMFPlone.resources.browser.resource is
     #       called before this one; subrequest problem
     top_request = get_top_request(request)
     add_bundle_on_request(top_request, 'bundle-leaflet')
예제 #36
0
 def __init__(self,context, request):
     # Each view instance receives context and request as construction parameters
     self.context = context
     self.request = request
     add_bundle_on_request(self.request, 'homepage-legacy')
예제 #37
0
 def __call__(self):
     add_bundle_on_request(self.request, "z3cform-jsonwidget-bundle")
     return super(ElevateSettingsView, self).__call__()