While using purl_domain with og_spaces, it seems impossible to display a custom group home page (as defined in the site_frontpage override) when you visit the specified domain without a path, like: http://something.com/

It seems that purl_init assumes that the $_GET['q'] variable will still be blank if no path is specified in the url. However, common.inc calls drupal_path_initialize() in _drupal_bootstrap_full() to set the $_GET['q'] variable if blank before even invoking the hook_init functions.

I have been unable to find any issues relating to getting the site_frontpage override to work, however the general bootstrap problem has been brought up several times in relation to other adverse affects in #1592732: hook_init too late for drupal_path_initialize() call and #1529892: can't set og_context in time for og_theme due to PURL activation location. The latter offers a potential solution by calling purl_init earlier in the bootstrap function through hook_custom_theme, which seems a bit hackish, but may be the only solution.

Any attention that can be given to this issue would be very welcome!

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

ryandekker’s picture

I'm not sure if this will actually help your situation, but this will activate the space earlier in the process. This seems to have fixed my issue using PURL with purl_path. I haven't analyzed the code enough to fully understand the consequences of activating this earlier, if there are any.

This is calling purl_get_normal_path() from purl_url_inbound_alter() with the $activate argument set to TRUE, which initializes the space attached to the PURL.

Be interested to know if this causes problems with other PURL types for anyone.

ryandekker’s picture

I'm not sure if this will actually help your situation, but this will activate the space earlier in the process. This seems to have fixed my issue using PURL with purl_path. I haven't analyzed the code enough to fully understand the consequences of activating this earlier, if there are any.

This is calling purl_get_normal_path() from purl_url_inbound_alter() with the $activate argument set to TRUE, which initializes the space attached to the PURL.

Be interested to know if this causes problems with other PURL types for anyone.