SOLVED: SuckerFish menus no longer work

This board for support questions on Joomla 1.6 RC (= Release Candidate - which should NOT be used on a production server) is NO longer active because Joomla 1.6.0 has been released.

>> For Joomla! 1.6 Support Questions, please use http://forum.joomla.org/viewforum.php?f=614 instead <<
Locked
greno
Joomla! Intern
Joomla! Intern
Posts: 89
Joined: Tue Feb 13, 2007 4:53 am

SOLVED: SuckerFish menus no longer work

Post by greno » Wed Aug 11, 2010 4:46 pm

My SuckerFish menus no longer work under Joomla 1.6.

I get errors like:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY m.id ORDER BY m.parent, m.ordering' at line 1 SQL=SELECT m.*, sum(case when p.published=1 then 1 else 0 end) as cnt FROM o_menu AS m LEFT JOIN o_menu AS p ON p.parent = m.id WHERE m.menutype='mainmenu' AND m.published='1' AND m.access <= GROUP BY m.id ORDER BY m.parent, m.ordering
Warning: Invalid argument supplied for foreach() in /var/lampp/1.6.4/htdocs/Joomla-1.6-Beta6/templates/jtb_template-1.6/menus.php on line 106
I've attached my menus.php.

Can anyone tell me what needs changed in there to get SuckerFish working again?
You do not have the required permissions to view the files attached to this post.
Last edited by greno on Sat Aug 14, 2010 8:16 pm, edited 1 time in total.

 
greno
Joomla! Intern
Joomla! Intern
Posts: 89
Joined: Tue Feb 13, 2007 4:53 am

Re: SuckerFish menus no longer work

Post by greno » Thu Aug 12, 2010 4:15 pm

Ok, where is the guide that shows you all the changes between 1.5 and 1.6 and how to migrate your apps?

I need to get these SuckerFish menus working but have no information about what has changed that has broken them so I can try to fix them. And apparently nobody else knows what to do either judging from the response to this post so far.

mbabker
Joomla! Hero
Joomla! Hero
Posts: 2281
Joined: Sun Feb 28, 2010 8:26 pm

Re: SuckerFish menus no longer work

Post by mbabker » Fri Aug 13, 2010 4:46 am

There isn't a finalized list of full changes between 1.5 and 1.6 yet. That said, looking at the file you've attached, the only thing that looks like it needs to be changed is that in the queries, parent is now parent_id.

greno
Joomla! Intern
Joomla! Intern
Posts: 89
Joined: Tue Feb 13, 2007 4:53 am

Re: SuckerFish menus no longer work

Post by greno » Fri Aug 13, 2010 2:13 pm

Yes, I'd gotten that far already and changed the references to parent_id.

But also, $user->get('gid') does not work. See my post on it.

And $user->get('usertype') does not work. See my post on it.

And even when I just plug them with a valid value, the menu doesn't get generated and I think it's because something is different about the menu tables or the relation of the menues.

greno
Joomla! Intern
Joomla! Intern
Posts: 89
Joined: Tue Feb 13, 2007 4:53 am

Re: SuckerFish menus no longer work

Post by greno » Sat Aug 14, 2010 8:13 pm

Digging further into this, here are some differences that I see between the mainmenu for 1.5 and 1.6:

1.5:
At the very beginning of mySuckerFish($menutype) is this global:

Code: Select all

global $cur_template, $Itemid;
echoing Itemid shows it set at 1 which is the first row in mainmenu.

And here are the parentage settings for the rows:

Code: Select all

[1] => stdClass Object
     (
          [id] => 1
          [parent] => 0

[91] => stdClass Object
     (
          [id] => 91
          [parent] => 0
1.6:
At the very beginning of mySuckerFish($menutype) is this global:

Code: Select all

global $cur_template, $Itemid;
echoing Itemid shows it empty and corresponds to no rows in mainmenu.
I don't know what sets Itemid initially, and maybe it's a bug that it is not set.

And here are the parentage settings for the rows:

Code: Select all

[101] => stdClass Object
     (
          [id] => 101
          [parent_id] => 1

[631] => stdClass Object
     (
          [id] => 631
          [parent_id] => 1
And so the root level id appears to now be '1' instead of '0'.
And this affects some of the logic statements and function calls.

You have to make changes for both:
$user->get('gid') (see my separate post on $user->get('gid')) and
$user->get('usertype') (see my separate post on $user->get('usertype'))
The $user array shows that 'usertype' is still there but it is now empty in 1.6. Maybe this is just a bug.

Also $row->name now becomes either $row->title or $row->alias depending on what you put in there.

====================================

So making changes to account for all those things, now the SuckerFish menus work.

SOLVED.
.

 

Locked

Return to “Joomla! 1.6 RC Support [closed]”