Since updating to beta2 and applying the patch in http://drupal.org/node/824498, my sub-theme's RegionFx (such as tabs, accordions) no longer work on pages using context_layout (a submodule of Context). Oddly, the RegionFx still don't work on those pages even after disabling the context_layout sub-module, switching to the Canvas sub-theme, and clearing the caches. The blocks appear to be in the correct region, just without the RegionFx. The RegionFx appear correctly on pages that have only used the default layout.

However, I tested on a fresh install with Canvas by adding a layout to the .info file (as described in http://drupalcode.org/viewvc/drupal/contributions/modules/context/contex...) and RegionFx worked fine.

@dvessel: Do you think anything in beta2 could have caused this issue? Or could this be related to http://drupal.org/node/817992? Sorry if this is posted in the wrong queue; I'm kind of baffled by this one. I'd be happy to follow up in the Context issue queue if you think this is unrelated to Hex. Thanks!

CommentFileSizeAuthor
#12 hexagon-827486-notice.patch968 bytesdvessel
#6 hexagon-827486.patch1011 bytesdvessel

Comments

dvessel’s picture

Thanks for the bug report. A few questions…

  • Is the theme using a custom page.tpl.php file?
  • Any custom "blocks.tpl.php" templates customized for the theme?
  • Any preprocess functions related to blocks used in the theme?

And could you post what's in the .info file for the sub-theme? I want as much information as I can get to recreate the bug.

The beta 2 version does remove of the custom fx regions from the page template in Canvas and uses the "region groups" plug-in. This allows some abstraction between region names as it's defined from .info from the variables that's normally printed in the page.tpl.php template. Not sure if it's related.

Thanks.

penguininja’s picture

Title: RegionFx (tabs, accordion) don't work on pages using Context Layout » RegionFx (tabs, accordion) don't work on pages using Views Slideshow

Ah-ha! I think I've found the real issue here. This does not appear to be a conflict with Context Layout at all, but rather with Views Slideshow.

To clarify, on any page with a views slideshow (either page or block display, and regardless of whether or not the page is using Context), RegionFx do not work on either Canvas or my custom sub-theme. On Context Layout pages that do NOT have a slideshow on them, RegionFx work on both Canvas and my sub-theme. This also explains the inconsistent behavior I was getting during testing (because I was testing for issues with Context and not Views Slideshow).

@dvessel: Any insight on this? This seemed to break in the beta2 release, as I did not have this issue with beta1. Please let me know if I can provide you with any further info. Thanks!

dvessel’s picture

I'm trying to recreate the bug. Give me a moment, never used views slide show.

dvessel’s picture

This is javascript related. It didn't seem to be related with Hexagon but oddly enough the views slideshow works in Garland. Hexagon has no hand in changing anything set from views slideshow so I'm a bit baffled.

Something about this line in views_slideshow.js is trying to get a non-existing ID.

  // line 15
  // fullId missing from Drupal.settings but available in the DOM.
  var settings = Drupal.settings.viewsSlideshowSingleFrame[fullId];
dvessel’s picture

Wow, that was stupid bug in Hexagon. It's due to how Hex works with preprocess forming referenced variables. Patch coming.

dvessel’s picture

Status: Active » Fixed
StatusFileSize
new1011 bytes

It wasn't due to what I mentioned above. I simply forgot to unset the preprocess functions for theme functions in the registry. There's a "id" variable set from the default "template_preprocess" and it was conflicting with the id attribute for some of the views slideshow hooks.

Sorry about that.

dvessel’s picture

Title: RegionFx (tabs, accordion) don't work on pages using Views Slideshow » default template_preprocess invoked for theme functions. Can cause conflicts in theme arguments.

BTW, this could also be considered a bug in views slideshow since nothing should be using "id" for an argument. Them moment anyone converts those theme functions into templates, this bug will pop right back up for any theme, not just hexagon.

penguininja’s picture

@dvessel: Thanks for digging into this! I'll test the patch this afternoon.

Also good to know about the Views Slideshow argument. Is that addressed here?: http://drupal.org/node/571224

penguininja’s picture

That fixed it (patch in comment #6), thanks again!

dvessel’s picture

#571224: Problem with $id variable when overriding breakout-teaser is the exact same issue. Glad it worked out and thanks for catching this.

penguininja’s picture

Since applying this patch I'm getting the following error periodically:

warning: array_unique() [function.array-unique]: The argument should be an array in /sites/all/themes/hexagon/HexagonBase/includes/build_theme_registry.inc on line 185.

It doesn't appear to have an adverse effect on anything, and a page reload makes it go away. Just fyi

dvessel’s picture

StatusFileSize
new968 bytes

I have my server set to strict. Not sure why it didn't spot that. I committed this patch which should fix it.

penguininja’s picture

@dvessel: I haven't gotten the error since applying the patch. Thanks!

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.