Implemented cache policy:
* the homepage is cached for 5 minutes by default. This time can be
configured with the =home_cache_in_minutes= attribute in the environment.
* non-profile pages are cached for 15 minutes by default. This time can be
configured with the =general_cache_in_minutes= attribute in the
environment.
* profile pages are cached for 15 minutes by default. This time can be
configured in the =profile_cache_in_minutes= attribute in the environment.
* The account controller (/account/*) is not cached at all.
* The environment administration area (/admin/*) is not cached at all.
* The profile administration area (/myprofile/*) is not cached at all.
* Since Varnish will not cache any request that involves cookies:
* Authenticated users will not benefit from the cache.
* Cookies are not allowed for unauthenticated users. So, when a response is
being prepared for an unauthenticated user, all cookies are wiped out.
The contents of the login block and the login/logout part of the header is now
loaded via an AJAX call to /account/user_data. This way we can cache almost all
pages without caching user-specific data.
We are also changing substantially how the flash[:notice] messages work. From
now on, instead of setting flash[:notice], we must set session[:flash]. It will
work more or less like before, except that session[:notice] will be consumed by
the AJAX call to /account/user_data that is done during all page loads instead
of being consumed automatically by Rails. The only exception to this is the
media_panel, because it uses a different layout.
(ActionItem1608)