Provides a ctools content type that allows you to pre-load system and / or libraries API libraries.
This helps to avoid delta caching issues.

What is a delta caching issue?

Imagine you use Panels / Panelizer and Views to create a list of nodes e.g. a blog.
The view is configured to output the list items as rendered entities with the view mode "Teaser" and this view mode uses colorbox.js.
The "Teaser" view mode of the nodes is handled by Panelizer and it caches the rendered output of the display.

Advantage of this approach is that every item in the list is individually cached and thus e.g. filtering this list doesn't require to re-render all list items but basically just re-order them.

Sounds fine, but there's one major drawback. The cache system only caches the delta in the javascript output of items.
For example:
The first item in our node list is rendered and because it adds colorbox.js the system detects the difference / delta in the javascripts attached to the page and assignes the colorbox.js to the cache of this node item cache.
But when the second item in our list is rendered the page already has colorbox.js and thus there's no difference / delta the caching system could recognize and cache.

Now imagine you set a filter in the node list that only omits the first node and serves just cached list items otherwise.
That's were the problems begin, in the full list the colorbox.js was added by the first node and used for all nodes, but now the first node isn't there and so isn't colorbox.js.

And here comes Panels Library Loader to help. Add it before the node list and configure it to load colorbox.js. That way the colorbox.js will become part of the "page" instead of a single list item and will be present all the time.

Sponsored by Cando Image

Supporting organizations: 

Project information

  • caution Minimally maintained
    Maintainers monitor issues, but fast responses are not guaranteed.
  • Project categories: Developer tools
  • Created by das-peter on , updated
  • shieldStable releases for this project are covered by the security advisory policy.
    There are currently no supported stable releases.

Releases