Framework update completely broke the UI

Last nights framewrok update to v2.10.0.5 has completely screwed the UI. How does a user get it back working again?

refresh the page, same thing happened to me

I have:

Restarted the browser
Cleared the browser cache
amportal restart
service httpd restart

shutdown -r now

all to no avail!

firebug reveals a missing file:

[code]

404 Not Found

Not Found

The requested URL /admin/assets/css/mstyle_autogen_1335404143.css was not found on this server.


Apache/2.2.3 (CentOS) Server at ***************.net Port 80 [/code]

[[email protected] css]# pwd /var/www/html/admin/assets/css [[email protected] css]# ls -la total 120 drwxrwx--- 2 asterisk asterisk 4096 May 5 07:58 . drwxrwx--- 5 asterisk asterisk 4096 Apr 25 21:35 .. -rw-rw-r-- 1 asterisk asterisk 33849 May 5 07:58 jquery-ui.css -rw-rw-r-- 1 asterisk asterisk 7575 May 5 07:58 mainstyle.css -rw-rw-r-- 1 asterisk asterisk 465 May 5 07:58 mainstyle-rtl.css -rw-rw-r-- 1 asterisk asterisk 30090 May 5 07:58 mstyle_autogen_1336219096.css -rw-rw-r-- 1 asterisk asterisk 4792 May 5 07:58 progress-polyfill.css [[email protected] css]#

It looks to me like the css file is auto versioned to prevent cache problems, and it looks like the newer version is in place, however, the older version is still being requested. Clearing all the caches should have fixed that.

Its not coming from cache, its actually being served up that way:

Developers:

It appears that during installation of FreePBX Framework v2.10.0.5 the call to set_conf_values() within compress_framework_css() failed and mainstyle_css_generated was not updated for unknown reasons, although the file with the correct name was persisted on the file system. A subsequent forced call to compress_framework_css() succeeded so the initial event was unreproducible.

Also, it makes absolutely no sense to implement versioned static resources if they’re not set to cache forever. The whole point is increased performance by eliminating round-trips to the sever to check static resources, while still allowing forcing a new version to be cached when updates happen. Recommend either caching the file or not versioning it.

Users:

The file in parameter Settings -> Advanced Settings | Dialplan and Operational -> Compressed Copy of Main CSS must exist in /var/www/html/admin/assets/css when Settings -> Advanced Settings | Developer and Customization -> Disable Mainstyle CSS Compression is False (Default).

Otherwise, the GUI will probably have some severe format problems. You can corret this problem by changing either the Compressed Copy of Main CSS parameter or the file name.

Make sure you apply the config… then refresh and it should be fine. I can see from the above image that apply config is still visible, indicating you have not yet hit it.

Executing compress_framework_css() from a php script fixed it. I wanted to try and reproduce the failure but it succeeded.

Just click on the reload link top right and then click on Administrators and the gui will come back up. Have done it on four systems. All behaved the same way.

The issue is until a reload is ran it is not loading the new css. A simple reload fixes the issue everytime. It can even be done from the command line with

sudo -u asterisk /var/lib/asterisk/bin/module_admin reload