LeKoala\EmailTemplates\Helpers\SubsiteHelper
Helps providing base functionnalities where including subsite module is optional and yet provide a consistent api
TODO: externalize this to a specific module
Synopsis
class SubsiteHelper
{
- // members
- protected static $previousState;
- protected static $previousSubsite;
- // methods
- public static int currentSubsiteID()
- public static Subsite currentSubsite()
- public static bool usesSubsite()
- public static bool subsiteFilterDisabled()
- public static void enableFilter()
- public static void disableFilter()
- public static void restoreFilter()
- public static int SubsiteIDFromSession()
- public static int forceSubsiteFromRequest()
- public static void changeSubsite()
- public static void restoreSubsite()
- public static array listSubsites()
- public static void withSubsite()
- public static void withSubsites()
Members
protected
- $previousState — boolean
- $previousSubsite — int
Methods
public
- SubsiteIDFromSession()
- changeSubsite()
- currentSubsite()
- currentSubsiteID() — Return current subsite id (even if module is not installed, which returns 0)
- disableFilter() — Disable subsite filter and store previous state
- enableFilter() — Enable subsite filter and store previous state
- forceSubsiteFromRequest() — Typically call this on PageController::init This is due to InitStateMiddleware not using session in front end and not persisting get var parameters
- listSubsites()
- restoreFilter() — Restore subsite filter based on previous set (set when called enableFilter or disableFilter)
- restoreSubsite()
- subsiteFilterDisabled()
- usesSubsite() — Do we have the subsite module installed TODO: check if it might be better to use module manifest instead?
- withSubsite() — Execute the callback in given subsite
- withSubsites() — Execute the callback in all subsites