Can't load edit window - infinite loading icon

Permalink
Seemingly out of the blue, I am getting an infinite loading icon when I try to edit any of the content blocks on my c5.5 site. I looked at the network pane in Chrome and see that the /tools/required/edit_block_popup.php/?cID=..... file is returning a 500 server error when the c5 interface tries to load it to start editing a block. The permissions haven't changed for any of the concrete directories recently, and I already tried basic steps like restarting apache with no luck.

The only change that was made to the site was adding this bit of code to the page templates that are in use, to implement proper canonical URL tagging:


<? $cPath = $c->getCollectionPath();
$canonicalURL = BASE_URL;
$canonicalURL.= $cPath;
$pageIndentifierVars = array('keywords','fID','tag','productID');
$canonicalVars = array();
foreach($pageIndentifierVars as $var)
if($_REQUEST[$var]) $canonicalVars[]= $var.'='.$_REQUEST[$var];
if( count($canonicalVars) ) $canonicalURL.= '?' . join(',',$canonicalVars);
?>
<link rel="canonical" href="<?php echo $canonicalURL; ?>/">


This was put in the header of each file in the theme, right after the header required load in. I tried removing it and clearing both local and site cache, but it didn't help the problem.

Anyone have any tips for other things I can check?

One other bit of info: I get this error message in the error_log file in the root dir:

PHP Fatal error: Call to a member function isGlobalArea() on a non-object in /home/kinetixd/public_html/concrete/tools/edit_block_popup.php on line 6

kinetix
 
simpleweb replied on at Permalink Reply
Probably if you have changed only the code that you posted here, the error is somewhere else than mine was. But I was getting the same php error so maybe it's somehow related.

Looking in edit_block_popup.php I figured out that it can't get the area handle. Try to debug the code and see if in your case it can't get the page identifier (because then he also can't get the area handle). Also try to change variables names because sometimes they interfere with the concrete5 system variables.

I resolved the issue by paying more attention on how I name my areas (in my case the ampersand was causing errors).
$a = new Area(Questions & Answers);
Mnkras replied on at Permalink Reply
Mnkras
Yea, it doesn't like any html entities,