Post Installation CSS Issue 5.4.0.5

Permalink 3 users found helpful
Hi, I'm brand new to Concrete5 and I wanted to give it a try after being recommended to it by a few people. I installed it here:

http://dev.kingswalkdental.co.uk/...

But after the install process, the stylesheets on the default theme were not working, on closer inspection I found the following error:

Fatal error: Call to undefined method Zend_Cache_Core::getMetadatas() in /concrete/libraries/cache.php on line <b>117

( From:http://dev.kingswalkdental.co.uk/index.php/tools/css/themes/default... )

Its a brand new download of the latest version and all default settings.

Only thing of note really is my php version is 5.1.6.

Does anyone have any ideas what the problem might be?

 
nteaviation replied on at Permalink Reply
nteaviation
I'm pretty sure it is not a CSS issue. You could try to disable site cache. Login to dashboard and select the debug tab. See if that makes any difference.

PHP 5.1.6 is kind of old. See c5 system requirements:
http://www.concrete5.org/documentation/background/system_requiremen...
dg1 replied on at Permalink Reply
I found this other thread where they had the same problem. No resolution was posted though. Maybe if you contact them, you can find out the status to see if they ever worked around it.

http://www.concrete5.org/community/forums/installation/upgrade-to-5...
nteaviation replied on at Permalink Reply
nteaviation
The work-around was to downgrade to 5.3.x, not a very good solution.
chrisbarber86 replied on at Permalink Reply
@dg1 - good plan, I've sent them a message
chrisbarber86 replied on at Permalink Reply
I've already disabled the caching but it didn't make a difference.

Understand that 5.1.6 is old, but it's a shared server with some fairly old sites so it's not a simple upgrade process.
nteaviation replied on at Permalink Reply
nteaviation
I found this:
http://framework.zend.com/issues/browse/ZF-6360...

I wonder what version zend you are running. It was not fixed until version 1.8.0 Our dear friend phpinfo() may shed some light :)
chrisbarber86 replied on at Permalink Reply
It's using the version that comes with concrete. According to the file /concrete/libraries/3rdparty/zend/cache/core.php it is

@version $Id: Core.php 18255 2009-09-18 17:26:32Z padraic $

Interestingly, it also contains the function getMetadatas($id) . so it does indeed exist, but somehow not being found
andrew replied on at Permalink Reply
andrew
That's what so bizarre...the function is obviously there, as well as the class that supposedly doesn't contain it. It's also loading the class - it's not like it can't find the class that contains it
chrisbarber86 replied on at Permalink Reply
Agreed, it's extremely odd. I added the following in above the method call:

print_r(get_class_methods($cache));

which returned:

Array
(
[0] => __construct
[1] => setBackend
[2] => getBackend
[3] => setOption
[4] => getOption
[5] => setLifetime
[6] => load
[7] => test
[8] => save
[9] => remove
[10] => clean
[11] => getIdsMatchingTags
[12] => getIdsNotMatchingTags
[13] => getIds
[14] => getTags
[15] => getFillingPercentage
[16] => touch
)

So according to that, the method doesn't exist...

:(
chrisbarber86 replied on at Permalink Best Answer Reply
Ok, I've done something, but not sure if this is the correct way about it, but changing line 117 of /concrete/libraries/cache.php from:

$metadata = $cache->getMetadatas(Cache::key($type, $id));


to:

$metadata = $cache->getBackend()->getMetadatas(Cache::key($type, $id));


Seems to do the trick....
cannonf700 replied on at Permalink Reply
cannonf700
This looks promising but I don't have a cache.php file in my /concrete/libraries folder...
Any Thoughts?

Update: Yes I did have that file but making the suggested changes didn't help...
any other thoughts?
www.www.ywammuizenberg.org/concrete/...
johnnyNui replied on at Permalink Reply
johnnyNui
I just installed a new install of version 5.4.1 on another site on the same server that I had this problem on.
and the same error (css files won't load) happenned.
fortunately the same fix worked for me.

perhaps it has something to do with my server's setup.

this time the offending line was on line 123
johnnyNui replied on at Permalink Reply
johnnyNui
I had the same problem and this fix worked for me.
plui replied on at Permalink Reply
This fix to line 117 also worked for me

Thanks
PassionForCreative replied on at Permalink Reply
PassionForCreative
@chrisbarber86 this worked for me. In the current version of Concrete5 it's line 123 but it worked none the less. Massive thanks.