Forums / Install & configuration / kernel/common/eztreemenuoperator.php on line 180

kernel/common/eztreemenuoperator.php on line 180

Author Message

Brygida Walczak

Monday 14 February 2005 2:16:25 pm

Hello,
Could someone help me with this install problem?

When executing
http://www.victimology.be/portail/ezpublish/index.php

I am receiving this message:

Fatal error: Call to a member function on a non-object in /home/victimol/public_html/portail/ezpublish/kernel/common/eztreemenuoperator.php on line 180
Fatal error: eZ publish did not finish its request
The execution of eZ publish was abruptly ended, the debug output is present below.

General server information

Server name smarty
Apache version 1.3.33 (Unix)
PHP version 4.3.10
PERL version 5.8.4

Thank in advance you for any advice,
Brygida

Erling Owe

Monday 28 February 2005 3:14:28 am

I get the same error on several different installs of eZ publish. Does that mean that this is coused by some wrong ini-settings on my site? In that case, what exactly is cousing this?

Simon Phillips

Monday 28 February 2005 6:07:12 am

When I've had this problem, it's been caused by an error in the parameters you pass to the treemenu template function.

The problem I had was that while previously it was possible to specify that you didn't want to filter on content classes by passing false() as the relevant parameter, the new release of ezPublish fails on this (with the above error).

The only solution I found was to sepcify each template class I wanted to include - ie pass array('article', 'folder',...) etc instead of false() for the content filter parameter.

Hope that helps.
Simon

Erling Owe

Monday 28 February 2005 6:58:56 am

I'm quite new to eZ publish, so I didn't really understand all that. Could you explain it a little more newbie-like, you know, step by step. Thanks.

Erling Owe

Monday 28 February 2005 7:03:00 am

Btw., this is how my menu is built up:

topmenu.tpl

{* Set your top category here *}
{let top_cat=2

      used_node=false()}

{* See if we have already a node id otherwise use the top category as current node *}
{section show=is_set($DesignKeys:used.node)}
        {set used_node=$DesignKeys:used.node}
{section-else}
        {set used_node=$top_cat}
{/section}

{* Get a proper node object *}
{let node_obj=fetch(content,node,hash(node_id,$used_node))}

{section loop=fetch(content,list,hash(parent_node_id,$top_cat, class_filter_type, "include", class_filter_array, array(1),sort_by,array(array(priority))))}
  {section show=$node_obj.path_array|contains($:item.node_id)}
    <a href={$:item.url_alias|upcase|ezurl}><img src="{concat("http://krfu.no/",$:item.object.data_map.aktiv_folder.content[small].full_path)}" border="0" /></a>
  {section-else}
    <a href={$:item.url_alias|upcase|ezurl}><img src="{concat("http://krfu.no/",$:item.object.data_map.inaktiv_folder.content[small].full_path)}" border="0" /></a>
  {/section}
{/section}

{/let}
{/let}

submenu.tpl

{let menulevel2=treemenu($module_result.path, $module_result.node_id,array('folder', 'statisk_artikkel'),1,2)}
{section name=Menu2 loop=$menulevel2}
	{section show=$Menu2:item.is_selected}
		<a href={$Menu2:item.url_alias|ezurl} class="menu"><b>{$Menu2:item.text|wash}</b></a>
	{section-else}
		<a href={$Menu2:item.url_alias|ezurl} class="menu">{$Menu2:item.text|wash}</a>
	{/section}
{delimiter}&nbsp;&nbsp;&nbsp;{/delimiter}
{/section}
{/let}