C5 Edit Menu is empty

Permalink
Please help, I have a potential customer presentation in a couple days and the admin menu went poof. The customer cancelled and then months later wants to revisit Concrete5.

Fortunately I still have the site, but the admin/edit menu at the top of the page is gone. Looking in the inspector I see this error in page_controls_menu_js:

sbitem.setCSSClass('info');
               sbitem.setDescription('
Fatal error: Call to a member function getWorkflowProgressCurrentDescription() on a non-object in /var/www/rbus_c5_dev/htdocs/concrete/tools/page_controls_menu_js.php on line 267


I switched themes on the site and the problem persists. Also, I checked and footer.php ends with: <?php Loader::element('footer_required'); ?>


Steve

 
sandolamb replied on at Permalink Reply
More information: going to the workflow "waiting for me" line I see:

Fatal error: Call to a member function canApproveWorkflowProgressObject() on a non-object in /var/www/rbus_c5_dev/htdocs/concrete/elements/workflow/progress/categories/page/pending.php on line 23
Page Name   URL   Last Action   Current Status


Also the version is:
# concrete5 Version
5.6.0.2

# concrete5 Packages
Accordion Menu (1.8), Amiant Image Gallery (0.5.2), Big Business (0.9.8), Page List Teasers (1.2).

# concrete5 Overrides
themes/theme_rambus
shahroq replied on at Permalink Reply
shahroq
Simply there are an error at your page, if the page run correctly, at the end js at the footer would run and show the menu.
Fix the error, menu will display.
sandolamb replied on at Permalink Reply
Thanks,

Yes I understand that if I fix the error, the error will go away. I was hoping for some help in fixing it. Or, if someone has seen the same problem.

Steve
JohntheFish replied on at Permalink Reply
JohntheFish
You should be able to login at:
yoursite.com/index.php/login

then get to the dashboard at
yoursite.com/index.php/dashboard

If it was an edit that broke it, from the dashboard, go to the sitemap, find the page giving issues, then revert its version to one that works.

If it was an addon that broke it, uninstall the addon.
sandolamb replied on at Permalink Reply
Thanks John,

Yup I can get in and it all looks fine from the dashboard.

Here's the mystery: I don't know what broke it. It was working a couple months ago when I set it up. I haven't been in there until today. Bingo, it's busted.

It seems related to workflows, but how? What sort of thing is it trying to find and getting the 'not an object' message?

Steve
sandolamb replied on at Permalink Reply
More information:

<?php  if (is_array($workflowList)) { ?>
            <?php  foreach($workflowList as $wl) { ?>
               <?php  $wr = $wl->getWorkflowRequestObject(); 
               $wrk = $wr->getWorkflowRequestPermissionKeyObject(); 
               if ($wrk->getPermissionKeyHandle() == 'approve_page_versions') {
                  $hasPendingPageApproval = true;
               }
               ?>
               <?php  $wf = $wl->getWorkflowObject(); ?>
               sbitem = new ccm_statusBarItem();
               sbitem.setCSSClass('<?php echo $wr->getWorkflowRequestStyleClass()?>');
               sbitem.setDescription('<?php echo $wf->getWorkflowProgressCurrentDescription($wl)?>');
               sbitem.setAction('<?php echo $wl->getWorkflowProgressFormAction()?>');


The $wl object is getting set from the list.
But it appears $wf is null. It seems $wl->getWorkflowObject(); fails.

I'm thinking bad data, but where to repair?