Hi,
I was talking to Steven Merrill who is also doing a lot of work on ESI, and we agreed that ESI should be a base module and that we should have sub-modules handle the actual interaction to the subsystem. An example of this would be that I am working on Panels ESI integration and I am having to duplicate some code that comes from the ESI module's blocks integration. I think we could refactor this so that we don't need to have blocks esi on if we are using panels.
For now, I feel like we should try to use the following methodology:
Modules:
ESI - Base ESI functionality. Including URL structure and validation of private key. Ability for submodule to register a path for esi callback.
ESI Block - Module that uses the ESI functionality for blocks. Should respect Block Cache settings instead of using internal ESI settings.
ESI Panels - Module that allows panels to use ESI similar to blocks.
ESI Views - Module that allows views to integrate into ESI.
These are the ones I can think about off the top of my head. I wouldn't mind helping co-maintain this module as I am already working on Panels + Views for ESI, but I would like to see ESI refactored first so that I don't have to duplicate work and we can combine our work efforts.
Let me know what you think about this, and I'll provide patches asap.
Comments
Comment #1
bibo CreditAttribution: bibo commentedI would be interested in this as well.
(subscribe)
Comment #2
rickvug CreditAttribution: rickvug commentedThis is on the radar. I work with dstuart on a project using ESI. We've recently decided to move to panels so ESI for Panels will need to taken into account.
Comment #3
manarth CreditAttribution: manarth commentedHi Slantview - I've added a first-pass at panels support for ESI in #985198: Add panel support to ESI. I'd be interested to hear your take on it, and your thoughts on abstracting for sub-modules.
Comment #4
mikeytown2 CreditAttribution: mikeytown2 commentedPanels are in 2.x now; open to submodule ideas. See #1229188: Rely completely on CTools content types
Comment #5
manarth CreditAttribution: manarth commentedFixed in 7.x-3.x, which is now based on the sub-module approach.