PreviewSimulator implements MiddlewareInterface
Middleware for handling preview settings used when simulating / previewing pages or content through query params when previewing access or time restricted content via for example backend preview links
Table of Contents
Interfaces
- MiddlewareInterface
 
Properties
Methods
- __construct() : mixed
 - process() : ResponseInterface
 - Evaluates preview settings if a backend user is logged in
 - checkIfPageIsHidden() : bool
 - Checks if the page is hidden in the active workspace + language setup.
 - checkIfRootlineRequiresPreview() : bool
 - Evaluate if the "extendToSubpages" flag was set on any of the previous ancestor pages, but be sure to not check for the current page itself.
 - simulateDate() : bool
 - Simulate dates for preview functionality When previewing a time restricted page from the backend, the parameter ADMCMD_simTime it added containing a timestamp with the time to preview. The globals 'SIM_EXEC_TIME' and 'SIM_ACCESS_TIME' and the 'DateTimeAspect' are used to simulate rendering at that point in time.
 - simulateUserGroup() : bool
 - Simulate user group for preview functionality. When previewing a page with a user group restriction, the parameter ADMCMD_simUser = <groupId> will be added to the preview url. Simulation happens.
 
Properties
$context read-only
        protected
            Context
    $context
    
    
    
    
    
    
Methods
__construct()
    public
                    __construct(Context $context) : mixed
    Parameters
- $context : Context
 
process()
Evaluates preview settings if a backend user is logged in
    public
                    process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    Parameters
- $request : ServerRequestInterface
 - $handler : RequestHandlerInterface
 
Tags
Return values
ResponseInterfacecheckIfPageIsHidden()
Checks if the page is hidden in the active workspace + language setup.
    protected
                    checkIfPageIsHidden(int $pageId, ServerRequestInterface $request) : bool
    Parameters
- $pageId : int
 - $request : ServerRequestInterface
 
Tags
Return values
boolcheckIfRootlineRequiresPreview()
Evaluate if the "extendToSubpages" flag was set on any of the previous ancestor pages, but be sure to not check for the current page itself.
    protected
                    checkIfRootlineRequiresPreview(int $pageId) : bool
    Parameters
- $pageId : int
 
Return values
boolsimulateDate()
Simulate dates for preview functionality When previewing a time restricted page from the backend, the parameter ADMCMD_simTime it added containing a timestamp with the time to preview. The globals 'SIM_EXEC_TIME' and 'SIM_ACCESS_TIME' and the 'DateTimeAspect' are used to simulate rendering at that point in time.
    protected
                    simulateDate(ServerRequestInterface $request) : bool
    Ideally the global access is removed in future versions. This functionality needs to be loaded after BackendAuthenticator as it is only relevant for logged in backend users and needs to be done before any page resolving starts.
Parameters
- $request : ServerRequestInterface
 
Return values
boolsimulateUserGroup()
Simulate user group for preview functionality. When previewing a page with a user group restriction, the parameter ADMCMD_simUser = <groupId> will be added to the preview url. Simulation happens.
    protected
                    simulateUserGroup(ServerRequestInterface $request) : bool
    This functionality needs to be loaded after BackendAuthenticator as it is only relevant for logged in backend users and needs to be done before any page resolving starts.
Parameters
- $request : ServerRequestInterface