Question

I moved our existing Magento site to my hosting account for development work but when I try to access anywhere on the backend of the site other than the admin dashboard I get the following error:

Fatal error: Class 'Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element' not found in /magento/app/code/core/Mage/Core/Model/Layout.php on line 491

In the database core_config_data table I've changed the web/unsecure/base_url and web/secure/base_url to match the new domain name.

In the .htaccess file I've changed the RewriteBase / to use the new folder path.

The error I'm getting refers to line 491 in the Layout.php file which is the 4th if clause of the below function:

/**
 * Create block object instance based on block type
 *
 * @param string $block
 * @param array $attributes
 * @return Mage_Core_Block_Abstract
 */
protected function _getBlockInstance($block, array $attributes=array())
{
    if (is_string($block)) {
        if (strpos($block, '/')!==false) {
            if (!$block = Mage::getConfig()->getBlockClassName($block)) {
                Mage::throwException(Mage::helper('core')->__('Invalid block type: %s', $block));
            }
        }
        if (class_exists($block, false) || mageFindClassFile($block)) {
            $block = new $block($attributes);
        }
    }
    if (!$block instanceof Mage_Core_Block_Abstract) {
        Mage::throwException(Mage::helper('core')->__('Invalid block type: %s', $block));
    }
    return $block;
}
Was it helpful?

Solution

@waldek_c comment above really helped me solve this but i thought I put an answer up myself to complete the question in case anyone else ran into something similar.

The error message itself was pointing me to the issue.

Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element was the path to the file causing the issue. As it turned out the file did not upload correctly when I was uploading the site.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top