Tried to install and use this on a node-type setup with a reference; looking at the resulting view it seems the theme could not find tpl.php file (see screenshot).

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

christianchristensen’s picture

Status: Needs review » Closed (works as designed)

Turns out, after looking through this a bit, this is intentional. The views plugin:

function views_tree_views_plugins() {
...
         'handler'         => 'views_tree_plugin_style_tree',
         'theme'           => 'views_tree',
...

registers the theme callback function to be called and from there the "theme_views_tree" function recursively calls the "theme_views_tree_inner" to build the inherited type ("list"). Event through the .tpl.php is not registered correctly from the GUI it is still functioning properly.

...interesting

christianchristensen’s picture

Status: Closed (works as designed) » Needs review
FileSize
655 bytes

An additional question to this:
the view does not seem to register as a style plugin through the theme functions if the the "theme file" line in "views_tree.views.inc" is not there:

 ...
        'title'           => t('Tree (Adjacency model)'),
 ...
        'parent'          => 'list',
        'theme file'      => 'views_tree.theme.inc',
 ...

Is there a reason this is there but, commented out? I suspect it is triggering some views magic in the background...?

Crell’s picture

This style plugin doesn't use a template file at all. Given the logic it's doing, a template file wouldn't really make sense. I don't know how you'd do recursion in a template file in a sane way. :-) That is supported by Views, just not used very often.

As for the commented out line... Yes, there's a reason for it. I cannot for the life of me recall what, though. I believe it's due to the theme system and Views in combination frequently losing the inc file and therefore not finding the theme function except on theme registry rebuild itself. That's a long-standing bug in, I think, core that I thought was fixed but maybe isn't after all. Sigh.

I'll try to have a look sometime this week, but I've got a few other tasks to knock out first.

joachim’s picture

> This style plugin doesn't use a template file at all. Given the logic it's doing, a template file wouldn't really make sense.

I think you should still have a wrapper template file for consistency with all other view styles.

chriscalip’s picture

Bug sighted +1 with a different test case. A Term View with a required relationship of a parent term and a filter to specific a vocabulary.

Visual Example.

Main Field: Term ID
Primary Field : Term ID (Parent Term Relationship)

geek-merlin’s picture

this seems to be another dup of #828750: warning: call_user_func_array() .

i can confirm that applying sun's patch (and clearing cache) solves the problem for me: http://drupal.org/node/828750#comment-3367396

Crell’s picture

Status: Needs review » Fixed

#828750: warning: call_user_func_array() was fixed, so marking this fixed as well.

Status: Fixed » Closed (fixed)

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

Shadlington’s picture

Status: Closed (fixed) » Active

Reopening because this is a problem for me...
I have been playing around with caching through varnish and after I apply this patch (or use the dev version) for some reason I can't identify, I am getting a 503 service unavailable error when I navigate to the page the view should be on. Prior to this patch I would just get the same call_user_func_array() error everyone else was getting.
My understanding is that if I'm getting a 503 service error its pretty much the same as a WSOD, so its not varnish isn't necessarily part of the problem, just obfuscating it.

Not sure what to make of it really, but it does seem to render me unable to use this module in this setup.

Crell’s picture

Issue summary: View changes
Status: Active » Fixed
geerlingguy’s picture

@Crell stalks an issue!

Status: Fixed » Closed (fixed)

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