I have a setup with two page types - ImagesPageHolder and ImagesPage - with ImagesPages being the children of an ImagesPageHolder. The Holder page has no content but simply redirects to the first child page. The ImagesPage returns slimmed down content when requested with ajax.
However, this causes an issue when requesting the Holder page with ajax, as the redirect seems to strip the ajax information from the request, with the result that the full ImagePage is returned, not the slimmed down version.
My current workaround in the ImagesPageHolder controller is this:
public function init() {
parent::init();
Director::redirect($this->Children()->First()->Link() . (Director::is_ajax() ? '?ajax=1' : ''));
}
However, this feels like a hack to me, especially as I'd like to reserve the 'ajax' param for debugging only.
Any suggestions?
Thanks.